【操作系统】操作系统概述总结——基本知识要点汇总

halo~我是bay_Tong桐小白
本文内容是桐小白个人对所学知识进行的总结和分享,知识点会不定期进行编辑更新和完善,了解最近更新内容可参看更新日志,欢迎各位大神留言、指点

【更新日志】

最近更新:

  • 暂时没有编辑记录,后续会持续完善优化
计算机统考408考纲要求

2021计算机统考408考纲数据结构学科考察目标

  • 掌握操作系统的基本概念、基本原理和基本功能、理解操作系统的整体运行过程
  • 掌握操作系统进程、内存、文件和I/O管理的策略、算法、机制以及相互关系
  • 能够运用所学的操作系统原理、方法与技术分析问题和解决问题,并能利用C语言描述相关算法

2021计算机统考408操作系统考纲变动情况
在这里插入图片描述

2021计算机统考408考纲对操作系统概述部分考察要求
在这里插入图片描述

操作系统的基本概念

操作系统的定义、目标、作用

定义: 一组控制和管理计算机硬件和软件资源,合理对各类作业进行调度,方便用户使用计算机的程序集合

  • 是扩充硬件(裸机)功能的第一层系统软件
  • 管理计算机硬件与软件资源
  • 提供用户与系统交互的操作界面
  • 计算机系统最基本和最重要的系统软件

目标: 方便性与有效性是操作系统最重要的两个目标

  • 方便性:方便用户使用计算机
  • 有效性:提高计算机系统资源利用率和系统的吞吐量
  • 可扩充性:以适应计算机硬件、体系结构以及应用发展的更新要求
  • 开放性:遵循世界标准规范,以能够彼此兼容,方便地实现互连,不同应用之间实现移植性和互操作性

作用:

  • 是用户与计算机硬件系统之间的接口
    在这里插入图片描述

     常见访问计算机系统的方式概述
     	系统调用方式(程序接口)
     		访问系统资源必须通过由操作系统提供的系统调用函数才可以访问系统资源
     	命令方式(命令接口)
     		通过操作系统提供的命令接口输入有关系统命令来获取服务,支持和控制用户程序的运行
     	图形、窗口方式
     		通过窗口或图标实现操作系统资源的访问,并取得相应的服务
    
  • 是计算机系统资源的管理者。对软硬件资源有序的管理,使各类资源得到充分有效的利用
    归纳起来这些资源可被分成四类操作系统提供给用户的可使用资源,即处理器、存储器、I/O设备、文件(数据和程序)

  • 实现了对计算机资源的抽象
    在这里插入图片描述

操作系统的基本特征(并发、共享、虚拟、异步)

操作系统的基本特征:并发、共享、虚拟、异步。并发和共享是操作系统两个最基本特征


并发

操作系统的并发性: 指计算机系统中同时存在多个运行的程序,具有处理和调度多个程序同时执行的能力

并发与并行的区分:

  • 并发:两个或多个事件在同一时间间隔内发生,即多任务处理。通过分时得以实现
    在这里插入图片描述
  • 并行:两个或多个事件在同一时刻发生,即多重处理。需要相关硬件支持,如多流水线或多处理机硬件环境【 PS:一个CPU可以采用多核架构,可以实现并行执行】
    在这里插入图片描述

进程的引入: 即一段程序的执行过程,是系统中能独立运行并作为资源分配的基本单位,由一组机器指令、数据和堆栈等组成

未引入进程
在这里插入图片描述
引入进程
在这里插入图片描述
能极大地提高系统资源的利用率,增加系统的吞吐量


共享

操作系统环境下的共享性: 称为资源共享或资源复用,指系统中的资源可供内存中多个并发执行的进程共同使用

根据资源属性不同,进程对资源复用的方式也不同,主要实现资源共享的方式有两种

  • 互斥共享方式: 一段时间内只允许一个进程使用,只有当前作业结束并释放后,才能允许其他作业使用,这样的方式为互斥式共享,这样的资源称为临界资源或独占资源
  • 同时访问方式: 可供多个作业在一段时间内宏观上同时访问,微观上交替地对该资源进行访问,即“分时共享”

并发和共享的关系:二者之间互为存在条件

  • 资源共享以程序的并发为条件
  • 若系统不能对资源共享实施有效的管理,则必将影响到程序的并发执行,甚至根本无法并发执行

虚拟

操作系统的虚拟: 把通过某种技术将一个物理实体变为若干逻辑上的对应物的功能称为虚拟

虚拟技术分类:

  • 时分复用技术: 通过利用处理机的空闲时间运行其他程序,提高处理机的利用率(即多道程序并发执行)。eg:虚拟处理机技术、虚拟设备技术
  • 空分复用技术: 每次只把用户程序的一部分调入内存运行,运行完成后将该部分换出,再换入另一部分到内存中运行。eg:虚拟存储器技术

PS:
在这里插入图片描述

  • 若采用分时复用方法,则每台虚拟设备的平均速度必然等于或低于物理设备速度的 1/N
  • 若利用空分复用方法,则每台虚拟设备平均占用的空间也必然等于或低于物理设备所拥有的空间的 1/N

异步

  • 内存中的每个进程,在何时能获得处理及运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需要多少时间才能完成等等,均不可预知,此即进程的异步性
  • 只要操作系统中配置有完善的进程同步机制,且运行环境相同,作业即便经过多次运行,也都会获得完全相同的结果

操作系统主要功能和提供的服务

负责系统中软硬件资源的管理,合理地组织计算机的工作流程;为用户提供一个良好的工作环境和友好的使用界面(即为用户提供访问系统的接口,用户通过接口来获取系统服务)

主要包含处理及管理、存储器管理、设备管理、文件管理、与用户间的接口等内容


处理机管理

处理机管理是操作系统的核心功能,对进程进行协调管理
在这里插入图片描述


存储器管理

为多道程序的运行提供良好的环境,提高存储器的利用率,方便用户使用,并能从逻辑上扩充内存

主要包括:内存分配、内存保护、地址映射、内存扩充等


设备管理

主要任务

  • 响应用户进程提出的I/O请求,为用户进程分配所需的I/O设备,完成指令的I/O操作
  • 提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用各种设备

主要包括:缓冲管理、设备分配、设备处理和虚拟设备等


文件管理

计算机中的信息均是以文件的形式存在,操作系统中负责文件管理的部分称为文件系统,主要对用户文件和系统文件进行挂你以方便用户使用,并保证文件的安全性

主要包括:文件存储空间管理、目录管理、文件操作管理、文件保护


与用户间的接口

为方便用户对计算机系统的使用和编程,操作系统向用户提供了用户接口,用户可以通过用户接口向操作系统请求特定的服务

主要包括用户接口(命令接口)、程序接口与图形接口

【图形接口在作业方式上,可以看作是用户接口,但实质是通过系统调用实现的功能,因而一般单独划分出来】

用户接口(命令接口): 系统提供一组命令供用户直接或间接操作
在这里插入图片描述
程序接口: 也称系统调用,是程序级别的接口,用户程序取得操作系统服务的唯一途径

用户程序通过 访管指令 请求操作系统服务,操作系统通过分析访管指令中的参数,调用相应的子程序为用户服务

作业、进程、程序的区别联系

在这里插入图片描述
详细相关知识内容见专业基础专栏文章《程序、进程、作业的联系》

操作系统的发展分类

无操作系统的计算机系统

人工操作系统: 启动的同时将程序和数据输入计算机,然后启动计算机运行,程序运行完毕并取走计算结果之后,才让下一个用户入机

缺点:

  • 用户独占全机:同一时间只能有一个用户独占计算机及其全部资源
  • CPU等待人工操作:执行过程中下一个操作必须等待上一个操作完成之后,这个时间CPU及内存等资源都是空闲的

脱机输入输出方式: 程序和数据的输入和输出都是在外围机的控制下完成的,不需要主机干涉(即脱机I/O)
在这里插入图片描述
优点:

  • 提高了CPU利用率,减少了CPU的空闲时间,缓和了人机矛盾
    程序输入输出由外围机完成,不占用主机时间,从而有效提高了CPU利用率
  • 提高了I/O速度,缓和CPU与I/O设备速度不匹配的矛盾
    数据从原先的低速设备在外围机的控制下装入到高速磁盘上,当CPU在运行中需要数据时可从高速的磁带或磁盘上将数据调入内存,极大地提高了I/O速度

批量处理系统

单道批处理系统: 在内存中仅有一道程序运行的情况下完成批量作业的处理,程序员需事先把程序的执行顺序规划好,启动后自动完成,无需人的干涉

主要特征:

  • 自动性:磁带上的一批作业能自动运行,无需人工干预
  • 顺序性:磁带上的各道作业按顺序地进入内存,先调入内存的作业先完成
  • 单道性:内存中只有一道程序运行

缺点:系统中资源得不到充分的利用,CPU利用率低


多道批处理系统: 允许多个程序同时进入内存,且允许多个程序共享系统中的各自软/硬件资源交替使用CPU。当一道程序因I/O请求而暂停运行时,CPU便立即转去运行其他道程序

前提条件:系统具有中断功能

特点:

  • 多道:计算机内存中同时存放多道相互独立的程序
  • 宏观上并行:同时进入系统的多道程序在同一时间间隔内都处于运行过程中
  • 微观上串行:内存中的多道程序轮流占有CPU,交替执行

主要优点(发展动力):

  • 资源利用率高:使各种资源得以充分利用(保持CPU忙碌状态;提高内存利用率;提高I/O设备利用率……)
  • 系统吞吐量大:CPU和其它资源保持忙碌状态;作业成批调入内存,仅当作业完成时或运行不下去时才进行切换,系统开销小(但要比单道系统开销大)
    【系统吞吐量:系统在单位时间内所完成的总工作量】

主要缺点:

  • 平均周转时间长:所有作业要按顺序排队处理,周转时间长
    【作业的周转时间:从作业进入系统开始,直至其完成并退出系统为止所用的时间】
  • 无交互能力:用户一旦把作业提交给系统,直至作业完成,用户不再参与作业的运行,对修改和调试程序极不方便

主要解决的问题:处理机争用问题、内存分配和保护问题、I/O设备分配问题、文件的组织和管理问题、作业管理问题、用户与系统接口问题等

分时操作系统

在这里插入图片描述

实时操作系统

在这里插入图片描述

网络操作系统与分布式操作系统

网络操作系统: 把计算机网络中的各台计算机有机结合起来实现数据传送

最主要特点:网络中各种资源共享、各台计算机之间的通信

拓:分布式计算机系统
在这里插入图片描述
分布式操作系统: 管理分布式计算机系统的操作系统叫做分布式操作系统

主要特点:分布性、并行性

分布式操作系统与网络操作系统的区别: 分布式操作系统中若干计算机相互协同完成同一任务

操作系统分类归纳以及其它操作系统

操作系统分类大体可进行如下主要归纳
在这里插入图片描述
其它操作系统:
在这里插入图片描述

操作系统的运行环境

核心态与用户态

计算机系统中CPU通常运行两种不同性质的程序:

  • 操作系统内核程序:是管理程序,执行一系列的特权指令
    (特权指令:是由操作系统内核使用的指令,用户程序不能执行。eg:I/O指令、设置中断屏蔽指令、清内存指令、存储保护指令、设置时钟指令等)
  • 用户自编程序(简称用户程序或应用程序):是应用程序,执行用户指令

为避免操作系统及其关键数据(如PCB进程控制块等)受到用户程序有意或无意的破坏,通常将处理器执行状态分为两种:核心态与用户态

核心态: 又称管态、系统态,是操作系统管理程序执行时机器所处的状态

具有较高的特权,能执行包括特权指令(也称广义指令)的一切指令,能访问所有寄存器和存储区

操作系统中,操作系统的内核包括一些与硬件关联较紧密的模块(如时钟管理、终端处理、设备驱动等)以及运行频率较高的程序(如进程管理、存储器管理、设备管理等)都工作在核心态

核心态指令实际上包括系统调用类指令和一些针对时钟、中断和原语的操作指令

用户态: 又称目态,是用户程序执行时机器所处的状态

具有较低特权,只能执行规定的指令,只能访问指定的寄存器和存储区

PS:

  • 两类程序以及各自的存储空间是严格被划分的,执行过程中,用户态程序不能直接调用核心态程序,必须通过执行访问核心态的指令(访管指令,也称陷入指令或trap指令),引起中断,再由中断系统转入操作系统内的相应程序
  • 用户态转向核心态,不仅状态要切换,所用的堆栈也可能需要用户堆栈切换为系统堆栈
  • 访管指令只能在用户态使用,它不是特权指令

系统运行时由用户态转到内核态的方式

系统调用: 系统调用可认为是用户进程主动发起的,是用户程序取得操作系统服务的唯一途径

凡是与资源相关的操作都必须通过系统调用方式向操作系统提出服务请求,并由操作系统内核程序使用某些特权指令负责完成

系统调用发起用户态向内核态的完整转换过程:

  • 用户程序传递系统调用参数
  • 执行访管指令(即陷入指令或trap指令),使CPU的状态由用户态变为核心态
  • 之后由操作系统内核程序再对系统调用请求做出相应处理,执行相应的服务程序
  • 处理完成后,操作系统内核程序再把CPU的使用权还给用户程序,即CPU状态从核心态返回用户态

中断: 通常指外中断,即CPU执行指令之外的,与当前处理机运行的程序无关的事件发生的中断,是被动的
在这里插入图片描述
补:外部中断的执行过程
在这里插入图片描述

异常: 通常指内中断,指源自CPU执行指令内部的事件,是被动的。eg:程序的非法操作码、地址越界、算术溢出、虚存缺页、专门的陷入指令等引起的事件

中断异常相关知识内容详细可见计算机组成原理专栏文章《输入输出(I/O)系统总结——基本知识要点汇总》

操作系统的体系结构

在这里插入图片描述
此部分内容与软件体系结构相似,详细知识内容可见专业基础专栏文章《软件体系结构基础》

持续更新中……
我是桐小白,一个摸爬滚打的计算机小白

猜你喜欢

转载自blog.csdn.net/bay_Tong/article/details/113714370