Cd gsgsgs android arch arm64 and x64 infinite bomber arm64

Cd gsgsgs android arch arm64 and x64 infinite bomber arm64

Этот материал не претендует на абсолютную истину, может быть, что-то можно сделать проще и быстрее. Автор как знает, так и делает. Кроме того он не является большим экспертом в области nix-систем. Всё, что написано ниже, найдено на просторах интернета, в большинстве своём на не русскоязычных форумах, систематизировано и изложено на родном для автора языке — русском.

Коллеги, не задавайте мне вопросы по данной теме в личку, уже несколько лет как я забросил Android и не интересуюсь развитием ядер, как впрочем и самого Android-a.

Сообщение отредактировал PaWill — 08.03.16, 14:54

Часть 1. Необходимые инструменты и исходники

Для компиляции ядра нам потребуется nix-подобная операционная система. Я использовал Ubuntu 10.04 LTS — Long-term support 32-bit, которую установил на виртуальную машину VMware Workstation. Где всё это добро скачать/купить, как установить мы здесь обсуждать не будем. Если вы это не смогли сделать самостоятельно или с помощью гугла, то читать эту статью для вас ещё рано (или уже поздно). 🙂
И так, у нас всё установлено и работает. Теперь проверим все ли необходимые компоненты присутствуют в системе, возможно какие то пакеты придётся доустановить.
Запускаем терминал:

В терминале вводим следующую команду [1]:

Судя по последней строке у меня все пакеты на месте:

У вас, вероятней всего, не будет важного пакета — sun-java6-jdk on Ubuntu 10.04 (Lucid). Для его автоматической загрузки нужно в адреса репозитория добавить дополнительные ссылки. Введите в терминале:

После того как всё скачается и установится опять команда [1] пока не будет ошибок. Будем считать что с Ubuntu покончили.

Теперь нам потребуются собственно сами исходники ядра. Их можно найти на http://opensource.samsung.com/. В строке поиска вводим «I9000» и получаем:

Нас интересует JPX GT-I9000_OpenSource_Froyo_update2.zip (211 МБ), делаем как на скрине и жмём «Continue».

Ещё нам потребуется кросс-компилятор, которым будем собирать ядро:
http://www.codesourcery.com/sgpp/lite/arm/. nux-gnu.tar.bz2 (80 МБ)

И последнее что потребуется — это initramfs.cpio. Я выдрал его из JS8. Как это сделать расскажу как-нибудь отдельно.
JS8_initramfs.tar ( 2.64 МБ )

Пока всё, продолжение следует.

Сообщение отредактировал PaWill — 19.03.11, 19:38

Часть 2. Распаковка исходников

Всё что вы скачали будет находится в каталоге /home/имя_пользователя/Загрузки. У меня этот путь выглядит как:

Источник

Cd gsgsgs android arch arm64 and x64 infinite bomber arm64

как установить (RU)

$ apt install git

$ cd (директория с вашим процессором(либо С тор или не с ним) К примеру $ cd Infinite-Bomber-arm64-without-tor (-without-tor без тор) (arm64 разрядность вашего процессора)

$ chmod 777 infinite-bomber

Для работы программы необходим доступ в интернет.

После запуска программы необходимо ввести: 1. Номер телефона в международном формате без + в начале 2. Режим лога: 0 — Лог выключен, 1 — Показывать только сообщения об удавшихся запросах, 2 — Показывать сообщения только о неудавшихся запросах, 3 — Показывать все сообщения 3. Сколько времени спамить (в секундах). 0 — спамить бесконечно

Есть возможность запуска через консоль, с указанием всех параметров в аргументах infinite-bomber [Номер телефона] [Режим флуда] [Режим логирования] [Время спама (в секундах)] Пример: ./infinite-bomber 79214321234 3 3 600

Если использовать режим без лога, то программа будет «жрать» меньше опреративной памяти

В файле services.yaml можно добавлять сервисы, которые будут использоваться бомбером для флуда. Список переменных, которые можно использовать обозначая позицию для вписывания номера жертвы:

Режим тестирования включается установкой перменной среды INFIBOMBTEST=1

how to install (EN)

$ apt install git

$ cd (the directory with your processor (either C tor or not) For example, $ cd Infinite-Bomber-arm64-without-tor (-without-tor without tor) (arm64 bit capacity of your processor)

$ chmod 777 infinite-bomber

Internet access is required for the program to work.

After starting the program, you must enter:

  1. Phone number in international format without + at the beginning
  2. Log mode: 0 — Log is off, 1 — Show only messages about failed requests, 2 — Show messages only about failed requests, 3 — Show all messages
  3. How long to spam (in seconds). 0 — spam endlessly

It is possible to run through the console, indicating all parameters in the arguments infinite-bomber [Phone number] [Flood mode] [Logging mode] [Spam time (in seconds)] Example: ./infinite-bomber 79214321234 3 3 600

If you use the mode without a log, then the program will «eat» less operative memory

In the services.yaml file, you can add the services that the bomber will use for flooding. List of variables that can be used to indicate the position to enter the victim number:

Testing mode is activated by setting the variable environment INFIBOMBTEST=1

Источник

Cd gsgsgs android arch arm64 and x64 infinite bomber arm64

как установить (RU)

$ apt install git

$ cd (директория с вашим процессором(либо С тор или не с ним) К примеру $ cd Infinite-Bomber-arm64-without-tor (-without-tor без тор) (arm64 разрядность вашего процессора)

$ chmod 777 infinite-bomber

Для работы программы необходим доступ в интернет.

После запуска программы необходимо ввести: 1. Номер телефона в международном формате без + в начале 2. Режим лога: 0 — Лог выключен, 1 — Показывать только сообщения об удавшихся запросах, 2 — Показывать сообщения только о неудавшихся запросах, 3 — Показывать все сообщения 3. Сколько времени спамить (в секундах). 0 — спамить бесконечно

Есть возможность запуска через консоль, с указанием всех параметров в аргументах infinite-bomber [Номер телефона] [Режим флуда] [Режим логирования] [Время спама (в секундах)] Пример: ./infinite-bomber 79214321234 3 3 600

Если использовать режим без лога, то программа будет «жрать» меньше опреративной памяти

В файле services.yaml можно добавлять сервисы, которые будут использоваться бомбером для флуда. Список переменных, которые можно использовать обозначая позицию для вписывания номера жертвы:

Режим тестирования включается установкой перменной среды INFIBOMBTEST=1

how to install (EN)

$ apt install git

$ cd (the directory with your processor (either C tor or not) For example, $ cd Infinite-Bomber-arm64-without-tor (-without-tor without tor) (arm64 bit capacity of your processor)

$ chmod 777 infinite-bomber

Internet access is required for the program to work.

After starting the program, you must enter:

  1. Phone number in international format without + at the beginning
  2. Log mode: 0 — Log is off, 1 — Show only messages about failed requests, 2 — Show messages only about failed requests, 3 — Show all messages
  3. How long to spam (in seconds). 0 — spam endlessly

It is possible to run through the console, indicating all parameters in the arguments infinite-bomber [Phone number] [Flood mode] [Logging mode] [Spam time (in seconds)] Example: ./infinite-bomber 79214321234 3 3 600

If you use the mode without a log, then the program will «eat» less operative memory

In the services.yaml file, you can add the services that the bomber will use for flooding. List of variables that can be used to indicate the position to enter the victim number:

Testing mode is activated by setting the variable environment INFIBOMBTEST=1

Источник

Cd gsgsgs android arch arm64 and x64 infinite bomber arm64

Начнем. Вы, наверное, слышали, что в некоторых устройствах используется какая-то диковинная A/B структура разделов . Она отличается от структуры в большинстве Android устройств.
На ней как-то странно и непривычно устанавливаются обновления, прямо при работающей системе (O_o). Внутри OTA образов другая, нечитабельная структура. Установка TWRP сопровождается какими-то, раннее не встречаемыми, сложностями, дополнительными манипуляциями и значительно отличается от всего, что «я» раньше видел. Все говорят о каких-то буквах «А», «Б», слотах, двух и системах и прочих, непонятных «мне», вещах. Что же, давайте попробуем во всем этом разобраться.

Начнем с общих вопросов:
Q: Ну и кто все это придумал? Проклятые производители простым гикам жизнь усложняют?
A: Новая структура «A/B разделов» разработана непосредственно Google-ом как часть глобальных изменений в архитектуре Android. Она успешно используется в смартфонах Google Pixel, Essential Phone и различных других устройствах. В дальнейшем все больше устройств от сторонних производителей будут ее использовать. Ничего плохого и страшного в этом нет, наоборот, открывается много новых возможностей.

Q: Так что же из себя представляет A/B структура разделов?
A: Если говорить совсем просто — внутри вашего устройства расположены сразу две (а в зависимости от реализации и больше), независимые между собой, системы. Что-то на подобии MultiROM (если слышали о таком), только с гораздо более продуманной реализацией на более низком уровне. Если интересует конкретная информация с объяснением всех аспектов — прошу продолжить чтение.

Таблица разделов на примере Google Pixel:
Дабы наглядно отобразить, изложенную выше, теорию и увидеть отличия по сравнению с другими устройствами — познакомимся с таблицей разделов Google Pixel.
Если вы вообще не знакомы со структурой разделов в Linux-подобных системах, и Android в частности, — советую поискать информацию об этом в Google, благо ее полно.

Нас интересуют конкретные разделы, существующие в двух копиях для наглядности и демонстрации.
Итак (раскрываем код полностью):

/dev/block/bootdevice/by-name/aboot_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/apdp_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/bootlocker_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/cmnlib32_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/cmnlib64_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/devcfg_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/hosd_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/hyp_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/keymaster_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/msadp_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/pmic_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/rpm_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/tz_a # Разделы первого загрузчика (Слот «a»)
/dev/block/bootdevice/by-name/xbl_a # Разделы первого загрузчика (Слот «a»)

/dev/block/bootdevice/by-name/aboot_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/apdp_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/bootlocker_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/cmnlib32_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/cmnlib64_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/devcfg_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/hosd_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/hyp_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/keymaster_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/msadp_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/pmic_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/rpm_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/tz_b # Разделы второго загрузчика (Слот «b»)
/dev/block/bootdevice/by-name/xbl_b # Разделы второго загрузчика (Слот «b»)

/dev/block/bootdevice/by-name/modem_a # Раздел первого модема/радиомодуля (Слот «a»)
/dev/block/bootdevice/by-name/modem_b # Раздел второго модема/радиомодуля (Слот «b»)

/dev/block/bootdevice/by-name/boot_a # Раздел первого ядра (Слот «a»)
/dev/block/bootdevice/by-name/boot_b # Раздел второго ядра (Слот «b»)

/dev/block/bootdevice/by-name/vendor_a # Первый проприетарный раздел (Слот «a»)
/dev/block/bootdevice/by-name/vendor_b # Второй проприетарный раздел (Слот «b»)

/dev/block/bootdevice/by-name/system_a # Первый системный раздел (Слот «a»)
/dev/block/bootdevice/by-name/system_b # Второй системный раздел (Слот «b»)

Как видно из выдержки выше, — имеются два, независимых между собой, слота, а именно «группы разделов», которые содержат в себе основные, обновляемые компоненты прошивки.

Два представленных слота состоят из:
Bootloader (загрузчик) — 28 разделов (14 на каждый слот).
Radio/Modem (радиомодуль) — 2 раздела (по одному на слот).
Boot (ядро) — 2 раздела (по одному на слот).
Vendor (драйверы) — 2 раздела (по одному на слот).
System (система) — 2 раздела (по одному на слот).

Остальные разделы, не указанные в таблице, представлены в одном экземпляре за ненадобностью их деления.
Обратите внимание раздел пользовательского хранилища (userdata) всегда один! Именно поэтому вы не можете (без очистки хранилища) одновременно использовать две абсолютно разных прошивки, будет конфликт. Возможно одновременное использование одинаковых по типу прошивок (а в некоторых случаях и это невозможно без сброса данных).

Принципиальные отличия по сравнению с другими устройствами:
С дублированием разделов и, структурой в целом, разобрались. Однако, вы могли заметить (если просматривали полную таблицу разделов) отсутствие, привычных в любом устройстве, разделов «/recovery» и «/cache». Да, их действительно нет. Но могут и встречаться в отклонениях от нормы.

Q: Стоп. Но если раздела для Recovery нет, а сам Recovery есть (Он ведь есть, правда?), где же он находится?
A: Система восстановления (Recovery) включена в состав образа ядра (boot). А потому, наличие, отсутствие и тип установленного recovery напрямую зависят от ядра системы. Переключение в него (Recovery), как и раньше, осуществляется специальным флагом в «/misc» разделе.
Именно в этом и состоит загвоздка установки TWRP — его как-то нужно «засунуть» в ядро. Потому TWRP сначала временно загружают (устанавливать то его некуда), а затем уже из TWRP, специальным скриптом, на лету распаковывается ядро и вшивается в него TWRP. Такая же схема «перепаковки ядра на лету» применяется при получении «systemless» рут-прав через SuperSU и Magisk.

Q: Хорошо, а что же тогда случилось с «/cache» разделом?
A: В привычных устройствах он необходим лишь для хранения OTA обновлений и системных логов Recovery, в данном же случае, ввиду применения новой схемы этих самых обновлений (см. ниже), раздел стал попросту «не нужОн». Вот от него и избавились.

Ручное переключение слотов:
Естественно, помимо самих слотов, должен быть способ ручного взаимодействия с ними. И он есть. Для ручного переключения текущего активного слота необходимо воспользоваться утилитой fastboot. Команды:

Так же, переключится в другой слот можно в соответствующем пункте TWRP (Reboot -> Slot A / Slot B).

Итоги и положения:
1. Между слотами как система, так и сам пользователь могут переключаться.
2. Изначально (с завода) слоты полностью идентичны между собой. Различия появляются после применения любого OTA обновления системы.
3. Слоты изолированы между собой. Состояние и целостность одного слота никак не влияет на другой. За исключением применения OTA обновлений (см. ниже).

«Seamless» система обновлений:
Итак, с разделами и слотами разобрались. Но что же там с обновлениями, наверняка их тоже коснулись изменения, ввиду описанного выше?
Да, OTA обновления на устройствах с A/B структурой кардинально отличаются от того, что мы можем видеть на других устройствах.

Итоги и положения:
1. Все OTA обновления устанавливаются в неактивный, противоположный слот. То бишь — обновляется лишь один слот.
2. Все OTA обновления устанавливаются в фоновом режиме при рабочей системе, без перезагрузки устройства.
3. Все OTA обновления устанавливаются в два этапа «Шаги»: «Шаг 1» — Загрузка обновления. «Шаг 2» — Фоновое применение обновления в неактивный, противоположный слот.
4. После установки OTA обновления, при перезагрузке устройства, оно автоматически загрузится в обновленный слот (ранее неактивный).

Android 8.0+ — трансляция обновлений:
Начиная с версии Android 8.0 возможна (но не обязательна) частичная реализация трансляции обновлений с одновременным их применением (прямая запись).
Это значит, что обновления не нуждаются в предварительной их загрузке, а применяются «на лету».

Сообщение отредактировал Displax — 08.06.20, 01:27

Источник

Читайте также:  Usescleartexttraffic android что это
Оцените статью