linux 头文件详解

头文件主目录include

头文件目录中总共有32个.h头文件。其中主目录下有13个,asm子目录中有4个,Linux子目录中有10个,sys子目录中有5个。这些头文件各自的功能如下,具体的作用和所包含的信息请参见第14章。

:a.out头文件,定义了a.out执行文件格式和一些宏。 
:常数符号头文件,目前仅定义了i节点中i_mode字段的各标志位。 
:字符类型头文件,定义了一些有关字符类型判断和转换的宏。 
:错误号头文件,包含系统中各种出错号。(Linus从minix中引进的)。 
:文件控制头文件,用于文件及其描述符的操作控制常数符号的定义。 
:信号头文件,定义信号符号常量,信号结构以及信号操作函数原型。 

:标准参数头文件,以宏的形式定义变量参数列表。主要说明了一个类型(va_list)和3个宏(va_start, va_arg和va_end),用于vsprintf、vprintf、vfprintf函数。 
:标准定义头文件,定义了NULL, offsetof(TYPE, MEMBER)。 
:字符串头文件,主要定义了一些有关字符串操作的嵌入函数。 
:终端输入输出函数头文件,主要定义控制异步通信口的终端接口。 
:时间类型头文件,主要定义了tm结构和一些有关时间的函数原形。 
:Linux标准头文件,定义了各种符号常数和类型,并声明了各种函数。
如,定义了__LIBRARY__,则还包括系统调用号和内嵌汇编_syscall0()等。 
:用户时间头文件,定义了访问和修改时间结构以及utime()原型。

(1)体系结构相关头文件子目录include/asm

这些头文件主要定义了一些与CPU体系结构密切相关的数据结构、宏函数和变量。共4个文件。

:I/O头文件,以宏的嵌入汇编程序形式定义对I/O端口操作的函数。 
:内存拷贝头文件,含有memcpy()嵌入式汇编宏函数。 
:段操作头文件,定义了有关段寄存器操作的嵌入式汇编函数。 
:系统头文件,定义了设置或修改描述符/中断门等的嵌入式汇编宏。

(2)Linux内核专用头文件子目录include/linux

:内核配置头文件,定义键盘语言和硬盘类型(HD_TYPE)可选项。 
:软驱头文件,含有软盘控制器参数的一些定义。 
:文件系统头文件,定义文件表结构(file,buffer_head,m_inode等)。
:硬盘参数头文件,定义访问硬盘寄存器端口、状态码和分区表等信息。 
:head头文件,定义了段描述符的简单结构,和几个选择符常量。 
:内核头文件,含有一些内核常用函数的原形定义。 
:内存管理头文件,含有页面大小定义和一些页面释放函数原型。 
: 调度程序头文件,定义了任务结构task_struct、初始任务0的数据, 
以及一些有关描述符参数设置和获取的嵌入式汇编函数宏语句。 
:系统调用头文件,含有72个系统调用C函数处理程序,以"sys_"开头。 
:tty头文件,定义了有关tty_io,串行通信方面的参数、常数。

(3)系统专用数据结构子目录include/sys

: 文件状态头文件,含有文件或文件系统状态结构stat{}和常量。 
:定义了进程中运行时间结构tms以及times()函数原型。 
:类型头文件,定义了基本的系统数据类型。 
:系统名称结构头文件。 
:等待调用头文件,定义系统调用wait()和waitpid()及相关常数符号。

 

linux常用头文件如下:

  POSIX标准定义的头文件

          目录项

           文件控制

      文件名匹配类型

      路径名模式匹配类型

          组文件

      网络数据库操作

          口令文件

      正则表达式

          TAR归档值

      终端I/O

      符号常量

      文件时间

      字符扩展类型

  -------------------------

      INTERNET定义

      套接字本地接口

      INTERNET地址族

      传输控制协议定义

  -------------------------

      内存管理声明

      Select函数

      套接字借口

      文件状态

      进程时间

      基本系统数据类型

      UNIX域套接字定义

      系统名

      进程控制

  ------------------------------

  POSIX定义的XSI扩展头文件

      cpio归档值

      动态链接

      消息显示结构

          文件树漫游

      代码集转换使用程序

      语言信息常量

      模式匹配函数定义

      货币类型

      数据库操作

      消息类别

      轮询函数

      搜索表

      字符串操作

      系统出错日志记录

      用户上下文

      用户限制

      用户帐户数据库

  -----------------------------

      IPC(命名管道)

      消息队列

  资源操作

      信号量

      共享存储

      文件系统信息

      时间类型

      附加的日期和时间定义

      矢量I/O操作

  ------------------------------

  POSIX定义的可选头文件

          异步I/O

      消息队列

      线程

      执行调度

      信号量

       实时spawn接口

      XSI STREAMS接口

       事件跟踪

 3、 C/C++头文件一览

  C

  #i nclude     //设定插入点

  #i nclude      //字符处理

  #i nclude      //定义错误码

  #i nclude      //浮点数处理

  #i nclude         //对应各种运算符的宏

  #i nclude     //定义各种数据类型最值的常量

  #i nclude     //定义本地化C函数

  #i nclude      //定义数学函数

  #i nclude         //异常处理支持

  #i nclude         //信号机制支持

  #i nclude         //不定参数列表支持

  #i nclude         //常用常量

  #i nclude      //定义输入/输出函数

  #i nclude     //定义杂项函数及内存分配函数

  #i nclude     //字符串处理

  #i nclude      //定义关于时间的函数

  #i nclude      //宽字符处理及输入/输出

  #i nclude     //宽字符分类

  传统C++

  #i nclude     //改用

  #i nclude     //改用

  #i nclude    //改用

  #i nclude    //该类不再支持,改用中的stringstream

  ————————————————————————————————

  标准C++

  #i nclude     //STL 通用算法

  #i nclude      //STL 位集容器

  #i nclude           //字符处理

  #i nclude      //定义错误码

  #i nclude      //浮点数处理

  #i nclude          //对应各种运算符的宏

  #i nclude     //定义各种数据类型最值的常量

  #i nclude     //定义本地化函数

  #i nclude      //定义数学函数

  #i nclude      //复数类

  #i nclude          //信号机制支持

  #i nclude          //异常处理支持

  #i nclude          //不定参数列表支持

  #i nclude          //常用常量

  #i nclude      //定义输入/输出函数

  #i nclude     //定义杂项函数及内存分配函数

  #i nclude     //字符串处理

  #i nclude      //定义关于时间的函数

  #i nclude      //宽字符处理及输入/输出

  #i nclude     //宽字符分类

  #i nclude       //STL 双端队列容器

  #i nclude     //异常处理类

  #i nclude     //文件输入/输出

  #i nclude    //STL 定义运算函数(代替运算符)

  #i nclude      //定义各种数据类型最值常量

  #i nclude       //STL 线性列表容器

  #i nclude           //本地化特定信息

  #i nclude        //STL 映射容器

  #i nclude           //STL通过分配器进行的内存分配

  #i nclude              //动态内存分配

  #i nclude          //STL常用的数字操作

  #i nclude     //参数化输入/输出

  #i nclude        //基本输入/输出支持

  #i nclude      //输入/输出系统使用的前置声明

  #i nclude     //数据流输入/输出

  #i nclude      //基本输入流

  #i nclude         //STL迭代器

  #i nclude      //基本输出流

  #i nclude       //STL 队列容器

  #i nclude        //STL 集合容器

  #i nclude      //基于字符串的流

  #i nclude       //STL 堆栈容器

  #i nclude     //标准异常类

  #i nclude     //底层输入/输出支持

  #i nclude      //字符串类

  #i nclude         //运行期间类型信息

  #i nclude      //STL 通用模板类

  #i nclude         //对包含值的数组的操作

  #i nclude      //STL 动态数组容器

  ————————————————————————————————

  C99增加的部分

  #i nclude    //复数处理

  #i nclude     //浮点环境

  #i nclude   //整数格式转换

  #i nclude    //布尔环境

  #i nclude    //整型环境

  #i nclude    //通用类型数学宏

你可能感兴趣的:(Linux)