文章目录
-
- 1.操作系统的基本概念
-
- 1.操作系统的概念
- 1.2.操作系统的特点
-
- 1.2.1、并发
- 1.2.2、共享
- 1.2.3、虚拟
- 1.2.4、异步
- 1.3.操作系统的目标和功能
-
- 1.3.1、操作系统作为系统资源的管理者
- 1.3.2.操作系统作为用户与计算机硬件系统之间的界面
- 1.3.3.操作系统用作扩展器
- 2.操作系统的开发和分类
-
- 2.1.手动操作阶段
- 2.二、批处理阶段
-
- 2.2.1.单道批处理系统
- 2.2.二、多道批处理系统
- 2.三、分时操作系统
- 2.4、实时操作系统
- 2.5.其他几种操作系统
- 3.操作系统的运行环境
-
- 3.1.操作系统的操作机制
-
- 3.1.1.内核程序和应用程序
- 3.1.2.特权指令和非特权指令
- 3.1.三、内核态和用户态
- 3.1.4、内核
- 3.1.5、状态切换
- 3.中断和异常
-
- 3.2.1、中断作用
- 3.2.2.定义中断和异常
- 3.2.3.中断机制的基本原理
- 3.3、系统调用
-
- 3.3.1.什么是系统调用?
- 3.3.2.系统调用什么功能?
- 3.3.3、系统调用执行过程
- 4.操作系统的系统结构
1.操作系统的基本概念
1.操作系统的概念
(Operating System,OS)是指控制和整个计算机系统;它是计算机系统中最基本的
①操作系统是系统资源的管理者。②提供方便易用的服务。③是最接近硬件的软件层。
1.2.操作系统的特点
1.2.1、并发
常考易混概念――
注: 单核CPU只能同时执行
1.2.2、共享
(1)互斥共享方式
虽然系统中的一些资源,如打印机和磁带机,可用于多个过程,但应规定,以防止打印或记录的结果混淆
(2)同时共享方式
系统中的一些资源,这些资源
1.2.3、虚拟
虚拟技术中的“空分复用技术”。
虚拟技术中的虚拟技术时间复用技术。微观上,处理器在每个小时间内交替为每个过程服务。
操作系统的虚拟技术可概括为:
显然,如果失去并发性,系统只需要在一段时间内运行一个程序,就失去了实现虚拟性的意义。
1.2.4、异步
由于并发操作程序将争相使用系统资源,而系统中的资源有限,因此过程的执行并不总是结束,而是以不可预测的速度前进。
如果失去并发性,即系统只能串行运行每个程序,那么每个程序的执行将一直持续到底。
1.3.操作系统的目标和功能
1.3.1.操作系统作为系统资源的管理者
(1)处理机管理
在多个程序环境下,处理器的分配和运行是基于过程(或线程),因此对处理器的管理可以归因于过程管理。并发是指计算机同时运行多个过程,因此创建、撤销、管理、避免冲突、合理共享是过程管理的主要任务。过程管理的主要功能包括
(2)存储器管理
存储器管理是为了给多道程序的运行提供良好的环境,方便用户使用及提高内存的利用率,主要包括
(3)文件管理
计算机中信息都是以文件的形式存在的,操作系统中负责文件管理的部分称为文件系统。文件管理包括
(4)设备管理
设备管理的主要任务是完成用户的I/O请求,方便用户使用各种设备,并提高设备的利用率,主要包括
1.3.2、操作系统作为用户与计算机硬件系统之间的接口
为了让用户方便、快捷、可靠的操作计算机硬件并运行自己的程序,操作系统还提供了用户接口。操作系统提供的接口主要分为两类:一类命令接口,用户利用这些操作命令来组织和控制作业的执行;另一类是程序接口,编程人员可以使用它们来请求操作系统服务。
(1)命令接口
命令接口又分为联机命令接口和脱机命令接口。
(2)程序接口
程序接口由一组系统调用(也称广义指令)组成。用户通过在程序中使用这些
1.3.3、操作系统用作扩充器
没有任何软件支持的计算机称为
类比汽车: 发动机——只会转;轮胎——只会滚; 在原始的硬件机器上覆盖一层传动系统――让发动机带着轮子转――使原始的硬件机器得到拓展
操作系统对硬件机器的拓展:将CPU、内存、磁盘、显示器、键盘等硬件合理地组织起来,让各种硬件能够相互协调配合,实现更多更复杂的功能
2、操作系统的发展与分类
2.1、手工操作阶段
用户在计算机上算题的所有工作都要人工干预,如程序的装入、运行、结果的输出等。随着计算机硬件的发展,人机矛盾(速度和资源利用)越来越大,必须寻求新的解决办法。
手工操作阶段有两个突出的缺点:①用户独占全机,不会出现因资源已被其他用户占用而等待的现象,但资源利用率低。②CPU等待手工操作,CPU的利用不充分。 唯一的解决办法就是用高速的机器代替相对较慢的手工操作来对作业进行控制。
2.2、批处理阶段
为了解决人机矛盾及CPU和IO设备之间速度不匹配的矛盾,出现了批处理系统。它按发展历程又分为
2.2.1、单道批处理系统
系统对作业的处理是成批进行的,但内存中始终保持一道作业。单道批处理系统是在
主要
2.2.2、多道批处理系统
多道程序设计技术允许多个程序同时进入内存并允许它们在CPU中交替地运行,这些程序共享系统中的各种硬/软件资源。当一道程序因I/O请求而暂停运行时,CPU便立即转去运行另一道程序。它不采用某些机制来提高某一技术方面的瓶颈问题,而让系统的各个组成部分都尽量去“忙”,因此切换任务所花费的时间很少,/可实现系统各部件之间的并行工作,使其整体在单位时间内的效率翻倍。
2.3、分时操作系统
所谓分时技术,是指把处理器的运行时间分成很短的
分时系统的主要特征如下: 1)
主要
2.4、实时操作系统
为了能在某个时间限制内完成某些紧急任务而不需要时间片排队,诞生了实时操作系统。这里的时间限制可以分为两种情况:①若某个动作必须绝对地在规定的时刻(或规定的时间范围)发生,则称为
在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并在
2.5、其他几种操作系统
3、操作系统的运行环境
3.1、操作系统的运行机制
3.1.1、内核程序和应用程序
计算机系统中,通常CPU 执行
(1)内核程序操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态。
(2)应用程序为了保证系统能安全运行,普通应用程序只能执行非特权指令,运行在用户态
3.1.2、特权指令和非特权指令
所谓
在CPU设计和生产的时候就划分了特权指令和非特权指令,因此CPU执行一条指令前就能判断出其类型。
3.1.3、内核态和用户态
CPU能判断出指令类型,但是它怎么区分此时正在运行的是内核程序or应用程序?
CPU有两种状态,“
**拓展:**CPU中有一个寄存器叫程序状态字寄存器(PSW),其中有个二进制位,1表示“内核态”,0表示“用户态” **别名:**内核态=核心态=管态;用户态=目态
3.1.4、内核
在软件工程思想和结构程序设计方法影响下诞生的现代操作系统,几乎都是层次式的结构。操作系统的各项功能分别被设置在不同的层次上。一些与硬件关联较紧密的模块,如时钟管理、中断处理、设备驱动等处于最低层。其次是运行频率较高的程序,如进程管理、存储器管理和设备管理等。这两部分内容构成了操作系统的内核。这部分内容的指令操作工作在核心态。
3.1.5、状态切换
3.2、中断和异常
3.2.1、中断的作用
CPU上会运行两种程序,一种是操作系统内核程序,一种是应用程序。
“中断”会使CPU由用户态变为内核态,使操作系统重新夺回对CPU的控制权。
3.2.2、中断和异常的定义
3.2.3、中断机制的基本原理
3.3、系统调用
3.3.1、什么是系统调用?
所谓系统调用,是指
3.3.2、什么功能要用系统调用实现?
- 设备管理。完成设备的请求或释放,以及设备启动等功能。
- 文件管理。完成文件的读、写、创建及删除等功能。
- 进程控制。完成进程的创建、撤销、阻塞及唤醒等功能。
- 进程通信。完成进程之间的消息传递或信号传递等功能。
- 内存管理。完成内存的分配、回收以及获取作业占用内存区大小及始址等功能。
3.3.3、系统调用执行过程
系统调用的处理需要由操作系统
操作系统的运行环境就可以理解为:用户通过操作系统运行上层程序(如系统提供的命令解释程序或用户自编程序),而这个上层程序的运行依赖于操作系统的底层管理程序提供服务支持,当需要管理程序服务时,系统则通过硬件中断机制进入核心态,运行管理程序;也可能是程序运行出现异常情况,被动地需耍管理程序的服务,这时就通过异常处理来进入核心态。管理程序运行结束时,用户程序需要继续运行,此时通过相应的保存的程序现场退出中断处理程序或异常处理程序,返回断点处继续执行,如图下图所示。
4、操作系统的体系结构
注意:操作系统内核需要运行在内核态。操作系统的非内核功能运行在用户态。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AOz108SE-1646822555028)(img/image-20220122164439164.png)]
一个故事:现在,应用程序想要请求操作系统的服务,这个服务的处理同时涉及到进程管理、存储管理、设备管理