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

操作系统是计算机系统中最基本的软件,控制管理硬件和软件资源,提供并发、共享、虚拟和异步等特性。它作为用户与硬件间的接口,通过系统调用和图形界面增强用户交互。操作系统发展历程包括手工操作、批处理、分时和实时系统。操作系统通过时钟管理、中断机制等运行,其体系结构分为大内核和微内核。
摘要由CSDN通过智能技术生成

基本概念

操作系统OS是指
1、控制和管理整个计算机系统的硬件与软件资源,合理的组织、调度计算机的工作与资源的分配
2、为用户提供方便的接口和环境的程序的集合

同时它也是计算机系统中最基本的软件系统

特征

并发

并发是指两个或多个事件在同一时间间隔内发生。

  • 宏观上同时发生
  • 微观上交替发生
    应当注意的是cpu在同一时刻只能处理一个程序
    这一特性是通过分时实现的。

共享

共享是指系统中的资源可供内存中多个并发执行的进程使用。
1、互斥共享方式
系统中的一些资源,虽然可供多个进程使用,但它们在一段时间内只允许一个进程访问该资源。这类资源被称为临界资源。

2、同时访问方式
系统中的另一类资源允许在一段时间内由多个进程“同时”访问,但这里的“同时”是发生在宏观上的,微观上依旧是只有一个进程访问。
同时访问共享通常要求一个请求分几个时间片段间隔的完成,其效果与连续完成的效果相同

并发与共享的关系

并发与共享是操作系统两个最基本的特征。两者之间互为存在的条件:

  • 资源的共享是以程序的并发为条件的。没有程序的并发执行,自然不存在资源共享的问题。
  • 系统无法对资源共享实施有效的管理,必然会影响到程序的并发执行,甚至根本无法并发执行。

虚拟

虚拟是指把一个物理上的实体变为若干逻辑上的对应物。

利用时分复用技术和多道程序设计技术可以把一个物理上的CPU虚拟为多个逻辑上的CPU,即虚拟处理器

利用空分复用技术可以在逻辑上扩充存储器的容量,即虚拟存储器

虚拟这一特性是建立在并发和共享的基础上的。

异步

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

异步性的产生也是由于异步和共享。

目标与功能

操作系统,上接用户和运行程序,下接基本硬件。因此,操作系统要

  • 作为硬件和用户之间的接口;
  • 要扩充硬件的功能。
    为了实现这些功能,操作系统应当对计算机资源有着有效的管理。

计算机系统资源的管理者

1、处理机CPU管理
2、存储器管理
3、文件管理
4、设备管理

用户与计算机硬件系统之间的接口

1、命令接口

  • 联机命令接口(交互式命令接口):
    交互性高,输入一条命令,执行一条。
  • 脱机命令接口(批处理命令接口):
    输入一组作业控制命令,执行一组命令。用户不可以直接干预作业的进行。

2、程序接口
由一组**系统调用(广义指令)**组成。

图形用户界面GUI,即图形接口,最终还是通过调用程序接口实现的。
其不是操作系统的一部分,但其所调用的系统调用命令是操作系统的一部分。

用作扩充机器

操作系统将裸机改造成功能更强、使用更加方便的机器,覆盖完软件的机器被称为扩充机器或虚拟机

OS的发展与分类

手工操作阶段

  • 用户独占全机,资源利用率低
  • CPU等待手工操作,CPU利用率低。

要解决人机速度矛盾。

批处理阶段

单道批处理系统

解决

  • 人机速度矛盾
  • CPU与I/O设备速率不匹配

1、自动性
2、顺序性
3、单道性

出现监督程序,OS雏形。

多道批出理系统

多道,宏观上并行,微观上串行。

优点:

  • 资源利用率高
  • 系统吞吐量大

缺点:

  • 用户响应时间较长
  • 不提供人机交互能力

分时操作系统

把处理器的运行时间分成很短的时间片,再按时间片轮流把处理器分配给各个联机作业使用。
1、同时性
2、交互性
3、独立性
4、及时性
缺点:一些特殊的场合,要求系统对外界信号在规定时间内及时处理

实时操作系统

  • 硬实时系统
  • 软实时系统

运行环境

OS运行机制

两种指令:

  • 特权指令:如内存清零指令
  • 非特权指令:如普通的运算指令

两中处理器状态:依靠CPU内部的程序状态字寄存器PSW某个标志位,0:用户态;1:核心态。

  • 核心态(管态):特权指令,非特权指令均可,trap指令除外。
  • 用户态(目态):只有非特权指令

两种程序:

  • 操作系统内核程序
  • 用户自编程序(应用程序)

操作系统的各个功能被分别放置在不同的层次:

  • 与硬件关联紧密的在最底层,如时钟管理、中断机制、设备驱动(原语
  • 其次是运行频率较高的程序,如进程管理、存储器管理、设备管理

时钟管理

时钟可以计时,这意味着其可以把控进程运行的时间。
故而通过时钟中断都管理,可以实现进程的切换,即分时操作系统中的时间片轮转调度。

中断机制

引入中断机制的初衷是提高多道程序运行环境中CPU的利用率
发展后成为操作系统各项操作的基础
现代操作系统是依靠中断驱动的软件。
中断机制中,只有一小部分功能属于内核,它们负责保护和恢复中断现场的信息,转移控制权到相关的处理程序。

原语

原语是有着以下3个特点的共用小程序

  • 处于操作系统底层,是最接近硬件的部分
  • 运行具有原子性,即操作只能一气呵成
  • 运行时间较短,且运行频繁

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

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

  • 进程管理
  • 存储器管理
  • 设备管理

中断与异常的概念

中断是处理器从用户态进入核心态的唯一途径。

1、发生中断或异常后,运行在用户态的CPU会立即进入核心态,这一过程由硬件完成

2、中断发生后,当前运行的程序暂停运行,并由操作系统内核对中断进行处理

3、不同的中断信号,进行不同的处理

中断与异常的定义

中断是个广义的概念,它有两种分类:

  • 异常(内中断)
    1、abort:程序中的非法操作码、地址越界、算术溢出
    2、fault:虚存系统的缺页
    3、trap:陷入指令
    可归结为与当前执行指令有关
  • 中断(外中断)
    可归结为与当前执行指令无关

中断处理的过程

1、关中断:保护程序的现场状态
2、保存断点:保存原程序的程序计数器PC
3、引出中断服务程序:取出中断服务·程序的入口地址到PC
这三步均由硬件完成
4、保存现场和屏蔽字:现场信息一般指程序状态字寄存器和某些通用寄存器中的内容,这些是由操作系统保存的
5、开中断
6、执行中断服务程序
7、关中断
8、恢复现场和屏蔽字
9、开中断、中断返回:中断服务程序的最后一条指令通常是中断返回程序,即回到原程序的断点处,以便继续执行原程序。

系统调用(广义指令)

我们已经知道了,OS作为用户、程序二者与硬件之间的接口,需要提供一些便利的服务。

用户接口中的程序接口便是一组系统调用。

系统调用大致可以分为以下几个大类:

  • 设备管理
  • 文件管理
  • 进程管理
  • 进程通信
  • 内存管理
    显然,这些类别都涉及了资源的管理,故而系统调用需要特权指令才能完成,进行系统调用时操作系统内核程序应当运行在核心态

用户程序可以通过trap指令发起系统调用,请求操作系统提供服务。

明显的,trap指令是唯一一个只能在用户态而不能在核心态执行的指令。

系统调用可以被视为“特殊”的函数,它与高级语言中的库函数是有区别的。

  • 一部分库函数的实现是依靠系统调用的

由用户态进入核心态,不仅状态需要切换,所用的堆栈也可能由用户堆栈切换为系统堆栈,但这个系统堆栈也是属于该进程的

OS的体系结构

大内核与微内核

1、大内核
由时钟管理、中断机制、原语、系统控制的数据结构及处理组成。
优点:高性能
缺点:内核代码混乱,难以维护

2、微内核
由时钟管理、中断机制、原语组成
优点:分离内核与服务、服务与服务,保证操作系统的可靠性
缺点:需要频繁的在用户态与核心态之间转换。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值