OSDev
http://osdev.ru/

Как скомпилировать c++ программу и запустить из ядра?
http://osdev.ru/viewtopic.php?f=6&t=1834
Страница 1 из 1

Автор:  kvonosan [ 13 фев 2018, 18:07 ]
Заголовок сообщения:  Как скомпилировать c++ программу и запустить из ядра?

Скачал с https://board.flatassembler.net/topic.php?t=6529 загрузчик который загружает второй загрузчик.
там два файла написанные на flat assembler.
Скомпилил, склеил два файла в один(через winhex), сохранил в img файл.
Запустил через qemu: qemu-system-i386.exe -fda C:\Users\kvono\Desktop\kvonosanos.img
вывело:
Booting...
OK!
Greetings from the secondary file....

Теперь думаю как заместо второго ассемблеровского файла который пишет Greetings from the secondary file....
сделать прогу на с++ которая выводит Greetings from C++ secondary file....
Возможно ли в visual studio 2017 community скомпилировать код на c++ и загрузить его вместо второго загрузочного файла?
Если я скомпилю в объектный код c++ прогу, и склею с файлом загрузчика, он загрузится? Как это сделать?

Рад любым пинкам, подсказкам..

Автор:  pavia [ 13 фев 2018, 20:26 ]
Заголовок сообщения:  Re: Как скомпилировать c++ программу и запустить из ядра?

http://phantomexos.blogspot.ru/2013/07/ ... iboot.html
https://dev64.wordpress.com/2011/12/25/ ... assembler/

1) VS++ генерирует код для 32 битного режима, а ваш загрузчик работает с 16 битным режимом.
Это две разных кодовых таблицы. Используйте Grub он переведёт проц в 32 битный режим и загрузит образ.
2) Используйте gcc и формат elf тогда вы сможете цепляться через gdb и иметь отладочную информацию.

Автор:  kvonosan [ 15 фев 2018, 16:21 ]
Заголовок сообщения:  Re: Как скомпилировать c++ программу и запустить из ядра?

Нашел что искал тут https://gamedev.ru/code/forum/?id=141980&page=3

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/