标准输入重定向(STDIN,文件描述符为 0):默认从键盘输入,也可从其他文件或命令中输入。(文件描述符可以省略) 标准输出重定向(STDOUT,文件描述符为 1):默认输出到屏幕。(文件描述符可以省略) 错误输出重定向(STDERR,文件描述符为 2):默认输出到屏幕。(文件描述符不可省略) 用例 ...
分类:
其他好文 时间:
2019-01-08 15:04:55
阅读次数:
147
一、引言 管道作用于有血缘关系的进程间的通信,完成数据传递。实际为内核使用环形队列机制,借助内核缓冲区(4k)实现。有如下特质: 1) 其本质是一个伪文件(实为内核缓冲区) 2) 由两个文件描述符引用,一个表示读端,一个表示写端。可定义一个文件描述符数组,存取。 3) 规定数据从管道的写端流入管道, ...
分类:
系统相关 时间:
2019-01-08 12:21:44
阅读次数:
195
在Python中, 总有一些需要"善后"的事情要做, 比如说打开文件后自动关闭文件描述符, 比如说想要显示的释放某种资源, 比如... <! more 上面这种需求很常见的一个场景就是读取文件, 很方便的一种做法是使用 语句来控制 这样写的好处是, 在 里边的代码块执行完毕后, 会自动的关闭关闭文件 ...
分类:
其他好文 时间:
2019-01-01 12:30:00
阅读次数:
188
1、if中文件目录属性判断-rfile 用户可读为真-wfile 用户可写为真-xfile 用户可执行为真-ffile 文件为正规文件为真-dfile 文件为目录为真-cfile 文件为字符特殊文件为真-bfile 文件为块特殊文件为真-sfile 文件大小非0时为真-tfile 当文件描述符(默认为1)指定的设备为终端时为真2、cas
分类:
系统相关 时间:
2018-12-25 23:43:56
阅读次数:
295
四、标准I/O与管道标准输入和输出程序:指令+数据读入数据:Input输出数据:Output?打开的文件都有一个fd:filedescriptor(文件描述符)?Linux给程序提供三种I/O设备?标准输入(STDIN)-0默认接受来自键盘的输入?标准输出(STDOUT)-1默认输出到终端窗口?标准错误(STDERR)-2默认输出到终端窗口?I/O重定向:改变默认位置把输出和错误重新定向到文件?S
分类:
其他好文 时间:
2018-12-25 01:04:28
阅读次数:
174
本人不才,只能从表面理解epoll函数的机制,看了很多博客,由于缺乏基础知识,所以对内核中的实现和其数据结构理解不到位,粗浅地来认识一下。 系统打开的最大文件描述符 也是有限制的,并且这个最大量和内存有关 ......................... 同理poll也一样是O(n). 接着看ep ...
分类:
其他好文 时间:
2018-12-23 11:25:30
阅读次数:
130
打开文件、新建文件和关闭文件操作 打开文件操作使用系统调用函数open(),该函数的作用是建立一个文件描述符,其他的函数可以通过文件描述符对指定文件进行读取与写入的操作。打开文件的一般形式是: 函数的返回值是文件描述符,如果打开文件成功返回一个正整数,否则返回-1。标志是用于指定打开文件操作模式的枚 ...
分类:
其他好文 时间:
2018-12-22 16:38:36
阅读次数:
1369
poll的用法和select差不多,但是select的最大文件描述符是由FD_SETSIZE限制,若要改变,那么还得修改宏定义,重新编译内核,很麻烦,但是poll可以通过 poll使用链表保存文件描述符 poll和select的缺点是一样的,仍然要采用轮询的方式 看代码 //我们这里的客户端只建立连 ...
分类:
其他好文 时间:
2018-12-20 21:34:53
阅读次数:
242
端口+ip=socket 那么 文件描述符在其中扮演着什么角色 你的质疑是有点道理的,其实网络的实现真的和文件系统和文件一毛钱关系没有,没有必要非得用文件描述符这套,这样纯粹就是生搬硬造的。可能你可以通过fs访问网卡设备,那这样你只是访问驱动了,网络其它层的信息,并没有挂载到文件系统上,这样搞得的确 ...
分类:
其他好文 时间:
2018-12-20 16:58:14
阅读次数:
325
FD 列中的文件描述符: cwd 值表示应用程序的当前工作目录,这是该应用程序启动的目录,除非它本身对这个目录进行更改。txt 类型的文件是程序代码,如应用程序二进制文件本身或共享库,如上列表中显示的 /sbin/init 程序。数值 表示应用程序的文件描述符,这是打开该文件时返回的一个整数。u 表 ...
分类:
系统相关 时间:
2018-12-18 21:23:48
阅读次数:
1638