一文彻底搞懂操作系统进程与线程

在这里插入图片描述

S1 : a : =x+y; S2 : b : =a-5; S3 : c : =b+1;
三条语句的存在着前趋关系:S1——>S2——>S3

  • 程序顺序执行时的特征

1.顺序性
2.封闭性
3.可再现性

  • 程序并发执行
    S1 : a :=x+2;
    S2 : b :=y+4;
    S3 : c :=a+b;
    S4 : d :=c+b;
    在这里插入图片描述
  • 程序并发执行时的特征
    1.间断性
    2.失去封闭性
    3.不可再现性

进程的描述:
一般情况下,我们把进程实体简称为进程,例如,所谓创建进程,实质上是指创建进程的PCB;而撤销进程,实质上,是撤销进程的PCB.
(1)进程是程序的一次执行
(2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
(3)进程是具有独立功能的程序在一个数据集上执行的过程,它是系统进行资源分配和调度的一个独立单位。

进程的实质是:进程是程序的执行过程,是系统进行资源分配和调度的一个独立单位

进程的管理者为:处理机

1.进程控制
2.进程同步
3.进程通信
4.调度(1.作业调度2.进程调度)

进程的数据结构 ---------PCB(进程当然有自己的数据结构啦)
1.作为独立运行基本单位的标志
2.实现间断性运行方式
3.提供进程管理所需要的信息
4.提供进程调度所需要的信息
5.实现与其他进程的同步与通信

在这里插入图片描述

PCB的组织方式

(1)线性方式(类似于数据结构中的线性表)
(2)链接方式(类似于数据结构中的链表【取址执行】)
(3)索引方式

进程的创建
(1)申请空白PCB
(2)为新进程分配器运行所需要的资源,包括各种物理和逻辑资源,如内存、文件、I/O设备和CPU时间等。
(3)初始化PCB
(4)如果进程就绪队列能够接纳新进程,就将新进程插入就绪队列
进程的终止
(1)正常结束
(2)异常结束
(3)外接干预
进程的终止过程
在这里插入图片描述

引入挂起操作后进程5个基本状态间的转换

在这里插入图片描述
引入进程的目的

1.多个程序能并发执行
2.提高资源利用率和系统吞吐量

引入线程的目的
1.减少程序并发执行时所付出的时空开销
2.进一步提高程序并发执行的程度

线程的定义:
线程是进程的一个实体,是被系统独立调度和分派的基本单位
1.调度的基本单位
线程是调度和分派的基本单位.(注意与进程进行区分)
2.并发性

在这里插入图片描述
3.拥有资源
进程都是拥有资源的一个独立单位,它可以拥有自己的资源
线程一般不拥有系统资源(也有一点必不可少的资源)。
4.独立性
同一进程中不同线程间的独立性要比不同进程之间的独立性
多。
5.系统开销
创建、撤销以至于切换进程时付出的系统开销显著大于创建、撤销、切换线程时的系统开销
6.支持多处理机系统
多个线程并发进行 ,加速了进程的完成。

进程与线程一样都有三个状态

线程控制块
1.线程标识符
2.寄存器
3.线程运行状态
4.优先级
5.线程专有存储器
6.信号屏蔽
7.堆栈指针

在这里插入图片描述

在这里插入图片描述
线程的实现方式

内核支持线程
用户级线程

三种连接方式
多对一、一对一、多对多模型
请添加图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鲲鹏猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值