操作系统——计算机系统概述

一、计算机系统基本概念

操作系统概念

操作系统(Operating System,OS) 是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。

操作系统特征

并发

并发 : 指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的

同一时间间隔(并发)和同一时刻(并行)的区别:在多道程序环境下,宏观上有多道程序在同时执行,而每个时刻,单处理机环境下只有一道程序在执行。

操作系统的并发性指计算机系统中同时存在着多个运行着的程序,通过分时得以实现。

共享

共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。

所谓的“同时”往往是宏观上的,而在微观上,这些进程可能是交替地对该资源进行访问的(即分时共享)

在这里插入图片描述

虚拟

虚拟是指把一-个物理上的实体变为若千个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。

在这里插入图片描述

异步

异步是指,在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。

操作系统的目标和功能

系统资源管理者
在这里插入图片描述
用户与计算机硬件之间的接口
在这里插入图片描述
命令接口 :允许用户直接调用。联机命令接口(说一句做一句),脱机命令接口(说一堆做一堆)。
程序接口 :通过程序间接调用,由一组系统调用组成(程序接口=系统调用)

用作扩充机器

在这里插入图片描述

二、操作系统的发展和分类

手工操作阶段

用户在计算机上的所有工作都要人工干预。

缺点:用户独占全机,资源利用率低。CPU等待手工操作,利用不充分。

批处理阶段

引入脱机输入/输出技术(用磁带完成),并监督程序负责控制作业的输入、输出(操作系统的雏形)。

单道批处理系统

缓解了一定程度的人机速度矛盾,资源利用率有所提升。

主要缺点 : 内存中仅能有一道程序运行,只有该程序运行结束之后才能调入下一道程序。CPU有大量的时间是在空闲等待I/O完成。

多道批处理系统

在这里插入图片描述

多道程序并发执行,共享计算机资源。资源利用率大幅提升,CPU和其他资源保持“忙碌”状态,系统吞吐量增大。

主要缺点 : 用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行)。

分时操作系统

计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。

主要优点 : 用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机。

缺点 : 不能优先处理一些紧 急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。

实时操作系统

在这里插入图片描述

其他的操作系统

网络操作系统

是伴随着计算机网络的发展而诞生的,能把网络中各个计算机有机地结合起来,实现数据传送等功能,实现网络中各种资源的共享( 如文件共享)和各台计算机之间的通信。

分布式操作系统

主要特点是分布性和并行性。系统中的各台计算机地位相同,任何工作都可以分布在这些计算机上,由它们并行、协同完成这个任务。

个人计算机操作系统

如Windows 、MacOS。

三、操作系统运行环境

机制

两种指令

简单来说,“指令” 就是处理器(CPU)能识别、执行的最基本命令。

指令分为两种:特权指令,如内存清理指令和非特权指令,如加减法指令。前者不允许用户程序使用。

计算机指令和我们写的代码区别 :一条高级语言的代码翻译过来可能会对应多条指令

两种处理器状态

在这里插入图片描述
两种程序

在这里插入图片描述

操作系统内核

内核就是计算机上配置的底层软件,是操作系统最基本最核心的内容。实现内核功能的程序就是内核程序。

在这里插入图片描述

时钟管理

第一功能计时,需要通过时间管理,向用户提供标准的系统时间。通过时钟中断的管理,可以实现进程的切换。

例如 : 在分时操作系统使用时间片轮转调度,在批处理系统通过时钟管理衡量一个作业的运行程度。

中断机制

提高多道程序运行环境中CPU的使用率。中断机制中一小部分功能属于内核,它们负责保护和恢复中断现场的信息,转移控制权到相关程序。

原语

是底层可被调用的公有小程序。

  • 处于最底层,最接近硬件的部分
  • 程序运行具有原子性
  • 运行时间较短,且较为频繁

定义原语的直接方法就是关闭中断,让其所有动作不可分割的完成后在打开中断

系统控制的数据结构及处理

系统用来登记状态信息的数据结构很多,如作业控制块,进程控制块,各类链表,消息队列等。常见操作有以下三种 :

  • 进程管理 : 进程的状态管理,调度,分派,创建和撤销进程控制块
  • 存储器管理 : 存储器的空间分配回收,内存信息的保护程序
  • 设备管理 : 缓冲区管理,设备的分配和回收等。

中断和异常的概念

在这里插入图片描述

  • 当中断发生时,CPU立即进入核心态
  • 当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
  • 对于不同的中断信号,会进行不同的处理

发生中断意味着,需要操作系统介入,开展管理作用。

用户态→核心态,唯一途径是 中断,核心态→用户态的切换是通过执行一个特权命令。将程序状态字(PSW)的标志位设置为用户态

由于操作系统的管理工作(比如进程切换、分配I/O设备等)需要使用特权指令,因此CPU要从用户态转为核心态。中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行。

注意 : 对于异常的处理无法被屏蔽,要依赖于当前程序的运行现场。

外中断的处理过程

在这里插入图片描述

  1. 关中断

CPU响应中断后,首先要保护现场,不能响应更高级的中断请求

  1. 保存断点

将程序断点,即程序计数器PC保存起来

  1. 引出中断服务程序

实质是取出中断服务程序的入口地址送入程序计数器PC

  1. 保存现场和屏蔽字

进入程序中断服务后,首先要保存现场,一般指程序状态字寄存器PSWR和某些通用寄存器的内容

  1. 开中断

允许更高级的中断请求得到响应

  1. 执行中断服务程序

就是程序中断的目的

  1. 关中断

保证在恢复现场和屏蔽字时不被中断

  1. 恢复现场和屏蔽字

将现场和屏蔽字恢复到原来状态

  1. 开中断,中断返回

中断返回指令,返回到原程序的断点处,以便继续执行

系统调用

系统调用就是用户在程序中调用操作系统提供的一些子功能。

系统中的各种共享资源都由操作系统统一掌管, 因此在用户程序中,凡是与资源有关的操作(如存储分配、I/0操作、 文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以保证系统的稳定性和安全性

在这里插入图片描述

传递系统调用参数→执行陷入指令(用户态)→执行系统调用相应服务程序(核心态)→返回用户程序
在这里插入图片描述

注意:陷入指令是在用户态执行的,执行陷入指令之后立即引发一个内中断。发出系统调用请求是在用户态,而对系统调用的相应处理在核心态下进行。陷入指令是唯一个只能在用户态执行,而不可在核心态执行的指令。

在这里插入图片描述

四、 操作系统的体系结构

### 大内核和微内核

猜你喜欢

转载自blog.csdn.net/weixin_45605341/article/details/112762620