今天把这块的东西算是看完了。总结一下,(1)这里包括底层文件的I/O操作,实际上是系统调用函数借口,是基于文件描述符的文件操作;(2)还有标准I/O操作,是基于缓冲流的文件操作;还有(3)串口的操作,串口是设备文件“/dev”目录下。
(1)基础的open(),read(),write(),sleek(),close()。
(2)串口是需要先配置再使用 (3)fopen(),fdopen(),freopen(),fclose(),fread(),fwrite(),getc(),fgetc(),getchar(),putc(),fputc(),putchar(),gets(),fgets(),puts(),fputs(),printf(),fprintf(),sprintf(),vprintf(),
vfprintf(),vsprintf()scanf(),fscanf(),sscanf(),opendir()fdopendir(),closedir()readdir().
(4)文件锁fcntl(),lockf()(不建议使用)
(5)多路复用select(),poll()
突然发现这些函数好多哦,每一个函数的语法写出来很费时间,就不写了。把实例代码都编写出来运行通过就可以了。
linux系统调用(集成unix系统调用最有用的部分)是在内核空间,往上是用户编程接口API(遵循POSIX标准)是在用户空间,再往上是系统命令和应用程序。
虚拟文件系统(VFS),抽象出各种文件系统公共的部分形成一个抽象层是系统内核的一部分,位于应用程序和真正的文件系统之间。
文件是以字符序列构成的信息载体。文件描述符,是一个非负的整数,是一个索引值,指向内核中每个进程打开文件的记录。linux支持的文件类型有:普通文件,目录文件,设备文件,链接文件,块设备文件,字符设备文件,管道文件,套接字文件。
文件描述符,文件描述符标志位,文件状态标志三者的区别
文件描述符:标识文件用的,就是一个数字,操作系统知道它对应哪一个以打开的文件。
文 件描述符标志(close_on_exec):仅仅是一个标志,当你f调用ork()创建了一个子进程,然后在子进程中调用了exec函数时就用到了该标志.意义是: 执行exec前是否要关闭这个文件描述符。
文件状态标志:可读,可写,锁。
贴个链接:
open()函数:http://blog.csdn.net/linux_loajie/article/details/43916677
http://www.xuebuyuan.com/2061960.html
文件描述符http://blog.csdn.net/cywosp/article/details/38965239
各函数的语法要点:http://blog.csdn.net/sunhy1021/article/details/4729104