浅谈操作系统概念,作用,特性及分类

操作系统概念:

操作系统是计算机系统中的一个系统软件,是一些程序模块的集合

操作系统作用:

1.资源的管理者
2.向用户提供各种服务
3.对硬件机器的扩展 

第1点中:

资源分配策略——算法

静态分配策略:把进程所有需要的资源先都分配给它,但这就导致了有些时候一些资源没有被该进程用到,这就导致了资源浪费问题

动态分配策略:进程什么时候需要就什么时候给它,若该资源已被占用则该进程阻塞进入该资源相应的等待队列中


资源管理:进/线程管理,存储管理,文件管理,设备管理,用户接口管理等等

OS特征:

并发,共享,虚拟,随机

并发/并行

之前在知乎上看到了关于这两者有趣的比喻:

设想一个场景你正在吃饭,然后有个电话打进来:

1.你等吃完饭后再去接电话,这说明你不支持并发也不支持并行

2.你先接电话,接完后吃饭,这说明你支持并发

3.你一边吃饭一边打电话,这说明你支持并行

这是具体到人,即人为处理器

下一个具体到嘴巴,即嘴巴为处理器

1.你咽一口饭,然后接一句电话,这说明你支持并发,有个先后逻辑关系,就是之前的逻辑上的概念

2.你咽一口饭还要说一句话,一张嘴办不到这事,至少有两张嘴引申过来就需要两个或两个以上的处理器,就是之前物理上的概念

另个说法:

并发是指程序的结构,并行为程序运行时的状态

并行即为同时执行,判断一个程序是否处于并行状态,看同一时间点是否有超过1个工作单位运行,其中单线程是无法达到并行,因为只有一个工作单位,要将其达到多线程或多进程即可并行。

并发为程序结构使多个操作可以在重叠时间段内进行

这样看来并行当然是在重叠时间段内进行,但

task1与task2在重叠的时间段里进行,但是同一时间点仅仅只有一个代码段(黑色体为某代码)执行,这不是并行便为并发,并发并不描述程序执行的状态,它描述的是一种设计,是程序的结构

 

个人理解:

并发:进程B开始时间是在进程A开始时间与结束时间之间强调时间段),称A与B并发(逻辑上

并行:同一时间(强调时间点)两个进程运行在不同机器或同一机器不同核心上物理上)                                                     可能在平时用的时候并不是很注重这些方面的细分    →  。→

共享:

操作系统与多个用户程序共同使用计算机系统中资源,其中分为互斥共享(资源不能同时使用)同时共享(资源可以同时使用)

虚拟:

一个物理实体银蛇为人若干个对应逻辑实件(分时或者分空间)

存储器中每个进程都有独立的的虚拟地址空间(存代码,数据,堆栈)

随机:

OS要对不可预测的事件进行响应处理

OS分类:

①批处理操作系统

工作方式:

1.用户将作业(作业:由作业说明书(由作业控制语言编写的),用户程序,数据组成,而且都是以卡片的形式,输入设备为卡片机)交给系统操作员

2.系统操作员将许多用户作业组成一批作业输入到计算机系统中,在系统中形成一个自动转接的连续的作业留

3.启动OS

4.OS自动一次执行每个作业,用户无法干预这一过程

5.由操作员将执行结果交给用户

追求目标:提高资源利用率,增加作业处理吞吐量

总体过程:从卡片机读入用户作业和编译链接程序,编译链接用户作业生成可执行程序,执行程序,输出执行结果

问题:慢速I/O设备与CPU处理速度相差太大,这就导致了当CPU需要数据处理时,I/O设备半天读不进来给CPU,或者半天输不出去数据,此时CPU都要等待即为空闲状态。

解决方案:

出现了卫星机慢速I/O设备和高效计算机间再加一个较差的计算机作为缓冲,就像内存与CPU间加上了cache,卫星机接收用户的输入与输出,中间结果存在磁带上,这样CPU就无需等待,这样解决方案叫脱机,即脱离了中间那台高效的计算机。

批处理系统又分成: 

单道批处理OS

多道批处理OS

 

spooling技术:

利用磁盘做缓冲,将输入,计算,输出分别组成独立的任务流,使I/O和计算并行(假脱机:磁盘在搞笑的计算机上)

1.用户作业输入磁盘输入井

2.按照某种调度策略,选几个搭配得当的作业调入内存

3.作业运行结果输出到磁盘的输出井

4.运行结果从输出井到打印机   (输入输出只到输入或输出井,主机不用直接与慢速的I/O打交道,高效快速)

ps:现代打印机仍用这种技术

应用spooling技术后:

 ②分时操作系统

工作方式:多个终端(只有I/O设备没有计算能力)连接到同一主机中,然后OS将CPU时间分成若干个片段,OS以时间片为单位,轮流为每个终端用户服务,每次服务使用掉一个时间片

追求目标:及时响应               ps.响应时间:以终端发出命令到系统给予回答所经历的时间

 ③实时操作系统

指计算机能及时响应外部时间请求,在规定的严格时间内完成对该事件处理

追求目标:对外部请求在严格时间范围内做出响应

作者水平有限,文章肯定有错还请各位指点!!!感谢!!!

原文地址:https://www.cnblogs.com/chaunceyctx/p/7141992.html