概述
一、简单描述
1、系统资源的管理者;
2、最接近硬件的一层软件;
3、向上层提供方便容易使用的服务;
二、提供的功能
1、处理机管理;
2、储存器管理;
3、文件管理;
4、设备管理;
举例说明:打开QQ的时候,需要找到安装的位置(文件管理),双击打开qq的时候需要将qq放入到内存中去(储存器管理),qq程序被处理机处理,开qq视频的时候需要获取摄像头的权限(设备管理);
三、封装思想
内部的硬件只能识别01010之类的二进制信号,这个时候需要操作系统去封装一层,将不利于用户去阅读的二进制编码优化成方便调用的服务,
四、操作系统的特点
1、并发:宏观同时发生,微观交替发生;
2、并行;多个事件同时发生;
3、共享
(一)互斥共享:一段时间内只允许一个进程访问资源;
(二)同时共享的方式:允许一段时间多个进程同时对他们进行访问;
4、虚拟:相当于建立了映射关系,将内存的东西映射到硬件之中去;
5、异步:多个程序运行的情况之下,允许多个程序并发执行,但是由于资源有限,进程的执行不是一贯到底的,需要走走停停;
五、操作系统的发展历史
1、手工操作阶段
纸带机(用户独占全机、人机速度矛盾)
2、批处理阶段
单道批处理系统(外围机——磁带)
多道批处理系统(操作系统开始出现)
3、分时操作系统
轮流处理作业
不能处理紧急任务
4、实时操作系统
优先处理紧急任务
硬实时系统:必须在严格的时间内完成处理
软实时系统:可以偶尔犯错
5、网络操作系统
6、分布式操作系统
7、个人计算机操作系统
六、程序是如何运行的
1、用户态和内核态
用户态是用户模式、内核态是内核模式,当操作系统需要工作的时候需要切换为内核态,退出工作的时候切换为用户态,有程序状态寄存器来记录当前操作系统处于内核态还是用户态;
运行流程的例子
假设你是一名顾客在一家餐厅用餐,餐厅有一个厨师负责烹饪食物,而你作为顾客只能在餐厅的就餐区域内进行点餐、享用餐点。这里就可以将就餐区域看作用户态,厨师看作内核态。
在用户态,你只能在就餐区域内享用餐点,不能直接进入厨房进行烹饪操作,也不能直接控制厨房的设备和资源,比如燃气灶、刀具等。你只能通过服务员(类似于系统调用接口)向厨师发出菜单(类似于系统调用请求),然后厨师根据菜单进行烹饪(类似于内核态下的操作),最后将做好的餐点送到你的就餐区域供你享用(类似于系统调用结果返回给应用程序)。这时,你可以在用户态下享用餐点,但不能直接控制厨房的操作。
而在内核态,厨师具有更高的权限,可以自由进入厨房,使用各种设备和资源,进行烹饪操作,如调整燃气灶的火候、使用刀具进行切割等。厨师在内核态下具有更高的权限,可以直接控制厨房的操作,执行特权操作。文章来源:https://www.toymoban.com/news/detail-431541.html
类似地,在计算机系统中,应用程序在用户态下只能访问受限的资源,并通过系统调用接口向操作系统发起请求以执行需要特权的操作。而操作系统在内核态下具有更高的权限,可以直接访问系统的核心功能和资源,执行特权操作。用户态和内核态之间的切换需要经过系统调用接口,类似于餐厅中的服务员将菜单传递给厨师进行处理,然后将处理结果返回给应用程序。
系统调用是操作系统提供给应用程序使用的接口,可以理解为一种可供应用程序调用的特殊函数,应用程序可以通过系统调用来请求获得操作系统内核的服务。
系统调用的功能
--------------------------------------------END----------------------------------------文章来源地址https://www.toymoban.com/news/detail-431541.html
到了这里,关于操作系统概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!