-1
A
回答
1
我不确定你可以在你的模块中做什么。 如果您正在使用shell,则可以使用dd
命令。
dd if=/dev/sda of=outfile
如果您不能使用用户空间的命令,您可能需要磁盘块设备上直接运行。 您需要使用系统调用open(2)
打开设备(详情请参阅man 2 open
)。
int fd;
fd = open("/dev/sda", FLAGS);
之后,您可以执行读命令(man 2 read)从设备读取。
ssize_t read(int fd, void *buf, size_t count);
您也可以发送命令到使用的IOCTL设备:
int ioctl(int d, int request, ...);
使用这些调用,你应该有足够的灵活性,以做任何你想要与你的磁盘做。
相关问题
- 1. 在Linux上使用C++读取硬盘扇区
- 2. 我该如何写保留的硬盘驱动器扇区?
- 3. 在字节级别读取硬盘
- 4. 如何在Linux中查找软盘\ CD的扇区大小?
- 5. 磁盘扇区读取目标c
- 6. Linux内核硬件断点
- 7. 如何在Linux内核空间读取环形缓冲区?
- 8. Linux内核写入()和读取()函数
- 9. 如何在Linux内核模块中读取/写入文件?
- 10. 用于自我优化硬盘的Linux内核模块:建议?
- 11. 阅读单扇区
- 12. Linux:确定原始磁盘扇区是否正在使用
- 13. 寻找硬盘驱动器扇区占用的文件
- 14. 如何通过C++访问硬盘驱动器的文件系统和扇区?
- 15. 如何在Firefox中读取/写入硬盘中的文件?
- 16. 如何在CPU处于保护模式时读/写硬盘?
- 17. 在启动盘上读取一个扇区
- 18. 读取Linux内核参数
- 19. 在Linux内核中,有什么区别__raw_readl/__ raw_writel和readl/writel?
- 20. 如何在Linux内核捕获键盘输入
- 21. 在Linux内核中读取和写入原子操作实现
- 22. 是否可以在Linux下分配某个扇区的内存?
- 23. 如何防止硬盘写入缓冲区错误?
- 24. 如何使用Firefox插件从硬盘读取/写入文件?
- 25. 需要读取U盘的扇区0并将其移动
- 26. 计算机如何确切知道硬盘的磁盘/磁头/扇区的数量?
- 27. QThread是在用户级别,内核级别还是两者上?
- 28. ptrace是否在用户级别或内核级别上工作?
- 29. 从OS光盘如何读取普通的数据扇区(模式1)X
- 30. 如何修补Linux内核?
这不是我想要的答案。我想通过编程在内核级读写扇区。 – user4082317 2014-12-08 08:34:54