01 计算机系统的概述

第1章 计算机系统的概述

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

1.操作系统的概念

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

2.操作系统的功能和目标

在这里插入图片描述

  • 系统资源的管理者:功能有文件管理存储器管理处理机(CPU)管理设备管理,目标是安全高效
  • 用户和计算机硬件之间接口:功能有命令接口(联机命令接口和脱机命令接口,区别在于用户说一句,os做一句(联机),用户说一堆,os做一堆(脱机))、程序接口(用户通过程序间接使用,等价于系统调用)、GUI,目标是方便用户使用
  • 最接近硬件的层次:实现对硬件机器的扩展

3.总结

在这里插入图片描述

1.1.2 操作系统的特征

四大基本特征:并发、共享、虚拟、异步(其中并发和共享是最基本的特征,二者互为存在条件,没有并发和共享就没有虚拟和异步

1.并发:

  • 并发指多个事件在同一时间间隔内发生,宏观同时发生,微观交替发生(并行指多个事件在同一时刻同时发生)
  • 操作系统的并发性指计算机系统中同时存在多个运行程序(4核CPU最多只能有4个程序并行执行,当程序大于4个时,并发必不可少)

2.共享

  • 共享即资源共享,指系统资源可供内存多个并发进程共同使用
  • 分为互斥共享同时共享,区别在于一个时间段内能否允许多个进程访问资源(同时指的是宏观)

3.虚拟

  • 背景知识:一个程序需要放入内存并分配CPU才能执行
  • 虚拟是指把一个物理上的实体(实际)变为若干个逻辑上的对应物(用户感受)
  • 虚拟分为空分复用技术(虚拟内存存储技术)和时分复用技术(虚拟处理器)

4.异步

  • 异步指的是由于资源有限,进程的执行不是一贯到底的,而是走走停停

5.总结

在这里插入图片描述

1.1.3 操作系统的发展和分类

1.手工操作阶段

  • 缺点:用户独占全机、人机速度矛盾导致资源利用率极低

2.单道批处理系统

  • 引入脱机输入/输出技术(磁带完成),并监督程序(OS雏形)负责控制作业的输入输出
  • 优点:解决了人机速度矛盾
  • 缺点:内存仅有一道程序运行,程序运行结束后才能进入下一道程序,CPU大量时间在空闲等待I/O完成,资源利用率仍然很低

3.多道批处理系统(操作系统正式诞生)

  • 优点:多程序并发执行,共享计算机资源,资源利用率大幅提升
  • 缺点:用户响应时间长,没有人机交互功能

4.分时操作系统

  • 计算机以时间片为单位轮流为各个用户/作业服务
  • 优点:解决了人机交互问题
  • 缺点:不能优先处理一些紧急任务

5.实时操作系统

  • 优点:能够优先响应一些紧急任务,无需时间片排队,具有及时性和可靠性
  • 分类:硬实时系统(必须在绝对严格的时间内完成)和软实时系统(接受偶尔违法时间规定)

6.总结

在这里插入图片描述

1.1.4 操作系统的运行机制和体系结构

1.运行机制

  • 指令:指的是处理器(CPU)能试别、执行的最基本的命令(指令不是代码,而是代码翻译得到的机器语言指令),可以分为特权指令和非特权指令
  • 处理器运行状态:分为用户态(目态,只能执行非特权指令)和核心态(管态,两种指令都可执行),通过程序状态字寄存器(PSW)中的标志位决定。
  • 程序:分为内核程序(系统的管理者,两种指令都可执行,运行在核心态)和应用程序(只能执行非特权指令,运行在用户态)

注:特权指令只能在核心态下执行,内核程序只能在核心态下执行。

2.内核

  • 内核是计算机的底层软件,是操作系统最基本、最核心的部分,实现内核功能的程序就是内核程序
  • 分为时钟管理、中断管理、原语、对系统资源进行管理的功能(有的内核没有)

在这里插入图片描述

3.内核体系结构

  • 大内核:将os的主要功能模块都作为系统核心,包括上述的对系统资源进行管理的功能,运行在核心态,优点是高性能,缺点是结构混乱、难以维护
  • 微内核:只把最基本的功能保留在内核,不包括上述的对系统资源进行管理的功能,优点是结构清晰、方便维护,缺点是需要频繁的在核心态和用户态之间切换,性能低
  • 类比于企业管理

4.总结

在这里插入图片描述

1.1.5 中断和异常

1.中断

  • 中断作用:当中断发生后,CPU立即进入核心态,使操作系统获得计算机的控制权,并且暂停当前运行的进程,由os内核对中断进行处理。有了中断,才能实现多道程序并发执行。此外用户态 → 核心态:只能通过中断实现,核心态 → 用户态:执行特权指令实现(将PSW的标志位设为用户态)
  • 中断分类(依据:信号来源于CPU内部还是外部)
    • 内中断(也称异常)
    • 外中断(简称中断)
  • 外中断的处理过程
    • CPU执行用户程序的每个指令后,都需要检查当前是否有外部中断信号,如果有,则保护被中断进程的CPU环境并进入中断处理程序(核心态),执行完成之后再次回到用户程序(用户态)继续执行下面指令

2.总结

在这里插入图片描述

1.1.6 系统调用

1.概念和作用

  • 回顾1.1.1:os作为用户和计算机硬件之间接口,有命令接口和程序接口,其中程序接口由一组系统调用组成
  • 概念:系统调用是os提供给应用程序使用的接口,可以理解为一种特殊函数,应用程序可以发出系统调用请求来获得操作系统的服务(一个应用场景见之前文章:Qt访问并口https://blog.csdn.net/weixin_52341045/article/details/124233969?spm=1001.2014.3001.5501
  • 作用:保证系统的稳定性和安全性,防止用户进行非法操作

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

  • 系统调用相关处理在核心态进行
  • 有的库函数是对系统调用的进一步封装,有的不是
  • 不涉及系统调用的库函数:如取绝对值;涉及系统调用的库函数:如创建一个文件

3.系统调用背后的过程

在这里插入图片描述

  • 类比:高级语言是C++,其编译后变为汇编指令,其中C++的系统调用库函数会变为汇编指令,当汇编指令出现int指令(陷入指令)之后立刻会引发内中断,CPU由用户态进入核心态,并执行中断程序,执行完之后再进入用户态,执行后续的用户指令。很重要的一点是发出系统调用的请求是在用户态,而对系统调用的处理在核心态,而且陷入指令是唯一一个只能在用户态执行的指令

4.总结

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值