操作系统
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 · 1812 阅读 · 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 · 2050 阅读 · 0 评论 -
【操作系统】进程间通信的6种方式
一、管道UNIX 系统IPC最古老的形式。特点:只支持半双工通信(单向交替传输)只能在父子进程或兄弟进程之间通信只存在于内存中,不属于任何文件系统二、命名管道(FIFO)常用于C/S应用程序中,FIFO 用作汇聚点,在客户进程和服务器进程之间传递数据,它是一种文件类型。特点:不再局限于父子进程和兄弟进程之间的通信,可以在任意进程之间通信有路径名与之关联,以一种特殊设备文件形式存在文件系统三、消息队列消息队列,是消息的链表,存放在内核中。一个消息队列由一个标识符(即队列ID原创 2020-05-10 10:26:30 · 6548 阅读 · 0 评论