OSDev

для всех
Текущее время: 05 июл 2025, 00:43

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 353 ]  На страницу Пред.  1 ... 19, 20, 21, 22, 23, 24, 25 ... 36  След.
Автор Сообщение
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 14:34 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 976
Откуда: Дагоба
phantom-84 писал(а):
Я не понимаю, почему не учитывается возможность случайного появления значения "!GPT" в eax.

Я думаю, по той причине, что эта вероятность почти равна нулю. В любом случае, на много порядков меньше, чем 1/2^32, по той причине, что статистика появления разных величин не равномерная, а исключительно сильно коррелированная. Полагаю, что на практике там может встретиться всего около тысячи, максимум нескольких тысяч, значений, и даже они не равновероятны. Наиболее вероятно появление всего нескольких значений. Так что они вполне правы.

phantom-84 писал(а):
Нужно посмотреть, какой интерфейс используют другие GPT-загрузчики.

А такие вообще в природе есть? :D

phantom-84 писал(а):
Кстати а какой интерфейс используешь ты?

Последняя редакция интерфейса MBR/VBR такова (будет в следующей версии):
AX = 0C3D2 (Привет Лукасу от Йоды)
ECX:EBX = LBA48 номер загруженного сектора, используется в качестве офсета начала раздела. EBX - младшая половина, ECX - старшая.
DL = загрузочный диск.
DH = номер загруженного раздела.
ВСЁ!
Предлагаю его и принять в качестве рабочего варианта интерфейса.

phantom-84 писал(а):
Что касается твоих трудностей с отсутствием свободного места, то это в том числе связано и с универсальностью твоих первичных загрузчиков применительно к MBR/GPT.

Да нет, универсальность не играет абсолютно никакой роли. Если загрузчик в разделе, он всё равно должен получить параметры от MBR. А если УЖЕ есть загрузчик для раздела, то делать упрощённый вариант для суперфлоппи нет смысла.

phantom-84 писал(а):
Сейчас вообще буква (уже никак не связанная с "названием ошибки") и цифра.

На эту тему вспоминается прикольная история. Реальная. Как-то с нами работал один товарищ. Приходит утром злой и рассказывает. Зашёл утром в Сбербанк, хотел взять деньги с карточки. Отдаёт операционистке карту. Та прокатывает её, что-то печатает на клавиатуре, ждёт... потом поворачивается к нему и удивлённо говорит: "Ошибка Ц2". Он ей: "Да что мне ваше Ц2, вы мне мои деньги отдайте". Она опять прокатывает карту, стучит по клавиатуре... "Ошибка Ц2!" Он: "Да я понятия не имею, что означает ваше Ц2, мне нужно получить мои деньги!". Она в третий раз прокатывает карту,... "Ничего не могу поделать, ошибка Ц2!! Вы не могли бы зайти позже?"... :D
Это к слову о том, что сообщения об ошибках должны быть по возможности информативными.

jarilo,
Надеюсь, с твоим БИОСом разберёмся, почему не грузится. Я подготовлю тесты, надо будет их прогнать.

Повсеместную поддержку номера раздела вроде бы сделал. Тестирую, готовлю описание.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 16:10 

Зарегистрирован: 18 окт 2012, 21:03
Сообщения: 54
Yoda писал(а):
Надеюсь, с твоим БИОСом разберёмся, почему не грузится. Я подготовлю тесты, надо будет их прогнать.

Посмотрите скриншоты, если вы скачивали то что я выкладывал с образом диска, там видно что на бажном BIOS FlashBoot подменяет идентификатор диска с "0" на "128" и тогда загружается. Я делал эксперимент с суперфлоп и FlashBoot и у него идентификатор этот, при таком формате, не подменялся так "0" и оставался и тогда он тоже не мог загрузится, а только пишет "error" вместо загрузки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 17:12 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1209
Yoda писал(а):
Я думаю, по той причине, что эта вероятность почти равна нулю. В любом случае, на много порядков меньше, чем 1/2^32, по той причине, что статистика появления разных величин не равномерная, а исключительно сильно коррелированная. Полагаю, что на практике там может встретиться всего около тысячи, максимум нескольких тысяч, значений, и даже они не равновероятны. Наиболее вероятно появление всего нескольких значений. Так что они вполне правы.
Меня такое никогда не устраивало. Вероятность есть? Есть. Значит, ее нужно исключить. Вижу, ты тоже пошел по наиболее легкому пути.

Цитата:
А такие вообще в природе есть? :D
Представь себе! Ты не первооткрыватель в этом деле :D Кстати что ты используешь для выбора загрузочного раздела, флаг или GUID? Или есть возможность использовать оба варианта (я планирую это сделать именно так)?

Цитата:
Последняя редакция интерфейса MBR/VBR такова (будет в следующей версии):
AX = 0C3D2 (Привет Лукасу от Йоды)
ECX:EBX = LBA48 номер загруженного сектора, используется в качестве офсета начала раздела. EBX - младшая половина, ECX - старшая.
DL = загрузочный диск.
DH = номер загруженного раздела.
ВСЁ!
Предлагаю его и принять в качестве рабочего варианта интерфейса.
Я подумаю. Но в любом случае у меня еще будет мой механизм подтверждения, т.к. магическим циферкам в определенном регистре, как ты понял, я не вполне доверяю. У меня сигнатура в ax - это просто переключатель между MBR/GPT. За валидность всех параметров кроме номера диска (включая содержимое ax) отвечает расширенная загрузочная сигнатура. Пока твою сигнатуру я поддержу в том плане, что не буду ее передавать первичным загрузчикам из MBR/EPR-загрузчиков (ну или сделаю для тебя подарок в виде: mov ax,0C3D2h; xor ecx,ecx; mov ebx,[si+PTREC.lba]). Кстати, как я понял, это сигнатура является элементом твоего универсального интерфейса. А как должен трактоваться "номер загруженного раздела" в случае использования GPT? Лично я планирую нумеровать GPT-разделы последовательно, начиная с 1. И еще один вопрос: что твой MBR/GPT-загрузчик вообще не передает дескриптор загрузочного раздела в традиционном формате через DS:SI?

Цитата:
Да нет, универсальность не играет абсолютно никакой роли. Если загрузчик в разделе, он всё равно должен получить параметры от MBR. А если УЖЕ есть загрузчик для раздела, то делать упрощённый вариант для суперфлоппи нет смысла.
Я просто не знал, что для тебя универсальность - это использование единого интерфейса для MBR/GPT. Думал, что для MBR ты используешь традиционный интерфейс, а для GPT - свой оригинальный. Для единого интерфейса усложнение кода естественно не требуется, поэтому в этом случае универсальность не приводит к увеличению размера кода.

Цитата:
На эту тему вспоминается прикольная история...
Не знаю. Нафиг пользователю вникать в суть ошибки, если она критическая? Достаточно того, что он видит сообщение об ошибке. Пусть лучше сразу сообщает номер (идентификатор) ошибки, чем пытает воспроизвести ее текст, особенно если он делает это не дословно. А если его заинтересовала суть ошибки, то всегда можно обратиться к справочнику. Типа: "Если бы в кассе висела соотв. памятка, то все могло быть по-другому."


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 18:16 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 976
Откуда: Дагоба
phantom-84 писал(а):
Меня такое никогда не устраивало. Вероятность есть? Есть. Значит, ее нужно исключить. Вижу, ты тоже пошел по наиболее легкому пути.

Её невозможно исключить. Даже использование криптографических методов аутентификации (но на это, как ты сам понимаешь, определённо нет места в загрузчиках) только понижает вероятность, не исключая её полностью. Их метод с точки зрения вероятности даже более надёжен, чем использование контрольной суммы CRC32 над какими-то данными.
Я пошёл не по наиболее лёгкому пути, а по единственному возможному. Предложи альтернативу, если знаешь, как сделать, чтобы все были довольны.

phantom-84 писал(а):
Кстати что ты используешь для выбора загрузочного раздела, флаг или GUID? Или есть возможность использовать оба варианта (я планирую это сделать именно так)?

Идентификаторы GUID - пустая и бредовая затея, результат формального подхода к решению вопросов. Да и вообще ВСЕ эти идентификаторы за пределами самой файловой системы, для которой они предназначены, - совершенно дурацкая затея. В данном случае я говорю не только про GUID, но и про идентификаторы раздела в таблице MBR. Вот у меня тестовый накопитель, на нём двадцать разделов в таблице GPT. И ВСЕ они имеют одинаковый GUID - "Linux Basic Partition". По какому GUID и что я должен выбирать?
В документации GPT чётко сказано, что для загрузки в не-UEFI системах предназначен специальный флаг. Его я и использую, т.е. устанавливаю в утилите и проверяю в загрузчике.

phantom-84 писал(а):
А как должен трактоваться "номер загруженного раздела" в случае использования GPT? Лично я планирую нумеровать GPT-разделы последовательно, начиная с 1.

Да, именно так и делаю. Нумерую подряд с 1.

phantom-84 писал(а):
И еще один вопрос: что твой MBR/GPT-загрузчик вообще не передает дескриптор загрузочного раздела в традиционном формате через DS:SI?

Нет, не передаёт. И вообще его мало кто передаёт, т.к. в нём нет никакой реальной необходимости (об этом везде говорится). Точно такое же мёртворождённое дитя формального подхода, как и сам GPT.

phantom-84 писал(а):
Я просто не знал, что для тебя универсальность - это использование единого интерфейса для MBR/GPT. Думал, что для MBR ты используешь традиционный интерфейс, а для GPT - свой оригинальный.

А в GPT ровным счётом нет ничего такого, что заслуживало бы отдельного интерфейса.

phantom-84 писал(а):
Не знаю. Нафиг пользователю вникать в суть ошибки, если она критическая?

Ну как тебе сказать... Одним словом, ты не прав. Если бы сообщение о критической ошибке вместо Ц2 звучало так: "У вас недостаточно средств на счету." Он бы сказал "Аааа..." и ушёл бы восвояси, понимая, что сам не прав и совершенно не обижаясь на сотрудниц банка :D. Разве не так?

phantom-84 писал(а):
Типа: "Если бы в кассе висела соотв. памятка, то все могло быть по-другому."

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

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 19:01 

Зарегистрирован: 18 окт 2012, 21:03
Сообщения: 54
Yoda писал(а):
phantom-84 писал(а):
Не знаю. Нафиг пользователю вникать в суть ошибки, если она критическая?

Ну как тебе сказать... Одним словом, ты не прав. Если бы сообщение о критической ошибке вместо Ц2 звучало так: "У вас недостаточно средств на счету." Он бы сказал "Аааа..." и ушёл бы восвояси, понимая, что сам не прав и совершенно не обижаясь на сотрудниц банка :D. Разве не так?


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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 20:02 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1209
Yoda писал(а):
Её невозможно исключить. Даже использование криптографических методов аутентификации (но на это, как ты сам понимаешь, определённо нет места в загрузчиках) только понижает вероятность, не исключая её полностью. Их метод с точки зрения вероятности даже более надёжен, чем использование контрольной суммы CRC32 над какими-то данными.
Я пошёл не по наиболее лёгкому пути, а по единственному возможному. Предложи альтернативу, если знаешь, как сделать, чтобы все были довольны.
Я уже предложил - использовать для идентификации расширенную загрузочную сигнатуру, описанную в моих спеках. Мы долго "рожали" эту фишку, но когда она появилась, все сразу стало предельно просто и надежно.

Цитата:
Идентификаторы GUID - пустая и бредовая затея, результат формального подхода к решению вопросов. Да и вообще ВСЕ эти идентификаторы за пределами самой файловой системы, для которой они предназначены, - совершенно дурацкая затея. В данном случае я говорю не только про GUID, но и про идентификаторы раздела в таблице MBR. Вот у меня тестовый накопитель, на нём двадцать разделов в таблице GPT. И ВСЕ они имеют одинаковый GUID - "Linux Basic Partition". По какому GUID и что я должен выбирать?
Есть такая вещь, как "BIOS boot partition" (используется не только GRUB'ом). Кроме того, у каждой уважающей себя системы есть собственный тип загрузочного раздела и соотв. GUID для него.

Цитата:
В документации GPT чётко сказано, что для загрузки в не-UEFI системах предназначен специальный флаг. Его я и использую, т.е. устанавливаю в утилите и проверяю в загрузчике.
Я хочу сделать GPT-загрузчик более универсальным, чтобы вариативно можно было использовать и любой GUID, и boot-флаг.

Цитата:
Нет, не передаёт. И вообще его мало кто передаёт, т.к. в нём нет никакой реальной необходимости (об этом везде говорится).
На самом деле есть, если в ФС не предусмотрено поле типа HiddenSectors. Кроме того, благодаря этому параметру, можно делать и использовать позиционно независимые образы разделов.

Цитата:
А в GPT ровным счётом нет ничего такого, что заслуживало бы отдельного интерфейса.
По сравнению с традиционным интерфейсом при GPT-разметке нужно передавать номер начального сектора большей разрядности. Ты так говоришь, потому что у тебя нет поддержки традиционного интерфейса в полном объеме.

Цитата:
Ну как тебе сказать... Одним словом, ты не прав. Если бы сообщение о критической ошибке вместо Ц2 звучало так: "У вас недостаточно средств на счету." Он бы сказал "Аааа..." и ушёл бы восвояси, понимая, что сам не прав и совершенно не обижаясь на сотрудниц банка :D. Разве не так?
Ну, это зависит от возможности понимания среднестатистическим пользователем конкретного сообщения об ошибке. Для него и обычный текст сообщения об ошибке может быть совершенно непонятен. Среди критических ошибок по-моему таких большинство.

Цитата:
...то эта памятка потерялась бы на следующий же день. А пользователь вообще не станет ничего искать или читать мануалы, которые ещё непонятно, где искать.
Да, ладно! Это от банка зависит. А что касается пользователя, то это зависит от того, как все организовать. Если конечно он вообще захочет понять, с какой ошибкой столкнулся.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 09 ноя 2012, 23:38 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 976
Откуда: Дагоба
phantom-84 писал(а):
Я уже предложил - использовать для идентификации расширенную загрузочную сигнатуру, описанную в моих спеках.

Ты про патченье сигнатуры 0AA55h в конце загруженного сектора байтом 88h? А где гарантия, что я не запорчу чужой сектор? Эта сигнатура ведь может использоваться для каких-то целей в чужом коде.

phantom-84 писал(а):
Есть такая вещь, как "BIOS boot partition" (используется не только GRUB'ом).

Я же говорю, при разработке опирался на официальную документацию GPT, где чётко сказано, что в GPT entries есть специальный флаг, аналогичный флагу 80h в MBR и означающий загрузочный раздел GPT для legacy систем. Тому же BIOS boot partition ровным счётом ничего не мешает иметь этот флаг установленным.

phantom-84 писал(а):
Кроме того, у каждой уважающей себя системы есть собственный тип загрузочного раздела и соотв. GUID для него.

Я заметил, что уважающих себя систем, похоже, нет в природе. Эти загрузочные разделы работают в рамках UEFI, и в большинстве случаев не имеют специально выделенного для них GUID. А в этих условиях GPT загрузчик просто не работает. Повторюсь, в этих идентификаторах нет абсолютно никакого смысла. Многие просто их игнорируют (и правильно делают).

phantom-84 писал(а):
Я хочу сделать GPT-загрузчик более универсальным, чтобы вариативно можно было использовать и любой GUID, и boot-флаг.

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

phantom-84 писал(а):
Цитата:
Нет, не передаёт. И вообще его мало кто передаёт, т.к. в нём нет никакой реальной необходимости (об этом везде говорится).
На самом деле есть, если в ФС не предусмотрено поле типа HiddenSectors. Кроме того, благодаря этому параметру, можно делать и использовать позиционно независимые образы разделов.

Именно hidden sectors для позиционно-независимых разделов в моём интерфейсе и передаётся в ECX:EBX.

phantom-84 писал(а):
По сравнению с традиционным интерфейсом при GPT-разметке нужно передавать номер начального сектора большей разрядности. Ты так говоришь, потому что у тебя нет поддержки традиционного интерфейса в полном объеме.

Мне тяжело представить себе систему, в которой больше 255 разделов на одном носителе. Будем считать, что мой загрузчик не годится для загрузки линукса с разделов с номерами 255 и больше, и я отражу этот пункт в документации :).
Кстати, в спецификации мультибут для номера раздела тоже предусмотрен только один байт.

Цитата:
Ну, это зависит от возможности понимания среднестатистическим пользователем конкретного сообщения об ошибке. Для него и обычный текст сообщения об ошибке может быть совершенно непонятен...
Цитата:
...то эта памятка потерялась бы на следующий же день.
Да, ладно! Это от банка зависит.
jarilo писал(а):
Тут Сергей вы не правы однозначно ))

Оххх... вот так я и думал, что сейчас повернём в сторону софистики, социальной инженерии, неприменимости доводчиков и необходимости бумажек "не хлопайте дверью!"
Давайте считать, что такова моя принципиальная позиция: любые сообщения должны быть достаточно информативны, чтобы без помощи специальных средств (мануал, гугл, стикеры на мониторах...) можно было понять, что произошло. Эта позиция является моим руководящим принципом и обсуждению не подлежит.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 10 ноя 2012, 01:14 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1209
Yoda писал(а):
Ты про патченье сигнатуры 0AA55h в конце загруженного сектора байтом 88h? А где гарантия, что я не запорчу чужой сектор? Эта сигнатура ведь может использоваться для каких-то целей в чужом коде.
Да, я про это. В теории может, но все почему-то берегут эту сигнатуру, как священную корову. Кроме того, я пока не знаю первичных загрузчиков кроме моих, которые использовали данное значение в процессе дальнейшей загрузки (у меня сигнатура 0AA55h также должна находиться в конце файла ядра). Еще вероятно 0AA55h целесообразно использовать, как константу непосредственно в коде, а сделать конец бутсектора частью кода ума пока ни у кого не хватает. Конечно это все начальные размышления. Применений слову по адресу 7DFEh может быть найдено не мало, но пока этого не происходит. Надеюсь, никто специально мне эту радужную картинку портить не будет. Если вдруг прецедент случится, то будет повод пересмотреть тек. положение дел.

Цитата:
Я заметил, что уважающих себя систем, похоже, нет в природе. Эти загрузочные разделы работают в рамках UEFI, и в большинстве случаев не имеют специально выделенного для них GUID. А в этих условиях GPT загрузчик просто не работает. Повторюсь, в этих идентификаторах нет абсолютно никакого смысла. Многие просто их игнорируют (и правильно делают).
Да, я тоже их пока собираюсь использовать исключительно, как ключики для поиска нужного раздела.

Цитата:
В рамках данного подхода ты не сможешь, например, назначить для загрузки третий раздел. Либо ты устанавливаешь флаг (тогда загрузчик не отличается от моего), либо портишь GUID (т.к. скорей всего в таблице будет несколько одинаковых GUID) с риском завалить систему.
Про "портишь", не понял. Я не собираюсь изменять GPT. Я планирую по образцовому GUID'у искать первый попавшийся раздел с таким GUID'ом.

Цитата:
Именно hidden sectors для позиционно-независимых разделов в моём интерфейсе и передаётся в ECX:EBX.
Я говорил о необходимости использования DS:SI в традиционном интерфейсе. Про него пока знает значительно больше народа, чем про твой. Ты конечно прав в том плане, что этот параметр почти никто не использует. Но это скорее обусловлено не кривостью дескриптора раздела, передаваемого через этот указатель, а малой гарантией его корректности. У меня 88h подтверждает корректность в том числе и этого указателя/дескриптора. Хотя конечно мой интерфейс также не настолько распространен, чтобы о нем знали многие.

Цитата:
Мне тяжело представить себе систему, в которой больше 255 разделов на одном носителе. Будем считать, что мой загрузчик не годится для загрузки линукса с разделов с номерами 255 и больше, и я отражу этот пункт в документации :).
Кстати, в спецификации мультибут для номера раздела тоже предусмотрен только один байт.
Я вообще не про это говорил. У меня тоже максимальное количество разделов на одном устройстве - 255. Хотя при необходимости это ограничение можно и обойти, вот только зачем?

Цитата:
Оххх... вот так я и думал, что сейчас повернём в сторону софистики, социальной инженерии, неприменимости доводчиков и необходимости бумажек "не хлопайте дверью!"
Давайте считать, что такова моя принципиальная позиция: любые сообщения должны быть достаточно информативны, чтобы без помощи специальных средств (мануал, гугл, стикеры на мониторах...) можно было понять, что произошло. Эта позиция является моим руководящим принципом и обсуждению не подлежит.
В рамках данного обсуждения я возражать на этот счет ничего не буду, т.к. сам использую в загрузчиках подобные сообщения об ошибках. Единственно хочу сказать, что в первичных загрузчиках у меня может выдаваться два вида ошибок. Условно их можно назвать устранимой и неустранимой. Правда, по каждому виду ошибки все равно приходится писать разъяснение "на стороне", но это уже второй вопрос.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 15 дек 2012, 13:50 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 976
Откуда: Дагоба
Вышла версия 3.1.

В новой версии:
  • Добавлен загрузочный код для линейной загрузки секторов с диска без файловой системы;
  • Добавлена утилита конвертации некоторых сторонних загрузчиков в формат данного набора;
  • Убрана необходимость записывать код EBR во все логические диски расширенного раздела, упрощён интерфейс MBR/EBR;
  • Увеличена надёжность распознавания родного MBR/GPT;
  • Добавлена проверка валидности номера загрузочного диска в MBR/GPT;
  • Добавлена поддержка геометрического номера загрузочного раздела;
    kernel.asm:
    • Расширен вывод информации;
    • Добавлена правильная настройка стека в демо-ядре.

Данная версия наконец позволяет избавиться от процесса установки загрузчика в ОС Linux при использовании файловых систем Ext2 или Ext3! Достаточно сконвертировать загрузчик прилагающейся утилитой, поместить полученный файл в корневой каталог загрузочного диска и подготовить диск к загрузке утилитой boot.exe (подготовка диска выполняется однократно). Впервые в истории Линукс установка загрузчика стала максимально дружественной, а загрузочный диск можно просто пофайлово скопировать с сохранением способности к загрузке!
Подробней можно почитать в описании.

Заходим, скачиваем, пробуем.
http://goncharov.pp.ru/ru/osboot.htm

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 16 дек 2012, 13:35 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1209
Мой рабочий core.img не конвертируется (сообщение об ошибке я запостил на буржуйском форуме). Еще попробую проверить на версиях 1.99 и 2.00. ...Проверил: аналогично.

Когда я говрил о direct-загрузке, я имел в виду загрузку MBR-загрузчиком ядра с какого-либо раздела без установки родного первичного загрузчика на этот раздел (если данная ФС вообще поддерживается). То что ты сделал, больше похоже на загрузчик для т.н. rawfs. Я понимаю, что это чисто терминологические различия, но все-таки. Кстати было бы неплохо, если бы твой direct-загрузчик мог загружать ядро не только с позиции 1 (находящейся сразу после него), но и с любой другой позиции. Также было бы неплохо, если бы этот загрузчик мог быть установлен в раздел и нормально на нем работать. У меня rawfs-загрузчик кроме размера загружаемых модулей может также оперировать такими параметрами, как стартовая позиция раздела на диске и стартовая позиция первого модуля на разделе (относительно его начала). Т.е. значения этих двух параметров суммируются.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 353 ]  На страницу Пред.  1 ... 19, 20, 21, 22, 23, 24, 25 ... 36  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

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


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

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB