前言

计算机四级嵌入式主要考试的内容分为两个大部分:计算机组成与接口和操作系统原理

考点大纲每年不敢保证都一模一样,可以参考官网的考试大纲按需复习,但每年考来考去大差不差的都是那些东西。
官网网址:https://ncre.neea.edu.cn/html1/category/1507/899-1.htm

2025年的考试大纲如下所示:

我会按照该大纲的顺序将整理出来的知识点一章一章整理出来,都放在这个专栏中,希望能够帮助各位准备考试的同学能够顺利通过!

第三章 进程线程模型学习笔记

一、系统分类及核心指标

(一)批处理系统

  1. 核心指标:吞吐量、周转时间、CPU利用率。

    1. 吞吐量:系统每小时完成的作业数量,高吞吐量是核心追求之一。

    2. CPU利用率:常用于批处理系统的度量。

  2. 优点:作业流程自动化程度高,资源利用率高,作业吞吐量大,减少周转时间,提升整个系统效率。

(二)交互式系统(含分时系统、服务器)

  1. 核心指标:最小响应时间、均衡性。

    1. 最小响应时间:从发出命令到得到响应之间的时间,是最重要的指标。

(三)实时系统

  1. 核心特点:调度需或多或少满足截止时间要求。

二、调度算法

(一)各类系统适用的调度算法

  1. 批处理系统常用:先来先服务、最短作业优先、最短剩余时间优先、响应比最高者优先。

  2. 分时系统常用:时间片轮转、多级反馈队列。

  3. 交互式操作系统常用:多级反馈队列、时间片轮转、高优先级优先。

  4. 实时系统常用:静态或动态调度算法,主要包括速率单调调度算法、最早最终时限优先调度算法。

(二)主要调度算法详情

  1. 先来先服务

    1. 调度方式:非抢占式。

    2. 调度逻辑:进程按照请求CPU的顺序使用CPU。

    3. 适用场景:作业调度。

    4. 特点:算法简单,对先到的进程公平,不考虑进程下一个CPU周期长短及其他因素。

    5. 示例:作业A(到达时间0,运行时间8)、B(到达时间0,运行时间4)、C(到达时间0,运行时间4)、D(到达时间4,运行时间4),运行顺序为A→B→C→D,周转时间分别为8、12、16、20,平均周转时间14。

  2. 最短作业优先

    1. 调度方式:非抢占式。

    2. 调度逻辑:调度程序按照作业运行时间长度安排CPU使用,优先调度运行时间最短的作业。

    3. 适用场景:作业调度。

    4. 示例:作业A(运行时间8)、B(运行时间4)、C(运行时间4)、D(运行时间4),运行顺序为B→C→D→A,周转时间分别为4、8、12、20,平均周转时间11。

  3. 最高优先级算法

    1. 调度逻辑:根据进程的优先级数决定调度顺序。

    2. 适用场景:作业调度。

  4. 多级反馈队列

    1. 调度逻辑:综合先进先出调度算法、时间片轮转算法和可抢占式最高优先级算法。

    2. 适用场景:队列调度,是实际系统中常用的结合型调度算法。

  5. 时间片轮转

    1. 调度逻辑:将CPU处理时间划分成一个个时间片,就绪队列中的进程轮流运行一个时间片;时间片结束时,强迫当前进程让出CPU,进入就绪队列等待下一次调度。

    2. 适用场景:分时系统。

    3. 影响时间片设置的因素:系统响应时间、就绪进程的数目、计算机的处理能力。

三、多道程序设计环境特点

  1. 独立性:各程序相对独立运行。

  2. 随机性:程序的启动、执行时机等具有随机性。

  3. 资源共享性:多个程序共享系统资源。

四、可再入程序

  1. 定义:由可重入代码组成,可安全并行执行,运行过程中可再次载入内存并执行。

  2. 特点:

    1. 纯代码形式,执行过程中不可修改。

    2. 调用它的进程需提供属于自身的数据区。

五、进程相关

(一)进程的组成

由指令、数据和进程控制块(PCB)三部分组成。

(二)进程的特性

  1. 并发性:多个进程同时处于运行或就绪状态。

  2. 动态性:进程是程序的执行过程,有生命周期(创建、运行、结束等)。

  3. 独立性:是相对完整的资源分配单位。

  4. 交往性:进程之间可能存在相互协作或竞争关系。

  5. 异步性:每个进程按各自独立、不可预知的速度向前推进。

(三)七状态进程模型

  1. 状态划分:在传统就绪、阻塞状态基础上,新增就绪挂起、阻塞挂起状态,共七个状态(创建、就绪、运行、阻塞、就绪挂起、阻塞挂起、退出)。

  2. 新增状态的好处:

    1. 提高处理机效率:就绪进程表为空时,空闲内存可提交新进程。

    2. 为运行进程提供足够内存:资源紧张时,可将部分进程对换至外存。

    3. 有利于调试:挂起被调试进程,方便读写其地址空间。

  3. 状态转换核心规则:

    1. 挂起:将进程从内存转至外存。

    2. 就绪→就绪挂起:系统内存不足时,暂时将就绪进程保存到外存。

    3. 阻塞→阻塞挂起:进程长期阻塞时,暂时保存到外存。

    4. 就绪挂起状态:进程在外存,进入内存即可运行。

    5. 阻塞状态:进程在内存,等待某事件出现(如I/O操作完成、同步条件满足)。

    6. 运行→阻塞:进程需等待某个事件(申请系统服务、启动操作、新数据未到、无新工作可做等)。

    7. 运行→就绪:时间片超时等情况。

    8. 就绪→运行:调度程序分配CPU。

(四)进程控制原语

  1. 主要原语:创建进程、撤销进程、挂起进程、激活进程、阻塞进程、唤醒进程、改变进程优先级等。

  2. 进程创建过程:

    1. 申请空白PCB。

    2. 为新进程分配资源。

    3. 初始化进程控制块。

    4. 将新进程插入就绪队列(若队列可接纳)。

  3. 挂起方式:

    1. 调用者自身挂起(自挂起)。

    2. 挂起指定标识符的进程。

    3. 挂起指定标识符及其全部或部分子孙进程(需保存进程PCB副本至内存区)。

  4. 状态转换原语:使进程从阻塞态转换为挂起态的原语是suspend()。

(五)进程控制块(PCB)

  1. 组织方式:线性方法、索引方法、链接方法。

  2. 核心内容:

    1. 调度信息:供进程调度使用,包括进程名、进程号、存储信息、优先级、当前状态、资源清单、“家族”关系、消息队列指针、进程队列指针、当前打开文件等。

    2. 现场信息:刻画进程运行情况,记录可能被其他进程改变的寄存器(如程序状态字、时钟、界地址寄存器等)。

(六)程序并发执行特性

  1. 相互制约关系:并发程序执行期间存在依赖或竞争。

  2. 程序与计算不一一对应:一个程序可对应多个计算过程(进程)。

  3. 执行结果不可再现:相同输入可能因执行顺序不同导致不同输出。

(七)单核处理机进程状态数量限制

  1. 运行态进程:至多1个,最少0个。

  2. 就绪态进程:至多19个。

  3. 阻塞态进程:最多20个(系统发生死锁时,所有进程可能全部阻塞)。

(八)地址重定位

  1. 触发场景:用户程序请求执行时,存储管理为其分配合适内存空间。

  2. 核心目的:将程序中的逻辑地址转换为内存绝对地址,保证程序正确执行。

六、线程相关

(一)线程的资源特性

线程自身基本不拥有系统资源,仅拥有运行必需的少量资源(如程序计数器、一组寄存器、栈)。

(二)线程描述表

记录的私有信息:线程ID、指令地址寄存器、处理器寄存器、硬件设备寄存器、栈现场状态等。

(三)线程实现机制

  1. 用户级线程。

  2. 内核级线程。

  3. 混合实现方式。

七、响应比计算

响应比公式:

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐