骏马金龙

网名骏马金龙,钟情于IT世界里的各种原理和实现机制,强迫症重症患者。爱研究、爱翻译、爱分享。特借此一亩三分田记录自己成长点滴!!!
我本问道人,道心不坚,必将与道无缘!

摘要:"点我查看秘籍连载" 锁 计算机领域中,锁机制使用的非常多。它主要是为了避免多个进程访问同一资源时,可能出现的数据不一致问题。 例如,cat命令输出一个比较大的文件内容,cat命令的特性是需要先将所有磁盘文件数据读取到内存后再输出,所以cat输出一个大文件可能需要花费一些时间。如果在cat在加载文件 阅读全文
posted @ 2019-11-18 13:22 骏马金龙 阅读 (38) 评论 (0) 编辑
摘要:"点我查看秘籍连载" 信号量 信号量(Semaphore)也称为信号灯,典故来源于荷兰:火车根据旗标来决定是否通行。其实就是红绿灯的作用。如图。 通过红绿灯理解信号和信号量,感觉它们似乎是一样的。但是,信号量机制是根据红绿灯的事件让人等待(进程阻塞)或不等待(进程继续运行),只有这两种行为;而信号机 阅读全文
posted @ 2019-11-18 13:21 骏马金龙 阅读 (19) 评论 (0) 编辑
摘要:"点我查看秘籍连载" 消息队列 消息队列(Message Queue)用于在进程之间传递较小的数据,进程可以向一个或多个消息队列中放入数据(消息),其它进程可以从消息队列中按照各种方式(例如最典型的先进先出FIFO方式)取出消息,从而实现进程间通信。 消息队列是一种生产者消费者模型,生产者生产消息放 阅读全文
posted @ 2019-11-18 13:19 骏马金龙 阅读 (33) 评论 (0) 编辑
摘要:"点我查看秘籍连载" 文件映射 文件映射(Memory mapped file)是将磁盘上文件的某段数据映射到内核的一段物理内存上,然后将此物理内存映射到一个或多个进程的虚拟内存中。映射了文件的进程可以直接读、写这段内存来达到读、写磁盘文件的功能。如果多个进程请求映射的文件区段相同,则只映射一次。 阅读全文
posted @ 2019-11-18 13:17 骏马金龙 阅读 (34) 评论 (0) 编辑
摘要:"点我查看秘籍连载" 套接字 套接字(Socket)用于协调不同计算机上的进程间通信,也就是基于网络的通信。当然,也可以在本机上使用套接字进行进程间的通信。 套接字通信的方式非常多,有Unix域套接字、TCP套接字、UDP套接字、链路层套接字等等。但最常用的肯定是TCP套接字。所以,这里介绍下TCP 阅读全文
posted @ 2019-11-18 13:16 骏马金龙 阅读 (333) 评论 (0) 编辑
摘要:"点我查看秘籍连载" 管道 管道是操作系统提供的一种最基本的进程间通信方式。每创建一个管道,就有两个文件描述符,一个是负责读管道的,一个是负责写管道的。所以,使用管道通信时,可以看作是两个文件描述符加一段内核空间中的内存,如图。 管道只能协调有亲缘关系的进程间通信,所谓亲缘,比如父子进程、兄弟进程。 阅读全文
posted @ 2019-11-18 13:11 骏马金龙 阅读 (45) 评论 (0) 编辑
摘要:"点我查看秘籍连载" 进程间通信 单机操作系统上的进程可以分为两类: 1.独立进程:这类进程不会和其它进程有任何交流。 2.协作进程:两个或多个进程之间需要交流。 例如, 命令是独立运行的,不依赖于其它进程,而 命令中的两个进程是协作进程,grep进程依赖于cat进程,grep只有等待到了cat进程 阅读全文
posted @ 2019-11-18 13:10 骏马金龙 阅读 (37) 评论 (0) 编辑