
操作系统
Steven_L_
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【操作系统】select、poll和epoll详解
一、I/O多路复用 I/O多路复用通过一种机制,使得一个进程可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作,支持I/O多路复用的系统调用有 select、poll、epoll。它们本质上仍是同步I/O,因为他们都需要在读写事件就绪后负责进行读写,这个读写过程是阻塞的,而异步I/O无需自己进行读写,异步I/O会负责把数据从内核拷贝到用户空间。  原创 2020-07-07 00:52:05 · 2012 阅读 · 0 评论 -
【操作系统】实现生产者消费者模型
最近在复习操作系统,顺便写两种Java实现生产者消费者模型的方式 一、信号量 import java.util.Queue; import java.util.Random; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.Semaphore; class MessageQueue { private static final Semaphore FULL = new Semaphore原创 2020-05-10 11:24:20 · 2134 阅读 · 0 评论 -
【操作系统】进程间通信的6种方式
一、管道 UNIX 系统IPC最古老的形式。 特点: 只支持半双工通信(单向交替传输) 只能在父子进程或兄弟进程之间通信 只存在于内存中,不属于任何文件系统 二、命名管道(FIFO) 常用于C/S应用程序中,FIFO 用作汇聚点,在客户进程和服务器进程之间传递数据,它是一种文件类型。 特点: 不再局限于父子进程和兄弟进程之间的通信,可以在任意进程之间通信 有路径名与之关联,以一种特殊设备文件形式存在文件系统 三、消息队列 消息队列,是消息的链表,存放在内核中。一个消息队列由一个标识符(即队列ID原创 2020-05-10 10:26:30 · 6867 阅读 · 0 评论