OS-1-操作系统概述
2021-08-09 17:43:55 17 举报
AI智能生成
操作系统第一章,操作系统概述 知识点梳理
作者其他创作
大纲/内容
OS运行机制
两种指令
特权指令
只允许内核程序使用
非特权指令
两种处理机状态
CPU设计时就划分了指令类型,因此执行指令前就可判断类型
CPU的状态用于指导CPU限制程序使用特权指令
CPU的状态用于指导CPU限制程序使用特权指令
内核态/核心态/管态
运行的是内核程序,PSW某一位存储
用户态/目态
运行的是应用程序
两种程序
内核程序
内核程序让出CPU前,用一条特殊指令将CPU设为用户态
应用程序
只能使用非特权指令
若应用程序试图使用特权指令,会引起CPU中断并立即进入核心态
同时停止当前应用程序,转而执行处理中断的内核程序
同时停止当前应用程序,转而执行处理中断的内核程序
内核是OS的核心部分
由很多内核程序组成OS的内核
中断和异常
中断的作用
没有中断就会一直运行同一个程序,失去并发性
中断的类型
内中断“异常”
信号来自CPU内部
每条指令执行时CPU都
会检查是否有异常发生
信号来自CPU内部
每条指令执行时CPU都
会检查是否有异常发生
用户程序试图使用特权指令(终止Abort)
指令非法或参数非法(终止Abort)
错误条件引起,可能被内核程序修复,若修复会
把CPU使用权还给原来的程序,如缺页故障(故障Fault)
把CPU使用权还给原来的程序,如缺页故障(故障Fault)
用户程序执行特殊的“Trap”指令
试图请求Kernel服务(陷入Trap)
试图请求Kernel服务(陷入Trap)
外中断“中断”
信号来自CPU外部
每条指令执行后CPU都
会检查是否有外中断信号
信号来自CPU外部
每条指令执行后CPU都
会检查是否有外中断信号
时钟中断
每隔一段时间发送
每隔一段时间发送
处理时钟中断的程序处理后把CPU
设为用户态,交还用户程序使用
设为用户态,交还用户程序使用
I/O中断
中断机制基本原理
中断信号产生后,CPU检测到,根据信号值查询中断向量表
据此找到对应的中断处理程序在内存中的存放位置
据此找到对应的中断处理程序在内存中的存放位置
系统调用
程序中进行系统调用以使用程序接口
设备管理
设备请求、释放、启动……
文件管理
文件读写、创建、删除……
进程控制
进程创建、撤销、阻塞、唤醒……
进程通信
消息传递、信号传递……
内存管理
内存分配、回收……
是程序请求OS服务的唯一方式,但是程序并不是一定要进行系统调用
只要要使用系统资源就需要系统调用
过程
明确传递的参数(系统调用类型,参数等)
使用Trap指令(在用户态下执行,不是特权指令)
处理请求
CPU切换到内核态,OS启动系统调用入口程序,检查对应的寄存器
调用指定的系统调用对应的处理程序
执行结束后,回到原有的用户程序
OS的体系结构
大内核 vs. 微内核
微内核的用户态和内核态切换频繁,浪费了部分性能
典型大内核:Linux、UNIX
典型微内核:WindowNT
概念
OS是最基本的系统软件
偶尔也把覆盖了软件的机器称为虚拟机(扩充机器)
控制和管理计算机的软件和硬件资源
组织调度计算机工作和资源分配
组织调度计算机工作和资源分配
管理
处理机
存储器
载入
文件管理
设备管理
摄像头、鼠标....
目标:安全高效
给用户和其他软件提供接口和环境
OS将不直观、复杂的硬件功能封装成简单易用的服务
GUI(Graphical User Interface)图形化用户接口
命令接口
联机命令接口(即交互式命令接口):Windows命令行
脱机命令接口(即批处理文件借口)
程序接口
程序中进行系统调用以使用程序接口
是程序请求OS服务的唯一方式
程序接口不提供给用户直接使用
(偶尔被称为广义指令)
OS的特征
C.S.V.A
C.S.V.A
并发Concurency
多个事件宏观上同时发生,微观上交替发生
Compare:并行:并行微观上也同时发生
多核CPU可以核间并行,核内并发,但是单核CPU只能并发
共享Share
资源共享:系统中资源可以提供给内存中多个并发执行的进程共同使用
方式
互斥共享
只能同时分配给一个进程
同时共享
宏观上同时访问、微观上交替访问
部分设备可以被同时访问 (扬声器)
虚拟Virtualization
把物理上的实体变为若干逻辑上的对应物
虚拟存储器的“空分复用技术”
CPU的“时分复用技术”
异步Asynchronization
进程的执行不是一贯到底的
进程的运行速度是不可预知的
发展分类
手工操作阶段
主要问题:用户独占全机,人机速度矛盾导致资源利用率极低
纸带机
批处理阶段
单道批处理系统
引入脱机输入输出技术
由监督程序控制IO
由监督程序控制IO
主要问题:缺少并发性,IO效率还是很低
多道批处理系统
可以一次读入多个程序,引入并发性
标志OS的正式诞生
主要问题:缺少交互性
分时操作系统
以时间片为单位轮流为不同用户/作业服务
请求可以在一轮时间内得到响应
主要问题:不能响应紧急任务
实时操作系统
可以优先响应紧急任务,不需要排队
硬实时系统
必须在时间内完成,否则会造成严重后果
软实时系统
偶尔的超时是可以接受的
网络操作系统
分布式操作系统
PC操作系统
0 条评论
下一页