随笔分类 - unp
Unix网络编程
摘要:共享内存区介绍 共享内存区 是可用IPC形式中 最快 的。一旦内存映射到共享它的进程的地址空间,这些进程间的数据传递就 不再涉及内核 。当然对共享内存区的数据的存取操作需要某种形式的同步:JakeLin's Blog - Unix同步方式。 服务器-客户端文件复制程序的通常步骤如下图: 一组数据传递
阅读全文
摘要:【重要的一句话】进程终止时系统不会自动释放所持有的锁,互斥锁、读写锁和Posix信号量。进程终止时内核总是自动清理的唯一同步锁类型是fcntl记录锁 。进程终止时(无论自愿与否),内核会对其上仍然打开着的所有 有名信号量 自动执行 sem_close 信号量关闭操作(不是释放)。 System V信
阅读全文
摘要:程序示例可见参考链接:Posix消息队列_ZX714311728的博客-CSDN博客 消息队列 消息队列可以认为是一个消息链表,消息队列是随内核持续的。队列中每个消息的属性有: 一个无符号整数优先级(Posix)或一个长整数类型(System V); 消息的数据部分长度(可以为0); 数据本身(如果
阅读全文
摘要:程序示例可见参考链接:Posix消息队列_ZX714311728的博客-CSDN博客 消息队列 消息队列可以认为是一个消息链表,消息队列是随内核持续的。队列中每个消息的属性有: 一个无符号整数优先级(Posix)或一个长整数类型(System V); 消息的数据部分长度(可以为0); 数据本身(如果
阅读全文
摘要:并发模式是指I/O处理单元和多个逻辑单元之间的协调完成任务的方法。 并发模式中,**“同步”指的是程序完全按照代码序列的顺序执行;“异步”**指的是程序的执行需要由系统事件来驱动。 领导者/追随者模式 领导者/追随者模式是多个工作线程轮流获得事件源集合,轮流监听、分发并处理事件的一种模式。 领导者线
阅读全文
摘要:并发模式中,“同步”指的是程序完全按照代码序列的顺序执行;“异步”指的是程序的执行需要由系统事件来驱动。
阅读全文
摘要:同步I/O模型通常用于实现Reactor模式,异步I/O模型则用于实现Proactor模式。 Proactor模式 与 Reactor 模式不同,Proactor 模式将所有 I/O 操作都交给主线程和内核来处理, 工作线程仅仅负责业务逻辑。 主线程:负责监听已连接文件描述符上是否有事件发生。 内核
阅读全文
摘要:主线程只负责监听事件发生,其余工作(接受连接、读写数据、处理客户请求)均由工作线程完成。
阅读全文
摘要:I/O模型中,同步和异步关注的是消息通信机制。阻塞和非阻塞关注的是程序在等待调用结果时的状态。
阅读全文
摘要:Linux网络编程中,基本TCP套接字操作:socket、bind、listen、accept、connect、close
阅读全文
摘要:进程间通信方式中管道是最基础的一种方式。管道(pipe和FIFO)是一种伪文件。管道数据只能单向流动,并且只能一次性读取。管道是借助内核实现的。
阅读全文
摘要:前两天与师兄讨论到I/O复用,I/O复用在UNIX网络编程中,提供了三个系统调用,分别是select、poll、epoll。对于这三个系统调用的使用我已有coding,但是追其原理还有点捋不完整,这一篇博客记录通过源码阅读剖析select底层实现。
阅读全文

浙公网安备 33010602011771号