Здравствуйте!
Облазил наверно весь инет и на спец.форумах побывал, но нигде не нашёл информации, никто не навёл на путь истинный.
Проблема.
Имеется на свете куча полезных загрузочных дискеток. Это могут быть - установочные дискеты для ОС, тесты разные (MemTest86+,), утилиты (cia,offline,pqpm...), рекавери-утиль и пр. без чего жить трудно.
Дискеты вещь ненадёжная и тормозная, хрупкая и объёмная. Иметь с ними дело не охота.
Всем известно, что можно создать образы дискеток (*.IMA,*.IMZ,*.FLP, *.IMG...), например, WinImage'ем.
Существут также великолепная софтина BootCD Wizard, позволяющая создавать мультизагрузочные компакты, при загрузке с которых производится эмуляция FDD, и предоставляется возможность выбора любого образа (IMA,IMG...ISO) для загрузки с этого самого образа, будто бы с реальной дискеты... Т.о. отпадает необходимость использования физических дискеток!
Но вопрос вот в чём.
Эта софтина заточена под CD/DVD. А я хочу использовать подобные возможности без CD-ROM'a. Заместо CD требуется загрузка с HDD партиции, с возможностью выбора образа для загрузки с эмулированного дисковода.
Как это должно выглядеть. Загружаюсь с партиции HDD, появляется менюшка со списком образов (или лучше с возможностью ыбора из любого каталого диска C:), и выбрав образ осуществляется загрузка будто с обычной дискеты.
Сама прога BCDWizard имеет основной модуль, который выполняет эмуляцию, показывает меню и обрабатывает *.ini. Но он заточен для работы с CD. Также имеется начальный загрузчик, который пишется как бутблок на CD (2048 Bytes). Он естественно тоже заточен под CD.
Т.о. не получится записать его в виде BootRecord на партицию HDD...
Есть два пути решения задачи.
1. Дизассемблить эти модули и переделать на работу с ХДД.
2. Найти готовое решение.
Первый способ навряд ли мне под силу (времени уйдёт тьма! а я спешу). Да и нереально будет разобраться с большим модулем (~30K).
Хотя с самим загрузчиком вполне реально (2K).
Второй способ. Собственно на него я и расчитываю. Поэтому я здесь.
Принимаются любые подсказки...
По ходу Вам нужен просто загрузчик ОС, Попробуйте напр. Sytem commander...
НЕТ - подъёму цен на dial-up!!! http//infostore.org/info/2469744
abboot Если у Вас есть хард, то грузитесь с него и заводите нужную програму. Возможно придется создать несколько вариантов конфигурации, и даже несколько разделов, т.к. что-то работает под *DOS, что-то под *Nix, что-то под Win*. В целом это будет гораздо удобнее, проверено на собственном опыте.
За несоответствие действительности Вашим о ней представлениям администрация форума ответственности не несет.
Нет, господа, вы либо невнимательно читали пост, либо не имели дело с BCDWizard, либо наши мысли полностью десинхронизированы., а может я что-то не так объяснил...
Мультизагрузчик есть у меня. SyMon юзаю. С загрузкой почти что любого числа разных ОС с одного харда проблем не имею.
Хорошо. Вот один пример, который возможно добавит ясности.
Имеется такая неплохая утилитка для тестирования ОЗУ - MemTest86+. Слыхали? Так вот она распространяется в виде образа, записав который на дискетку получается загрузочный флоп, готовый к употребелению. Но если образ этот вскрыть, то файлов там нету. Прога эта пишется по секторам на дискетку начиная с загрузочного. И сама себя загружает. Т.е. ясно, что не поможет создание ДОСового раздела на харде... Как быть, если нет желания/дисковода использовать флопики? Особенно если таких нужных утилей несколько!?
Выход вроде бы есть - создать загрузочный CD с использованием BootCDWizard или подобной ей... но! Если у меня нет возможности/желания грузиться с Boot-CD? Т.е. имеются же проги позволяющие это делать с комктдиска, так почему же не сделать то же самое с харда?!
Конечно, в винде и досе есть утиль позволяющий эмулировать FDD, но вот чтобы осуществлять загрузку с образов, при помощи эмулированного FDD, возможности нет.
Добавлено спустя 13 минут 53 секунды:
Да, во многих случаях можно создать несколько разделов и ряд конфигураций, можно посоздавать например кучу секций в autoexec.bat & config.sys...
Но вот случаи с MemTest и подобными, а также есть бутдискеты, утиль на которых заточен под работу с дискеткой + разные заковыристые конфигурации и драйверы, + огромное нежелание копаться в имеющихся десятках подобных флопах, вдобавок с кучей модификаций ДОСа, нежелание создавать миллион разделов из-за отдельных частных утилит и т.д. и. т.п. ...
Вдобавок, когда ощутил прелесть загрузки с образов при помощи BCDW, то просто спать спокойно не могу!
Я бы посоветовал внимательно изучить возможности LILO и особенно GRUB. Мой скромный опыт в Linux позволяет предположить, что они это умеют.
А кому счас легко...
Скорее, последнее. Потому как Ваши потребности слабо соотносятся с реальными возможностями железа, в первую очередь.
Штука в том, что многие из названных Вами "образов" дискет - фактически, и не образы уже, а ПРОГРАММЫ, обращающиеся напрямую к контроллеру дисковода, минуя даже Биос... (а ежели и через Биос - от этого легче ?). И форматируют они эту дискетку сами, и пишут данные на нее сами. И как же Вы будете это эмулировать на винчестере ?
И даже те программульки, которые не форматируют дискетку (таких, кстати, меньшинство), а только пишут посекторно... через кого они к этим секторам обращаются ? ДОС ведь так не умеет. Значит, или через Биос, или напрямую, тем же программированием контроллера. И как же Вы будете это распознавать в каждом конкретном образе дискетки, чтобы выкусывать/заменять ? Тем более, что способов записи на дискетку существует оч-чень много, каждый... как он хочет !
У вас прекрасные дети ! Но все, что вы делаете РУКАМИ - никуда, никуда не годится !
Предлагаю скачать syslinux и внимательно изучить документацию на ядро memdisk.
Потом взять loadlin и приковырять к нему w98+оное извращение с memdisk.
А вообще grub это все умеет...
Хотите расковыренный RIS diskette?
Выход обычно есть. Но он не работает.
господа позволю себе переформуліровать вопрос и немноко на него ответить.
Q1.
"Как передать управления образу ОС находящемуся в виде файла на файловой системе"
A1. Использовать GRUB , т.к. данный загрузчик понимает файловые системы (из несвободных понимает FAT AFAIR) у имеет передавать управления чему угодно практически.
Например для memtst86+ кусок конфіга:
Более подробно - см. info grub
Q2: Как передать управление образу ОС таким образом чтобы данный образ был представлен для этой ОС в виде block device вогласно спецификации El Torito либо чему-то подобному.
A2: А вот фиг его знает... Для проізводных DOS помимо собственно передачи управления загрузочному коду необходимо еще чтобы сам образ был представляен в виде диска лбо дискетки, иначе оно не найдет не то что своих файлов но даже и прожолжить загрузку данее загрузочного сектора не сумеет. Так что грузить из файла любую производную linux/bsd (к которым в частності і относітся memtest ) можно, а вот для DOSовскіх поделок прідется іспользовать скорее всего разделы на файловой системе.
ex-K9
K9
Memtest скорее исключение. memdisk юзать кошернее.
А в целом все правильно, правда слишком развернуто)
Выход обычно есть. Но он не работает.
great coder ну да, memdisk по суті должен делать прімерно то же самое что и bios согласно спекам el torito, только вот насколько оно ровно работает я не знаю, у меня лет 5 назад работать не захотело... Впрочем, я тогда был относітельно мал и глуп.
ex-K9
K9
У мемдиска есть некоторые проблемы с поддержкой винчестерных образов (надо четко понимать, что mbr нужен и прописывать правильные lba), нестандартных дискетт (надо писать chs) и himem (юзайте raw). А еще он gz понимает.
З.Ы. raw и корректное поедание himemа появилось относительно недавно.
Выход обычно есть. Но он не работает.
Отправить комментарий