![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux系统编程
Hello_MyDream
这个作者很懒,什么都没留下…
展开
-
01 Linux系统编程基础——进程
一. 概念 1. 并行与并发:区分的关键点是“同时”。 并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。 并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果。即宏观上同时,微观上交替执行。 2.进程控制块PCB 进程运行时,内核为每个进程分配一个PCB(进程控制块),维护进程相关的...原创 2020-09-14 10:19:59 · 132 阅读 · 0 评论 -
02 Linux进程间通讯
进程间通讯( IPC:Inter Processes Communication ) 一. 管道(PIPE) 管道是一种特殊类型的文件,在应用层体现为两个打开的文件描述符。 对于管道本身而言,不是普通的文件,不属于某个文件系统,其只存在于内存中;对于通讯而言,管道是半双工的通讯方式,数据在同一时刻只能在一个方向上流动;对于使用而言,管道没有名字,只能在具有公共祖先的进程之间使用。 1. ...原创 2020-09-14 10:25:05 · 123 阅读 · 0 评论 -
谨慎使用多线程中的fork
转载自:https://www.cnblogs.com/liyuan989/p/4279210.html 谨慎使用多线程中的fork 1.前言 在单核时代,大家所编写的程序都是单进程/单线程程序。随着计算机硬件技术的发展,进入了多核时代后,为了降低响应时间,重复充分利用多核cpu的资源,使用多进程编程的手段逐渐被人们接受和掌握。然而因为创建一个进程代价比较大,多线程编程的手段也就逐渐被人们认...转载 2018-12-15 14:20:36 · 28654 阅读 · 0 评论 -
进程与线程的区别
进程与线程的区别主要体现在加载、体量与CPU调度上。让我们分开来讲: 1. 加载:程序从磁盘中加载到内存,由启动程序让出执行权限,进程由此产生,它直接挂靠操作系统,由操作系统分配资源;而线程存在于进程之中,执行具体的任务。 2. 体量:进程掌握系统分配的内存资源;而线程仅仅具有可以运行的资源,线程不能独立运行,需要依靠进程。 3.CPU调度:在多道程序设计中,线程作为CPU直接调度的最小单...原创 2019-03-28 12:30:18 · 28400 阅读 · 0 评论