为了对常规文件执行I / O,我们必须首先获取文件描述符使用 open()。然后使用 read() 和 write() 执行 I/O。执行完所有操作后I/O,我们应该使用 close() 释放文件描述符及其相关资源。这些系统调用可用于对所有类型的文件执行 I/O。
所有文件类型和设备驱动程序实现相同的 I/O 接口的事实允许I / O的通用性,这意味着程序通常可以与任何类型的文件,不需要特定于文件类型的代码。
对于每个打开的文件,内核维护一个文件偏移量,该偏移量确定下一次读取或写入发生的位置。文件偏移量是隐式的通过读取和写入更新。使用 lseek(),我们可以显式地重新定位文件偏移量到文件内的任何位置或文件末尾。在某个位置写入数据超出文件的上一端会在文件中创建一个孔。从文件孔读取返回包含零的字节。
ioctl() 系统调用是不适合的设备和文件操作的统称到标准文件 I/O 模型中。
页面更新:2024-04-22
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号