【计算机操作系统】 进程与线程-1

本文详细介绍了操作系统中进程的定义、组成、组织方式及特征。进程在运行、就绪、阻塞和终止四种状态下转换,进程控制通过原语实现,包括创建、撤销和状态切换。此外,讨论了进程通信的三种方式:共享内存、管道通信和消息传递。最后,提到了线程的概念,线程是CPU执行的基本单位,分为用户级线程和内核级线程,并介绍了多线程模型的三种类型。
摘要由CSDN通过智能技术生成

PART1

一、进程的定义

程序: 一个指令序列; 早期计算机只支持单道程序, 程序的代码放在程序段内, 运行时的数据放在数据段内;
为方便OS管理程序的并发执行, 引入了进程与进程实体的概念 , 系统会为每个运行的程序配置一个进程控制块 PCB

进程的定义 : 进程是进程实体的运行过程, 是系统进行资源分配管理和调度的独立/基本单位;

  • 进程实体由 程序段, 数据段, PCB组成 ,由称为进程映像, 简称为进程(严格来说两者是不一样的);
  • 创建一个进程实质上是创建进程实体的PCB;
  • PCB是进程存在的唯一标志;
  • 进程具有动态性;

二、进程的组成

在这里插入图片描述
在这里插入图片描述

三、进程的组织方式

OS使用 链接方式索引方式来组织进程
在这里插入图片描述

  • 链接方式 : 使用指针链接各个PCB ,其中执行指针指向当前被CPU运行的进程的PCB, 就绪和阻塞队列指针分别执行处于就绪/阻塞状态的指针
  • 索引方式 : 指针指向各个索引表 , OS会为各个PCB建立对应的索引表

四、进程的特征

在这里插入图片描述

PART2

一、进程的状态和转换

进程的状态是动态的, OS对进程进行划分状态

  • 运行态 : 单核处理机每一时刻最多只有一个进程处于运行态;
  • 就绪态 : 已具备运行条件但CPU没有空闲;
  • 阻塞态 : 因某一事件暂时无法运行;
  • 终止态 : 撤销进程时, 需要回收内存区域,PCB和系统资源;
  • 创建态 : 进程正在被创建, OS为其分配资源, 初始化PCB;

进程从无到有的状态切换过程 :
在这里插入图片描述

PART3

一、进程控制

1. 定义 : 对OS中的所有进程实施有效的管理, 具有 创建, 撤销, 切换状态等功能; ,即对各种进程状态的转换
在这里插入图片描述

2. 进程控制的实现 :

  • 用原语实现进程控制;
    3. 什么是原语?
  • 原语在执行期间不允许中断;
  • 原语是采用开中断关中断指令实现;
  • 原语需要运行在OS核心态中;
    另外 , OS还提供了撤销原语、阻塞原语、唤醒原语、切换原语 用于控制进程的PCB , 其中的阻塞原语和唤醒原语是成对使用的

PART4

一、进程通信

各个进程拥有的内存地址空间相互独立
三种方式实现进程通信 , 共享内存、消息传递、管道通信;

1- 共享内存方式

两个进程通过一段共享的内存交换数据, 且对共享空间的访问必须是互斥的
基于数据结构的共享 : 速度慢且限制较多
基于存储区的共享 : 在内存中单划出一块共享内存, 速度更快

2- 管道通信方式

管道是指用于连接读写进程的一个共享文件 , 其实就是在内存中开辟了一块大小固定的缓冲区
只能使用半双工通信 , 各个进程要互斥地访问管道

3- 消息传递方式

进程的数据用格式化的消息 为单位,分为直接通信方式和间接通信方式

PART5

线程的概念

为了满足一个进程中同时执行多个任务, 引入了线程的概念, 可以理解为轻量级的进程
线程是基本的CPU执行单位, 也是程序执行流的最小单位, 进程只作为除CPU之外的系统资源的分配单元

在这里插入图片描述

线程可以分为用户级线程和内核级线程 , 内核级线程的切换需要在核心态下完成
操作系统只看得见内核级线程, 因此只有内核级线程才是处理机分配的单位

多线程模型

  1. 多对一模型 : 每个用户线程只对应一个内核级线程 , 并发度不高;
  2. 一对一模型 : 一个用户级线程对应一个内核级线程, 并发能力强; 但一个用户级线程会占用多个内核级线程, 线程管理成本高;
  3. 多对多模型 : N个用户级线程映射到M个内核级线程上;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值