gddg:~ # lsof /dev/xvda2 |head COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME init 1 root cwd DIR 202,240962 / init 1 root rtd DIR 202,240962 / in ...
分类:
其他好文 时间:
2017-05-04 14:42:59
阅读次数:
165
接收端程序: 1024个socket建立连接后,创建8个线程收数据,每个线程处理128个socket, 每个线程先select这128个socket,然后用FD_ISSET对这128个socket进行检查和读出。 用脚本bw.sh 统计得到的接收端的总带宽为 0.114 Gb/s, 用 iftop ...
分类:
其他好文 时间:
2017-05-02 12:03:49
阅读次数:
192
参考:libubox [4] - uloop runqueue ustream libubox提供了流缓冲管理,定义在文件ustream.h,ustream.c和ustream-fd.c。 1. 数据结构 2. 存储结构 3. 函数 初始化/销毁 写入read buffer 读出read buffe ...
分类:
其他好文 时间:
2017-05-01 22:28:28
阅读次数:
408
参考:libubox组件(3)——uloop uloop是提供事件驱动机制接口,类似libevent事件框架,基于epoll接口来实现的。 uloop三大功能:事件管理(uloop_fd)、超时管理(uloop_timeout)和进程管理(uloop_process),定义在uloop.h中。 1. ...
分类:
其他好文 时间:
2017-05-01 20:53:25
阅读次数:
569
fd=fopen()是一个系统调用。用于依据文件名称打开一个文件。返回该文件的文件描写叙述符,文件打开后进程便能够依据文件描写叙述符fd进行其它操作,比方读,写,关闭等操作。 各个操作系统打开文件的过程是类似的,本文以Unix为例,介绍打开一个文件操作系统所做的工作。正式介绍这个过程之前先简要介绍几 ...
分类:
其他好文 时间:
2017-05-01 12:06:27
阅读次数:
253
进程通信 进程是系统分配资源的最小单位, 不同进程之间是相互隔离的, Linux常用于进程通信的几种方式有 无名管道 管道是是基于文件描述符的通信方式, 无名管道只能用于具有亲缘关系之间的进程通信. 建立一个管道时 它会创建两个文件描述符, fd[0] 和 fd[1] , 其中 fd[0] 用于读取 ...
分类:
系统相关 时间:
2017-04-30 14:01:23
阅读次数:
306
printf:#include<stdio.h> _exit(0):#include<unistd.h> file(fd):#include<fcntl.h> clone():#include<sched.h> malloc():#include<malloc.h> 最重要的:#define _GN ...
分类:
系统相关 时间:
2017-04-30 01:04:22
阅读次数:
188
printf:#include<stdio.h> _exit(0):#include<unistd.h> file(fd):#include<fcntl.h> clone():#include<sched.h> malloc():#include<malloc.h> 最重要的:#define _GN ...
分类:
系统相关 时间:
2017-04-30 01:01:18
阅读次数:
171
Linux的crontab最小的间隔是每分钟执行一次,但是如果在这一分钟之内,之前的命令并没有执行完成呢?这样就会产生冲突。接下来我介绍一个解决冲突的办法,那就是linux的flock文件锁. 格式: flock [-sxun][-w #] fd# flock [-sxon][-w #] file ...
分类:
系统相关 时间:
2017-04-28 18:25:23
阅读次数:
213
(一) receive最终在fuse_kern_chan.c中的fuse_kern_chan_receive函数实现,使用系统调用读取 res = read(fuse_chan_fd(ch), buf, size); 其中fuse_chan_fd(ch)就是/dev/fuse, buf和size在f ...
分类:
其他好文 时间:
2017-04-26 22:59:00
阅读次数:
209