- 博客(7)
- 资源 (4)
- 收藏
- 关注
原创 io多路复用理解
linux IO模型之 多路复用进程中调用poll和select操来查询打开的I/O设备文件是否就绪(有资源)设备驱动操作集合中的 unsigned int (*poll) (struct file *, poll_table *)被调用应用程序调用 select -> 内核 -> driver -> pollselect 函数的查询文件时候就绪, 调用...
2018-11-06 16:12:17
2644
1
原创 循环队列
队列(Queue)也是一种运算受限的线性表。它只允许在表的一端进行插入,而在另一端进行删除。允许删除的一端称为队头(front),允许插入的一端称为队尾(rear)。队列具有先进先出原则,与栈的先进后出形成对比入队,出队操作原理由于队列的队头和队尾的位置是变化的,因而要设两个指针和分别指示队头和队尾元素在队列中的位置,它们的初始值地队列初始化时均应置为0。入队时将新元素插入所指的位置,然后将加...
2018-10-30 20:19:50
303
原创 进程间的通信
1管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它还允许无亲缘关系进程间的通信;2信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程间通信外,进程还可以发送信号给进程本身;linux除了支持Unix早期信号语义函数sigal外,还支持语义符合Pos...
2018-10-29 19:15:30
159
原创 linux守护进程小结
创建守护进程步骤:创建子进程父进程退出, 让这个子进程变成孤儿进程, 防止产生僵尸进程在子进程中创建新会话setsid函数用于创建一个新的会话,并使得当前进程成为新会话组的组长setsid函数能够使进程完全独立出来,从而脱离所有其他进程的控制。改变当前目录为根目录防止当前目录被删除后, 不存在了, 引发程序的错误chdir();通常的做法是让“/”或”/tmp”作为守...
2018-10-25 19:56:19
306
原创 linux创建静动态库
1.gcc编译选项-E : 预处理 .c -> .i-S : 编译 .i /.c -> .s-c : 汇编 .s -> .o-g : 生成调试信息-O : 优化级别-O0-O1-O2-O3-Os-I : 包含一个头文件搜索路径 -I/home/linux/include-L : 包含一个库文件搜索路径 -L/home/linux/lib-l ...
2018-10-25 18:55:04
188
原创 linux进程基础
程序的组成 : 指令和数据指令: 对应cpu的指令集数据: c语言来说: 只读数据:1. const 修饰的变量2. 字符串可读可写数据:初始化的数据关于linux生成可执行文件的格式 elf 格式a.out 是一个可执行文件的格式, 是工业的二进制标准一个elf 程序分为几个段:.text : 用来存放指令的段.data : 已经初始化全...
2018-10-24 19:17:46
284
原创 C语言的冒泡排序
冒泡排序算法的运作如下:(从后往前)1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3.针对所有的元素重复以上的步骤,除了最后一个。4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒...
2018-10-24 16:12:05
330
安卓掌上游戏助手
2018-10-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅