Member 13768174 Ответов: 2

Как я могу сделать тот же пример с помощью qemu в centos 7?


Как предлагается в этой статье сделать этот пример на ubuntu, но я делаю это на centos 7? Разве это имеет значение?

И еще одна проблема, связанная с bochs-X. он не будет установлен? поэтому я попробовал его с помощью qemu, но он не работает.

Что я уже пробовал:

Я попытался установить bochs на centos7, используя следующую команду:
sudo yum install bochs-x

но он показывает, что пакет bochs-x недоступен.
Ошибка: нечего делать

Richard MacCutchan

Что?

Member 13768174

извините, если мой вопрос был неуместен..

на самом деле я пытался написать простой загрузчик в сборке.

ассемблерный код:

code16 #генерация 16-битного кода
.text #расположение исполняемого кода
.globl _start;
_start: #точка ввода кода

movb $'X' , %al #символ для печати
movb $0x0e, %ah #служебный код bios для печати
int $0x10 #прервите работу процессора прямо сейчас

. = _start + 510 #mov до 510-го байта от 0 pos
.байт 0x55 #добавить загрузочную подпись
.байт 0xaa #добавить загрузочную подпись

Перед этим я создал образ гибкого диска размером 1,4 МБ с помощью следующей команды:
dd if=/dev/zero of=floppy.img bs=512 count=2880

затем я скомпилировал ассемблерный код и создал файл ".bin"

затем я скопировал код в загрузочный сектор floppy.img, используя следующую команду:
ДД, если=тест.бункер=дискету.ИМГ

а затем запустил qemu-system-x86_64.

Но qemu не обнаруживает мою дискету.img...

Так что не могли бы вы мне помочь?

Richard MacCutchan

Извините, у меня нет опыта работы с qemu, но я думаю, что вам нужно еще немного почитать о загрузчиках.

Member 13768174

Ладно, конечно...Не могли бы вы предложить несколько книг, пожалуйста?

2 Ответов

Рейтинг:
4

Jochen Arndt

Вы, вероятно, имеете в виду статью Написание загрузчика в сборке и C - Часть 1[^].

Это большой сайт с миллионами пользователей, и многие тысячи из них написали статьи. Если у вас есть вопрос, связанный со статьей, сначала используйте форум в нижней части статьи, потому что автор может помочь лучше, чем другие.

CentOS основана на Red Hat Enterprise Linux (RHEL), а Ubuntu-на Debian. Если что-то описанное для дистрибутива Linux на базе Debian не работает с дистрибутивом на базе RHEL, сначала проведите веб-исследование, чтобы выяснить различия и соответствующие команды / имена пакетов и т. д.

Если пакет не найден для дистрибутива, сначала проверьте наличие похожих имен с помощью менеджера пакетов дистрибутива (например, поиск "bochs*" в вашем случае). Или найдите в интернете базовое имя пакета и ваш дистрибутив Linux. Если нет доступного пакета, вы обычно можете построить его из исходных текстов.

Похоже, вам придется это сделать, потому что я нашел только пакет для CentOS 6 (bochs-2.6-3.puias6.i686.rpm CentOS 6 Скачать[^]). Но посетите эту ссылку, потому что в ней перечислены необходимые библиотеки.

Посетите сайт проекта Bochs по адресу Bochs x86 PC emulator скачать | SourceForge.net[^] чтобы получить источники и инструкции по строительству.

Существует также пакет RPM по адресу Bochs x86 PC emulator - обзор /bochs/2.6.9 at SourceForge.net[^]. Поэтому вы можете попробовать сначала загрузить и установить его, прежде чем создавать из исходных текстов.


Member 13768174

Да, вы правы. На самом деле я имел в виду статью написание загрузчика в сборке и C - Part 1[^].

На самом деле я читал эту статью и по ошибке разместил этот вопрос где-то еще, предполагая, что я нахожусь в самом низу этой статьи. Я понял это позже. Но в любом случае я по-прежнему ценю вашу помощь. Большое спасибо.

На данный момент я установил bochs 2.6.9 в своей системе. Все еще борюсь с некоторыми вещами, такими как конфигурации параметров диска и загрузки, bochs display и interface options.

Jochen Arndt

Спасибо Вам за ваши отзывы и принятие моего решения.

Я не могу много помочь с Boch, потому что я не использовал его до сих пор. Но проект кажется довольно активным и предоставляет больше документации, чем другие проекты, так что вы должны заставить его работать.

Member 13768174

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

Рейтинг:
0

Richard MacCutchan

QEMU[^]