|
Быстрая загрузка Linux - возможно ли? |
|
|
|
Jun 18 2009, 14:48
|
Местный
  
Группа: Свой
Сообщений: 358
Регистрация: 27-06-06
Из: Новосибирск
Пользователь №: 18 410

|
Во многих встраиваемых устройствах требуется максимально быстро прийти к рабочему состоянию после подачи питания или перезагрузки. Обычный линукс грузится довольно таки медленно, пока он прогрузит все драйвера, проходит секунд 10-20, если не больше. Можно ли сделать так, чтобы образ работающего (полностью загруженного) линукса со всеми драйверами сохранить во флеш-памяти и при старте системы просто копировать этот образ в оперативную память? Т.е. сделать аналог Hibernate в Windows. Хотелось бы добиться времени старта в 1-2сек максимум. Если да, то кто будет инициализировать железо в таком случае (видео, сеть, UART...), в компе это делает частично BIOS, частично сама Windows? Использовать планирую ucLinux, но, по идее, особой разницы быть не должно.
|
|
|
|
|
 |
Ответов
|
Jun 19 2009, 03:59
|
Местный
  
Группа: Свой
Сообщений: 358
Регистрация: 27-06-06
Из: Новосибирск
Пользователь №: 18 410

|
По wikiл слово XIP, нашел интересную pdf-ку. Оказывается, даже без XIP есть большой простор для оптимизации. В навигаторе стоит Sirf Atlas III, он на основе самсунговского ARMа. В даташите, емнип, было сказано, что работа с NAND обеспечивается прозрачная, т.е. как c NOR.
|
|
|
|
|
Jun 19 2009, 06:04
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Какая точно марка чипа? Что, так и написано: "прозрачная, как с NOR"? Сильно сомневаюсь. Обычная практика это когда встроенный в ROM чипа первичный монитор читает во внутреннюю RAM чипа первую страницу первого блока NAND. Там сидит уже вторичный короткий загрузчик написанный юзером ROM монитор отдает управлением во внутренней RAM ему Тот в свою очередь грузит из NAND третичный полнофункциональный загрузчик (типа UBoot) уже во внешнюю RAM. И тот уже из NAND-а во внешнюю RAM грузит либо Линукс либо опять Линукс с его собственным распаковщиком. Причем он может Линукс грузить по тому же адресу где сидит UBoot, ну тогда еще будет этап перемещения UBoot в другое место внешней RAM. Вот это вот и величают "прозрачной" работой. Т.е. тормоза еще те. А pdf-ка найденая вами может сильно ввести в заблуждение. Вообще нужно очень осторожно верить всем утверждениям которые идут от пользователей Линукса на PC. Инициализация в Линуксе для каждой архитектуры во многом реализуется уникально в отдельной директории ARCH, поэтому причины задержек тоже во многом уникальны. Цитата(Itch @ Jun 19 2009, 06:59)  По wikiл слово XIP, нашел интересную pdf-ку. Оказывается, даже без XIP есть большой простор для оптимизации. В навигаторе стоит Sirf Atlas III, он на основе самсунговского ARMа. В даташите, емнип, было сказано, что работа с NAND обеспечивается прозрачная, т.е. как c NOR.
|
|
|
|
|
Jun 19 2009, 08:37
|
Местный
  
Группа: Свой
Сообщений: 358
Регистрация: 27-06-06
Из: Новосибирск
Пользователь №: 18 410

|
Цитата(AlexandrY @ Jun 19 2009, 13:04)  Какая точно марка чипа? Что, так и написано: "прозрачная, как с NOR"? Samsung S3C2440A. Вот что пишут: Цитата NAND Flash Boot Loader · Supports booting from NAND flash memory. · 4KB internal buffer for booting. · Supports storage memory for NAND flash memory after booting. · Supports Advanced NAND flash И еще: Цитата In recent times, NOR flash memory gets high in price while an SDRAM and a NAND flash memory is comparatively economical , motivating some users to execute the boot code on a NAND flash and execute the main code on an SDRAM. S3C2440A boot code can be executed on an external NAND flash memory. In order to support NAND flash boot loader, the S3C2440A is equipped with an internal SRAM buffer called ‘Steppingstone’. When booting, the first 4 KBytes of the NAND flash memory will be loaded into Steppingstone and the boot code loaded into Steppingstone will be executed. Generally, the boot code will copy NAND flash content to SDRAM. Using hardware ECC, the NAND flash data validity will be checked. Upon the completion of the copy, the main program will be executed on the SDRAM. Т.е. только bootloader, но зато NOR'ы уже не надо. P.S. Прикольная заметка в конце: Цитата During the auto boot, the ECC is not checked. So, the first 4-KB of NAND flash should have no bit error.
|
|
|
|
|
Jun 19 2009, 08:46
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Эт к щастью на этой конфе знают все. Новость в том что у них 4K вместо 2-х, но UBoot все равно не влезет и моя 3-х...4-х ступенчатая схема для вас остается в силе. Поэтому если хотите действительно быстро без NOR-ы не обойтись. Цитата(Itch @ Jun 19 2009, 11:37)  Т.е. только bootloader, но зато NOR'ы уже не надо. Эт как разработчик вы тоже должны были бы знать, что во всех NAND гарантируют что первый блок всегда работоспособен. Цитата(Itch @ Jun 19 2009, 11:37)  P.S. Прикольная заметка в конце:
|
|
|
|
|
Jun 19 2009, 08:55
|
Местный
  
Группа: Свой
Сообщений: 358
Регистрация: 27-06-06
Из: Новосибирск
Пользователь №: 18 410

|
Цитата(AlexandrY @ Jun 19 2009, 15:46)  Эт как разработчик вы тоже должны были бы знать, что во всех NAND гарантируют что первый блок всегда работоспособен. Кажется, всегда работоспособен в начале своей жизни. Но когда-то он также может умереть, как и любой другой блок. Хотя тут конечно вероятность много ниже, ибо бутсектор редко кто пишет больше нескольких раз.
|
|
|
|
Сообщений в этой теме
Itch Быстрая загрузка Linux - возможно ли? Jun 18 2009, 14:48 AlexandrY А че у вас драйвера так тормозят? По моему этот во... Jun 18 2009, 17:44 Itch Использовал демобоард на RM9200 от Черкашина, лину... Jun 18 2009, 18:20 AlexandrY Скорость чтения из SD вы сильно преувеличили если ... Jun 18 2009, 19:42  sasamy Цитата(AlexandrY @ Jun 18 2009, 23:42) Ск... Jun 19 2009, 05:36   Itch Цитата(sasamy @ Jun 19 2009, 12:36) все
О... Jun 19 2009, 07:03    AlexandrY Вы еще не поняли с чем связались
На нормальной R... Jun 19 2009, 07:41    sasamy Цитата(Itch @ Jun 19 2009, 11:03) Для Bla... Jun 19 2009, 08:16     AlexandrY Весь Analog Devices не смог решить проблему, а для... Jun 19 2009, 08:35      sasamy Цитата(AlexandrY @ Jun 19 2009, 11:35) Ве... Jun 19 2009, 09:52     Itch Цитата(sasamy @ Jun 19 2009, 15:16) Видел... Jun 19 2009, 10:14      sasamy Цитата(Itch @ Jun 19 2009, 13:14) Экономя... Jun 19 2009, 11:02 faa Цитата(Itch @ Jun 18 2009, 18:48) Хотелос... Jun 20 2009, 08:49 Harbour у меня на desktop'e мамка годичной давности as... Jun 21 2009, 05:53 RW9UAO QNX на rm9200 из датафлэш (4 мегабайта), дрова уса... Jun 25 2009, 13:58 sasamy Цитата(RW9UAO @ Jun 25 2009, 17:58) QNX н... Jun 25 2009, 15:35 Harbour в дополнение :
http://www.linux.org.ru/view-messa... Jul 17 2009, 15:24
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|