Linux设备文件和普通文件
系统教程导读
收集整理了【Linux设备文件和普通文件】操作系统教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1002字,纯文字阅读大概需要2分钟。
系统教程内容图文
【 很多人认为文件是一些存储在磁盘上的数据,但是Linux采用了一种更为抽象的方法。将设备抽象成文件。设备文件和普通文件一样具有文件名、另一个i节点号、一个文件所有者、一个权限位集合和最近修改时间。平时了解的和文件有关的所有内容都将被运用于终端和其他的设备。】
【 普通文件,即常用的磁盘文件由字节组成,磁盘文件中的字节数就是文件大小。而设备文件是链接,不是容器。键盘和鼠标不存储点击数:)设备文件的i节点存储的是指向内核的子程序的指针,而不是文件的大小和存储列表。内核中传输设备数据的子程序被称为设备驱动程序。】
【 文件类型的区别体现在i节点上:】
【 磁盘文件的i节点包含指向数据块的指针列表】
【 设备文件的i节点包含一个指向内核中设备驱动程序的指针】
【 磁盘连接和设备连接】
【 与磁盘文件的连接通常包含内核缓冲区,即磁盘连接具有缓冲区这样一个属性。到终端的连接则不同,进程需要尽快的将数据传送出去。】
【 也就是说,二者的连接属性不同,针对于某一个特定的文件与设备的连接,可以思考:1.连接有哪些属性?2.如何检测当前属性?3.如何改变当前属性?】
【 关于2和3的答案,是使用系统调用fcntl,文件描述符的属性被编码在一个整数的位中。fcntl通过读写该整数位来控制文件描述符。】
【 如:】
【 #include】
【 int s;】
【 s = fcntl(fd, F_GETFL);】
【 s |= OSYNC;】
【 result = fcntl(fd, F_SETFL, s);】
【 从内核中读取设置到变量,修改变量值,将设置返回内核,是Linux中读取和修改连接属性的典型方法。】
【 fcntl并不是仅有的用来设置文件描述符属性的方法。通常在打开一个文件时,应该知道需要怎样的设置。可以通过系统调用open的第二个参数的一部分来设置文件描述符的属性。】
【 如: fd = open(FILE, OWRONLY | O_APPEND | O_SYNC );
以上就是给大家介绍的如何使的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击官网吧。
本文来自http://www.win7cn.com/如需转载请注明!推荐:win7纯净版】
系统教程总结
以上是为您收集整理的【Linux设备文件和普通文件】操作系统教程的全部内容,希望文章能够帮你了解操作系统教程Linux设备文件和普通文件。
如果觉得操作系统教程内容还不错,欢迎将网站推荐给好友。