《计算机操作系统》MOOC笔记1-计算机系统概论

课程地址

南京大学的骆斌老师主讲的,考研可能会用得上

计算机系统的组成

  • 计算机系统:包括硬件子系统和软件子系统
  • 硬件:借助电、磁、光、机械等原理构成的各 种物理部件的有机组合,是系统工作的实体
  • CPU,主存储器,I/O控制系统,外围设备
  • 软件:各种程序和文件,用于指挥计算机系统 按指定的要求进行协同工作

包括系统软件、支撑软件和应用软件
关键系统软件是:操作系统与语言处理程序

计算机系统的用户视图

计算机硬件系统组成

  • 中央处理器

运算单元 控制单元 :解译机器指令

  • 主存储器
  • 外围设备

输入设备 输出设备 存储设备 网络通信设备

  • 总线

存储程序计算机体系结构


存储器是这个模型的核心

  • 以运算单元为中心,控制流由指令流产生
  • 采用存储程序原理,面向主存组织数据流
  • 主存是按地址访问、线性编址的空间
  • 指令由操作码和地址码组成
  • 数据以二进制编码

总线

  • 总线(Bus)是计算机各种功能部件之间传 送信息的公共通信干线,它是CPU、内存、 输入输出设备传递信息的公用通道
  • 计算机的各个部件通过总线相连接,外围设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统
  • 按照所传输的信息种类,总线包括一组控制线、一组数据线和一组地址线
  • 内部总线:用于CPU芯片内部连接各元件
  • 系统总线:用于连接CPU、存储器和各种 I/O模块等主要部件
  • 通信总线:用于计算机系统之间通信(网络)

    为了加快通信效率,系统总线也是分级的,PCI连接块设备(较快),E(ISA)总线连接字符设备(较慢)。

中央处理器(CPU)

中央处理器是计算机的运算核心(Core)和 控制单元( Control Unit),主要包括:

  • 运算逻辑部件:一个或多个协运算器
  • 寄存器部件:包括通用寄 存器、控制与状态寄存器,以及高速缓冲存储器(Cache)
  • 控制部件:实现各部件间联系的数据、控制及状态的内部总线;负责对指令译码、 发出为完成每条指令所要执行操作的控制信号、实现数据传输等功能的部件

存储器


L0 L1 L2 L3 L4都是挥发性存储,加电存储,断电失效

外围设备

  • 设备类型

输入设备 输出设备 存储设备 机机通信设备(本质上属于输入输出设备,但是不同网络设备块大小不一致(包,块,字))

  • 设备控制方式

轮询方式:CPU忙式控制+数据交换
中断方式:CPU启动外围设备/中断+数据交换
DMA方式:CPU启动/中断,DMA独立进行数据交换

软件系统组成

  • 系统软件:操作系统、实用程序、语言处理程 序、数据库管理系统

操作系统实施对各种软硬件资源的管理控制
实用程序为方便用户所设,如文本编辑等
语言处理程序把用汇编语言/高级语言编写 的程序,翻译成可执行的机器语言程序

  • 支撑软件有接口软件、工具软件、环境数据库, 支持用户使用计算机的环境,提供开发工具
  • 应用软件是用户按其需要自行编写的专用程序

软件开发的不同层次

  • 计算机硬件系统:机器语言
    -操作系统之资源管理:机器语言+广义指令(扩充了硬件资源管理)
  • 操作系统之文件系统:机器语言+系统调用(扩充了信息资源管理)
  • 数据库管理系统:+数据库语言(扩充了功能更强的信息资源管理)
  • 语言处理程序:面向问题的语言

计算机程序的执行过程

操作系统的概念

OS是计算机系统最基础的系统软件,管理软硬件 资源、控制程序执行,改善人机界面,合理组织计 算机工作流程,为用户使用计算机提供良好运行环 境

  • 从用户角度看,OS管理计算机系统的各种 资源,扩充硬件的功能,控制程序的执行
  • 从人机交互看,OS是用户与机器的接口, 提供良好的人机界面,方便用户使用计算机, 在整个计算机系统中具有承上启下的地位
  • 从系统结构看,OS是一个大型软件系统, 其功能复杂,体系庞大,采用层次式、模块 化的程序结构
  • 操作系统组成

进程调度子系统
进程通信子系统
内存管理子系统
设备管理子系统
文件管理子系统
网络通信子系统
作业控制子系统

  • 从操作控制方式分类

多道批处理操作系统,脱机控制方式
分时操作系统,交互式控制方式
实时操作系统

  • 从应用领域分类

服务器操作系统、并行操作系统
网络操作系统、分布式操作系统
个人机操作系统、手机操作系统
嵌入式操作系统、传感器操作系统

计算机的资源

-硬件资源 处理器、内存、外设

  • 信息资源 数据、程序

资源的共享与分配方式

  • 资源共享方式

独占使用方式
并发使用方式

  • 资源分配策略

静态分配方式
动态分配方式
资源抢占方式

多道程序同时计算

  • CPU速度与I/O速度不匹配的矛盾,非常突出
  • 只有让多道程序同时进入内存争抢CPU运行,才 可以够使得CPU和外围设备充分并行,从而提高 计算机系统的使用效率
  • 多道程序设计的特点

CPU与外部设备充分并行
外部设备之间充分并行
发挥CPU的使用效率
提高单位时间的算题量

  • 多道程序的实现

为进入内存执行的程序建立管理实体:进程
如何使用资源:调用操作系统提供的服务例程(如何陷入操作系统)
如何复用CPU:调度程序(在CPU空闲时让其他程序运行)
如何使CPU与I/O设备充分并行:设备控制器与通 道(专用的I/O处理器)
如何让正在运行的程序让出CPU:中断(中断正在 执行的程序,引入OS处理)

计算机的操作方式

OS规定了合理操作计算机的工作流程
OS的操作接口——系统程序 OS提供给用户的功能级接口,为用户提供的解决操作计算机和计算共性问题的所有服务的集合
OS的两类作业级接口

  • 脱机作业控制方式:作业控制语言
  • 联机作业控制方式:操作控制命令

脱机作业的控制方式

  • OS:提供作业说明语言
  • 用户:编写作业说明书,确定作业加工控制步骤, 并与程序数据一并提交
  • 操作员:通过控制台输入作业
  • OS:通过作业控制程序自动控制作业的执行
  • 例:批处理OS的作业控制方式,UNIX的shell程序, DOS的bat文件

联机作业控制方式

  • 计算机:提供终端(键盘/显示器)
  • 用户:登录系统
  • OS:提供命令解释程序
  • 用户:联机输入命令,直接控制作业步的执行
  • 例:分时OS的交互控制方式

命令解释程序

  • 命令解释程序:接受和执行一条用户提 出的对作业的加工处理命令
  • 当一个新的批作业被启动,或新的交互 型用户登录进系统时,系统就自动地执行命令解释程序,负责读入控制卡或命令行,作出相应解释,并予以执行
  • 会话语言:可编程的命令解释程序 (shell)
  • 图形化的命令控制方式
  • 多通道交互的命令控制方式

命令解释程序的处理过程

  • OS启动命令解释程序,输出命令提示符,等待键盘中断/鼠标点击/多通道识别
  • 每当用户输入一条命令(暂存在命令缓冲区)并 按回车换行时,申请中断
  • CPU响应后,将控制权交给命令解释程序, 接着读入命令缓冲区内容,分析命令、接受 参数,执行处理代码
  • 前台命令执行结束后,再次输出命令提示符, 等待下一条命令
  • 后台命令处理启动后,即可接收下条命令

操作系统的程序接口

操作系统的程序接口——系统调用
操作系统实现的完成某种特定功能的过程;为所有 运行程序提供访问操作系统的接口
系统调用的实现机制

  • 陷入处理机制:计算机系统中控制和实现系统调用 的机制
  • 陷入指令:也称访管指令,或异常中断指令,计算机系统为实现系统调用而引起处理器中断的指令
  • 每个系统调用都事先规定了编号,并在约定寄存器 中规定了传递给内部处理程序的参数

系统调用实现:

  • 编写系统调用处理程序
  • 设计一张系统调用入口地址表,每个入口地址指向 一个系统调用的处理程序,并包含系统调用自带参 数的个数
  • 陷入处理机制需开辟现场保护区,以保存发生系统调用时的处理器现场

操作系统的系统结构

-OS构件 内核、进程、线程、管程等

  • 设计概念 模块化、层次式、虚拟化
  • 内核设计是OS设计中最为复杂的部分

操作系统内核

  • 单内核:内核中各部件杂然混居的形态,始 于1960年代,广泛使用;如Unix/Linux,及 Windows(自称采用混合内核的CS结构)
  • 微内核:1980年代始,强调结构性部件与功 能性部件的分离,大部分OS研究都集中在此
  • 混合内核:微内核和单内核的折中,较多组 件在核心态中运行,以获得更快的执行速度
  • 外内核:尽可能减少内核的软件抽象化和传 统微内核的消息传递机制,使得开发者专注 于硬件的抽象化;部分嵌入式系统使用
  • 层次结构

操作系统的规模

  • 在计算机软件发展史上,OS是第一个大规模的软件系统
  • 1960年代,由OS开发所衍生的体系结构、模块化 开发、测试与验证、演化与维护等研究,直接催生 了软件工程这一新兴研究领域(另一个催生来源是 DB应用引发的需求与规格)
原文地址:https://www.cnblogs.com/kiwibird/p/5616895.html