一、操作系统的概念
- 操作系统(Operation System ,OS)是指控制和管理真个计算机系统的硬件和软件资源,并合理的调度计算机的工作和资源的分配;
- 以提供给用户和其他软件方便的接口和环境;
- 它是计算机系统中最基本的系统软件。
- 1.操作系统是系统的管理者
- 2.向上层提供方便易用的服务
- 3.是最接近硬件的一层软件。
1.1操作系统作为系统资源的管理者
执行一个程序前需要将该程序放到内存中,才能被CPU处理。
- 用QQ和朋友视频聊天的过程:
- 1.在文件夹中找到QQ安装的位置
- 2.双击打开QQ.exe
- 3.QQ程序正常运行
- 4.开始和朋友视频聊天
分别对应着
1.处理机管理:逐层打开文件夹,找到程序(可执行文件)的存放位置
2.存储器管理:需要把该程序相关数据放入内存
3.文件管理:对应的进程被处理机(CPU)处理
4.设备管理:将摄像头设备分配给进程
1.2向上层提供方便易用的服务
- 封装思想:
- 操作系统把一些丑陋的硬件功能封装成简单易用的服务,使用户能更方便的使用计算机,用户无需关心底层硬件的原理,只需要对操作系统发出命令即可。
GUI:图形化用户接口(Graphical User Interfase)
用户可以使用形象的图形界面进行操作,而不需要记忆复杂的命令、参数,
例:在Windows操作系统中,删除一个文件只需要把文件“拖拽”到回收站即可。
1.2.1 联机命令接口(交互式命令接口)
- 特点:用户说一句,系统跟着做一句
1.2.2 脱机命令接口(批处理命令接口)
- 使用Windows系统,找到一个
*.bat
的文件,用记事本打开
- 当运行这个文件时,操作系统会根据文件中的内容一条一条执行
- 特点:用户说一堆,系统做一堆。
1.2.3程序接口
- 可以在程序中进行系统调用来使用程序接口。
- 普通用户不能直接使用程序接口,只能通过程序代码简洁使用。
- 系统调用类似于函数调用,是应用程序请求操作系统服务的唯一方式。
1.3最接近硬件的一层软件
- 需要实现对硬件机器的拓展
- 没有任何软件支持的计算机称为裸机,在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器
- 通常把覆盖了软件的机器称为扩充机器,又称之为虚拟机
- 操作系统对硬件机器的拓展:将CPU、内存、磁盘、显示器、键盘等硬件合理的组织起来,让各种硬件能够相互协调配合,实现更多更复杂的功能
二、操作系统的特征
2.1并发
- 指两个或多个事件在同一时间间隔内发生。
- 这些事件在宏观上是同时发生的,但微观上是交替发生的。
- 并行:
- 指两个或多个事件在同一时刻同时发生。
- 操作系统的并发性指计算机系统中“同时”运行着多个程序,这些程序宏观上看是同时运行的,而微观上看是交替运行的。
- 注意:
- 单核CPU同一时刻只能执行一个程序,各个程序只能并发的执行
- 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行的执行
- 即使是对于4核CPU来说,只要有4个以上的程序需要“同时”运行,那么并发性依然是必不可少的,因此并发性是操作系统一个最基本的特性。
2.2共享
- 共享即资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。
- 互斥共享方式:
- 系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源
- 同时共享方式:
- 系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访问
- 并发性指计算机系统中同时及存在着多个运行着的程序
- 共享性指系统中的资源可供内存中的多个并发执行的进程共同使用
- 如果失去并发性,则系统中只有一个程序正在运行,则共享性失去存在的意义
- 如果失去共享性,则两个进程不能同时访问硬盘资源,就无法实现同时发送文件,也就无法并发
- 并发性与共享性互为存在条件
2.3虚拟
- 虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。
- 物理实体(前者)是实际存在的,而逻辑上的对应物(后者)是用户感受到的。
- “空分复用技术”:如虚拟存储器技术
- 虚拟技术中的“时分复用技术”,微观上处理机在各个微小的时间段内交替着为各个进程服务。
- 如果失去了并发性,则一个时间段内系统只需运行一道程序,那么就失去了实现虚拟性的意义了,因此,没有并发性,就谈不上虚拟性。
2.4异步
- 指在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进。
- 如果失去了并发性,即系统只能串行的运行各个程序,那么每个程序的执行会一贯到底。
- 只有系统拥有并发性,才有可能导致异步性。
没有并发和共享,就谈不上虚拟和异步,因此并发和共享是操作系统的两个最基本的特征。
三、操作系统的发展和分类
3.1手工操作阶段
- 纸带机输入
- 缺点:用户独占全机、人机速度矛盾导致资源利用率极低。
3.2批处理阶段(单道批处理系统)
- 引入脱机输入/输出技术(用外围机+磁带完成),并由监督程序负责控制作业的输入、输出。
- 通过外围机把程序提前存到磁带里。
- 监督程序:操作系统的雏形。
- 主要优点:
- 缓解了一定程度的人机速度矛盾,资源利用率有所提升。
- 主要缺点:
- 内存中仅有一道程序运行,只有该程序运行结束之后才能调入下一道的程序
- CPU有大量的时间是在空闲等待I/O完成。
- 资源利用率依然很低。
3.2批处理阶段(多道批处理系统)
- 操作系统正式诞生,用于支持多道程序并发运行
- 每次往内存中读入多道程序。
- 主要优点:
- 多道程序并发执行,共享计算机资源
- 资源利用率大幅提升
- CPU和其他资源更能保持“忙碌”状态,系统吞吐量增大。
- 主要缺点:
- 用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行)
- 无法调试程序/无法在程序运行过程中输入一些参数
3.3分时操作系统
- 计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。
- 主要优点:
- 用户请求可以被即时响应,解决了人机交互问题。
- 允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。
- 主要缺点:
- 不能优先处理一些紧急任务
- 操作系统对各个用户/作业都是完全公平的,循环的为每个用户/作业服务一个时间片,不区分任务的紧急性。
3.3实时操作系统
- 主要优点:
- 能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
- 在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。
- 实时操作系统的主要特点是及时性和可靠性。
- 硬实施系统:
- 必须在绝对严格的规定时间内完成处理
- 软实施系统:
- 能接受偶尔违反时间规定
总结
本文主要介绍了操作系统的概念、特征及分类,注意并发和并行的区别,欢迎各位小伙伴点赞+关注!!!