用途:该技能用于在类 Unix 系统上编写底层系统软件,聚焦 C 语言的文件 I/O、进程管理、进程间通信(IPC)、信号与系统调用。
主要能力:资料覆盖文件描述符概念(0/1/2 对应标准输入输出与错误)及 open/read/write/close/lseek 的文件读写与定位;fork() 创建进程、execve() 执行程序、waitpid() 回收子进程与获取退出状态、getpid/getppid/getuid 等进程信息查询;pipe() 匿名管道、mkfifo() 命名管道(FIFO)通信;sigaction() 注册信号处理、kill() 发送信号、sigprocmask() 屏蔽信号;getcwd/stat/opendir/readdir 等系统调用与目录操作;errno/strerror/perror 错误处理与基于 goto 的清理模式;以及 POSIX 线程 pthread_create/pthread_join 与 shm_open/mmap 共享内存。
使用方式:以 C 代码形式直接调用上述系统调用与 POSIX API,编译运行于类 Unix 环境。资料给出示例片段,如 open("input.txt", O_RDONLY)、write(fd, data, len)、execve("/bin/ls", args, envp)、sigaction(SIGINT, &sa, NULL) 等,但未提供具体编译命令或安装步骤。
适用场景:需要直接操作文件描述符、创建与等待子进程、实现父子进程或进程间数据传递、处理 SIGINT/SIGTERM 等信号、编写多线程或共享内存程序的底层系统开发。
限制与注意事项:资料强调必须检查系统调用返回值并处理 errno;信号处理函数内只能调用异步信号安全函数,避免 printf、malloc;需及时 close 文件描述符防止泄漏;read/write 可能部分传输,应循环处理;建议使用 O_CLOEXEC;用 wait/waitpid 避免僵尸进程;优先用 sigaction 而非 signal;注意竞态与信号屏蔽的恢复;优先采用 POSIX 标准接口。未提供收费、价格、平台支持范围与安装方式等信息。