Linux系统中的IO函数主要有read、write、recv、send、recvmsg、sendmsg、readv、writev,本篇主要介绍他们的使用以及区别。read函数:#include ssize_t read(int fd,void *buf,size_t count);read函数.....
分类:
系统相关 时间:
2015-07-01 20:27:45
阅读次数:
289
TCP最大连接数 在tcp应用中,server事先在某个固定端口监听,client主动发起连接,经过三路握手后建立tcp连接。那么对单机,其最大并发tcp连接数是多少?理论最大值 在确定最大连接数之前,先来看看系统如何标识一个tcp连接。系统用一个4四元组来唯一标识一个TCP连接:{local .....
分类:
其他好文 时间:
2015-07-01 20:26:37
阅读次数:
502
一、Linux中的硬件设备号 设 备 设 备 号 IDE硬盘 /dev/hd[a-d] (并行硬盘) SCSI硬盘 /dev/sd[a-p] (串行硬盘) U盘 /dev/sd[a-p] 光驱 /dev/cdrom 软驱 /dev/fd[0-1] 打印机 /dev/lp[0-2] 鼠标 /dev/m...
分类:
其他好文 时间:
2015-06-30 20:22:27
阅读次数:
109
事件管理机制 Nginx是以事件驱动的,也就是说Nginx内部流程的向前推进基本都是靠各种事件的触发来驱动,否则Nginx将一直阻塞在函数epoll_wait()或suspend函数,Nginx事件一般分为I/O事件和定时事件,当一个事件到来后,监听FD的工作进程就开始处理事件,并执行回调函数,开....
分类:
其他好文 时间:
2015-06-30 20:01:27
阅读次数:
99
1. The Stat Family#include #include #include int stat(const char *path, struct stat *buf);int fstat(int fd, struct stat *buf);int lstat(const char *pa...
分类:
系统相关 时间:
2015-06-30 10:10:52
阅读次数:
170
一 使用select函数的返回值判断(适用于在一定时间段内肯定有数据交互的场合)#include int select (int maxfd + 1, fd_set *readset, fd_set *writeset, fd_set *exceptset, const struct tim...
分类:
系统相关 时间:
2015-06-27 15:19:35
阅读次数:
404
IO复用是Linux中的IO模型之一,IO复用就是进程预先告诉内核需要监视的IO条件,使得内核一旦发现进程指定的一个或多个IO条件就绪,就通过进程进程处理,从而不会在单个IO上阻塞了。Linux中,提供了select、poll、epoll三种接口函数来实现IO复用。
1、select函数
#include
#include
int select(int nfds, fd_set *...
父子进程共享文件描述符:此说法,其实是父子进程共享文件表项(父进程和子进程共享同一个filetableentry)由于子进程是父进程的拷贝,子进程会拷贝父进程的进程描述符中的文件描述符表,可以说继承父进程的文件描述字(files_struct中的structfile*fd_array[NR_OPEN...
分类:
系统相关 时间:
2015-06-25 20:56:14
阅读次数:
297
1.文件描述符:是一个非负整数,用来描述打开的文件2.函数open和函数openat:1 #include 2 int open(const char * path, int oflag,...);3 int openat(int fd, const char * path, int oflag,....
分类:
其他好文 时间:
2015-06-25 10:20:23
阅读次数:
133
串口配置流程
1、保存原串口信息,使用tcgetattr()函数;struct termios newtio, oldtio;
tcgetattr(fd, &oldtio);
2、激活选项有CLOCAL和CREAD,用于本地连接和接收使能;newtio.c_cflag |= CLOCAL | CREAD;
3、设置波特率,使用函数cfsetispeed()和c...
分类:
其他好文 时间:
2015-06-24 16:25:58
阅读次数:
161