操作系统基础第二讲

news/2024/10/8 12:41:46

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/68959.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

操作系统基础第一讲

操作系统基础第一讲考点一:操作系统的概念 1. 操作系统的定义2. 操作系统的作用2. 操作系统的特征并发性多线程,不能同时运行, 在同一时间间隔内交替发生,我走一段你走一段,谁先结束未知共享性虚拟性异步性考点二:操作系统的发展历程 1. 无操作系统的计算机系统人工操作方…

[43] (CSP 集训) CSP-S 模拟 10

B.清扫 考虑从叶子节点往上推 首先可以发现的几个性质子树内需要消除的数,要么通过子树根节点 “发送” 到上面(只经过子树内一个叶节点),要么通过自己的叶节点解决 对于子树内既不是根也不是叶节点的节点,节点上的值只能由这一支路的叶节点消除,所以如果他节点上的值和下…

DevNow: Search with Lunrjs

前言 假期真快,转眼国庆假期已经到了最后一天。这次国庆没有出去玩,在北京看了看房子,原先的房子快要到期了,找了个更加通透一点的房子,采光也很好。 闲暇时间准备优化下 DevNow 的搜索组件,经过上一版 搜索组件优化 - Command ⌘K 的优化,现在的搜索内容只能支持标题,…

Nuxt.js 应用中的 page:start 钩子详解

title: Nuxt.js 应用中的 page:start 钩子详解 date: 2024/10/8 updated: 2024/10/8 author: cmdragon excerpt: page:start 是一个关键的钩子,可以在页面加载时执行必要的逻辑,以提升用户体验。通过合理地使用这个钩子,可以创建流畅的页面导航体验,并提供用户反馈。 ca…

01-flask简单介绍

Flask是一个使用 Python 编写的轻量级 Web 应用框架,对比与Django框架呢,他的灵活度就很高了,可以自己一些设计代码框架。比较适合一些,分层比较少,逻辑不怎么复杂的web项目pip安装pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple 简单实例from flask im…

MySQL9的3个新特性

本文讲解MySQL9的3个新特性:支持将JSON输出保存到用户变量、支持准备语句以及支持面向AI的向量存储。 17.12 MySQL9新特性1——支持将JSON输出保存到用户变量 从MySQL 9版本开始支持将EXPLAIN FORMAT的JSON输出保存到用户变量,下面通过一个案例来理解该新特性。创建演示数据…

技术解读GaussDB (for MySQL)流控机制

本文详细分析了GaussDB (for MySQL) 在不同层级的流控机制,包括反馈式流控在存储层和计算层的策略和流程,以及计算节点的主动平滑流控的方案。本文分享自华为云社区《【华为云MySQL技术专栏】GaussDB (for MySQL)流控技术解读》,作者:GaussDB 数据库。本文主要介绍GaussDB …

sicp每日一题[2.36-2.37]

果然习惯不能停,就两天没学,昨天就忘的干干净净了。。今天把昨天的补上Exercise 2.36The procedure accumulate-n is similar to accumulate except that it takes as its third argument a sequence of sequences, which are all assumed to have the same number of elemen…