应用程序从SSD固态硬盘读写取数据有没有IO中断呢?
从SSD 固态硬盘读取数据是不是也要先读取到内核空间,再从内核空间拷贝到用户空间?
0Copy和内存映射之间的关系?
C里面的fwrite和fread、C++里面的IO体系它们分别是字符流,还是字节流?

SSD固态硬盘-读写数据-IO中断-0Copy-内存映射
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- GISer Liu 2023-02-12 19:40关注
问题1:应用程序从 SSD 固态硬盘读写数据时,可以减少 IO 中断的发生,因为 SSD 的读写速度非常快,但并不能完全避免 IO 中断。
问题2:是的,从 SSD 固态硬盘读取数据需要先将数据读取到内核空间,然后再从内核空间拷贝到用户空间。
问题3:0Copy 技术可以减少内核空间和用户空间之间的数据拷贝,提高数据读写的效率;内存映射是把文件映射到内存,直接在内存上进行读写,不需要内核空间和用户空间之间的拷贝。0Copy 和内存映射都是为了提高数据读写的效率。
问题4:C 中的 fwrite 和 fread 和 C++ 中的 IO 体系都是字节流,因为它们直接读写字节数组,不考虑字符编码问题。但是,C++ 的 IO 体系还提供了字符流的功能,例如 C++ 中的 iostream。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 2无用