使用汇编代码访问hardrive文件?

P's*_*sao -1 windows assembly ntfs drives

因此,我尝试制作一个可启动的小程序集程序,让用户删除并将文件添加到指定的驱动器.唯一的问题是,我不知道如何使用程序集访问驱动器.有人能指出我能找到这些信息的方向吗?该信息也可以用于c编程语言.

我试图从一些可启动的汇编代码类型访问默认的Windows 7硬盘.哪个是NTFS.

Ale*_*nze 9

要在x86 PC上访问某些可引导代码中的磁盘,最简单和最自然的方法是使用BIOS int 13h函数.这将让您读写单个磁盘扇区.

硬盘通常分为多个分区,还有主引导记录(MBR),用于描述每个分区的位置,大小和类型.MBR是HDD的第一个扇区.

每个分区内都有一些文件系统.您需要实现NTFS驱动程序才能在NTFS中读取和写入文件.

AFAIK,NTFS未打开,但存在基于反向引擎的NTFS驱动程序(例如在Linux中).NTFS驱动程序通常用C(++)编写,而不是汇编,因为NTFS很大而且很复杂,C在开发,维护和可移植性方面比汇编更实用.我不建议在汇编中编写FS代码.

关于EFI系统的PS 情况有些不同.有GPT而不是MBR,你使用EFI工具访问磁盘而不是BIOS int 13h.

PPS我已经完成了你想要的C和一点点组装,但使用FAT1x/32而不是NTFS.这是可行的.NTFS更难.一个人可能是不可能的,特别是如果他们没有足够的知识和技能.