操作系统概述

168 阅读3分钟

「这是我参与2022首次更文挑战的第37天,活动详情查看:2022首次更文挑战」。

操作系统是负责管理协调硬件、软件等计算机资源的工作、为上层用户、应用程序提供简单易用的服务的一种系统软件。

功能与目标

它是一个资源管理者,能管理处理机、存储器、文件、设备等。

其给普通用户提供的GUI用户图形用户界面和命令接口能有效的帮助人们了解和使用计算机,如:联机命令接口cmd、脱机命令接口.bat。

其给软件/程序员用的程序接口能帮助程序员更好的开发新系统,软件等。

特征

在没有并发和共享的前提下,就谈不上虚拟和异步,因此并发和共享是操作系系统的两个最基本的特征。

  • 互斥共享方式和同时共享方式为共享的两种主要方式
  • 空分复用技术和时分复用技术是虚拟的两种技术方式
发展与分类手工操作阶段单批道处理系统多批道处理系统分时操作系统硬实时操作系统软实时操作系统
优点---------------缓解人机速度矛盾多道程序并发执行提供人机交互功能必须在绝对严格的规定时间内完成处理能优先处理紧急任务
缺点人机速度矛盾利用资源率依然很低不提供人机交互不能优先处理紧急任务----------------能接受偶尔违反时间的规定

操作系统运行机制

高级语言编写代码转化为机器指令。

程序运行的过程就是CPU执行指令的过程。

操作系统还拥有:
内核程序、应用程序。
特权指令、非特权指令。
内核态/核心态/管态、用户态/目态

难点

如何变态

内核态->用户态:修改一条PSW的特权指令 用户态->内核态:由中断引起,硬件自动完成

中断和异常

中断的作用:让操作系统内核强行夺回CPU控制权,使得CPU从用户态变为内核态。

中断的分类

内中断:陷入、故障、终止
外中断:时钟中断、IO中断请求。

中断机制的基本实现原理:检查中断信号、找到相应的中断处理程序。

重点

系统调用

什么是系统调用?

操作系统对应用程序或程序员提供的接口。

系统调用与库函数的区别?

有的库函数是对系统调用的进一步封装
有的库函数没有使用系统调用

为什么系统调用是必须的?

保证系统的稳定和安全,就比如打印两份文件,一份作为备份。

什么功能需要调用实现1?

设备管理、文件管理、进程管理、内存管理、进程通信。

系统调用的过程?

传参、陷入指令/Trap/访管
由操作系统内核程序处理系统调用请求。
返回应用程序。

操作系统的体系结构

大内核:将主要功能模块都作为系统内核、运行在核心态。

优点:高性能
缺点:内核代码庞大,结构乱、不好维护。

微内核:只把最基本的功能保留在内核

 优点:内核功能少,结构清晰,方便维护。
 缺点:需要频繁地在核心态和用户态之间切换,性能低。