
Linux系统编程
Dorby .
我只想要一个我想要的生活
展开
-
Linux系统编程一(程序、进程和线程)
ln hello.c hello2.c //通过ln来创建hello.c的硬链接文件hello2.c只有文件才可以创建硬链接,删除其中一个硬链接文件时,别的文件还是可以查看,当修改互为硬链接的文件时,所有文件同时更新ln -s //创建软链接目录可以创建软链接...原创 2019-06-01 22:12:23 · 196 阅读 · 0 评论 -
Linux系统编程:管道
匿名管道1.单工管道(程序进程与shell命令行进程单项通信)打开管道FILE* popen(const char* command,const char* open_mode)参数含义command命令行字符串open_mode“r"或"w”//只读或只写返回值返回值含义NULL文件描述符非NULL打开失败读...原创 2019-06-03 14:36:15 · 399 阅读 · 0 评论 -
Linux系统编程三:IPC消息队列
查看POSIX消息队列:ls /dev/mqueue接口头文件:mqueue.h库:librt.h(-lrt //链接)结构体struct mq_attr //消息队列属性成员含义说明mq_flags标志在mq_open时被初始化,在mq_setattr设置,其值为0或者O_NONBLOCKma_msgsize队列每个消息...原创 2019-06-03 21:47:18 · 1099 阅读 · 1 评论 -
5种IO模型、阻塞IO和非阻塞IO、同步IO和异步IO
1.IOIO(Input/Output,输入/输出)即数据的读取(接收)或写入(发送)操作,通常用户进程中的一个完整IO分为两阶段:用户进程空间<–>内核空间、内核空间<–>设备空间(磁盘、网络)。IO有内存IO、网络IO和磁盘IO三种,通常我们说的IO指的是后两者。LINUX中进程无法直接操作I/O设备,其必须通过系统调用请求kernel来协助完成I/O动作;内...原创 2019-08-24 13:37:35 · 223 阅读 · 0 评论 -
同步、异步,阻塞、非阻塞解析
IO概念NIO(Non-Blocking IO,非阻塞IO)进程通信上下文的同步、异步,阻塞、非阻塞进程间的通信是通过send()和receive()两种基本操作完成的,具体如何实现这两种基础操作,存在着不同的设计。消息的传递可能是阻塞的或是非阻塞的,也被称为同步的或异步的。阻塞式发送(blocking send),发送方进程会被一直阻塞,直到消息被接收方进程收到。非阻塞式发送(...原创 2019-08-23 12:32:23 · 505 阅读 · 0 评论