导图社区 计算机系统概述
这是一篇关于计算机系统概述的思维导图,主要内容包括:虚拟机,OS引导,OS的概念与功能,OS的基本结构,系统调用,中断和异常,OS的运行机制,OS的发展与分类。
这是一篇关于互斥和同步的思维导图,主要内容包括:信号量机制,互斥的硬件实现方法,互斥的软件实现方法,jin。
这是一篇关于调度的思维导图,主要内容包括:调度算法,处理机调度。介绍详细,描述全面,希望对感兴趣的小伙伴有所帮助!
这是一篇关于进程与线程的思维导图,主要内容包括:线程的状态与转换,线程,进程通信,进程控制,进程的状态与转换,进程。
社区模板帮助中心,点此进入>>
互联网9大思维
组织架构-单商户商城webAPP 思维导图。
域控上线
python思维导图
css
CSS
计算机操作系统思维导图
计算机组成原理
IMX6UL(A7)
考试学情分析系统
计算机系统概述
OS的概念与功能
概念
管理硬件软件等计算机资源
为上层用户、应用程序提供简单易用的服务
一种系统软件
功能和目标
资源的管理者
处理器
存储器
文件
设备
向上层提供服务
面向普通用户
GUI用户图形界面
命令接口
联机命令接口
脱机命令接口
面向面向软件和程序员
程序接口(系统调用)
对硬件机器的拓展
操作系统的特征
并发
共享
互斥共享方式
如摄像头设备的调用
同时共享方式
如硬盘的共享使用
虚拟
空分复用技术
如虚拟存储技术
时分复用技术
如虚拟处理器技术
异步
OS的发展与分类
手工操作阶段
缺点:人机速度矛盾,资源利用率低
批处理阶段
单道批处理系统(脱机输入输出)
优点:缓解了人机速度矛盾
缺点:资源利用率仍然较低
多道批处理系统(操作系统开始出现)
优点:多道程序并发执行,资源利用率高
缺点:不提供人机交互功能
分时操作系统
优点:提供人机交互功能
缺点:无法优先处理紧急进程
实时操作系统
硬实时操作系统
必须在严格要求的时间内处理完紧急进程
软实时操作系统
可以接收偶尔的超时
优点:可以优先处理紧急进程
网络操作系统
分布式操作系统
个人计算机操作系统
OS的运行机制
两种指令
特权指令
非特权指令
两种处理器状态
内核态(管态)
可以执行特权指令
执行某一条特殊特权指令——修改PSW标志位为用户态——切换到用户态
用户态(目态)
只能执行用户指令
如果在用户态时读入特权指令——引起中断指令,强制变为内核态——引起处理中断信号的内核程序——处理后回归用户态
但凡需要操作系统介入,都会触发中断信号
依靠程序状态字寄存器来判断状态
两种程序
内核程序(操作系统的内核)
可以使用特权指令
应用程序(运行在操作系统之上)
只能使用非特权指令
中断和异常
中断的作用
操作系统内核强行夺回CPU控制权
让CPU变为内核态
中断的分类
中断(外部中断信号)
I/O中断请求
时钟中断
异常(内部中断信号)
陷入
应用程序主动将控制权移交内核程序
故障
终止
由错误条件引起,可能被内核程序修复,修复后 把控制权还给应用程序
如缺页故障
由致命错误引起,内核程序无法修复,一般不将 控制权移交回应用程序,直接终止
如除法除零、非法使用特权指令
中断的原理
检查中断信号
异常:CPU在执行指令的时候检查是否有异常
中断:CPU在每个指令周期末尾检查是否有中断
找到相应的中断处理程序(通过中断向量表处理)
系统调用
操作系统对程序员/应用程序提供的接口
系统调用和库函数的区别
部分库函数是对系统调用的进一步封装
部分库函数没有使用到系统调用
系统调用的过程
传参
陷入指令
由操作系统内核程序处理系统调用请求
返回应用程序
OS的基本结构
大内核
将操作系统的主要功能模块都作为系统内核,运行在内核态
优点:性能高,在核心态用户态之间切换频率低
缺点:内核代码量大,难维护,结构乱
Linux、UNIX、Windows
微内核
只把最基本的功能保留在内核
优点:内核代码量少,结构清晰,便于维护
缺点:需要频繁在用户态和内核态之间切换,性能低
Mac
分层结构
内核分多层,每层可单向调用下一层的接口
优点:便于调试和验证,自底向上逐层调试验证
缺点:效率低,不可以跨层调用,难以合理定义各层的边界
模块化
将内核划分为多个模块,各模块协作工作(内核=主模块+可加载内核)
优点:支持动态加载新内核模块,模块间可以互相直接调用,效率高
缺点:模块间相互依赖,难调试验证
外核
内核负责进程调度,进程通信等功能,外核负责为用户进程分配未经抽象的硬件资源,由外核负责保证资源使用的安全
优点:外核可以直接给用户进程分配硬件资源,用户进程可以更灵活地使用资源,减少了虚拟硬件资源的映射层,效率提升
缺点:降低系统一致性,系统变得更复杂
OS引导
CPU通电,ROM自举启动,磁盘主引导记录导入RAM
通过主引导记录找到C盘位置,C盘引导记录导入RAM
找到C盘根目录下的启动程序,启动操作系统
虚拟机
将一台物理机器虚拟化为多台虚拟机器
第一类VMM
直接运行在硬件上,可以直接控制和分配资源
可以直接分配未经抽象的物理硬件
运行在最高特权级,可以执行高级指令
优点:性能更好,可支持的虚拟机数量更多
缺点:迁移性差
第二类VMM
运行在HostOS上,依赖HostOS为其分配物理资源
GuestOS拥有自己的虚拟磁盘——实际上是HostOS中的一个大文件,只能分配虚拟内存
运行在用户态,部分运行在内核态
优点:迁移性好
缺点:性能差,可支持的虚拟机数量少