码迷,mamicode.com
首页 >  
搜索关键字:文件描述符fd    ( 63个结果
Linux中文件描述符fd和文件指针flip的理解
转自:http://www.cnblogs.com/Jezze/archive/2011/12/23/2299861.html 简单归纳:fd只是一个整数,在open时产生。起到一个索引的作用,进程通过PCB中的文件描述符表找到该fd所指向的文件指针filp。 open:文件描述符的操作(如: op ...
分类:系统相关   时间:2016-06-25 23:02:41    阅读次数:490
linux 最大文件描述符fd
使用四种框架分别实现百万websocket常连接的服务器 著名的 C10K 问题提出的时候, 正是 2001 年。这篇文章可以说是高性能服务器开发的一个标志性文档,它讨论的就是单机为1万个连接提供服务这个问题,当时因为硬件和软件的**,单机1万还是一个非常值得挑战的目标。但是时光荏苒,随着硬件和软件 ...
分类:系统相关   时间:2016-06-21 10:33:18    阅读次数:306
多进程通信之管道运用
管道的概念:管道是基于文件描述符的通信方式,当一个管道建立时,它会创建两个文件描述符fd[0]和fd[1],其中fd[0]固定用于读管道,而fd[1]固定用于写管道,这样就构成了一个半双工的通道 无名管道:他只能用于亲缘关系的进程的通信(也就是父子进程或者兄弟进程之间),半双工通信发送,对它的读写可 ...
分类:系统相关   时间:2016-06-19 11:27:56    阅读次数:148
重新审视进程间的通信(一)
最近干活的时候又被Linux管道和消息队列搞的一脸懵逼。当初自己走马观花似的学习以为内容很简单,结果留下了大坑,借来Unix网络编程来补补,重新审视这两个部分,并且引以为戒!!! 首先看管道#include int pipe(int fd[2]);返回:成功为0,出错为1,两个文件描述符fd[0]用来读,fd[1]用来写 灵魂作图...
分类:系统相关   时间:2016-06-01 01:42:16    阅读次数:270
网络 使用select编写服务器
一、理解select模型:理解select模型的关键在于理解fd_set,为说明方便,取fd_set长度为1字节,fd_set中的每个bit可以对应一个文件描述符fd。则1字节长的fd_set最长可以对应8个fd。(1)执行fd_setset;FD_ZERO(&set);则set用位表示是0000,0000。(2)若fd=5,执行FD_SET(fd,..
分类:其他好文   时间:2016-05-24 17:06:26    阅读次数:132
恢复误删的进程在使用的文件
原理:在Linux系统的/proc 分区下保存着进程的目录和名字,包含fd(文件描述符)和其下的子目录(进程打开文件的链接),那么如果删除了一个文件,还存在一个 inode的引用:/proc/进程号/fd/文件描述符。我们只要知道当前打开文件的进程pid和文件描述符fd就能利用lsof工具列出进程打 ...
分类:系统相关   时间:2016-05-09 11:04:32    阅读次数:189
四、网络编程-读写函数
1、写函数write 函数原型: size_t write(int fd,const void *buf,size_t nbytes); write函数将buf中的nbytes字节内容写入文件描述符fd,成功时返回写的字节数,失败时返回-1。在网络程序中,向套接字文件描述符写时有两种情况: 1)wr
分类:其他好文   时间:2016-03-07 19:15:59    阅读次数:140
系统最大fd数和进程中最大fd数
文件描述符,fd? 当每个程序打开文件时,系统会返回一个文件描述符,程序为了处理文件需要引用这个文件描述符,简称fd。fd是一个整数,从0开始,其中0为标准输入,1和2分别为标准输出和标准错误输出。比如printf就默认使用stdout。fd是以进程为单位的,每个进程有一个最大的fd数目,可以使用u
分类:系统相关   时间:2016-02-16 11:25:36    阅读次数:236
Linux文件I/O编程(二)lseek函数
文件I/O编程处理open、read、write、close,等必要函数对文件进行读写操作外,lseek、fcntl也是I/O编程很重要的函数。lseek函数lseek函数主要用来移动当前读写位置,第一个参数是文件描述符fd,第二个参数是偏移距离,第三个参数是文件内容指针宏,分别有SEEK_SET(文件头),SE..
分类:系统相关   时间:2015-09-27 06:32:38    阅读次数:204
文件打开的过程——调用fd=open()时操作系统所做的工作
fd=fopen()是一个系统调用,用于根据文件名打开一个文件,返回该文件的文件描述符,文件打开后进程便可以根据文件描述符fd进行其他操作,比如读,写,关闭等操作。 各个操作系统打开文件的过程是类似的,本文以Unix为例,介绍打开一个文件操作系统所做的工作,正式介绍这个过程之前先简要介绍几个概念。 PCB(process control block)进程控制块,它是一个内核数据结构,相当于一个...
分类:其他好文   时间:2015-07-19 18:08:19    阅读次数:125
63条   上一页 1 ... 3 4 5 6 7 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!