《王道操作系统》学习笔记:计算机系统概述

一、计算机系统概述

1、操作系统的概念、功能和目标

1)、概念

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

2)、功能和目标

在这里插入图片描述

1)作为系统资源的管理者

进程是一个程序的执行过程。执行前 需要将该进程放到内存中 ,才能被CPU处理

提供的功能 :处理机管理、存储器管理、文件管理、设备管理

目标 :安全、高效

在这里插入图片描述

2)作为用户和计算机硬件之间的接口

提供的功能 

  • 命令接口 :允许用户 直接使用 ,命令接口又分为 联机命令接口(又叫交互式命令接口,例如windows的cmd) 和 脱机命令接口(又叫批处理命令接口,例如windows的 *.bat 文件)
  • 程序接口 :允许用户通过程序 间接使用 ,由一组系统调用组成,例如windows的 .dll 文件
  • GUI :图形用户界面

目标 :方便用户使用

在这里插入图片描述

3)作为最接近硬件的层次

没有任何软件支持的计算机称为 裸机 。在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器

2、操作系统的四个特征

操作系统的四个特征:并发、共享、虚拟、异步

1)、并发

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

并行 :指两个或多个事件在同一时刻同时发生

一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行

2)、共享

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

在这里插入图片描述

3)、虚拟

虚拟 是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体是实际存在的,而逻辑上对应物是用户感受到的

在这里插入图片描述

4)、异步

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

3、操作系统的发展与分类

1)、手工操作阶段

在这里插入图片描述

2)、批处理阶段

1)单道批处理系统

在这里插入图片描述

2)多道批处理系统

在这里插入图片描述

3)、分时操作系统

在这里插入图片描述

4)、实时操作系统

在这里插入图片描述

在这里插入图片描述

4、操作系统的运行机制与体系结构

1)、什么是指令

在这里插入图片描述

一条高级语言的代码翻译过来可能会对应多条指令雅思网上报名

指令 就是处理器(CPU)能识别、执行的最基本命令

2)、运行机制

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3)、操作系统内核

在这里插入图片描述

内核 是计算机配置的底层软件,是操作系统最基本、最核心的部分

实现操作系统内核功能的那些程序就是 内核程序

在这里插入图片描述

4)、操作系统的体系结构

在这里插入图片描述

5、中断和异常

1)、中断机制的诞生

在这里插入图片描述

为了解决上述问题,人们发明了操作系统,引入中断机制,实现了多道程序并发执行。只要发生了中断就意味着需要操作系统介入,开展管理工作

进程1 

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

进程2 

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2)、中断机制的概念和作用

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

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

用户态、核心态之间的切换是怎么实现的 

  • 用户态->核心态是通过中断实现的,并且中断是唯一途径
  • 核心态->用户态的切换是通过执行一个特权指令,将程序状态字(PSW)的标志位设置为用户态

3)、中断的分类

在这里插入图片描述

在这里插入图片描述

4)、外中断的处理过程

在这里插入图片描述

CPU执行完每个指令之后,CPU都要检查当前是否有外部中断信号

在这里插入图片描述

如果检测到外部中断信号,则需要保护被中断进程的CPU环境(如程序状态字PSW、程序计数器PC、各种通用寄存器)

在这里插入图片描述

根据中断信号类型转入相应的中断处理程序

在这里插入图片描述

恢复原进程的CPU环境并退出中断,返回原进程继续往下执行

6、系统调用

1)、什么是系统调用

在这里插入图片描述

在这里插入图片描述

2)、系统调用与库函数的区别

在这里插入图片描述

3)、系统调用背后的过程

在这里插入图片描述

在这里插入图片描述

传递系统调用参数->执行陷入指令( 用户态 )->执行系统调用相应服务程序( 核心态 )->返回用户程序

注意 

  • 陷入指令 是在 用户态 执行的,执行陷入指令之后立即引发一个 内中断 ,从而CPU进入 核心态
  • 发出系统调用请求 是在 用户态 ,而 对系统调用相应处理在核心态 下进行
  • 陷入指令是唯一一个只能在用户态执行,而不可在核心态执行的指令
原文地址:https://www.cnblogs.com/huilixieqi/p/13749317.html