2在前面介绍过,进程之间交换信息的唯一途径就是传送打开的文件。可以经由fork或者exec来传送。这一章将介绍新的进程共享方式 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程A把数据从用户空间拷到内核缓 ...
分类:
系统相关 时间:
2018-10-14 14:02:33
阅读次数:
209
一.匿名管道pipe #include <unistd.h> int pipe(int filedes[2]); 管道作用于有血缘关系的进程之间,通过fork来传递 调用pipe函数时在内核中开辟一块缓冲区(称为管道)用于通信,它有一个读端一个写端,然后通过filedes参数传出给用户程序两个文件描 ...
分类:
其他好文 时间:
2018-07-25 13:47:59
阅读次数:
125
匿名管道(pipe) 管道是一种最基本的IPC机制,由pipe函数创建: 调用pipe函数时在内核中开辟一块缓冲区(称为管道)用于通信,它有一个读端一个写端,然后通过filedes参数传出给用户程序两个文件描述符,filedes[0]指向管道的读端,filedes[1]指向管道的写端(很好记,就像0 ...
分类:
其他好文 时间:
2018-07-23 14:51:26
阅读次数:
231
1. ngx_command_t 为了统一配置项目的解析,Nginx 定义了如下数据类型对所有的 Nginx 配置项进行了统一的描述。 2. ngx_conf_t ngx_open_file_s ngx_conf_file_t ngx_conf_dump_t 3. ngx_conf_parse 该函 ...
分类:
其他好文 时间:
2018-06-20 00:52:50
阅读次数:
337
实质上,很多后台服务程序并发控制的基本原理都可以归纳为生产者/消费者模式, 生产者消费者问题是研究多线程程序时绕不开的经典问题之一,它描述是有一块缓冲区作为仓库,生产者可以将产品放入仓库,消费者则可以从仓库中取走产品。解决生产者/消费者问题的方法可分为两类: (1)采用某种机制保护生产者和消费者之间 ...
分类:
编程语言 时间:
2017-11-13 16:50:31
阅读次数:
272
进程之间的通信 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进行之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷贝到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程之间通信(IPC) 进程间通信 1.pipe管 ...
分类:
系统相关 时间:
2017-11-11 00:38:09
阅读次数:
270
进程间通信 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,InterProcess Commu ...
分类:
其他好文 时间:
2017-09-30 13:29:24
阅读次数:
204
索引 A B C D E F G H I L M N O P Q R S T U V W U glUniform 2.0 设置uniform变量 存在多个版本,数组类型可使用count指定数组个数,矩阵版本可指定是否需要转置 glUniformBlockBinding 3.1 绑定uniform块 ...
分类:
其他好文 时间:
2017-09-26 23:40:11
阅读次数:
200
建立连接: 理解:窗口和滑动窗口 TCP的流量控制 TCP使用窗口机制进行流量控制 什么是窗口? 连接建立时,各端分配一块缓冲区用来存储接收的数据,并将缓冲区的尺寸发送给另一端 接收方发送的确认信息中包含了自己剩余的缓冲区尺寸 剩余缓冲区空间的数量叫做窗口 TCP/IP协议中,TCP协议提供可靠的连 ...
分类:
其他好文 时间:
2017-09-12 13:52:07
阅读次数:
196
五大优化技术 1.查询重用 查询重用是指尽可能利用先前的执行结果,以达到节约查询计算全过程的时间并减少资源消耗的目的。 目前查询重用技术主要集中在两个方面: 1)查询结果重用 在缓存区中分配一块缓冲区,存放该SQL语句文本和最后的结果集,当同样的SQl输入时,立即把结果返回。 2)查询计划的重用 缓 ...
分类:
数据库 时间:
2017-09-09 00:05:55
阅读次数:
316