![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
木木o-o
这个作者很懒,什么都没留下…
展开
-
linux系统编程学习笔记(1)--文件描述符表,_open函数,_read_write函数
1.文件描述符 可执行文件的内存分布如上图所示,在内核区包含了linux的许多内核函数,其中进程管理模块里面有一个小的PCB进程控制块,就是一个400多行的结构体。在控制块里面有一个小的文件描述表,每一个进程都有一个文件描述表,是一个数组,存放文件描述符,最多存储1024个文件描述符,每打开一个文件就占用一个文件描述符。前三个默认是stdin stdout stderr标准输入输出。文...原创 2018-03-25 21:09:33 · 159 阅读 · 0 评论 -
linux系统编程学习笔记(2)errno与perror,lseek
errno是整个系统函数库的一个全局变量,是一个int,不同的数值对应不同的错误。perror会打印对应于当前errorno的错误信息。lseek函数原型:off_t lseek(int fd,off_t offset,int whence);参数:fd:文件表示符 offset:偏移 whence:文件指针的位置,SEEK_SET文件头部,SEEK_CUR当前位置,SEEK_END文件尾部使...原创 2018-03-26 22:00:56 · 368 阅读 · 0 评论 -
linux系统编程学习笔记(3)阻塞与非阻塞
linux系统默认的三个文件描述符:#define STDIN_FILENO 0 读终端,即标准输入#define STDOUT_FILENO 1 写终端,即标准输出#define STDERR_FILENO 2 错误,即标准错误信息linux中终端也是以文件形式,存放在/dev/tty 即为当前终端,默认打开。上面代码即为一个对当前终端读写的例子。运行结果如图。后面多出来的d原因如下:...原创 2018-03-28 21:26:47 · 388 阅读 · 0 评论