
UNIX环境高级编程
文章平均质量分 86
哞哞哞咩咩咩
记录日常学习
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Epoll之ET、LT模式
剖析 epoll ET/LT 触发方式的性能差异误解(定性分析) 平时大家使用 epoll 时都知道其事件触发模式有默认的 level-trigger 模式和通过 EPOLLET 启用的 edge-trigger 模式两种。从 epoll 发展历史来看,它刚诞生时只有 edge-trigger 模式,后来因容易产生 race-cond 且不易被开发者理解,又增加了 level-trigger 模式并作为默认处理方式。 二者的差异在于 level-trigger 模式下只要某个 fd 处于 readable/原创 2021-03-05 12:05:12 · 1850 阅读 · 0 评论 -
计算机网络和网络编程知识点博客链接
https://blog.youkuaiyun.com/weixin_36750623/article/details/84942341原创 2020-12-28 17:51:08 · 151 阅读 · 0 评论 -
八.网络套接字
讨论:跨主机的传输要注意的问题 字节序问题 大端:低地址放高字节 小端:低地址放低字节 主机字节序:host 网络字节序:network 解决_ to __: htons, htonl, ntohs, ntohl 对齐 逻辑地址号(0开始)能否整除sizeof(类型) eg: struct { int i; float f; char c; } 解决:不对齐! ...原创 2020-12-11 11:52:13 · 269 阅读 · 0 评论 -
七.高级IO
非阻塞IO – 阻塞IO 补充:有限状态机编程 1 非阻塞IO 简单流程:自然流程是结构化的 复杂流程:自然流程不是结构化的 2 IO多路转接 3 其他读写函数 4 存储映射IO 5 文件锁 1.数据中继——用有限状态机解决 阻塞IO、非阻塞IO、多路复用IO、信号驱动IO以及异步IO 浅谈I/O模型 两个设备交换数据: 法1:读1->写2->读2->写1 阻塞的形式,容易一直卡在某一步 法2:读1->写2 和 读2->写1 分开 非阻塞的形式更好 1.非阻塞假错 EA原创 2020-11-27 16:11:17 · 438 阅读 · 0 评论 -
六.并发之——线程
1.线程的概念 2.线程的创建 线程的终止 线程的清理 线程的取消选项 3.线程同步 4.线程属性 线程同步的属性 5. 重入 线程与信号 线程与fork 1.概念 一个正在运行的函数 posix线程是一套标准,而不是实现 openmp标准线程 线程标识:pthread_t 函数: (1).pthread_equal 比较两个线程号 (2).pthread_self :获取线程号 2.线程的创建 函数:pthre原创 2020-11-23 00:20:06 · 512 阅读 · 0 评论 -
五.并发之——信号
1)信号的概念 信号是软件中断 2)信号的不可靠 3)可重入函数 4)信号的相应过程 6)常用函数 kill() raise() alarm() pause() abort() system() sleep() 7)信号集 8)信号屏蔽字/pending集的处理 9)扩展 sigsuspend(); sigaction() setitimer() 10)实时信号 1.信号的概念 信号是软件中断,信号的响应依赖于中断。 kill -l查看信号。1-31为标准信号,34-64为实时信号 core文件:原创 2020-09-27 00:15:49 · 453 阅读 · 0 评论 -
四.进程基本知识
1.进程标识符pid 类型pid_t(传统上是有符号16位整型数) ps命令 进程号是顺次向下使用(不同于文件描述符fd) getpid(); getppid(); 2.进程的产生fork()和vfork() init进程是所有进程的祖先进程,是1号 3.进程的消亡及释放资源 4.exec函数族 5.用户权限及组权限 6.观摩课,解释器文件 7.system() 8.进程会计 9.进程时间 10.守护进程 11.系统日志 1.进程概念和fork getpid() re原创 2020-09-20 00:10:30 · 244 阅读 · 0 评论 -
三.文件系统
1. 文件系统介绍 一.目录和文件 1.获取文件属性:stat,fstat,lstat 2.文件访问权限:st_mode 3.umask 4.文件权限的更改/管理 5.粘住位 6.文件系统是什么东西:FAT,UFS 7.硬链接,符号链接 8.utime 9.目录的创建和销毁 10.更改当前工作路径 11.分析目录/读取目录内容 二.系统的数据文件和信息 三.进程环境 2.stat 功能:These functions return information about a file, in the b原创 2020-09-19 18:04:17 · 192 阅读 · 0 评论 -
二.文件IO/系统调用IO
1.文件描述符实现原理 参考文章:每天进步一点点——Linux中的文件描述符与打开文件之间的关系 文件描述符(fd)是在文件IO中贯穿始终的类型,它实质是个整型数(数组下标) 文件描述符优先使用当前可用范围内最小的一个 文件IO操作:open,close,read,write,lseek 文件IO与标准IO的区别 IO的效率问题 文件共享 原子操作 程序中的重定向dup,dup2 同步:sync,fsync,fdatasync fcntl() ioctl() /dev/fd目录 ...原创 2020-09-18 00:27:27 · 315 阅读 · 0 评论 -
一.标准IO
1.标准IO介绍 stdio:标准IO,在第五章(优先使用,移植性好) sysio:系统调用IO,在第三章 例子: fopen(stdio): linux下依赖open(sysio),在windows下依赖openfile(sysio) stdio:FILE类型贯穿始终 fopen(),fclose(),fgetc(),fputc(),fgets(),fputs(),fread(),fwrite(),printf(),scanf(),fseek(),ftell(),rewind(),fflush() 使用原创 2020-09-15 23:27:49 · 202 阅读 · 0 评论