1 操作系统基本概念

1.1 基本概念

1.1.1 概念

控制和管理整个计算机系统的硬件和软件资源,并合理地调度和组织计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合。

1.1.2 特征

  • 并发:多个事件在同一时间间隔内发生
  • 共享:资源共享,供内存中多个并发执行的进程共同使用。包括互斥共享和同时访问式共享。

以上二者是现代操作系统最基本的特征。此外还有:

  • 虚拟:把物理上实体转为逻辑上对应物
  • 异步:进程执行走走停停以不可预知的速度推进。

1.1.3 目标和功能

  • 计算机资源的管理者

    • 处理器管理:以线程为基本单位,避免冲突、合理共享。
    • 储存器管理:为多道程序的运行提供良好环境。
    • 文件管理:操作系统中该部分称为文件系统,包括空间、目录管理以及保护等
    • 设备管理:完成用户的IO请求,提高设备利用率
  • 用户和计算机硬件之间的接口

    • 命令接口:分为联机(交互式)和脱机(批处理)
    • 程序接口:由系统调用组成。用户使用这些系统调用命令实现系统服务。
    • 扩充机器:裸机+软件=扩充机器(虚拟机)

习题记录

B C D D D
B DxC D B CxB
CxA AxC A A A
BxD C D D

库函数和系统调用的区别:前者属于应用程序,后者属于操作系统。前者可以调用后者,但是不调用的情况下效率更高(因为会产生用户态和核心态的转换)。

1.2 发展和分类

1.2.1 手工操作

1.2.2 批处理阶段

  1. 单道批处理:自动性、顺序性、单道性。
  2. 多道批处理:宏观上并行,微观上串行。主要用于充分使用I/O设备,避免占用时的等待。

1.2.3 分时操作系统

关键是实时性,通过优先级和可抢占式的算法实现,基于时间片轮转。

  • 同时性、交互性、独立性

1.2.4 实时操作系统

及时性、可靠性。

1.2.5 网络操作系统、分布式系统

若干台计算机相互协同完成同一任务。

习题记录

D D C B CxA
AxD CxB AxC DxB D
C CxB C B BACD

1.3 运行环境

1.3.1 运行机制

操作系统分为用户态(目态)和核心态(管态)。
内核的主要作用为:

  1. 时钟管理:提供标准系统时间、实现进程切换(如分时系统的时间片轮转、实时系统按截止时间控制运行)
  2. 中断机制:只有一小部分功能属于内核,负责保护和回复终端现场的信息以及转移程序控制权。
  3. 原语:即最底层、具有原子性且调用频繁且用时很短的程序,如CPU切换、进程通信等。
  4. 系统控制的数据结构及处理,通过系统中用来等级状态信息的数据结构(进程控制块PCB、设备控制快、各种缓冲区等)来实现基本管理,如进程管理、存储器管理、设备管理。

1.3.2 中断和异常

用户态和核心态的切换主要通过中断和异常实现,底层硬件实现,如硬件标志位置位(用户态1)和复位(核心态0)

  • 中断Interruption:外中断,由外部设备发出,一般与当前运行程序无关,强制中断
  • 异常Exception:内中断、例外、Trap,分自行中断和强迫中断

1.3.3 系统调用

  • 主要包括:设备管理、文件管理、进程控制和通信、内存管理等。系统调用运行在核心态。
  • 主要步骤:用户进程执行(用户态)-进行系统调用-自陷-执行系统调用(核心态)-从系统调用返回
  • 常见从用户态转向核心态的情况:系统调用、发生中断、程序出错、程序试图执行特权指令。(特别的,访管指令是在用户态使用的,不属于特权指令)
  • 从用户态转向核心态,堆栈也会从用户堆栈转向系统堆栈
  • 从核心态转向用户态的情况:一般由中断返回指令(属于特权指令)进行。

1.4 操作系统体系结构

1.4.1 大内核、微内核

  • 大内核操作系统主要功能模块作为一个整体运行在核心态,包括进程管理、虚拟内存、IO设备管理、文件系统等,具有模块化特点,但代码复杂难以维护
  • 微内核操作系统将内核中最基本的功能保留在内核,将其他不需要在和心态至新的功能移动到用户态执行,从而降低内核设计复杂性。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容