linux环境编程-进程&并发

首先我们得搞清楚,进程和程序有社么区别呢?

先看个视频了解一下

 

一.进程和程序得区别

1)程序【后面我们介绍介绍程序的编译过程和执行过程】:是编译好得二进制文件,在磁盘上得,不占用系统资源(cpu,内存,打开得文件,设备,锁......);

2)进程:  进程本就是一个抽象得概念,与操作系统原理联系紧密,进程是一个活动得程序,占用系统资源,在内存中执行(程序运行起来就产生一个进程)

       1.说到进程 就不得不说到 进程控制块(PCB),在OS中用代码的形式展示就是一个结构体。

大家可以看到 这个 PCB的 结构体中有非常多的 成员变量,每个 变量都有他自己的含义。总之 这个 PCB就是来控制管理和记录运行...等进程的相关信息的。其中的每个角色我就不一一介绍了成员了【这里只是 大致的介绍一下PCB】 。给大家介绍经常用的。

包含:【1】进程ID,【2】进程的运行状态,【3】进程切换时需要的保存和恢复的CPU寄存器,【4】虚拟地址空间的信息,【5】描述控制终端的信息,【6】当前工作目录,【7】umask掩码,【8】文件描述符表,含多个只想 FILE结构体的指针,【9】和信号相关的信息,【10】会话 / 进程组,【11】用户ID/组ID

      2.另外还有进程状态的转换图,

 

二.并发性&并行性的概念

1)书上的:并发与并行

           1.并发性指的是:两个或多个事件 在同一时间间隔内发生

           2.并行性指的是:  两个或多个事件 在同一时刻发生

2)运用中:并发与并行

           1.并发性指的是:来张图

为什么这么画呢  举个简单的例子 大概在20年前左右都是 单核的 cpu,还没有现在 这么丰富多彩,但是 20 年前你 依然可以一边看小视频,一边听歌,一边 干别的,就是因为 并发性【宏观的并发(因为cpu的处理速度太快了,人们感觉不到它切换进程的卡顿)微观交替进行】。

           2.并行性指的是:  现在 基本都是多核心cpu,进程或者线程可以 在不同的核心上 同时的运行,这就是并行性

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值