Linux系统编程12_POSIX标准头文件

常用POSIX标准定义的头文件介绍

<pthread.h>           //标准库没有添加多线程之前的在Linux上用的多线程库

<unistd.h>             //unistd.h为Linux/Unix系统中内置头文件,包含了许多系统服务的函数原型,例如read函数、write函数和getpid函数等。

                              //提供对 POSIX 操作系统 API 的访问功能,其中调用的接口大量都是对系统调用的封装

                                     //管道

<fcntl.h>          //文件控制
<mqueue.h>   //消息队列
<semaphore.h>   //信号量

 

sys库:
<sys/stat.h>         //是unix/linux系统定义文件状态所在的伪标准头文件
<sys/shm.h>   //共享存储
<sys/socket.h>    //套接字编程
<sys/types.h>      //很多类型其实都是用typedef重定义的,和基本类型没什么区别,比如那个pid_t好像就是int 型的
<sys/types.h>      //只是为了定义系统类型(pid_t,size_t等),没别的意思。

<sys/mman.h>    //内存管理声明
<arpa/inet.h>      //Internet定义

======================================================

POSIX标准定义的必须的头文件(26项)
<dirent.h> ---------------------- 目录项
<fcntl.h> ---------------------- 文件控制
<fnmatch.h> ---------------------- 文件名匹配类型
<glob.h> ---------------------- 路径名模式匹配类型
<grp.h> ---------------------- 组文件
<netdb.h> ---------------------- 网络数据库操作
<pwd.h> ---------------------- 口令文件
<regex.h> ---------------------- 正则表达式
<tar.h> ---------------------- tar归档值
<termios.h> ---------------------- 终端I/O
<unistd.h> ---------------------- 符号常量
<utime.h> ---------------------- 文件时间
<wordexp.h> ---------------------- 字扩展类型
<arpa/inet.h> ---------------------- Internet定义
<net/if..h> ---------------------- 套接字本地接口
<netinet/in.h> ---------------------- Internet地址族
<netinet/tcp.h>---------------------- 传输控制协议定义
<sys/mman.h>---------------------- 内存管理声明
<sys/select.h>---------------------- select函数
<sys/socket.h>---------------------- 套接字接口
<sys/stat.h> ---------------------- 文件状态
<sys/times.h> ---------------------- 进程时间
<sys/types.h> ---------------------- 基本系统数据类型
<sys/un.h> ---------------------- UNIX域套接字定义
<sys/utsname.h>----------------------系统名
<sys/wait.h> ---------------------- 进程控制

POSIX标准定义的XSI扩展头文件(26项)
<cpio.h> ---------------------- cpio归档值
<dlfcn.h> ---------------------- 动态链接
<fmtmsg.h> ---------------------- 消息显示结构
<ftw.h> ---------------------- 文件树漫游
<iconv.h> ---------------------- 代码集转换实用程序
<langinfo.h> ---------------------- 语言信息常量
<libgen.h> ---------------------- 模式匹配函数定义
<monetary.h> ---------------------- 货币类型
<ndbm.h> ---------------------- 数据库操作
<nl_types.h> ---------------------- 消息类别
<poll.h> ---------------------- 轮询函数
<search.h> ---------------------- 搜索表
<strings.h> ---------------------- 字符串操作
<syslog.h> ---------------------- 系统出错日志记录
<ucontext.h> ---------------------- 用户上下文
<ulimit.h> ---------------------- 用户限制
<utmpx.h> ---------------------- 用户帐户数据库
<sys/ipc.h> ---------------------- IPC
<sys/msg.h> ---------------------- 消息队列
<sys/resource.h>------------------- 资源操作
<sys/sem.h> ---------------------- 信号量
<sys/shm.h> ---------------------- 共享存储
<sys/statvfs.h>---------------------- 文件系统信息
<sys/time.h> ---------------------- 时间类型
<sys/timeb.h> ---------------------- 附加的日期和时间定义
<sys/uio.h> ---------------------- 矢量I/O操作

POSIX标准定义的可选头文件(8项)
<aio.h> ---------------------- 异步I/O
<mqueue.h> ---------------------- 消息队列
<pthread.h> ---------------------- 线程
<sched.h> ---------------------- 执行调度
<semaphore.h>--------------------- 信号量
<spawn.h> ---------------------- 实时spawn接口
<stropts.h> ---------------------- XSI STREAMS接口
<trace.h> ---------------------- 时间跟踪

==================================================================

系统调用和库函数的区别:https://www.cnblogs.com/yanlingyin/archive/2012/04/23/2466141.html

系统调用与库函数:https://www.cnblogs.com/liwei0526vip/p/8998751.html

man1 man2 ... 等区别:https://blog.csdn.net/u013528298/article/details/100109585

posted @ 2021-04-12 01:16  Grooovvve  阅读(689)  评论(0编辑  收藏  举报