操作系统期末复习知识点

  • 格式:docx
  • 大小:26.25 KB
  • 文档页数:5

操作系统期末复习知识点

操作系统是管理计算机硬件与软件资源的系统软件,同时也是计算机系统的内核与基石。以下是操作系统期末复习的一些重要知识点。

一、操作系统的概念和功能

操作系统是控制和管理计算机系统内各种硬件和软件资源,合理地组织计算机工作流程,以便有效地利用这些资源为用户提供一个功能强大、使用方便和可扩展的工作环境,在计算机与用户之间起到接口的作用。

其主要功能包括:

1、 进程管理:负责进程的创建、调度、终止等操作,确保进程能够合理地共享 CPU 资源。

2、 内存管理:管理计算机内存的分配、回收和保护,提高内存的利用率。

3、 文件管理:实现对文件的存储、检索、更新和共享等操作。

4、 设备管理:对输入输出设备进行有效的分配、控制和调度。

5、 提供用户接口:包括命令接口和程序接口,方便用户与计算机进行交互。

二、进程管理 进程是程序的一次执行过程,是操作系统进行资源分配和调度的基本单位。

进程的状态包括:就绪、运行、阻塞。进程状态的转换是由操作系统根据资源的可用性和进程的需求进行控制的。

进程调度算法有先来先服务(FCFS)、短作业优先(SJF)、时间片轮转(RR)、优先级调度等。每种算法都有其特点和适用场景。

例如,先来先服务算法按照进程到达的先后顺序进行调度,简单公平,但可能导致短作业等待时间过长;短作业优先算法优先调度执行时间短的作业,能有效减少平均等待时间,但可能对长作业不利。

进程同步与互斥是多进程环境下的重要问题。互斥是指多个进程不能同时访问同一临界资源,同步则是指多个进程在执行顺序上存在依赖关系。

实现进程同步与互斥的方法有信号量机制、管程等。

三、内存管理

内存管理的主要任务是为程序分配内存空间,并保证内存的高效利用和保护。

内存分配方式有连续分配和离散分配。连续分配包括单一连续分配和分区分配,离散分配则有分页存储管理、分段存储管理和段页式存储管理。 分页存储管理将内存空间划分为固定大小的页面,分段存储管理则按照程序的逻辑结构将其划分为不同的段,段页式存储管理结合了分页和分段的优点。

内存保护是防止一个进程访问另一个进程的内存空间,常见的方法有地址越界检查和访问权限控制。

虚拟内存技术使得程序可以在比实际物理内存大的空间中运行,通过将部分暂时不用的数据换出到外存,提高了内存的利用率。

四、文件管理

文件是一组相关信息的集合,具有文件名、文件类型、文件长度等属性。

文件的逻辑结构有流式文件和记录式文件。流式文件是无结构的字节序列,记录式文件则由若干条逻辑记录组成。

文件的物理结构包括连续文件、链接文件和索引文件。连续文件存储空间连续,便于顺序访问,但不利于文件的增长和删除;链接文件通过指针将文件的各个部分连接起来,便于文件的扩展,但随机访问效率较低;索引文件则通过索引表来加快文件的访问速度。

文件目录用于管理文件,其结构有单级目录、两级目录和多级目录。目录项包含文件名、文件属性和文件在磁盘上的存放位置等信息。

文件共享和文件保护也是文件管理的重要方面。文件共享允许多个用户同时访问同一个文件,文件保护则确保文件的安全性和完整性。 五、设备管理

设备管理的主要任务是对输入输出设备进行分配、控制和调度,提高设备的利用率和系统的性能。

设备分为字符设备和块设备。字符设备以字符为单位进行数据传输,如键盘、打印机;块设备以数据块为单位进行传输,如磁盘。

设备分配采用的算法有先来先服务、优先级高者优先等。

设备驱动程序是操作系统与设备之间的接口,负责将上层的设备操作请求转换为具体的硬件操作。

缓冲技术用于缓解 CPU 与 I/O 设备速度不匹配的问题,常见的缓冲区有单缓冲、双缓冲和循环缓冲。

六、操作系统的接口

操作系统为用户提供了命令接口和程序接口。

命令接口包括联机命令接口和脱机命令接口。联机命令接口允许用户通过终端输入命令与系统进行交互,脱机命令接口则通过作业控制语言来控制作业的执行。

程序接口是系统为用户程序提供的一组系统调用,用户程序通过调用这些系统调用来获取操作系统的服务。

七、死锁

死锁是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将无法向前推进。 产生死锁的必要条件有互斥条件、请求和保持条件、不剥夺条件和环路等待条件。

死锁的预防可以通过破坏产生死锁的必要条件来实现,如摒弃请求和保持条件、摒弃不剥夺条件等。

死锁的避免则通过银行家算法等进行资源分配的安全性检查。

死锁的检测和解除则是在系统已经发生死锁的情况下,通过检测算法找出死锁进程,并采取相应的解除措施,如剥夺资源、撤销进程等。

八、分布式操作系统和嵌入式操作系统

分布式操作系统是运行在分布式计算机系统上的操作系统,具有分布性、并行性、透明性和可靠性等特点。

嵌入式操作系统则是运行在嵌入式设备中的操作系统,具有体积小、实时性强、可裁剪等特点。