Linux/Unix系统编程手册-笔记35. Sockets2021-01-12Linux系统编程手册阅读Socket系统调用: socket()创建一个新的socket bind()将socket绑定到一个地址。 listen() 系统调用允许一个流socket接受Read more...
Linux/Unix系统编程手册-笔记34. POSIX IPC2020-12-31Linux系统编程手册阅读POSIX 提供的三种IPC和System V类似,分别是消息队列、信号量、共享内存。 和System V 比较优势在于: 接口更简单,如下图 POSIX IPC API 使用名字代替Read more...
Linux/Unix系统编程手册-笔记33. 内存映射2020-12-26Linux系统编程手册阅读概念 mmap()内存映射有两种: 文件映射: 将一个文件的一部分直接映射到调用进程的虚拟内存中,映射的分页会按需要从文件中自动加载。 匿名映射: 没Read more...
Linux/Unix系统编程手册-笔记32. System V 共享内存2020-12-23Linux系统编程手册阅读共享内存的读写比较简单,而且速度快,但需要访问同步手段,一般和信号量一起使用。 使用System V 共享内存步骤,一般分以下几个步骤: 调用shmRead more...
Linux/Unix系统编程手册-笔记31. System V 信号量2020-12-17Linux系统编程手册阅读信号量和其他sys v IPC不同,它不是用来传输数据的,它是用来进程间同步的。 信号量是一个由内核维护的整数,其值被限制为大于等于0。下图是两个Read more...
Linux/Unix系统编程手册-笔记30. System V 消息队列2020-12-14Linux系统编程手册阅读API msgsnd 1 2 3 4 #include <sys/types.h> /* For portability */ #include <sys/msg.h> int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); // Returns 0 on success, or –1 on error msgp是一个自定义的消息数据结构,这个结构体里一定要定义一个mtypeRead more...
Linux/Unix系统编程手册-笔记29. System V IPC2020-12-02Linux系统编程手册阅读System V IPC 代表了三种进程间通信机制,他们在同一时期开发,拥有相似的API。 消息队列(Message queues):用于在进程间传递消息,和管道类Read more...
Linux/Unix系统编程手册-笔记28. 管道2020-11-27Linux系统编程手册阅读管道的概念 管道一般用于在shell中将一个进程的输出作为另一个进程的输入。比如 1 $ ls | wc -l 管道是一个字节流,只能按顺序读取任意大小的数据,不Read more...
Linux/Unix系统编程手册-笔记27. 共享库2020-11-23Linux系统编程手册阅读静态库是一个归档(archives),可以使用ar命令生成: 1 $ ar options archive object-file... 静态库会被整个拷贝到可执行文件中。 创建动态库 书中给的命令分两步 1 2 $Read more...
Linux/Unix系统编程手册-笔记26. 守护进程2020-11-19Linux系统编程手册阅读守护进程指常驻后台,没有控制终端的进程。 创建守护进程 执行fork(), 父进程退出,子进程变成init的子进程继续运行,这步有两个原因: 假设守Read more...