Linux
文章平均质量分 84
敲代码的小王
这个作者很懒,什么都没留下…
展开
-
Linux多线程同步和互斥
Linux多线程 同步和互斥、生产者消费者模型、pthread库原创 2022-05-13 08:51:41 · 232 阅读 · 0 评论 -
进程间通信
进程间通信要想进行进程间通信,必须让相互通信的进程看到同一份资源。匿名管道匿名管道只能用于具有亲属关系间进程的通信,常用于父子。匿名管道就是通过子进程是以父进程为模板创建的,因此子进程会也有和父进程相同的fd_arr(打开的文件列表),此时它们就看到了同一份资源。管道是单向进行通信的。管道创建#include<unistd.h>int pipe(int pipefd[2]);//pipefd:文件描述符数组,其中pipefd[0]表示读端,pipefd[1]表示写端。原创 2022-04-23 10:28:38 · 225 阅读 · 0 评论 -
Linux程序替换(exec)
程序的替换在有些场景中我们需要创建一个进程,让该进程来帮我们完成某项工作,比如Linux中的shell,shell就是一个进程,他通过不断创建子进程,通过让子进程来帮我们执行程序。程序替换的原理程序替换只是将替换的进程加载到内存中,然后修改当前进程的映射信息,完成替换,程序替换并不会创建新的进程。替换函数在linux中程序替换是通过exec函数族完成的。int execl(const char *path, const char *arg, …);int execlp(c原创 2022-03-29 10:17:58 · 955 阅读 · 0 评论