文件类型:
linux相关知识
原创
©著作权归作者所有:来自51CTO博客作者零一小筑的原创作品,请联系作者获取转载授权,否则将追究法律责任
普通文件(regular file)----普通数据.
目录文件(directory file)----包含其它文件名和指向这些文件信息的指针.
快特殊文件(black spcial file)----提供对"块设备"带缓冲的访问,数据I/O都是以"块"进行的.
字符特殊文件(character special file)----提供对"字符设备"不带缓冲的访问,数据I/O时长度是可变的.
FILO(first input first output)----用于进程间通信,也称管道(named pipe).
套接字(socket)----进程间网络通信.
符号链接(symbolic link)----本身没有真正的文件数据,它指向另外一个文件.
消息队列,信号量,共享存储对象也可以表示为文件.
标准
UNIX编程环境和C程序设计语言标准化.标准化有多种,例如ISO C制定的.
UNIX标准不同,同它相关的或者能够支持的标准C库也不完全相同.例如关键字,头文件(及其相关的功能),系统接口/头文件及定义,实用程序等等,有些标准有,有些没有.
UNIX标准有多种,实现也有多种.
ISO C的头文件依赖于OS所配置的C编译器版本.
ISO C定义的限制都是编译时限制.文件<limits.h>定义了C的限制,例如长整型最大值等等.<stdio.h>定义了TMP_MAX,这是临时文件名的最长长度.
POSIX也定义了不少限制,这些大多同OS实现有关.例如登录名的最大长度,指向一个文件的连接数等等,这些限制同样可以在<limits.h>中找到.
其它标准也有类似的限制.通过pathconf/sysconf/fpathconf函数可以得到某种限制.
如果编写可移植性应用程序,那么应用程序应该能够满足不同平台的要求,在编译时刻需要支持同平台相关的选项,其实也就是不同标准/平台定义的功能测试宏(feature test macro).
例如,如果在编译一个程序时,希望它只是用POSIX的定义而不使用任何实现定义的限制,就需要定义_POSIX_C_SOURCE.所有POSIX头文件都定义此宏,就能排除其它的定义.
_POSIX_C_SOURCE,_XOPEN_SOURCE,__STDC__(ISO C的)都是feature test macro.
上一篇:常用的linux命令-vim
下一篇:UNIX/LINIUX编译器相关
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Modbus相关知识点
Modbus 通信协议报文基础介绍
Modbus EMS -
Linux网络相关知识
ifconfig selinux
ifconfig selinux -
用户相关知识 Linux详解
用户与用户组的相关操作
用户 用户组 -
linux信号处理相关知识
个人总结的linux信号处理相关知识
linux singal 可靠信号处理 信号处理 异步处理 -
linux相关知识(四)Linux目录操作命令
Linux目录操作命令
Linux目录操作命令