bootloader

    1熱度

    2回答

    我正在玩OS的發展,我想用我自己的自定義文件系統。問題是,爲了讓我的操作系統進入硬盤,我要在CD上創建一個安裝程序,我希望使用相同的文件系統創建該程序;這將意味着我不必擔心導航CDFS,我將能夠使用與我的操作系統相同的引導加載程序系統來開發安裝程序(這將是一個單一的二進制文件,其中第一個512字節包含代碼以將文件的其餘部分加載到內存中並執行其中包含的代碼)。所以問題是,這可以通過硬盤模擬來實現嗎?

    0熱度

    1回答

    在windows中,我在AVRStudio中創建一個新項目並編譯代碼。這比給我的.hex文件,我可以在編譯後有Bootloader.exe運行。但在Mac中它似乎不起作用。我編譯了代碼,然後給我.hex文件。但如何在Mac上測試它?我也跟着下面的步驟在本網站提到:http://www.obdev.at/products/crosspack/index.html bash$ cd Desktop

    1熱度

    2回答

    我正在嘗試寫一個引導加載程序,並且我正在編寫的所有代碼都以實模式運行。在所有的例子中,我發現有一個xor ax, ax或xor eax, eax,我不明白這是做什麼。這似乎與設置段寄存器有關,但我不清楚是什麼。

    1熱度

    1回答

    我試圖做一個簡單的引導程序,將從USB運行。之後的幾個問題,我試着用下面的彙編代碼塊(我從MikeOS了): BITS 16 start: mov ax, 07C0h ; Set up 4K stack space after this bootloader add ax, 288 ; (4096 + 512)/16 bytes per paragraph mov ss, ax m

    1熱度

    1回答

    我正嘗試使用lret指令從ring0切換到ring3。因此,我爲ss,esp,cs,ip推送正確的值,並使用lret。 我用QEMU和gdb調試代碼,並發現一件奇怪的事情: LRET instrunction後,處理器成功地切換到環3(我用「信息登記」的QEMU來檢查),值ss,cs,esp都是正確的,並且eip指向ring3代碼的第一條指令。 但是,不管是什麼環3代碼的第一個指令是(甚至NOP指

    1熱度

    1回答

    我的簡單引導程序代碼有一個奇怪的問題。 它應該通過BIOS中斷13h函數02h從磁盤讀取扇區到文本模式的視頻內存(只是爲了看看它是否工作)。它適用於模擬器(Bochs的,QEMU)完全正常,但是當我嘗試從安裝到實機(宏基Extensa 5620Z)一個U盤啓動它,它只是清除屏幕和打印: PCI System Error on Bus/Device/Function 0000h PCI Syste

    0熱度

    3回答

    我需要在grub2命令提示符下掛載VHD文件。 我嘗試使用「環回」命令,如下所示: grub > insmod ntfs grub > insmod ntldr grub > loopback loop (hd0,1)/test.vhd grub > ls (loop)/ error: unknown filesystem 我嘗試都「靜態」和「動態」 VHD和兩個VHD文件已經NTFS

    3熱度

    1回答

    我寫一個引導程序如下: bits 16 [org 0x7c00] KERN_OFFSET equ 0x1000 mov [BOOTDISK], dl mov dl, 0x0 ;0 is for floppy-disk mov ah, 0x2 ;Read function for the interrupt mov al, 0x15 ;Read 15 sectors conating k

    0熱度

    1回答

    我有一個uefi shell應用程序和一個uefi模塊,提供類似的功能,我試圖將它們合併成一個單獨的實體,可以作爲啓動菜單或uefi shell的模塊執行。 是否有可能創建一個可以像這樣執行的efi應用程序? 的入口點模塊是 ModMain ( IN EFI_HANDLE ImageHandle, IN EFI_SYSTEM_TABLE *SystemTable ) 而U

    0熱度

    1回答

    我有一個問題,從一個名爲「stage2.bin」的編譯二進制文件中調用內核「kernel.bin」,我搞砸了調用與內存位置的內核(引導程序調用stage2' 2000h' - stage2在'???? h'處調用內核)。 我使用fat12(FileSystem),我想用保護模式調用內核! 我錯在哪裏? 我使用Windows上的NASM進行編譯。 編輯:內核在'9000h'打電話! STAGE2.B