Linux提供了 fcntl 函数来获取到文件的控制标志,同时也提供了 ioctl 函数来获取或者设置一些设备文件的特有属性,比如串口的波特率,显示屏的分辨率等等。文件的控制标志是所有类型的文件都会有的,而特有属性则不一定。 函数原型:注意此函数是 ioctl ,而不是iocntl 但是 ioctl ...
分类:
其他好文 时间:
2016-10-01 12:28:50
阅读次数:
325
c库中提供了 fopen 和 fdopen两个函数用于打开流,获取到文件流指针。 函数原型: 函数参数: path:要打开文件的路径 mode:打开的模式 返回值: 调用成功时返回 文件流指针 调用失败时返回 NULL mode参数可以是以下参数中的一个: r:只读模式;要求文件必须存在 w:只写模 ...
分类:
其他好文 时间:
2016-10-01 12:23:40
阅读次数:
276
fclose函数和close函数类似,用于关闭文件流指针。fclose函数被调用后,属于该文件流指针的用户缓冲区将会被强制刷新,并且对应的文件描述符 fd 也将会被关闭。 函数原型: 函数参数: fp:要关闭的文件流指针 返回值: 调用成功时返回 0 调用失败时返回 EOF ...
分类:
其他好文 时间:
2016-10-01 12:22:58
阅读次数:
185
在前面笔记“打开流详解”中提到了 fdopen 函数,可以通过文件描述符 fd 来获取对应的文件流指针。而同时 C 库函数提供了 fileno 函数,这个函数的作用就是能够通过 文件流指针来获取对应的 文件描述符 fd 。 函数原型: 函数参数: stream:要操作的文件流指针 返回值: 函数返回 ...
分类:
其他好文 时间:
2016-10-01 12:22:03
阅读次数:
153
http://blog.chinaunix.net/uid-14735472-id-2921377.html 讲解虚拟文件系统的一些数据结构以及之间的关系,有些地方看不懂 http://www.docin.com/p-941544538.html 讲解了进程打开文件时内核所建立的各种数据结构之间的联 ...
分类:
系统相关 时间:
2016-10-01 12:16:30
阅读次数:
143
在文件 IO 中使用文件描述符fd来表示一个文件不同,而标准 IO 使用一个指向 FILE 对象的指针来代表一个文件。FILE 对象实际上是一个结构体,此结构体中封装了代表文件的文件描述符。当然不仅仅是含有文件描述符,其中还会记录属于该文件的用户缓冲区信息。 在文件 IO 详解笔记中提到过标准输入、 ...
分类:
其他好文 时间:
2016-10-01 10:33:59
阅读次数:
154
POSIX IO操作称为文件IO,也称为低级文件IO,是操作系统提供的系统调用,属于没有缓冲区的文件操作方式。执行该种操作后,内容会直接被写入到内核中的提供给磁盘的专门缓冲区中,内核会定期的刷新该缓冲区,将内容同步到磁盘当中。 ANSI C IO操作称为标准文件IO,也称为高级文件IO,是C库函数提 ...
分类:
其他好文 时间:
2016-10-01 10:30:23
阅读次数:
496
标准文件 IO 相比于文件 IO 来说,在用户层中增加了一个用户缓冲区。也就是说在使用标准IO 来操作文件的时候,都会经过此用户层的缓冲区。比如使用标准 IO 来向文件中写入内容的时候,首先内容会首先被写入到用户缓冲区中,等到 缓冲区满 或者 刷新缓冲区 的时候在调用文件 IO 将内容写入到内核中的 ...
分类:
其他好文 时间:
2016-10-01 10:27:43
阅读次数:
151
看完此文,题目不言自明。转自 http://blog.chinaunix.net/uid-27105712-id-3270102.html 在Linux 开发中,有几个关系到性能的东西,技术人员非常关注:进程,CPU,MEM,网络IO,磁盘IO。本篇文件打算详细全面,深入浅出。剖析文件IO的细节。从 ...
分类:
其他好文 时间:
2016-09-23 23:10:26
阅读次数:
207
链接概述在3.7.0以后,WAL(Write-Ahead Log)模式可以使用,是另一种实现事务原子性的方法。WAL的优点在大多数情况下更快并行性更高。因为读操作和写操作可以并行。文件IO更加有序化,串行化(more sequential)使用fsync()的次数更少,在fsync()调用时好时坏的... ...
分类:
数据库 时间:
2016-09-17 23:27:57
阅读次数:
435