![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
uc
文章平均质量分 59
FoGoiN
这个作者很懒,什么都没留下…
展开
-
复用IO epol poll select 池 零拷贝读写 上下文切换 mmap
高性能服务器、网络理论知识 与操作系统文章目录高性能服务器、网络理论知识 与操作系统@[toc]高性能服务器提高服务器的性能1、I/O模型阻塞IO (不合适)非阻塞IOI/O复用SIGIO信号异步I/O2、池 进程池 线程池3、零拷贝读写4、上下下切换和锁5、mmap / munmap函数6、splice7、tee总结:高性能服务器提高服务器的性能1、I/O模型阻塞IO (不合适) 程序阻塞与读写函数 当没有数据可读时 程序一直阻塞到读取数据成功 阻塞的过程:数据从无到有的时间原创 2021-09-20 13:18:45 · 129 阅读 · 0 评论 -
文件的内核数据结构 dup/dup2 fcntl
1、i节点 通过ls -i可查看文件的i节点号,i节点记录了文件的属性和数据在磁盘上的存储位置。目录也是文件,存放路径和i节点号的映射表。2、dup/dup2函数说明#include <unistd.h>int dup (int oldfd);//用来复制文件描述符 返回最小的文件描述符int dup2 (int oldfd, int newfd);//用来复制文件描述符 将old描述符复制给newfd 如果newfd被占用则覆盖...原创 2021-09-20 13:00:31 · 103 阅读 · 0 评论 -
文件描述符相关函数总结 dup2 dup
1、什么是文件描述符?1、非负的整数。2、表示一个打开的文件。3、由系统调用(open)返回,被内核空间(后续系统调用)引用。4、内核缺省为每个进程打开三个文件描述符:stdin 0 - 标准输入 stdout 1 - 标准输出 stderr 2 - 标准出错这三个描述符也可以被修改 后面会讲文件描述符的范围介于0到OPEN_MAX之间,传统Unix中OPEN_MAX宏被定义为63,现代Linux使用更大...原创 2021-09-20 11:41:23 · 194 阅读 · 0 评论 -
文件锁、进程学习笔记
#include <fcntl.h>int fcntl (int fd, int cmd, struct flock* lock);struct flock { short int l_type; // 锁的类型: // F_RDLCK/F_WRLCK/F_UNLCK // (读锁/写锁/解锁) short int l_whence; // 偏移起点: .原创 2021-09-20 10:38:11 · 203 阅读 · 0 评论