![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
APUE
文章平均质量分 92
openex
一位会烧菜梦想做神经学家的程序员
展开
-
APUE 1 文件I/O
本章讨论不带缓冲的I/O, 代码实现采用golang的syscall包,其通常会包装一层系统调用不过大体相似1.文件描述符(FD)文件描述符是一个非负的整数,内核通过该描述符对文件进行引用,进行与文件相关的操作open、openat、creat函数会返回文件描述符已打开文件在内核的数据结构如图 进程表项:1.文件描述符标志 2.指向文件表项的指针文件表项:1.文件状态标原创 2017-08-22 23:09:35 · 314 阅读 · 0 评论 -
APUE 2 文件和目录
本文代码实现采用golang的syscall包,其通常会包装一层系统调用不过大体相似1.文件属性结构 Stat_t文件的类型 文件类型 描述 普通文件 可能是文本或二进制 目录文件 包含该目录内的文件名,和有关这些文件信息的指针 块特殊文件 提供对设备带缓冲的访问 字特殊文件 提供对设备不带缓冲的访问,每次访问长度可变 FIFO 命名管道,用于进程间通原创 2017-08-31 15:26:49 · 258 阅读 · 0 评论 -
APUE 进程环境
本文使用golang的syscall和os1.main函数main是程序的入口,golang中也亦是如此 启动一个程序时启动例程负责从内核获取命令行参数和环境变量,维护到程序的内存布局中(后文描述)2.exit//import osfunc Exit(code int)使程序主动退出,令退出码为指定值code,程序正常结束时返回码为0 (在一般的shell中使用$?获取)原创 2017-09-28 23:11:48 · 281 阅读 · 0 评论