
进程
文章平均质量分 76
失落的换海迷风
关注我了解最近咨询
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【Linux】进程等待
1.进程等待的必要性子进程退出,父进程不管不顾,就会造成僵尸进程,进而造成内存泄漏进程一旦变成僵尸状态,kill-9也无法杀死父进程通过等待的方式,回收子进程资源,获取子进程的退出信息 2.进程等待的方法wait方法int wait(int *status)是一个阻塞接口,处理退出的子进程,则会一直等待,直到有子进程退出才会返回返回值:成功则返回处理的退出子进程的pid;失败则返回-1 阻塞:为了完成一个功能,发起一个调用,若不具备完成功能的条件,则调用一直等原创 2020-10-10 17:05:55 · 229 阅读 · 0 评论 -
【进程】进程间通信详解
文章目录1、进程间通信1.1 为什么要进行进程间通信?2、进程间通信的目的3、进程间通信的分类1、进程间通信1.1 为什么要进行进程间通信?每一个进程都有自己独立的进程虚拟地址空间,造成了进程独立性,从而进程间通信技术就是为了各个进程之间可以很好的的交换数据或者进程控制等行为应运而生的。目前,我们所见到的最大的进程间通信技术:网络2、进程间通信的目的数据传输:一个进程需要把它的数据发送给另一个进程资源共享:多个进程之间共享同样的资源通知事件:一个进程需要向另一个或一组进程发送消息,通知原创 2021-04-26 22:12:58 · 478 阅读 · 0 评论 -
【进程】wait() 函数详细分析
wait和waitpid的区别阻塞 / 非阻塞:如果父进程的所有子进程都在运行,则父进程阻塞。如果一部分子进程终止,而另一部分还在运行,那么父进程不会阻塞。wait函数使其调用者阻塞,waitpid可以设置使其调用者不阻塞。等待子进程:wait() 函数只要有一个进程终止,wait收到一个SIGCHLD信号,就会返回。对于多个子进程的情况,需要调用wait多次。waitpid()可以控制它所等待的进程。特殊情况:如果一个子进程已经终止,正等待父进程获取其终止状态,则取得该子进程的终原创 2021-04-23 16:52:23 · 1416 阅读 · 0 评论 -
【进程】进程的基本概念理解
1.基本概念1.1 冯诺依曼体系结构冯诺依曼体系结构对应现代计算器输入设备:键盘输出设备:显示屏、打印机存储器:内存运算器:CPU控制器:南桥北桥1.2 操作系统任何计算机系统都包含的一个基本的程序集合,称为操作系统。包含内核(进程管理,内存管理,文件管理,驱动管理)和其他程序。是一款纯正搞管理的软件。1.3 系统调用和库函数的区别系统调用:操作系统对外表现为一个整体,会暴露自己的部分接口,供上层开发使用,由操作系统提供的接口。库函数:对部分操作系统调用进行适度封装,从而形成原创 2021-04-22 17:38:38 · 296 阅读 · 0 评论 -
【Linux】进程间通信----信号
1.信号信号是一个中断软件信号的种类1~31:非可靠信号34~64:可靠信号 2.信号的产生方式硬件产生 ctrl + c:2号信号,导致前台进程终止 ctrl + z :20号信号(SIGTSTP),导致前台进程暂停 ctrl + |:3号信号(SIGQUIT) 软件产生 kill函数 kill(pid_t pid, int signo) kill -[信号][pid] —>eg:kill -9 12121 abort(pid_t原创 2020-11-16 23:37:53 · 175 阅读 · 0 评论 -
【进程】进程间通信----消息队列
1.特性队列的特性是先进先出,消息队列也是满足先进先出的特性的,内核当中实现消息队列的时候,是采用链表这个结构体消息队列当中的元素是有类型的,每一种类型是有优先级概念的—同一类型保证先进先出的特性 2.实现接口int msgget(key_t key, int msgflg)int msgsnd(int msqid, const void* msgp, size_t msgsz, long msgtyp, int msgflg)msgflg:IPC_NOWAIT:非阻塞模式原创 2020-11-12 09:45:57 · 669 阅读 · 0 评论 -
【Linux】进程间通信----共享内存
文章目录1.命名管道2.共享内存3.共享内存的接口4.共享内存的标识符和共享内存的操作句柄的区别是什么?5.删除共享内存1.命名管道 命名管道也是内核中开辟的一段缓存区,这段缓存区是有标识符的:意味着:不同的进程,不需要有亲缘关系,只需要通过标识符就能找到该缓存区 命名管道的创建mkfifo [命名管道文件]p:代表的文件类型为管道文件函数创建mkfifo函数 特性命名管道的生命周期也是跟随者进程的命名管道是具有标识符的其他的特性和匿名管道是一致的&nb原创 2020-11-06 12:02:16 · 548 阅读 · 0 评论 -
【进程】进程间通信----管道
1.进程间通信为什么要进行进程间通信?每一个进程都有自己独立的进程虚拟地址空间,造成了进程独立性,从而进程间通信技术就是为了各个进程之间可以很好的的交换数据或者进程控制等行为应运而生的。目前,我们所见到的最大的进程间通信技术:网络 2.匿名管道 管道本质就是在内核当中开辟的一段空间,这段空间也可以称之为叫做缓冲区,这段空间是没有标识符的。 匿名的创建int pipe(int fd[2])fd[2]:① 本质上是一个出参,fd[0],fd[1]当中的值,是pipe函原创 2020-11-05 09:32:25 · 1054 阅读 · 0 评论 -
【Linux】进程控制及理解
1.进程控制 包括:创建,终止,等待,程序替换2.进程创建 创建一个pcb,因为pcb在linux下是一个task_struct的结构体,这个结构体放在内核中,只能通过系统调用接口实现创建 pid_t fork(void); 通过复制父进程创建一个子进程(复制了父进程的pcb中的数据) -----代码共享数据独有 写时拷贝技术:子进程创建出来之后,与父进程访问同一块物理内存,当物理内存中的数据发生改变时,重新为子进程开辟空间,拷贝数据过去(为了避免给子进程开辟空间,子进程不用,降原创 2020-09-27 15:30:45 · 160 阅读 · 0 评论