Как изменить размер прошивки

Почему прошивки скаченные в инете имеют размер от других прошивок? i308da02 имеет размер 832кБт ведь это размер некриптованного М797+, а a308da01 - 576кБт, a308db03 имеет 896кБт?? Чёт я запутался... Какой размер некриптованной прошивки М7.3 автел и ителмы??
  • Назад
  • 1
  • 2
  • Вперёд
  • Страница 1 из 2  

Рекомендованные сообщения

Почему прошивки скаченные в инете имеют размер от других прошивок?

i308da02 имеет размер 832кБт ведь это размер некриптованного М797+, а a308da01 — 576кБт, a308db03 имеет 896кБт??

Чёт я запутался…

Какой размер некриптованной прошивки М7.3 автел и ителмы??

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

896 КБ (917 504 байт)

Спасибо.

А почему на некоторых М73 стоит размер 576/832кБт, ведь это размер Я72+/М797+???

У меня есть предположение, что может их скачивали Чиплодырем по чужой вкладке (как Я72+/М797+)??

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Спасибо.

А почему на некоторых М73 стоит размер 576/832кБт, ведь это размер Я72+/М797+???

У меня есть предположение, что может их скачивали Чиплодырем по чужой вкладке (как Я72+/М797+)??

Все нормально просто М73 существуют в двух конфигурациях, первая размер фулфлеш 917,504кб вторая 589,824кб по конфигурации близкая к Я7+

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ты спросил:»Какой размер некриптованной прошивки М7.3 автел и ителмы» я его и сказал .

576 КБ (589 824 байт) это криптованый , он получается если комбиком фулфлеш считывать.

По идее так.


Изменено 21 сентября 2009 пользователем Slavik k

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ты спросил:»Какой размер некриптованной прошивки М7.3 автел и ителмы» я его и сказал .

576 КБ (589 824 байт) это криптованый , он получается если комбиком фулфлеш считывать.

По идее так.

Я тоже запутался ! Что значит криптованная и не криптованная?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я тоже запутался ! Что значит криптованная и не криптованная?

Криптованная — это скаченная комбиком (отсутствие в файле FF).

Некриптованная — это скаченная чиплодырем вместе с FF. В зависимочти от того, какой вкладкой чиплодыря скачивали, такой размер прошивки и будет.

Т.е прошивка, скаченная комбиком несёт в себе только «информационные» биты, а чиплодырем — образ памяти включающая в себя не только «информационные» биты, но и «пустые» (FF).

Дофигища мне пришлось перевернуть инфы по этому вопросу с 21-го числа…

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Криптованная — это скаченная комбиком (отсутствие в файле FF).

Некриптованная — это скаченная чиплодырем вместе с FF. В зависимочти от того, какой вкладкой чиплодыря скачивали, такой размер прошивки и будет.

Т.е прошивка, скаченная комбиком несёт в себе только «информационные» биты, а чиплодырем — образ памяти включающая в себя не только «информационные» биты, но и «пустые» (FF).

Дофигища мне пришлось перевернуть инфы по этому вопросу с 21-го числа…

Ну ты молоток реально врубился тока с 10того прочтения! :ThanxSmiley:

А Комбилоудер и Чиплоудер разные програмы так?

У меня Комбилоудер от смс скачал с блока М7.3 чтоб не запороть штатную прошивку I317DA02.bin размер 285 КБ (292 065 байт)

а I317DA02.eep 1,00 КБ (1 024 байт)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А Комбилоудер и Чиплоудер разные програмы так?

Конечно разные. Т.е. задачи у них те же, а авторы, методы скачивания, размер скачаных файлов и цены другие…

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

можно ли прошивку размером 576 КБ (i317da02 передний привод) закачать в блок с помощью ChipLoaderа или ST10Flasherа

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Конечно разные. Т.е. задачи у них те же, а авторы, методы скачивания, размер скачаных файлов и цены другие…

А когда прошиваешь разница есть какие (чем слитые) прошивки ? или шить можно и те и другие?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А когда прошиваешь разница есть какие (чем слитые) прошивки ? или шить можно и те и другие?

Если комбилодерем без разницы размер. Если ST10Flasher или ChipLoader то должна быть некриптованная размером 576кб или 896кб

P.S. Кстате ST10Flasher с блока с программой I308хххх сливает прошивку 576кб хотя везде пишут должно быть 896ful почему я сам не знаю!?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Проблема следующего характера.

Имеются прошивки для загрузчика Combiloader (Микас 10.3) размером 576 кб. Так как у меня нет этого загрузчика а есть загрузчик ChipLoader то мне нужно эти прошивы изменить до 512 кб.

Какие есть программы для изменения данного характера? может есть что нибудь под тип программы enigma для данных прошивок?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Проблема следующего характера.

Имеются прошивки для загрузчика Combiloader (Микас 10.3) размером 576 кб. Так как у меня нет этого загрузчика а есть загрузчик ChipLoader то мне нужно эти прошивы изменить до 512 кб.

Какие есть программы для изменения данного характера? может есть что нибудь под тип программы enigma для данных прошивок?

Держи!

m103conv.rar


Изменено 19 марта 2013 пользователем Виталик 522

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Господа, подскажите, есть тюнингованная декриптованная прошивка I317DA03 (сейчас стоит 1-я серийная I317DA02.bin), но она размером 851968 байт. Можно ли ее залить ST10Flasherom (с поворотом резистора) или ее размер не нормальный (отличается конечно от 917 504 байт)? Не запорю ли я блок. Заранее благодарен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Господа, подскажите, есть тюнингованная декриптованная прошивка I317DA03 (сейчас стоит 1-я серийная I317DA02.bin), но она размером 851968 байт. Можно ли ее залить ST10Flasherom (с поворотом резистора) или ее размер не нормальный (отличается конечно от 917 504 байт)? Не запорю ли я блок. Заранее благодарен.

Пробуй(только считай заводскую) завалить не завалишь, но машина может не завестись если что откатищь обратно.


Изменено 19 марта 2013 пользователем Виталик 522

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пробуй(только считай заводскую) завалить не завалишь, но машина может не завестись если что откатищь обратно.

Ок, спасибо, о результатах доложу.


Изменено 19 марта 2013 пользователем Виталик 522

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Народ! Разжуйте для танкиста! Совсем запутался! :blink:

Скачал серийную прошивку для М73 (Ителма), размер BIN-файла 210 676 байт. И что с ним дальше делать, криптовать, декриптовать или чиплодырь в исходном варианте ее зальет без осложнений?!

I303CF06.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Здравствуйте, уважаемые форумчане!! Помогите, пожалуйвта, а то все ноги стоптпал и пока безрезультатно. Оч нужен конвертер для прошивок на МИКАС10.3+ для изменения размера файла прошивки. Нигде в нете найти не смог :emot97: Здесь нашел — скачать не могу. Вижу, что и тема, мягко говоря, долвольно не свежая, но мож кто откликнется…

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Прочитай правила и всё станет ясно !

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • Назад
  • 1
  • 2
  • Вперёд
  • Страница 1 из 2  

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

размер прошивки — ChipTuner Forum

Чип-тюнинг коммерческой техники Кама3, ГАЗ от SMS-Soft



Прошивки Hyundai SIM2K-241 от Strit   Прошивки Magneti Marelli VAG от Art-Pro   Прошивки Peugeot/Citroen от Art-Pro   Прошивки Kia SIM2K-241 от Strit

размер прошивки


Закрытая тема.
  1. Аватар для Денастий

    offline

    автомастер

    Регистрация:
    05.01.2008
    Сообщений:
    1,477
    Адрес:
    Донбасс

    Доброго времени всем , вопрос по хундай акцент с ЭБУ Кефико — скачанный комбиком размер прошивки 209 кб. , после распаковки енигмой — 512 кб. Потом открыл в WinOlse, поправил , контрольки Олс увидел , сохранил , но естественно после записи авто работает неадектватно , я так понимаю потому как размер комбику не нравится , можно ли вырезать лишнее например в Hex редакторе ,и если да как понять что вырезать ?
    За раннее всем благодарен …

  2. Аватар для Mozart

    offline

    Автобизнес

    Регистрация:
    06.02.2006
    Сообщений:
    4,741
    Адрес:
    Воронеж

    Комбилоадер нормально работает с полным форматом. Не надо ничего обрезать или добавлять.

  3. Аватар для Денастий

    offline

    автомастер

    Регистрация:
    05.01.2008
    Сообщений:
    1,477
    Адрес:
    Донбасс

    может ли быть проблемма в том что считал прошивку модулем Bosch 7.9.7 , а писал модулем Kefiko ? Просто двигатель на модефицированном файле вообще неадекватно работает .(опыт работы в Олсе хороший) … Пока залил что считал работает нормально ..

  4. Аватар для Mozart

    offline

    Автобизнес

    Регистрация:
    06.02.2006
    Сообщений:
    4,741
    Адрес:
    Воронеж

    Никакой разницы. Можно было и без Энигмы обойтись — закладкой С167 прочитать, модулем Кефико или новым ME797 записать.

  5. Аватар для Денастий

    offline

    автомастер

    Регистрация:
    05.01.2008
    Сообщений:
    1,477
    Адрес:
    Донбасс

    наверное стоит попробовать записать модулем М Е 7.9.7. , и писать только калибровки , только в Хексе если смотреть на скачанную она не имеет пробелов , а правленная имеет ,только какая у комбилоадера логика выбирать область калибровок ?

  6. Аватар для Andr

    offline

    Авторемонт

    Регистрация:
    21.02.2006
    Сообщений:
    19,604
    Адрес:
    г.Таганрог

    Я так думаю, что если поправил в «угадывателе» какие-либо карты, это не значит что это правильно и будет работать…

  7. Аватар для Денастий

    offline

    автомастер

    Регистрация:
    05.01.2008
    Сообщений:
    1,477
    Адрес:
    Донбасс

    поправил правильно , думаю там дело в другом , отпишусь позже ..

  8. Аватар для Иоанн

    Так проверьте в обычном редакторе и делайте выводы. Скорее чуть вышли за пределы графика, если точно уверены что с пересчетом КС проблем нет.

    Последний раз редактировалось Иоанн; 03.08.2014 в 23:24.

  9. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    17,963
    Адрес:
    Ярославль разработчик SMS-Soft


    Хорошо научились угадывать калибровки по внешнему виду?

    Потому как угадать калибровки только по их внешнему виду — шарлатанство.

    Последний раз редактировалось almi; 06.08.2014 в 18:47.

  10. Аватар для Денастий

    offline

    автомастер

    Регистрация:
    05.01.2008
    Сообщений:
    1,477
    Адрес:
    Донбасс

    Ну почему по внешнему … есть еще направление осей ,положение графика относительно нуля плоскости и т.д… ну и когда смотришь на карты в прошивках каждый день в течении 10 лет всё равно они имеют характерный вид , у каждого типа ЭБУ естественно свой , я не инженер … но опыт великое дело и например предыдущая прошивка сделанная мною в Олсе (без дамоса) была Фольцваген Каравелла с двигателем V 6 бензин , достаточно сложная , изменял в ней координально порядка 15 — 20 графиков , результат очень положительный , значительно ощутимый прирост динамики ,и расход топлива со слов хозяина авто в норме …

    По поводу темы — решил таким образом , записал через розетку , и только калибры , всё получилось … Всем отозвавшимся спасибо …

  11. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    17,963
    Адрес:
    Ярославль разработчик SMS-Soft

    И половина изменений была бесполезной по причине того, что, к примеру, в софте есть константа, ограничивающая ту или иную величину и как не увеличивай значения в таблице, оно не прибавится.
    А константу в олсе не найти.

  12. Аватар для Иоанн

    Кроме этого в винолсе проблематично поменять конфигурации, комплектации и т.д. и т.п. Да и маску ошибок тоже.

    Если графики были найдены по подобию, то тут могут быть расхождения между реальными и найденными. Алгоритм поиска не всегда адекватен. Специально проверял и сравнивал.

  13. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    17,963
    Адрес:
    Ярославль разработчик SMS-Soft

    Добавлю, что у многих производителей ПО часть калибровок не используется (была унаследована предыдущих версий софтов). Разумеется, изменять их не имеет ни малейшего смысла.

  14. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    17,963
    Адрес:
    Ярославль разработчик SMS-Soft

    Наугад — невозможно. Только при наличии карты (дамоса).

  15. Аватар для KHN09

    offline

    Калибровщик

    Регистрация:
    13.04.2008
    Сообщений:
    1,289
    Адрес:
    Челябинск

  16. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    17,963
    Адрес:
    Ярославль разработчик SMS-Soft

    А вот теперь попробуйте найти дамосы на Visteon, Simtec, Melco, Denso и так далее.

  17. Аватар для KHN09

    offline

    Калибровщик

    Регистрация:
    13.04.2008
    Сообщений:
    1,289
    Адрес:
    Челябинск

    Зачем мне искать? Ответ был вот на этот пост.

  18. Аватар для almi

    offline

    Программист/реверсер

    Регистрация:
    02.06.2002
    Сообщений:
    17,963
    Адрес:
    Ярославль разработчик SMS-Soft

    Речь о том, что Олс без наличия дамосов превращается в «угадай мелодию». А дамосов для подавляющего большинства систем нет и не предвидится.
    Именно по этой причине ОЛС=«угадайка» для очень многих систем.

  19. Аватар для KHN09

    offline

    Калибровщик

    Регистрация:
    13.04.2008
    Сообщений:
    1,289
    Адрес:
    Челябинск

    Олс тоже своего рода инструмент, примитивную маску там найти не проблема. Можно самому что-то сделать, в стр7 что дали тем и работай.

    Последний раз редактировалось KHN09; 07.08.2014 в 20:34.

  20. Аватар для Денастий

    offline

    автомастер

    Регистрация:
    05.01.2008
    Сообщений:
    1,477
    Адрес:
    Донбасс

    В ваших словах правда есть , но не сидеть же сложа руки , ваша команда как — то же находит карты константы и т.п. делая модуль к редактору . Тем более если автомобиль стоящий ( в смысле клиент адекватный и платёже способный ) можно уделить время — время это опыт …

  21. Аватар для Иоанн

    Находит, разбирая на составные части тело прошивки. Как бы на молекулы. Это если по-простому. Попробуйте это сделать хотя бы при помощи IDA Pro.

  22. Аватар для KHN09

    offline

    Калибровщик

    Регистрация:
    13.04.2008
    Сообщений:
    1,289
    Адрес:
    Челябинск

    Ну ты насмешил))) (хотя бы) ты тока флудить горазд, IDA Disassembler в глаза хоть раз видел?

  23. Аватар для Lrsp

    инженер-программист

    Регистрация:
    21.06.2002
    Сообщений:
    6,288
    Адрес:
    МО

    KHN09, судя по тону высказывания вы знаете что это такое?

  24. Аватар для Yakudza

    offline

    Диагностика авто

    Регистрация:
    29.12.2009
    Сообщений:
    1,363
    Адрес:
    Орловская обл.

    Чем насмешил он, видели может и многие, это не засекреченная программа.
    Я вот самолеты каждый день вижу, а летать так и не научился.

    Изображения:

  25. Аватар для KHN09

    offline

    Калибровщик

    Регистрация:
    13.04.2008
    Сообщений:
    1,289
    Адрес:
    Челябинск


Закрытая тема.

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
Текущее время: 20:40. Часовой пояс GMT +4.

Форум РадиоКот • Просмотр темы — Большой размер прошивки после компиляции

Сообщения без ответов | Активные темы

ПРЯМО СЕЙЧАС:

Автор Сообщение

Не в сети

Заголовок сообщения: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 19:21:52 

Встал на лапы
Аватар пользователя

Зарегистрирован: Ср окт 26, 2011 13:38:13
Сообщений: 141

Рейтинг сообщения: 0

Доброго времени суток.
Пытаюсь в амеге 8 работать с числами с плавающей точкой, в коде проводятся некоторые вычисления и полученый результат дальше используется. Получается так что после того как откомпилирую исходник прошивка получается нереально большой, пишу на Си, компилирую в avr-gcc.

Вот пример кода

Код:

#define F_CPU 10000000UL

#include <stdio.h>
#include <avr/io.h>

int timer0;
int timer1;
int presc;

int SetFreq(char set){      
   //tik = 0.0000257;

         float tik = (((1.0/((10000000.0/presc)/256.0))/255.0)*10000000.0)/10000000.0;

      int freq = (int)(1.0/(256.0-timer0)*tik)/2.0;
   freq+10;

      //printf(«%f», tik);
   //puts(«rn»);
   int temp = (int)(256.0-(((1.0/freq)/tik)/2.0));
   if(temp>0 && temp<=256){
      //printf(«%d», temp);
      //puts(«okrn»);
      timer0 = temp;
   }

   return 1;
}

int main(void){   
   timer0 = 256-161;
   timer1 = 999;
   presc = 256;

      SetFreq(‘1’);

      while(1)
   {
      //_delay_ms(500);
   }
}

Откомпилировав получаю hex файл размером 9,8Kb :shock: :shock: :shock: ну как так :(


_________________
Это не хвост, это антенна

Вернуться наверх
 

ПрофильПрофиль

 

Реклама

Kavka

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 19:46:54 

Мудрый кот
Аватар пользователя

Карма: 24

Рейтинг сообщений: 286

Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины

Рейтинг сообщения: 0

Ну, а вы как себе представляете как реализуются операции с плавающей точкой на 8-битном процессоре имеющим команды только для сложения, вычитания и умножения?

Какая версия gcc? Какие опции компилятора?

У меня получилось меньше.
Program: 3592 bytes (43.8% Full)
Data: 270 bytes (26.4% Full)

Думаю, что можно ещё меньше получить… :idea:


_________________
Когда уже ничего не помогает — прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души — Леонтьев А. (сказано в 1965 г.)

Вернуться наверх
Реклама

ibiza11

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 19:56:04 

Мудрый кот
Аватар пользователя

Карма: 21

Рейтинг сообщений: 143

Зарегистрирован: Сб фев 21, 2009 13:11:40
Сообщений: 1899
Откуда: Москва

Рейтинг сообщения: 0

dem66 писал(а):

Откомпилировав получаю hex файл размером 9,8Kb :shock: :shock: :shock: ну как так :(

.hex всегда больше прошивки.


_________________
Ставим плюсы: )

Вернуться наверх

dem66

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:05:10 

Встал на лапы
Аватар пользователя

Зарегистрирован: Ср окт 26, 2011 13:38:13
Сообщений: 141

Рейтинг сообщения: 0

ibiza11, не ну это понятно, но не на столько же.

avr-gcc -v
Using built-in specs.
Target: avr
Configured with: ../configure —target=avr —prefix=/usr/local/avr —disable-nls —enable-language=c : (reconfigured) ../configure —target=avr —prefix=/usr/local/avr —disable-nls —enable-language=c —disable-libssp
Thread model: single
gcc version 4.3.2 (GCC)

Опции компиляции

Код:

avr-gcc -mmcu=atmega8 -g -Os -Werror -lm  -mcall-prologues -o firmware.o freq.c

Пробовал также компилировать с опцией -Wall, бестолку.

Kavka, возможно просто ваш компилятор посчитал некоторые строки ненужными и тупо вырезал


_________________
Это не хвост, это антенна

Вернуться наверх
Реклама

Выгодные LED-драйверы для решения любых задач

КОМПЭЛ представляет со склада и под заказ широкий выбор LED-драйверов производства MEAN WELL, MOSO, Snappy, Inventronics, EagleRise. Линейки LED-драйверов этих компаний, выполненные по технологии Tunable White и имеющие возможность непосредственного встраивания в систему умного дома (димминг по шине KNX), перекрывают практически полный спектр применений: от простых световых указателей и декоративной подсветки до диммируемых по различным протоколам светильников внутреннего и наружного освещения.

Подобрать LED-драйвер>>

shads

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:09:41 

Опытный кот
Аватар пользователя

Карма: 8

Рейтинг сообщений: 105

Зарегистрирован: Ср фев 22, 2012 01:25:21
Сообщений: 882

Рейтинг сообщения: 0

Вернуться наверх
Реклама

Реклама

LIMF – источники питания High-End от MORNSUN со стандартным функционалом на DIN-рейку

На склад Компэл поступили ИП MORNSUN (крепление на DIN-рейку) с выходной мощностью 240 и 480 Вт. Данные источники питания обладают 150% перегрузочной способностью, активной схемой коррекции коэффициента мощности (ККМ; PFC), наличием сухого контакта реле для контроля работоспособности (DC OK) и возможностью подстройки выходного напряжения. Источники питания выполнены в металлическом корпусе, ПП с компонентами покрыта лаком с двух сторон, что делает ее устойчивой к соляному туману и пыли. Изделия соответствуют требованиям ANSI/ISA 71.04-2013 G3 на устойчивость к коррозии, а также нормам ATEX для взрывоопасных зон.

Подробнее>>

Kavka

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:25:06 

Мудрый кот
Аватар пользователя

Карма: 24

Рейтинг сообщений: 286

Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины

Рейтинг сообщения: 0

ibiza11, да уж, про HEX я «промахнулся» :)

Но размер можно ещё уменьшить.
У меня получилось так:
Program: 1372 bytes (16.7% Full)
Data: 6 bytes (0.6% Full)
HEX: 3875

gcc version 4.3.3 (WinAVR 20100110)

dem66, shads
Не помню где читал:
«Народ всё больше и больше отключает свои мозги и полагается на компьютеры с работающими там программами, забывая о том, что программы пишут такие же отключающие мозги… Процесс итерационный…»
Печалька, в общем. :(

Документацию не читаем, а возмущаемся
http://www.nongnu.org/avr-libc/user-man … l#faq_math


_________________
Когда уже ничего не помогает — прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души — Леонтьев А. (сказано в 1965 г.)

Вернуться наверх

HHIMERA

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:30:21 

Карма: -18

Рейтинг сообщений: 29

Зарегистрирован: Вс дек 05, 2010 06:10:34
Сообщений: 4583
Откуда: ЮВ

Рейтинг сообщения: 0

Kavka писал(а):

Но размер можно ещё уменьшить.
У меня получилось так:
Program: 1372 bytes (16.7% Full)
Data: 6 bytes (0.6% Full)
HEX: 3875

gcc version 4.3.3 (WinAVR 20100110)

Подверждаю эти цифры…
==

Ничему AVReal некоторых так и не научил… видать было сразу… «Не в коня корм!»… :)))


_________________
«Я не даю готовых решений, я заставляю думать!»(С)

Вернуться наверх

Kavka

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:35:24 

Мудрый кот
Аватар пользователя

Карма: 24

Рейтинг сообщений: 286

Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины

Рейтинг сообщения: 0

Мне вот интересно. :) А «правильный» вопрос будет задан или нет?


_________________
Когда уже ничего не помогает — прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души — Леонтьев А. (сказано в 1965 г.)

Вернуться наверх

shads

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:39:51 

Опытный кот
Аватар пользователя

Карма: 8

Рейтинг сообщений: 105

Зарегистрирован: Ср фев 22, 2012 01:25:21
Сообщений: 882

Рейтинг сообщения: 0

HHIMERA писал(а):

Ничему AVReal некоторых так и не научил… видать было сразу… «Не в коня корм!»… :)))

Ты хвастать только можеш… гений…..
Когда вопрос задали… че не ответил? народ за быдло считаеш….. ну и считай….. «всезнающий и всемогущий»…..

Вернуться наверх

HHIMERA

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:45:15 

Карма: -18

Рейтинг сообщений: 29

Зарегистрирован: Вс дек 05, 2010 06:10:34
Сообщений: 4583
Откуда: ЮВ

Рейтинг сообщения: 0

shads писал(а):

че не ответил?

А зачем???
AVReal’а ещё раз пересказывать??? И что толку… сколько можно???

Цитата:

народ за быдло считаеш….. ну и считай….. «всезнающий и всемогущий»…..

Народ — нет…
Быдло — да…


_________________
«Я не даю готовых решений, я заставляю думать!»(С)

Вернуться наверх

ploop

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 20:57:00 

Модератор
Аватар пользователя

Карма: 68

Рейтинг сообщений: 424

Зарегистрирован: Ср ноя 26, 2008 16:34:25
Сообщений: 13492
Откуда: Тамбовская обл.

Рейтинг сообщения: 0

Медали: 1

Получил миской по аватаре (1)

Срач прекращаем. Отвечаем на вопрос аргументированно, с чувством, с толком, с расстановкой…

Вернуться наверх

dem66

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 22:26:36 

Встал на лапы
Аватар пользователя

Зарегистрирован: Ср окт 26, 2011 13:38:13
Сообщений: 141

Рейтинг сообщения: 0

Блин развели тут черт знает что.

а по теме то откомпилировал это дело в

Код:

avr-gcc-4.6.2 -Wall -mmcu=atmega8 -g -Os -Werror -lm  -mcall-prologues -o firmware.o freq.c

И оно вместе 9,5 уже 10,2Кб :))


_________________
Это не хвост, это антенна

Вернуться наверх

HHIMERA

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 23:03:13 

Карма: -18

Рейтинг сообщений: 29

Зарегистрирован: Вс дек 05, 2010 06:10:34
Сообщений: 4583
Откуда: ЮВ

Рейтинг сообщения: 0

dem66 писал(а):

а по теме то откомпилировал это дело

Это не дело… так проги не пишут…
Это просто ужас… а вы за размер HEX переживаете…


_________________
«Я не даю готовых решений, я заставляю думать!»(С)

Вернуться наверх

dem66

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 23:09:43 

Встал на лапы
Аватар пользователя

Зарегистрирован: Ср окт 26, 2011 13:38:13
Сообщений: 141

Рейтинг сообщения: 0

А как пишут а?


_________________
Это не хвост, это антенна

Вернуться наверх

Ser60

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Чт фев 14, 2013 23:55:48 

Друг Кота
Аватар пользователя

Карма: 74

Рейтинг сообщений: 586

Зарегистрирован: Ср дек 24, 2008 09:58:58
Сообщений: 3578

Рейтинг сообщения: 0

Медали: 3

Мявтор 1-й степени (1)

Мявтор 2-й степени (1)

Мявтор 3-й степени (1)

Замечания по коду:

1. Зачем в формуле
float tik = (((1.0/((10000000.0/presc)/256.0))/255.0)*10000000.0)/10000000.0;
сначала умножать величину на 10000000.0 в конце формулы а потом делить на нее?
Если уж вычислять по этой формуле, то следует ее сначала упростить до
freq = precs * (256/(255 * 10^7))
и вычислить константу на калькуляторе, потом подставив в формулу. Получится только одно умножение с плавающей точкой.

2. Формулу для temp
int temp = (int)(256.0-(((1.0/freq)/tik)/2.0));
можно переписать в виде
temp = 256 — (tik/freq)/2

Из формулы для freq
int freq = (int)(1.0/(256.0-timer0)*tik)/2.0;
получаем
tik/freq = 2(256 — timer0)

Подставляя это в выражение для temp получим
temp = 256 — (tik/freq)/2 = 256 — 2(256 — timer0))/2 = timer0

Получается, что вычисления с плавающей точкой здесь не нужны вообще (?)

Вернуться наверх

Kavka

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Пт фев 15, 2013 05:38:46 

Мудрый кот
Аватар пользователя

Карма: 24

Рейтинг сообщений: 286

Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины

Рейтинг сообщения: 0

dem66 писал(а):

Код:

avr-gcc-4.6.2 -Wall -mmcu=atmega8 -g -Os -Werror -lm  -mcall-prologues -o firmware.o freq.c

Не ужель никто не видит? :shock:

dem66 писал(а):

Kavka, возможно просто ваш компилятор посчитал некоторые строки ненужными и тупо вырезал

Неа. Компилятор нормально всё делает. Точно так как ему указали! Точно в соответствии алгоритму заложенному в программу.
Только из-за незнания заложенного алгоритма мы, в том что указано, подразумеваем одно, а компилятор — другое. (Только не надо обвинять компьютер, что он тупой. :)) )

Ser60, это уже другой аспект. Изначально надо с компиляцией разобраться.


_________________
Когда уже ничего не помогает — прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души — Леонтьев А. (сказано в 1965 г.)

Вернуться наверх

urry

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Пт фев 15, 2013 09:36:38 

Сверлит текстолит когтями
Аватар пользователя

Карма: 22

Рейтинг сообщений: 78

Зарегистрирован: Пн дек 08, 2008 10:58:48
Сообщений: 1257
Откуда: Винница

Рейтинг сообщения: 0

Что не видит ?
Что флоат здесь и близко не нужен или что вместе с одним файлом линкуется второй ?

Вернуться наверх

Kavka

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Пт фев 15, 2013 10:28:33 

Мудрый кот
Аватар пользователя

Карма: 24

Рейтинг сообщений: 286

Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины

Рейтинг сообщения: 0

Про уместность флоата — отдельная тема. Я выше уже говорил.
А по поводу линковки… В том то и дело, что НЕ линкуется!
Код прежний — из первого сообщения темы.
Опции те, что dem66 приводил.

Код:

> avr-gcc -mmcu=atmega8 -g -Os -Werror -lm  -mcall-prologues -o fp_test.o test_fp.c
> avr-size fp_test.o
   text    data     bss     dec     hex filename
   3328     264       6    3598     e0e fp_test.o

> avr-gcc -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o fp_test.o test_fp.c -lm
> avr-size fp_test.o
   text    data     bss     dec     hex filename
   1394       0       6    1400     578 fp_test.o

Как говориться — найдите отличия. :)

Если всё делать в 4й студии, то она правильно всё делает при подключении математической библиотеки.
А 6-ую студию, видать, уже поумнее сделали, она судя по всему, автоматом подключает математическую библиотеку.

Вот ещё примерчик накидал.
В зависимости от места в командной строке опции -lm результат будет разным.
И это только с объектными файлами. С библиотеками бывает ещё хуже.

Код:

# COMPILE
avr-gcc -c -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o test_fp.o test_fp.c
avr-gcc -c -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o test_fp1.o test_fp1.c
avr-gcc -c -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o test_fp2.o test_fp2.c

# LINK
avr-gcc -mmcu=atmega8 -g -Os -Werror -mcall-prologues -lm -o test_fp.bin test_fp.o test_fp1.o test_fp2.o
avr-size test_fp.bin
   text    data     bss     dec     hex filename
   3600     264       6    3870     f1e test_fp.bin

avr-gcc -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o test_fp.bin test_fp.o -lm  test_fp1.o test_fp2.o
avr-size test_fp.bin
   text    data     bss     dec     hex filename
   3600     264       6    3870     f1e test_fp.bin

avr-gcc -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o test_fp.bin test_fp.o -lm  test_fp1.o -lm  test_fp2.o
avr-size test_fp.bin
   text    data     bss     dec     hex filename
   1666       0       6    1672     688 test_fp.bin

avr-gcc -mmcu=atmega8 -g -Os -Werror -mcall-prologues -o test_fp.bin test_fp.o -lm  test_fp1.o test_fp2.o -lm
avr-size test_fp.bin
   text    data     bss     dec     hex filename
   1666       0       6    1672     688 test_fp.bin


_________________
Когда уже ничего не помогает — прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души — Леонтьев А. (сказано в 1965 г.)

Вернуться наверх

urry

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Пт фев 15, 2013 11:36:54 

Сверлит текстолит когтями
Аватар пользователя

Карма: 22

Рейтинг сообщений: 78

Зарегистрирован: Пн дек 08, 2008 10:58:48
Сообщений: 1257
Откуда: Винница

Рейтинг сообщения: 0

да ну, раздули ерунду на 100 постов. Редактировать нужно Makefile , а не командную строку, не царское это дело, в ней ковыряться. Тогда оно правильно все построит. А ручками воткнуть посредине, оно считает, наверное, что это одна из опций оптимизации и выбрасывает, не матерясь, за ненадобностью.
-lm значит всего лишь, что линкером подключается математическая библиотека libm.a , а в какой версии — 4 или 6 — до лампочки, я так думаю.
TARGET = tar
F_CPU = 10000000
CSRC = main.c
ASRC =
MCU_TARGET = atmega8
OPTIMIZE = -Os -mcall-prologues
DEFS =
LIBS = -lm
DEBUG = dwarf-2

Вернуться наверх

Kavka

Не в сети

Заголовок сообщения: Re: Большой размер прошивки после компиляции

СообщениеДобавлено: Пт фев 15, 2013 12:08:33 

Мудрый кот
Аватар пользователя

Карма: 24

Рейтинг сообщений: 286

Зарегистрирован: Чт июн 10, 2010 08:55:35
Сообщений: 1810
Откуда: Сибирские Афины

Рейтинг сообщения: 0

Согласен, если бы автор темы правил makefile, или из студии настраивал то и вопроса не было бы.

А если нету makefile-а? Здравствуте грабли!?
В общем есть такая особенность. Кому интересно — возьмёт на заметку.


_________________
Когда уже ничего не помогает — прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души — Леонтьев А. (сказано в 1965 г.)

Вернуться наверх

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Содержание

  1. Способы извлечения и замены файлов в прошивках Android-устройств
  2. Что представляет собой прошивка
  3. Стоит ли распаковывать прошивку
  4. Распаковка прошивки Android в ZIP-формате
  5. Распаковка IMG-прошивок
  6. Преобразование KDZ-архива в DZ-архив для последующего создания BIN-папки и привычных архивов
  7. Распаковка QSB и INB-прошивок
  8. Как прошить устройства на базе Android
  9. Кастомный Android: делаем свою прошивку из стоковой, не копаясь в исходниках
  10. Содержание статьи
  11. Структура ZIP-файла с прошивкой
  12. Xakep #283. Змеиная пирамида
  13. Распаковываем system.new.dat
  14. Скрипт
  15. Ручной способ
  16. Структура каталогов Android
  17. Удаляем и добавляем приложения
  18. Меняем анимацию загрузки
  19. Изменяем звуковое оформление
  20. Добавляем шрифты
  21. Меняем системные настройки (build.prop)
  22. Внедряем в прошивку Google Apps
  23. Свободное место
  24. Сборка
  25. Подводные камни
  26. Установка
  27. Выводы

Способы извлечения и замены файлов в прошивках Android-устройств

Частые зависания системы и другие ошибки являются результатом некорректной работы программного обеспечения. Проблемные программы можно легко удалить. Но что делать с установленным софтом, который не удаляется из системы? В таких случаях устройство необходимо перепрошить на более стабильную версию или самостоятельно внести правки в ОС. В данном посте вы узнаете, как открыть прошивку Android для последующего ее изменения.

Что представляет собой прошивка

Прошивка – это операционная система, которая соединяет в единую цепь весь технический потенциал гаджета и предоставляет пользователю оптимальные эксплуатационные возможности. Данное программное обеспечение является основой всех современных многофункциональных устройств.

На просторах глобальной сети можно найти внушительное количество официальных и кастомных прошивок, открывающих дополнительные возможности.

Стоит ли распаковывать прошивку

Распаковка прошивки представляет собой непростой процесс, который требует времени и соответствующих навыков, но является весьма актуальным и полезным.

Посредством распаковки пользователь может внести корректировки в работу самых различных элементов установленного программного обеспечения, исключив тем самым возможность появления ошибок, зависаний и многих других неприятных моментов без перепрошивки и замены ПО.

Задумавшись над вопросом, нужно ли распаковывать прошивку Android, вы наверняка найдете пару дополнительных плюсов. Из распакованной прошивки можно извлечь apk-файлы или интегрировать инсталляторы прочих программ.

Распаковка прошивки Android в ZIP-формате

Любые ZIP-папки распаковываются привычным архиватором, например WinZip. При этом процесс распаковки занимает всего несколько минут, так как объем сжатых файлов не превышает 500 Мб. Скачать и установить программу можно на любой компьютер.

Для распаковки Android-прошивки нужно найти архив на ПК, кликнуть на нем правой кнопкой мыши, выбрать распаковку и указать директорию для переноса всех файлов. Решая, чем распаковать ZIP-прошивку Android или любой другой архив в данном формате, можете воспользоваться такими архиваторами, как WinRAR, 7-Zip, PeaZip или IZArc.

Распаковка IMG-прошивок

Популярным расширением архивов c инсталляционными файлами и прочими данными по прошивке является .img. Это особый подвид архивов, который не разбирается на составляющие привычными методами.

Если вы не знаете, как открыть IMG-прошивку Android на Huawei, понадобится выполнить ряд специфических действий и скачать дополнительный софт. Для работы с прошивками такого типа понадобятся утилиты EXT4 Unpacker и EXT2 Explore. После их скачивания можно приступить к процессу извлечения файлов, который проходит по такой схеме:

  1. Распакуйте IMG-архив прошивки в любую директорию на компьютере.
  2. Запустите программу EXT4 Unpacker и с ее помощью найдите файл system.img.
  3. Сохраните файл system.img с расширением .ext4 с помощью кнопки «Сохранить как».
  4. После распаковки запустите софт EXT2 Explore от имени администратора. Во вкладке «File» выберите пункт «Open Image», укажите место расположения ранее созданного system.ext4.
  5. В правой части окна программы EXT2 Explore нажмите на иконку жесткого диска правым кликом мышки, в выпадающем меню выберите опцию «Save». Будет предложена директория для извлечения, укажите любую удобную папку и дождитесь окончания процесса.

Так осуществляется распаковка IMG-прошивки Android с целью извлечения из нее полезных данных и инсталляторов.

Преобразование KDZ-архива в DZ-архив для последующего создания BIN-папки и привычных архивов

KDZ – формат прошивок, которые зачастую использует в своих устройствах компания LG. Распаковка данных файлов требует использования дополнительного софта, поскольку обычные архиваторы не способны обеспечить необходимый доступ к утилитам прошивки и предустановленным инсталляторам.

Если вы думаете, как самому поменять файлы в прошивке Android формата .kdz, заблаговременно скачайте программы Windows LG Firmware Extract и EXT2 Explore. Процесс распаковки выполняется за схемой:

  1. Запустите Windows LG Firmware Extract, укажите рабочую папку «Working Folder». Ею может оказаться любая директория на ПК, куда вы хотите произвести распаковку.
  2. Нажмите на кнопку «Open», в поле «KDZ / TOT File» выберите файл своей прошивки. Вы увидите все файлы, которые хранятся в KDZ-архиве.
  3. Нажмите на кнопку «Extract KDZ» и дождитесь, пока программа отформатирует архив в DZ-формат. Об успешном окончании процесса будет свидетельствовать надпись «Progress Done».
  4. Перейдите к пункту «DZ File», выберите в нем только что созданную прошивку в DZ-формате. Откроется таблица имеющихся в архиве файлов. Нужно выбрать все файлы с расширением .bin и нажать на кнопку «Extract DZ». После завершения процесса появится надпись «Progress extract DZFile Done».
  5. Для преобразования файлов .bin в формат .img необходимо нажать на кнопку «Merge System bin». В директории, которую вы изначально указали в качестве рабочей папки, будет создан каталог «Merge output», в котором найдете system.img.

Для открытия этого файла вами заранее была скачана программа EXT2 Explore. С ее помощью вы сможете убрать из прошивки все необходимое и достать полезные инсталляторы для кастомной прошивки.

Распаковка QSB и INB-прошивок

Прошивки с расширением .qsb и .inb являются прерогативой устройств компании Lenovo. Их распаковка не занимает большого количества времени и проводится посредством всего одной утилиты LenovoWinTools.

Данная программа имеет интуитивно понятное управление и предоставляет массу дополнительных возможностей. Помимо распаковки прошивок она позволяет осуществлять быструю обратную сборку прошивки с уже измененными файлами, способствует комфортной работе с контекстным меню, проводит сборку нескольких частей файлов в один.

Для работы с прошивкой через редактор LenovoWinTools достаточно установить русифицированную программу, зайти в пункт «Файл» и посредством имеющихся инструментов выбрать свою прошивку. Далее потребуется подождать, и тогда прямо из программы сможете оперировать файлами прошивки.

Как прошить устройства на базе Android

Найдите новую или кастомную версию операционной системы и проведите ее установку. Сделать это можно несколькими способами: с использованием ПК и без него. Принципы обновления прошивок на всех устройствах схожи, но есть некоторые нюансы, которые относятся к определенным моделям и маркам устройств.

Источник

Кастомный Android: делаем свою прошивку из стоковой, не копаясь в исходниках

Содержание статьи

Начнем с того, что тебе нужен Linux. В Windows ты сможешь только разобрать прошивку, но собрать обратно уже не получится по чисто техническим причинам. Теперь о прошивке. Обычно они распространяются в виде ZIP-архивов, прошиваемых через кастомные рекавери. Именно один из них нам и понадобится для опытов. Начинать путь ромодела я рекомендую с какой-нибудь максимально приближенной к AOSP кастомной прошивки, потому что в ней зачастую проще разобраться, чем в стоке.

Нужный ZIP можно найти на XDA Developers или 4PDA. Но имей в виду, что нужна прошивка конкретно для твоей модели аппарата, — у того же Galaxy S7 есть несколько модификаций для разных рынков, не всегда совместимых между собой.

Структура ZIP-файла с прошивкой

После загрузки распакуем архив с помощью любого архиватора. Внутри будет следующий набор файлов и папок:

  • META-INF — папка с метаинформацией о прошивке (сертификат автора, манифест со списком файлов, их контрольными суммами), скриптом обновления (updater-script) и инсталлятором (update-binary), который выполняет команды скрипта по монтированию разделов, копированию файлов и другим действиям с NAND-памятью;
  • boot.img — образ с ядром и RAM-диском (он прошивается в раздел boot);
  • system.new.dat — это, грубо говоря, и есть сама прошивка, а точнее образ раздела system, содержащий операционную систему Android за вычетом ядра;
  • system.transfer.list — содержит список команд, которые необходимо выполнить, чтобы поблочно скопировать содержимое system.new.dat в раздел system при установке прошивки;
  • system.patch.dat — используется для OTA-обновлений, то есть выборочного внесения изменений в прошивку; если прошивка «полная», он имеет нулевой размер.

Содержимое ZIP-файла прошивки LineageOS для Nexus 5

Xakep #283. Змеиная пирамида

Распаковываем system.new.dat

Файлы system.new.dat и system.transfer.list представляют для нас наибольший интерес. Точнее, не они, а содержащаяся в них система. Но добраться до нее не так просто.

Скрипт

Самые ленивые могут разобрать прошивку с помощью скрипта System_Extractor-Linux.

  1. Распаковываем архив с прошивкой в любую папку.
  2. Качаем скрипт по ссылке и разархивируем в любую папку.
  3. Запускаем файл ext (если будет ругаться на отсутствие Java, просто пропусти, нажав y ; Java нужна только для запаковки).
  4. Теперь выбираем распаковку, нажав кнопку 1, а затем Enter.
  5. Новая папка с именем extract_* появится рядом с файлом ext и папкой tools . Копируем в нее файлы system.new.dat и system.transfer.list .
  6. После копирования файлов нажимаем Enter и ждем. Через некоторое время нужно будет опять нажать Enter, ввести пароль администратора и еще раз тапнуть Enter.
  7. Готово. Содержимое system в папке extract_*/output .

Скрипт для распаковки system.new.dat в Linux

Ручной способ

Распаковываем архив с прошивкой в любую папку (например, в rom ):

Скачиваем нужные нам инструменты в эту папку:

Он преобразует файл system.new.dat в raw-образ с именем system.img . Монтируем образ к подпапке mnt :

Содержимое образа system

Структура каталогов Android

После распаковки system появится следующая каталоговая структура:

  • app — предустановленные приложения со стандартными привилегиями;
  • priv-app — предустановленные приложения с повышенными привилегиями, в том числе некоторые компоненты системы;
  • bin — бинарные файлы формата ELF, аналог каталогов /bin и /usr/bin в Linux. Содержит различные системные компоненты, используемые более высокоуровневыми компонентами системы;
  • etc — файлы настроек. Полный аналог /etc в Linux, используемый, однако, только теми самыми системными компонентами. Приложения Android хранят индивидуальные настройки в каталогах /data/data/ ;
  • fonts — шрифты. По умолчанию содержит только фирменные шрифты Roboto;
  • framework — библиотеки Java-классов, используемых системой и приложениями. Тут же лежит файл framework-res.apk , содержащий полное описание интерфейса операционной системы, включая все графические файлы;
  • lib и lib64 — Linux-библиотеки, используемые низкоуровневыми компонентами системы. Аналог каталогов /lib и /usr/lib в Linux, включая такие стандартные библиотеки, как libc, libz, libssl. На устройствах с архитектурой ARMv7 и ниже каталог lib64 будет отсутствовать;
  • media — медиафайлы: рингтоны, звуки уведомлений, звуки интерфейса и анимация загрузки ОС;
  • tts — файлы, необходимые синтезатору речи;
  • usr — каталог, который обычно содержит файлы, необходимые для работы приложений из каталога bin. По сути, аналог /usr/share ;
  • vendor — файлы, поставляемые производителем устройства. Обычно содержит бинарный firmware для различных железных компонентов, например модуля Wi-Fi;
  • xbin — необязательный каталог; кастомные прошивки используют его для хранения таких вещей, как интерпретатор bash, SSH, PowerTOP, BusyBox, и других полезных инструментов;
  • build.prop — файл, содержащий информацию о сборке, а также различные низкоуровневые настройки;
  • addon.d — содержит скрипты, запускаемые после установки прошивки. Сюда же GApps прописывают свой скрипт, благодаря которому возрождаются после переустановки прошивки.

Ознакомившись с базовой структурой Android, начнем вносить изменения.

Удаляем и добавляем приложения

Все предустановленные программы можно найти в двух папках:

Друг от друга они отличаются привилегиями доступа. Если программы из app имеют такие же полномочия, как сторонние программы (например, установленные из Play Store), то приложения из priv-app могут использовать привилегированные API (права privileged). Подробнее об этом можно узнать из нашей статьи.

Для предустановки приложения в прошивку просто кинь ее APK-файл в /system/app/ . Можно, конечно, создать отдельную папку, но в нашем случае в этом нет смысла, потому что папка служит для хранения библиотек и odex-файлов, которых у нас попросту нет. Для удаления просто удали папку с ним.

Можно пойти дальше и поменять стоковые приложения на аналоги. К примеру, для замены календаря удаляем папку Calendar и копируем в /system/app наш любимый com.rpagyc.simplecalendar.apk . А можно и не копировать. Тогда прошивка будет без календаря.

Главное, помни: стоковые программы могут быть связаны между собой. Поэтому удаление одной проги вполне может привести к полной неработоспособности другой (к примеру, CalendarProvider и Calendar: удалив первый, ты сделаешь неработоспособным не только стоковый, но и любой другой календарь). К счастью, в чистых AOSP-прошивках взаимосвязей не так много.

Меняем анимацию загрузки

Анимация хранится в виде PNG-картинок, упакованных в архив /system/media/bootanimation.zip без сжатия. Внутри архива находятся:

  • desc.txt — файл, описывающий анимацию;
  • part0 — папка с файлами анимаций, которые воспроизводятся первыми;
  • part1 — папка с файлами анимаций, которые воспроизводятся вторыми;
  • .
  • part? — крайняя папка, изображения с которой воспроизводятся в конце.

Файл desc.txt может содержать нечто вроде

Назначение этих строк интуитивно понятно: 1920 × 1080 — разрешение картинки, 60 — число кадров в секунду. Part0 и part1 указывают на папки, из которых будет воспроизводиться анимация, и последовательность воспроизведения. Вообще, может быть как одна часть, так и несколько (три и больше).

Изображения, находящиеся в папках part, пронумерованы пятью цифрами в порядке воспроизведения: 00000.png , 00001.png , 00002.png . Эти изображения можно поменять на свои, тем самым создав оригинальную анимацию. А можно просто удалить файл bootanimation.zip . Тогда девайс будет показывать анимацию из стандартного Android. Или воспользоваться уже готовой коллекцией анимаций на 4PDA.

Четыре части в bootanimation.zip для LineageOS

Изменяем звуковое оформление

Фактически все звуки, которые воспроизводит система, хранятся в папке /system/media/audio . Внутри нее ты найдешь следующие папки:

  • alarms — мелодии будильника;
  • notifications — звуки уведомлений;
  • ringtones — мелодии звонка;
  • ui — системные звуки, например низкий заряд батареи, фокусировка камеры, выбор элементов интерфейса.

В alarms, notifications, ringtones можно накидать сколько угодно любых мелодий. Взять их можно, например, здесь:

И маленький лайфхак: удаление файлов из папки ui приведет не к сбоям и ошибкам, а к исчезновению системных звуков. Поэтому ты можешь легко отключить звук создания снимка с камеры, снятия скриншота, просто потерев содержащие эти звуки файлы (их имена интуитивно понятны).

Добавляем шрифты

Шрифты хранятся в fonts . Найти архивы с файлами шрифтов можно на 4PDA и XDA. Для установки достаточно скопировать с заменой ttf-файлы из архива в папку fonts .

Меняем системные настройки (build.prop)

В образе system есть интересный файлик build.prop , содержащий множество полезной информации о железе устройства и настройках, устанавливаемых по умолчанию, для различных стоковых приложений. Справедливости ради замечу, что это не всегда так. Например, в Gigaset ME и ME Pro build.prop разделен на две части. В одной части содержатся настройки для Gigaset ME, а для ME Pro некоторые строки продублированы, но ключи (название смартфона и так далее) в них другие. Это было сделано, чтобы обеспечить более-менее корректную работоспособность одной и той же прошивки на разных аппаратах.

Дополнительный файл для Gigaset ME и ME Pro

Build.prop содержит (или может содержать) огромное количество настроек. Некоторые из них ничего не меняют, некоторые улучшают одно за счет ухудшения другого, но есть те, которые действительно полезны:

  • ro.product.model и ro.product.manufacturer — модель смартфона и имя производителя. С помощью замены этих строк можно заставить Play Store думать, будто у тебя другой смартфон, что откроет доступ к большему количеству софта. Для всяких малоизвестных китайских смартфонов эти строчки могут стать спасительными;
  • hw.qemu.mainkeys — принимает только два значения: 0 — показать наэкранные клавиши навигации, 1 — не показывать кнопки. Отсутствие строки соответствует 0;
  • debug.sf.nobootanimation — значение 1 отключает анимацию загрузки, что немного поднимает ее скорость. Установка 0 или удаление строки возвращает анимацию на место;
  • ro.telephony.default_network — говорит системе, в какой режим должна быть переключена мобильная сеть при загрузке;
  • ro.sf.lcd_density — DPI дисплея, наиболее точное значение для дисплея можно посчитать через удобный сайт. Но никто не запрещает поставить и большее или меньшее значение по своему вкусу: более высокие значения делают элементы интерфейса крупнее, низкие — меньше;
  • ro.config.vc_call_vol_steps — количество шагов громкости во время разговора (по умолчанию 8);
  • ro.config.media_vol_steps — количество шагов громкости мультимедиа (по умолчанию 15).

Внедряем в прошивку Google Apps

Почти всегда кастомные прошивки поставляются без сервисов Google и магазина приложений. Разработчики предлагают нам установить их отдельно с помощью пакета GApps. Однако его можно интегрировать прямо в прошивку.

Для начала необходимо скачать пакет GApps. Я рекомендую брать архивы Open GApps. Выбираешь версию Android, архитектуру процессора и вариант комплектации (Pico, Nano, Stock. ), который определяет, сколько различных приложений Google содержит архив. Я рекомендую скачать версию Pico. Она содержит только Play Store и набор необходимых для его работы библиотек.

Интеграция GApps в прошивку выполняется так:

  1. Распаковываем ZIP-архив GApps с помощью любого архиватора.
  2. Переходим в папку Core.
  3. Видим множество архивов с расширением .tar.lz . Извлекаем с помощью lzip.
  4. После распаковки копируем файлы из папок в соответствующие папки в system. Что куда кидать, нетрудно догадаться по структуре каталогов в архиве. Например, configupdater (со скриншота) нужно кидать в папку priv-app .
  5. Переходим в папку GApps (находится рядом с Core) и проделываем пункты 3 и 4 для файлов в ней.
  6. Все, мы интегрировали GApps в нашу прошивку!

Структура каталогов configupdater-all.tar.lz

Свободное место

Необходимо понимать, что место для установки прошивок ограниченно. Нельзя установить прошивку, размер которой перевешивает размер раздела system устройства. Посмотреть его значение можно, используя ADB:

Инфа о разделе system

Второй вариант: поставить на устройство терминал и набрать команду

Размер раздела в байтах можно узнать, установив на смартфон BusyBox и выполнив в терминале команду

Или то же самое с помощью ADB:

Место, занимаемое прошивкой, будет приблизительно равно размеру system в распакованном виде. Вообще, при создании прошивки необходимо учитывать, что юзер также может прошить поверх нее различные модификации (SuperSU, Xposed) или перенести приложения в раздел system. Например, минимальный пакет приложений Google (Pico) требует минимум 150 Мбайт дополнительного пространства для установки.

При необходимости размер файла прошивки можно уменьшить, удалив не только ненужные программы из /system/app ( /system/priv-app ) и звуки вызова из system/media/audio и bootanimation.zip , но и:

  • /system/tts/lang_pico — языки примитивного голосового движка Pico TTS, голосовой движок Google это не затронет;
  • /system/usr/srec/config/ — офлайн-языки. Можно будет скачать потом онлайн, если понадобится.

Сборка

После внесения изменений нужно собрать все обратно. Сначала запакуем раздел system в system.new.dat . Скачиваем нужные нам инструменты:

Преобразовываем нашу папку обратно в RAW-образ. Назовем его system_new.img :

1073741824 меняем на размер раздела system в байтах. Желательно даже сделать его чуть меньше. Делаем из RAW-образа sparse-образ:

Преобразуем наш образ в system.transfer.list и system.new.dat , которые и нужно кидать в архив с прошивкой, но сначала удалим старые файлы:

Отделим файлы прошивки от лишней шелухи (файлов, которые мы загружали для работы. Для этого удобно пользоваться архивом с прошивкой). Удалили? Теперь нужно запаковать прошивку в ZIP-архив (любым архиватором).

Осталось подписать архив. Сделать это можно как на самом Android с помощью ZipSigner, так и на ПК (потребуется установленная Java):

Подводные камни

Во время сборки system.new.dat ты можешь столкнуться с несколькими проблемами, вызванными постоянными изменениями в механизмах формирования прошивок Android. Описанный выше способ должен хорошо сработать в случае основанной на Android 5.1 прошивки, в более новых могут возникнуть сложности, так что потребуется использовать другие версии инструментов сборки. К сожалению, мы не можем описать все нюансы сборки, поэтому, возможно, придется погуглить.

Установка

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

Выводы

Эта статья описывает лишь верхушку огромного айсберга под названием «модификация прошивок». «Серьезные» прошивки не только дополняют ядро и саму прошивку со стоковыми приложениями множеством функций (которые зачастую вырваны из других ядер и прошивок), организовывая или даже меняя принципы их взаимодействия, но и вполне могут кардинально менять принципы работы ОС. Правда, такая поделка — это уже не Android, а отдельная ОС, даже если Play-сервисы получится туда поставить (кстати, такие действия, мягко говоря, не поощряются Google). Ну и не забываем: все оболочки от производителей — TouchWiz, ZenUI, HTC Sense и так далее — всего лишь обычные кастомы, максимально привязанные к железу устройства и друг к другу.

Источник

1.Просмотр параметров разделов памяти.

Давайте пройдемся по реальному файлу, содержащему GPT-таблицу. Я взял файл gpt_main0.bin от Lenovo K910 из прошивки K910_w_SS_S_2_040_0081_131202.qsb. Он содержит главную загрузочную запись MBR и таблицу разделов GPT.

1.1.MBR.

Вот как выглядит первый сектор файла. Согласно теории, эти первые 512 байт, т.е. с адреса 0х000 по 0х1FF, занимает MBR:

Гл.вид.png

Рис.1. Вид начала файла, открытого в Hex-редакторе.

Видно, что по адресу 0х1С2 расположен код раздела 0хЕЕ – код раздела GUID Partition Table.
Далее по адресам 0х1С6-0х1С9 расположено поле «Смещение», содержащее значение «01 00 00 00». Учитывая обратный порядок записи, получим смещение раздела – 0х00000001. Т.е. GPT располагается в секторе со смещением 1. А это следующий за MBR сектор, что и видно на рисунке 1, т.к. по адресу 0х200 можно уже заметить сигнатуру GPT.

1.2.Заголовок GPT
Рассмотрим hex-код файла далее:

Заголовок GPT.png

Рис.2. Заголовок GPT

Я немного «разукрасил» заголовок, чтобы выделить его поля.
В самом верху справа красным цветом выделен «остаток» предыдущего сектора – сигнатура MBR. Далее мы имеем:

  • с адреса 0х200, как и положено по теории, располагается заголовок  GPT, начинающийся сигнатурой «EFI PART», выделенной бирюзовым цветом;
  • по адресу 0х208 располагается поле «Версия», имеющее значение «00 00 01 00»=0х00010000  и выделенное светло-зеленым цветом;
  • по адресу 0х20С – поле «Размер заголовка», имеющее значение «5С 00 00 00»=0х5С  (92 байта). Оно выделено оранжевым цветом;
  • по адресу 0х210 расположено поле «CRC32 заголовка», имеющее значение «1F 8EBE 09»=0x09BE8E1F и бардовый цвет;
  • за ним по адресу 0х214 следует резервное поле, имеющее нулевое значение;
  • по адресу 0х218 расположено поле «текущий LBA сектор», хранящее номер сектора, где размещается первичная GPT (та, что мы рассматриваем). Оно имеет значение 0х01, как и положено;
  • далее (адрес 0х220) расположено поле «резервный LBA сектор», в котором должен храниться адрес размещения резервной копии заголовка. Мы видим сплошные нули. Вот тебе и теория! Но об этом мы поговорим позже;
  • по адресу 0х228 расположено поле «первый разрешенный для использования LBA сектор», выделенное красным цветом. Оно равно 0х22=34. Именно с этого сектора и будет размещаться первый раздел мобильного устройства, а все место до него зарезервировано под GPT. Владеющие калькулятором или искусством устного счета могут подсчитать, что таблица GPT вместе с MBR занимает с 0 по 33 сектор включительно и имеет размер 34*512=17408 байт. Странно, но именно такова длина файла, хранящего GPT, который мы и разглядываем;
  • по адресу 0х230 расположено поле «последний LBA-сектор, разрешенный для использования», который тоже почему-то «пустой»;
  • по адресу 0х238 расположено поле, содержащее GUIDдиска и выделенное голубым цветом;
  • по адресу 0х248 расположено поле«первый LBA сектор таблицы записей о разделах», указывающее с какого сектора начинаются записи параметров разделов. Оно имеет значение «02» и выделено красным цветом. При дальнейшем рассмотрении Вы увидите, что так оно и есть;
  • 0х250 – содержит число записей о разделах (зеленый цвет), т.е. вся память К910 разбита на 0х18=24 раздела;
  • 0х254 – содержит размер одной записи о разделе в байтах (сиреневый цвет). Как видим 0х80=128 байт;
  • 0х258 – содержит еще одно контрольное поле – «CRC32 таблицы записей о разделах»;
  • 0х25С – с этого адреса и до конца заголовка, т.е. до адреса 0х400, расположен резерв, заполненный нулями.

1.3.Таблица описания раздела памяти.

Каждый раздел имеет свою запись в таблице разделов. Одна запись занимает размер в 128 байт, который указан в поле заголовка по адресу 0х254 и имеет следующий вид:

Запись о разделе.png

Рис.3. Запись параметров раздела в таблице GPT.

Я опять разукрасил картинку:

  • по адресу 0х400 расположено поле «GUID типа раздела»;
  • далее по адресу 0х410 – «GUID раздела»;
  • по адресу 0х420 – поле, содержащее номер первого сектора размещения раздела, т.е. фактически его смещение в памяти;
  • по адресу 0х428 расположен номер последнего сектора раздела. Разность этих двух полей даст нам размер раздела;
  • по адресу 0х430 расположено поле флагов раздела;
  • по адресу 0х438 и до конца записи расположено поле, содержащее метку раздела. Каждый символ занимает два байта, т.к. поле содержит информацию в кодировке UTF-16LE.

С адреса 0х480 располагается запись о следующем разделе.
После описания всех разделов оставшееся место заполняется нулем до конца таблицы разделов, т.е. до размера

(максимальное число разделов=128)*(размер одного раздела=128)=16384 байта. 

Если добавить сюда размер заголовка и размер загрузочной записи, то получим общий размер GPT 16384+512+512=17408 байт или 34 сектора (с нулевого по 33 включительно).

2.Изменение параметров разделов памяти.

Эксперименты по изменению таблицы разделов начнем с описания расчета контрольных сумм, расположенных в заголовке. А уж затем попробуем передвигать разделы, изменяя их длину, или просто удалять их.
При всех экспериментах с разделами нужно помнить, что они расположены в памяти НЕПРЕРЫВНО и БЕЗ РАЗРЫВОВ между ними, т.е. если в каком-то секторе завершается один раздел, то в следующем обязательно начинается следующий.
Чтобы не производить все эти расчеты фирма Lenovo разработала особый механизм, позволяющий все делать автоматически. Об этом и файле, содержащем перечень ВСЕХ разделов памяти, поговорим в самом конце.

2.1.Подсчет контрольных сумм заголовка.

Т.к. контрольная сумма заголовка должна «оберегать» весь заголовок, то все его поля должны быть заполнены перед расчетом. Поэтому первой рассчитывается контрольная сумма таблицы разделов.
Для расчета CRC32 всей таблицы разделов нужно взять всю таблицу с первой записи и по последнюю включительно БЕЗ ЗАГОЛОВКА. Высчитаем последний адрес таблицы разделов:

число записей (поле 0х250)*длину одной записи (поле 0х254)+(стартовый адрес таблицы=0х400)=0х18*0х80+0х400=0х1000.

Следовательно, для расчета берем содержимое по адресам с 0х400 по 0х1000. Воспользуемся услугами WinHex-редактора.

  • открываем файл;
  • выделяем все поля указанного диапазона;
  • и выполняем команду «Инструменты->Подсчитать хеш->Выбрать метод расчета», указав на «CRC32 (32bit)»:

CRC таблицы.png

Рис.4. Данные для расчета CRC32 таблицы разделов.

Полученный результат вставляем в поле заголовка по адресу 0х258 (Рисунок 2).
Переходим к расчету контрольной суммы всего заголовка.
Для расчета CRC32 заголовка берутся все 92 байта заголовка, только само поле CRC32 заголовка предварительно заполняется нулями:

Подсчет CRC заголовка.png

Рис.5. Данные для расчета CRC32 заголовка GPT

А вот и результат, сравните со значением в заголовке:

CRC заголовка.png

Рис.6. Результат расчета.

Данные для Подсчет CRC заголовка.png

Рис.7. Первоначальное значение из файла по адресу 0х210.

Вся разница только в обратном способе записи…
Итак, с контрольными суммами разобрались. Можно попытаться поменять параметры самих разделов, например, размер.

2.2.Изменение размеров разделов памяти.

При выполнении таких работ нужно учитывать несколько правил:

  • Все разделы расположены непрерывно и строго друг за другом.
  • Общий размер памяти равен сумме размеров всех разделов.

Т.к. при изменении длины одного раздела нарушается второе правило, то для восстановления равновесия нужно уменьшить (увеличить) размеры одного или нескольких последующих разделов. Здесь может быть несколько случаев:

  • нужно уменьшить (увеличить) размер предыдущего раздела для смещения его конца и, следовательно, расширения (уменьшения) нашего раздела;
  • уменьшить (увеличить) размер последующего раздела, т.е. сместить его начало, что опять же приведет к увеличению (уменьшению) длины нашего.

Рассмотрим первый случай. Допустим, что необходимо расширить раздел «system» на 100 Мб за счет предыдущего раздела «cache». Это приводит к перемещению нижней границы раздела «system» в сторону начала памяти. Т.е. необходимо выполнить следующие действия:

  • рассчитать новое значение смещения, т.е. положение первого сектора раздела «system» (поле «первый LBA сектор размещения раздела»):
новое значение =старое значение  100Мб.
  • рассчитать новое значение поля «последний LBA сектор размещения раздела» для раздела«cache»:
новое значение=старое значение-100Мб;
  • внести изменения в запись таблицы разделов.

Посмотрим, как это выглядит в hex-редакторе на реальном файле, учитывая, что

100 Мб=104857600 (0х6400000) байт или 0х32000 секторов:

Рис.8.png

Рис.8. Параметры разделов до изменений

Размер раздела «system»:

0х41FFFF-0x120000+1=0x300000 или 1610612736 байт

Нижние границы обоих разделов выделены зеленым цветом («старт» раздела, его начало), а верхние – красным («стоп» раздела, его последний сектор).
Проведем расчеты:

  • для раздела «system» нижняя граница переместится на сектор
0х120000-0х032000=0х0EE000
  • для раздела «cache»имеем
0х11FFFF-0х032000=0х0EDFFF

Записываем новые значения на свои места, не забывая про обратный порядок:

Рис.9.png

Рис.9. Результаты сдвига нижней границы раздела System.

Проверим результаты работы. Длина раздела «system» стала:

0х41FFFF-0x0EE000=0x331FFF

Рассмотрим второй  случай – перемещение верхней границы раздела «system», но уже за счет другого соседа раздела «userdata».Необходимо выполнить следующее:

  • сместить вверх по памяти верхнюю границу («последний LBA сектор размещения раздела») «system»
новое значение =старое значение + 100Мб;
  • сместить вверх нижнюю границу («первый LBA сектор размещения раздела») «userdata»
новое значение =старое значение + 100Мб.

До изменений записи о разделах выглядели так:

Рис.10.png

Рис.10. Разделы system и userdata

Проведем расчеты:

  • для раздела «system» верхняя граница переместится в сектор
0х41FFFF+0х032000=0х451FFF
  • для раздела «userdata» нижняя граница переместится в сектор
0х420000+0х032000=0х452000

Записываем новые значения на свои места, не забывая про обратный порядок:

Рис.11.png

Рис.11. Разделы после перемещения границы вверх.

Проверим результаты работы:

0х451FFF-0x120000+1=0x332000 или 1715470336 байт

Разность составила 104875600байт или 100Мб. Расчеты выполнены правильно!
А теперь можно попробовать и совсем удалить раздел.

2.3.Удаление раздела.

«Разрушать» или удалять всегда легче. Считать ничего не требуется. Нужно только решить какому разделу будет отдано освободившееся место.
При удалении раздела верхняя граница предыдущего раздела просто перемещается на место верхней границы удаляемого. Или наоборот, нижняя граница последующего перемещается на место нижней границы удаляемого.
У меня нет под рукой хорошего примера прошивки, у которой можно удалить что-то «лишнее», поэтому используем предыдущий пример и, чисто теоретически конечно, представим, что нужно удалить раздел «system». Вот как выглядела таблица разделов до вмешательства:

Рис.12.png

Рис.12. Вид таблицы разделов до проведения «экзекуций».

Вот параметры разделов до изменений:

  • «cache» первый сектор – 0х0E0000, последний сектор – 0x11FFFF, длина –0х040000 (134217728 байт);
  • «system»первый сектор – 0х120000, последний сектор – 0x41FFFF, длина – 0х300000 (1610612736 байт=1,5Гб);
  • «userdata»первый сектор – 0х420000, последний сектор – 0x71FFFF, длина – 0х300000 (1610612736 байт=1,5Гб).

При удалении раздела «system» и расширении «cache»  это будет означать, что значение из поля «последний LBA сектор размещения раздела» «cache» примет значение из поля «последний LBA сектор размещения раздела» «system», а запись о разделе «system» будет полностью удалена из таблицы разделов:

Рис.13.png

Рис.13. Вот как выглядит таблица разделов после удаления System и расширения Cache

Видно, что данные о разделе «system» полностью исчезли из таблицы, поле «последний LBA сектор размещения раздела» предыдущего раздела «cache» получило новое значение, а параметры последующего раздела «userdata» остались без изменений. Проверим параметры разделов:

  • «cache»первый сектор – 0х0E0000, последний сектор – 0x41FFFF, длина – 0х340000 (1744830464 байт). Т.е. этот раздел УВЕЛИЧИЛСЯ на размер удаленного раздела;
  • «userdata»первый сектор – 0х420000, последний сектор – 0x71FFFF, длина – 0х300000 (1610612736 байт=1,5Гб). Этот раздел ОСТАЛСЯ без изменений

Если за счет удаления «system» расширить «userdata», то тогда значение поля «первый LBA сектор размещения раздела»«userdata» примет значение из поля «первый LBA сектор размещения раздела» удаляемого «system»:

Рис.14.png

Рис.14. Вот как выглядит таблица разделов после удаления раздела System

Видно, что на этот раз изменилось только поле «первый LBA сектор размещения раздела»  последующего раздела «userdata». Проверим параметры разделов:

  • «cache»первый сектор – 0х0E0000, последний сектор – 0x11FFFF, длина – 0х040000 (134217728 байт);. Т.е. этот раздел ОСТАЛСЯ без изменений;
  • «userdata»первый сектор – 0х120000, последний сектор – 0x71FFFF, длина – 0х600000 (3221225472 байт=3Гб). Этот раздел УВЕЛИЧИЛСЯ на размер удаленного раздела.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить размер противогаза
  • Как изменить размер программы на экране
  • Как изменить размер прицепа
  • Как изменить размер прицела гта 5
  • Как изменить размер прицела css

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии