Operating system 是否可以通过任何十六进制编辑器写入笔驱动器的MBR?

Operating system 是否可以通过任何十六进制编辑器写入笔驱动器的MBR?,operating-system,usb-drive,hex-editors,mbr,Operating System,Usb Drive,Hex Editors,Mbr,创建引导加载程序后,如果我复制引导加载程序的字节并使用十六进制编辑器将其粘贴到笔驱动器的前512个字节上,它会工作吗?(事实上,我想从头开始学习创建操作系统。)我不完全确定我是否理解你的问题,但我想回答这个问题:是的。您可以使用具有适当权限的适当设计的十六进制编辑器(Linux上通常需要“sudo”访问权限)写入驱动器的任何部分 例如,写入闪存驱动器的引导扇区对于自动引导闪存驱动器是必要的 并非所有十六进制编辑器都设计用于访问驱动器,有些编辑器只能处理文件。例如,通常仅对文件起作用,但可以通过使

创建引导加载程序后,如果我复制引导加载程序的字节并使用十六进制编辑器将其粘贴到笔驱动器的前512个字节上,它会工作吗?(事实上,我想从头开始学习创建操作系统。)

我不完全确定我是否理解你的问题,但我想回答这个问题:是的。您可以使用具有适当权限的适当设计的十六进制编辑器(Linux上通常需要“sudo”访问权限)写入驱动器的任何部分

例如,写入闪存驱动器的引导扇区对于自动引导闪存驱动器是必要的

并非所有十六进制编辑器都设计用于访问驱动器,有些编辑器只能处理文件。例如,通常仅对文件起作用,但可以通过使用
-d
标志在Linux/Unix环境中作为文件访问磁盘


Linux
dd
命令还支持对驱动器的低级别写入。这在您的情况下可能很有用,因为它可以用于执行驱动器内容的逐字节拷贝,包括MBR部分。

不知道十六进制编辑器,但看起来在Windows上,您可以尝试
CreateFile
,名称如下
\\。\PHYSICALDRIVE0
或仅
\\PHYSICALDRIVE0
。并使用
WriteFile
(小心!!!否则会损坏操作系统安装或其他数据)


您可能可以通过使用来计算设备名称。另外,请查看和。

嗨,Richard,谢谢你的回答。实际上,我对Windows而不是Linux更感兴趣,尽管我知道Linux更适合操作系统开发。我也熟悉dd命令,尽管我从未尝试过。在windows中,我体验过一个名为[HxD]的免费十六进制编辑器。如果您告诉我是否可以在windows中执行此操作,以及哪个文件系统适合执行此操作(FAT32的NTFS),那将更有帮助。任何教程链接都会更好。对不起,@nafisadullahkhan,我不太熟悉Windows开发工具。