小编fuz*_*zzy的帖子

C 语言的低级编写

如何使用 C 编程语言写入硬盘上的任何块?

一个关于编写MBR的问题,但它并没有太多地涵盖 C 方面。

由于文件描述符 - 正如这个词所说 - 用于文件,我想在这种情况下无法使用它们。所述低级别的I / O包含在C标准库也与filedescriptors实现。

更准确地说:
这个问题是关于写入 HDD 块而不是文件(独立于操作系统)。

上面提到的问题的答案基本上建议在 UNIX 系统上使用dd (coreutils)。这就是为什么我在 C 中寻求一种方法。也许引导加载程序(GRUB)和引导扇区病毒使用不同的技术?

我想更改文件描述符内的实际指针不是合法的方式。

问题和限制:
我知道有一些方面需要牢记,例如

  • 某些操作系统限制对卷的直接访问(例如 Windows)
  • 写入错误以及将错误数据写入某些块可能会导致文件系统损坏(HDD 上的数据丢失)。
  • 防病毒软件可能会将其标记为可疑代码。

这个问题更多的是理论性的。

c io mbr dd

4
推荐指数
1
解决办法
2407
查看次数

标签 统计

c ×1

dd ×1

io ×1

mbr ×1