Page 1 of 7

выбор вариантов загрузки

Posted: Sun May 29, 2005 12:57 pm
by DoomEd Archangel
этот вопрос я задавал Поддубному этак с годик назад, и теперь решил сам покопаться в ядре. :P

принцип работы:
-загрузка ядра.
-показ таймера отсчёта 5-4-3-2-1
-если в это время пользователь нажимает определённую комбинацию клавиш, то таймер тормозится и на экране появляется стандартное окно выбора разрешения и тп.
-если время таймера истекает то система грузится с установками вшитыми при перекомпиляции (это вроде в файле preboot.inc)

домой приду - попробую :lol:

Posted: Sun May 29, 2005 2:30 pm
by mike.dld
Это, конечно, хорошо, но было бы лучше, если бы ОСь грузилась с установками, выбранными при предыдущем запуске ;)

Posted: Sun May 29, 2005 5:14 pm
by DoomEd Archangel
не, ну ессесно установки будут сохраняться (кстати, тогда же, очень давно была программа вносящая изменение в сам бинарник ядра, тем самым можно было менять варианты загрузки, извиняюсь, но автора не помню. это конечно не выход...) вобщем надо бы посмотреть прерывания биоса.. как там файлы открывать и тд

Posted: Sun May 29, 2005 8:59 pm
by cyberGnom
да и хорошо чтобы можно было прервать загрузку с предварительными параметрами... на случай ЧП, а то вдруг настройки нужно будет сменить, а старые вмертельно опасны :D

Posted: Sun May 29, 2005 11:04 pm
by mike.dld
Читать-то надо лучше. Для этого и отображается 5-4-3-2-1 ;)

Posted: Mon May 30, 2005 6:44 am
by halyavin
А сколько собираешься интервал времени между сменой цифр сделать?

Posted: Tue May 31, 2005 1:51 pm
by DoomEd Archangel
>А сколько собираешься интервал времени между сменой цифр сделать?
секунда

вот показались подводные камни - как считывать из файла находящегося непосредственно рядом с ядром (то есть определить путь к диску с ядром А или С ) ? а то делать отдельно ядро с чтением с винта и ядро с чтением с флопика?

Posted: Tue May 31, 2005 2:05 pm
by halyavin
Все файлы кроме ядра должны быть в образе. Тогда можно всегда считывать с рамдиска.

Posted: Tue May 31, 2005 3:15 pm
by DoomEd Archangel
>Все файлы кроме ядра должны быть в образе. Тогда можно всегда считывать с рамдиска.

А вот тут не правда - ядро загружается до загрузки рамдиска- загрузчик рамдиска для МеОС не умеет загружать отдельные файлы, а только весь образ целиком... если бы такой вариант загрузки был бы возможен то можно было бы сделать загрузчик рамдиска не загружающий повреждённые файлы с флоппика... :)

Posted: Tue May 31, 2005 5:01 pm
by Иван Поддубный
Слишком много работы для такой незначительной "фичи". Нужно фактически писать драйвер FAT реального режима, чтобы можно было загружать/сохранять конфигурацию. Причем это относится не только к ЖД, но и к дискетам тоже.

Единственный способ обойти загрузку дополнительных файлов - держать настройки прямо в файле ядра. При загрузке настройки сохраняются в KERNEL.MNT (на рамдиск). Если пользователь сохранил рамдиск (на дискету!), то при следующей загрузке можно сделать эти самые 5-4-3-2-1.

Но если пользователь грузится с ЖД? Как ядро узнает, откуда оно было загружено?

Posted: Tue May 31, 2005 8:18 pm
by Hex
Но если пользователь грузится с ЖД? Как ядро узнает, откуда оно было загружено
Определить, подключен ли жёсткий диск->поиск на диске файла образа->если найден - загрузка, если нет - ждём ввода новой конфигурации. ;)

Posted: Wed Jun 01, 2005 9:47 am
by halyavin
HEX
Проблема в том, что синий экран показывается до перехода в защищенный режим, а функции работы с диском написаны для работы уже в защищенном режиме. В результате получается замкнутый круг: для того чтобы считать настройки нужно перейти в защищенный режим, а для того что бы перейти в защищенный режим нужно знать настройки.

Posted: Wed Jun 01, 2005 10:51 am
by VaStaNi
ИТОГО:
- когда автор делал... то делал, как получится и как побыстрее да попроще, а не перспективнее;
- надо в очередной раз править ядро и закладывать в него хотябы "принципы для людей" и... получать несовместимость с "основным" дистрибом.
- сколько же еще будет правок и поправочек того, что можно и нужно было заложить с самого начала развития оси, дабы она не превратилась в одну сплошную правку...?
- моя попытка вразумить автора с загрузками и дать шанс на цивилизацию в этом вопросе... эх... да вы знаете, AcroBOOTом называется. Это фундаментальное продуманное решение, которое с успехом переехало в АТОМ ОС и получило там жизнь и продолжение и дополнение. Основная фича ребыты в том, что загрузчик ВСЕГДА ЗНАЕТ КАК и С КОГО ОН ГРУЗЛСЯ и если.... это сообщить..... то запросто ТАМ и ТАКИМ же макаром можно и догружать и поискать свое нужное если надо.... ну настройки в файлике CFG, например.
Таки дела, вот.

Posted: Fri Jun 03, 2005 1:39 pm
by Hex
halyavin
А использовать основу Акробута, как и советовал VaStaNi
?

Posted: Fri Jun 03, 2005 2:19 pm
by halyavin
А вот ничего не знаю я про Акробут :mrgreen: . А где можно найти акробут, сорсы, описание работы? Мне нужно читать статьи на офф. русском сайте и заглянуть на свалку?