大家好,我正在用汇编16位NASM Windows 10 64位(具体来说)编写一个操作系统,并将其编译为2个二进制.bin文件:
内核库
bootstrap
您可能会猜到boot.bin加载了kernel.bin并创建了一个文件系统,就可以了。但是问题是我需要在真实的机器上对其进行测试,以测试硬件的 react ,而不仅仅是虚拟的!所以我得到了软盘(3.5“1.44MB)绰绰有余,但是我试图将引导加载程序(boot.bin)写入带有floppy-usb-drive的软盘的扇区0(驱动器和软盘正在按应有的方式工作! )我使用以下步骤将操作系统放在cmd的软盘中:
format A:
nasm -f bin kernel.asm -o KERNEL.BIN`
copy KERNEL.BIN A:\KERNEL.BIN
debug boot.bin
w 100 0 0 1
q
它启动...但不正确:它说:并重新启动到Windows 10
问题
我怎样才能解决这个问题?我现在在dosbox(Windows 7 x32中的debug.exe)中使用dosbox和debug.exe,例如:我复制了内核并刻录了加载程序,但是它确实起作用了!并加载我的操作系统!
最佳答案
您的系统很有可能是EFI或uEFI,而不是传统的BIOS,尤其是如果它是在最近四到五年内制造的。您可以在启动时检查系统配置(进入BIOS或EFI配置)并启用旧式启动模式。
您的防病毒软件也可能会干扰您静默写入引导扇区。检查这些日志,并确保以管理员身份运行您的命令行。
关于windows - 如何在Windows 10 Pro 64位上将二进制文件刻录到通过软盘USB插入的软盘的扇区0,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45642631/