2

У меня нет большого опыта в этом, поэтому я здесь, чтобы попросить о помощи.

Моя проблема:

Я хочу загрузить ISO-образ в оперативную память с USB-накопителя. В этот ISO должен быть включен работающий MS-DOS (какая версия не имеет значения вначале).

Я также хочу установить второй ISO в ОЗУ, но эти файлы также могут быть загружены в первый образ, если это необходимо. (Я просто возражаю против максимальных 1,44 МБ дискеты, которые не подходят.)

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

Моей первой мыслью было использовать GRUB, чтобы загрузить его в оперативную память и запустить его. К сожалению, если я редактирую ISO-образ MS-DOS (каким-либо образом, например, переключая раскладку клавиатуры или добавляя другой небольшой файл), он отказывается загружать его.

Мне нужно иметь отредактированную MS-DOS, так как я хочу включить командные файлы, такие как xcopy , net use , NTFS4DOS и так далее.

Поэтому после загрузки я хочу, чтобы MS-DOS запускался с доступом к другим данным. Если это на том же "диске" (скажем, ISO) или на втором, не имеет значения.

Как загрузить MS-DOS и дополнительные файлы в оперативную память и загрузить ее?

GRUB не требуется, это то, что я так долго находил в своих интернет-исследованиях.

3 ответа3

1

Проект Syslinux содержит загрузчик memdisk, который может загружать виртуальные жесткие диски. Поэтому, если вы вместо этого поместите установку MS-DOS на жесткий диск, он загрузит диск в память и загрузится с него. Вы также можете загрузить несколько образов жесткого диска, чтобы увидеть несколько дисков.

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

0

Вы можете использовать Rufus или другие подобные утилиты для создания загрузочной флешки MS-DOS, как описано здесь.

Затем вам нужно создать виртуальный диск и перенести туда системные файлы.

Спасательный диск Windows 98 использовал тот же подход, распаковывая содержимое файла cab с помощью утилит на виртуальном диске.

0

Я хочу загрузить ISO-образ в оперативную память с USB-накопителя. В этот ISO должен быть включен работающий MS-DOS (какая версия не имеет значения вначале).

MS-DOS использует 16-разрядные вызовы BIOS реального режима для перечисления и доступа к дискам, а также ко всему, что могут установить строки DEVICE= или DEVICEHIGH= в вашем CONFIG.SYS .

Тогда вы можете подумать, что можете найти какой-нибудь RAM-диск на базе DOS (RAMDRIVE.SYS? Это было долго ...)Проблема заключается в том, что при загрузке DOS ему необходимо загрузить IO.SYS и MSDOS.SYS , затем CONFIG.SYS и любые файлы, на которые указывает CONFIG.SYS , и для этого он использует подпрограммы BIOS. Нельзя получить доступ к ОЗУ, пока не будут загружены как минимум IO.SYS и MSDOS.SYS - и он попытается загрузить его с того же места, на котором он был загружен из AFAIK.

Нет способа "предварительно загрузить" вещи из CONFIG.SYS чтобы обойти это.

Так что - если ваш BIOS (не что-нибудь еще) поддерживает загрузку.ISO в ОЗУ и создание его похожим на другой жесткий диск, подключенный к системе (чего нет у других - но в конце 80-х были некоторые BIOS с DOS в ПЗУ и тому подобное), или вы запускаете оверлейный загрузчик, который делает это до загрузки MS -DOS (я не знаю ни одного или если бы это даже сработало), вы не можете этого сделать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .