首页 > 其他分享 >操作系统基础第二讲

操作系统基础第二讲

时间:2024-10-08 12:34:05浏览次数:8  
标签:操作系统 第二 基础 信号量 PCB 考点 线程 进程 管程

操作系统基础第二讲 进程管理

img

考点一:进程的基本概念

1. 进程的顺序执行

  1. 概念

    img

    img

  2. 前驱图

    img

    img

2. 程序并发执行的特征

img

  1. 间断性

    img

  2. 失去封闭性

    img

  3. 不可再现性

    img

考点二: 进程的特征与状态

1. 特征的定义

img

img

img

2. 进程的三种基本状态

  1. 就绪态

    已经分配好除CPU以外所有必要资源,可以进入处理机,排队等待

  2. 执行态

    正在处理机中执行的状态

  3. 阻塞态

    正在执行的进程由于发生事件(如I/O请求失败,资源占用等),无法继续执行,进入阻塞态等待分配资源

img

3. 挂起状态

  1. 创建状态

    申请空白PCB,填写人控制管理信息;分配资源;转入就绪态

    img

    img

  2. 终止态

    等待系统进行善后处理,将PCB清零,并将PCB空间返还系统

    img

    img

img

img

img

img

  1. 终止状态操作过程

    img

  2. 引起阻塞事件

    img

4, 进程控制块

  1. 进程控制块PCB作用

    img

  2. 处理机状态

    img

考点四:进程同步

1. 基本概念

img

  1. 间接相互制约

    img

  2. 直接相互制约

    img

  3. 临界资源

    img

  4. 临界区

    img

  5. 同步机制应遵循的规则

    img

    img

2. 进程同步软件实现方法

  1. 单标志法

    img

    img

  2. 双标志先检法

    img

    img

    同时进入会违背忙则等待

  3. 双标志后检法

    img

    img

    两进程都想进去会导致饥饿

  4. Peterson算法

    img

    img

    解决了饥饿现象,但会处于忙等

3. 进程同步硬件实现方法

  1. 关中断

    img

  2. 利用Test-and-Set指令实现互斥

    img

    img

4. 锁机制

  1. LockOne类

    img

  2. LockTwo类

    img

  3. Peryerson锁

    img

  4. Barkey锁

    img

5. 信号量机制

  1. 整形信号量

    img

    阻塞:P(S)/wait(S)

    释放:V(S)/signal(S)

  2. 记录型信号量

    img

  3. AND型信号量

    img

6. 信号量的应用

  1. 利用信号量实现进程互斥

    img

    img

    img

    img

考点五:管程机制

1. 管程的定义

img

2. 管程的组成

img

3. 管程的特性

img

4. 管程与进程的对比

img

5. 条件变量

img

img

考点六:进程通信

1. 为什么需要进程通信

img

进程通信特点

img

2. 消息传递系统

img

3. 管道通信

img

4. 消息传递通信的实现方法

  1. 直接通信

    img

  2. 间接通信

    img

5. 线程

1个进程包含多个线程

作为调度和分派的基本单位

img

进程可以拥有资源,并作为系统中拥有资源的基本单位

线程本身并不拥有系统资源,仅有一点必不可少,能保证独立运行的资源;被允许多个线程共享该进程所拥有资源。

img

  • 内核支持线程和用户级线程

    img

    img

考点七:经典同步问题

1. 哲学家进餐问题

img

img

2. 读者写者问题

img
img

3. 理发师问题

img

img

img

img

4. 抽烟者问题

img

img

img

标签:操作系统,第二,基础,信号量,PCB,考点,线程,进程,管程
From: https://www.cnblogs.com/JUANFENHUI/p/18451417

相关文章

  • 操作系统基础第一讲
    操作系统基础第一讲考点一:操作系统的概念1.操作系统的定义2.操作系统的作用2.操作系统的特征并发性多线程,不能同时运行,在同一时间间隔内交替发生,我走一段你走一段,谁先结束未知共享性虚拟性异步性考点二:操作系统的发展历程1.无操作系统的......
  • 操作系统错误点
    一:操作系统概述1.用户界面是指用户接口命令接口程序接口操作环境2.从用户观点看操作系统就是用户与计算机硬件之间的接口3.从资源管理观点看操作系统是计算机资源的管理者4.图形用户接口采用图形化操作界面用于查看和操作应用程序或文档的是对话框5.用户程......
  • 24南邮科协电子部笔试题 模拟基础
    第一题仅用KVL做题步骤:1.规定正方向。不妨规定顺时针为正方向。规定方向的主要目的是确定各个元器件的电压是降压还是升压。2.假设各个未知元器件的电压值和正负方向。如图3.数清回路数量,以回路为单位列KVL方程以回路1列KVL方程,升压为负,降压为正,代数和为0。不妨按照......
  • Python 字符串基础知识
    字符串是计算机编程中非常重要的数据类型。在Python中,字符串是一系列字符的集合,可以包含字母、数字、符号和空格。Python提供了强大的字符串处理功能,使得操作字符串变得简单而直观。本文将深入探讨Python字符串的基本知识,包括字符串的创建、操作、常用方法以及字符串格式......
  • 系统开发基础错题解析一【软考】
    目录前言1.开发模型1.1快速原型模型优点1.2敏捷统一模型1.3增量模型的优缺点1.4极限编程1.5螺旋模型2.软件开发方法3.数据流图与数据字典3.1判定表3.2数据流图绘制3.3决策树4.概要设计和详细设计5.内聚性6.耦合性前言本文专门用来记录本人在做软考中有关系统开发基......
  • Linux基础命令uptime详解
    uptime 命令在Linux中用于显示系统的运行时间、当前登录用户数以及系统负载信息。这个命令非常简单,但是它提供的信息对系统管理员和用户来说非常有用。基本语法uptime[OPTION...]输出说明当你运行 uptime 命令时,输出通常包含以下几个部分:当前时间:系统当前的时间。......
  • 第二百七十一节 JPA教程 - JPA查询like Escape示例
    JPA教程-JPA查询likeEscape示例如果模式字符串包含应匹配的下划线或百分号,则ESCAPE子句可以使用\指定转义字符:SELECTdFROMDepartmentdWHEREd.nameLIKE'QA\_%'ESCAPE'\' 例子下面的代码来自PersonDaoImpl.java。packagecn.w3cschool.common;importjava.......
  • Java基础语法
    一入Java情几许?大家好,我是深山夕照深秋雨。本文主要介绍Java的基础语法第二部分变量,类型转换和运算符。一、变量详解变量里的数据在计算机中的底层原理1、数据在计算机底层都是采用二进制:使用0、1,按照逢2进1的规则表示数据来存储。2、算出一个数据的二进制形式:除二取余法......
  • 【训练记录】山东济南齐鲁工业大学ACM集训队第二次入队赛同步赛(场外VP)
    https://icpc.qlu.edu.cn/contest/66ed8b746002253a77c10d5e训练情况场外rk#2AK赛后反思A题太菜了,没看出来是01背包DP,往前缀和上面想了,写了个假做法。B题又不认真看题,忘记了\(=0\)的情况。C题博弈论乱猜D题未考虑完全导致一次WAA题分两组,两组和相同,观察数据范围我们......
  • 输入格式: 输入在第一行中给出一个正整数N,即参赛学生的总数。随后一行给出N个不超过的
    1importjava.util.Scanner;2publicclassMain{3publicstaticvoidmain(String[]args){4ScannermyScanner=newScanner(System.in);5intn=myScanner.nextInt();6int[]scores=newint[n];7for(inti=......