用了那么久的操作系统到底是个啥?

863 阅读7分钟

什么是操作系统?

我们平时用到的windows,macos系统,常常在小黑框出现的linux系统,又或者是手机里面的ios系统,都是操作系统!

那么到底从概念上来看到底什么是操作系统呢?

我们还是从生活的角度出发。

我们都知道,一台电脑的诞生。是从硬件开始的,在装完cpu,散热器,显卡,风扇之类的东西以后,你的机箱亮了!

亮了之后呢,我们插了个u盘,开始我们操作系统的安装!安装完成以后,我们又安装软件,然后用软件实现各种需求(聊天摸鱼

所以,我们可以看出来,既然是从u盘中下载下来的,说明操作系统的本质其实是软件!

操作系统的作用

操作系统其实更像是一个承上启下的桥梁。

  • 它负责管理协调硬件,软件等计算机资源的工作
  • 它为上层的应用软件,用户提供简单易用的服务
  • 他是软件,不是硬件!

操作系统是控制和管理计算机系统的硬件和软件资源,并合理的组织调度计算机的工作和资源的分配,以提供用户和其他软件更方便的接口和环境,他是计算机系统最基本的系统软件

那么其实我们的任务管理器,就是给软件和硬件的管理,做了个可视化界面

操作系统的功能和目标——系统资源的管理者

那么,操作系统作为一个承上启下的资源管理者,他又实现了哪些功能呢?

比如,我们打卡一个qq软件,实际上就是打卡qq.exe的启动文件,那么找到这个启动文件就需要用到文件资源管理器

这体现了操作系统的文件管理

在点击qq.exe之后,程序开始运行,我们需要把程序相关数据,放入内存,这体现了操作系统的存储器管理

打开qq以后,我们要视屏通话,需要摄像头,操作系统帮我们打开了,这体现了操作系统的设备管理

操作系统的功能和目标——作为用户和计算机硬件之间的接口

什么是联机命令接口呢?

其实很简单,你打开cmd,用一个最简单的cd命令进入文件夹,就是一个联机命令接口。

什么是脱机命令接口呢?

大家应该都见过.bat文件吧?.bat文件就是脱机命令接口,它是将很多联机命令接口整合到了一起,点击它一起运行!

什么是程序接口呢?

他就是一些.dll文件,他是程序调用的东西,他能实现创建窗口等功能。用户只能间接调用它

什么是GUI?

他是一个图形用户界面。它无需复杂命令,只用拖拽点击方式,实现程序功能。比如你把文件拖进垃圾站里。而命令则对应是rm -rf

操作系统的功能和目标——最接近硬件的层次

刚刚提到操作系统是在裸机上安装的。它的目标很明确,就是对于硬件机器的扩展,将他改编成更加方便的,更加强大的机器。

我们通常把覆盖了软件的机器叫扩充机器,又称之为虚拟机。

类比成生活,硬件就是锤子,优秀的工匠就是使用锤子的人

操作系统的特征

并发

并发是指多个事件同一时间间隔上在宏观同时发生,但在微观上交替发生。

并行是两个或多个时间在同一时刻发生

比方现在有俩渣男。

第一个渣男喜欢和女一号女二号一起约会。这是并行

第二个渣男订好了时间,9-10点约女一,10-11约女二。从宏观来看,他同时进行了俩约会入伍,微观来看,某一时刻,他最多进行一个约会任务。这是并发

操作系统的特征——并发

操作系统的并发性指在计算机系统中同时运行着多个运行的程序。

如果你的cpu是单核的,那么它同一时刻只能执行一个程序,因此操作系统会负责协调多个程交替发生(宏观同时,围观交替 )

但是如果 你的cpu是多核的,比如Intel的i3 i5 i7,这意味着,同一时刻是由多个程序可以并行执行的。但是,操作系统的并发性依然必不可少。

因为我们操作系统的时候,肯定有远超过cpu核数的进程数目的。

操作系统的特征——共享

操作系统有两种资源共享的方式,一种是互斥共享;一种是同时共享

互斥共享是指某些资源是虽然能提供给多个线程使用,但是,一个时间段只允许一个进程访问该资源。

同时共享指的是,某些资源允许一个时间段,多个进程“同时”对他们进行访问。

这里的“同时”是宏观上的,围观可能是交替的

生活实例

互斥共享:你在电脑上同时打开微信,qq,只有一个进程可以使用摄像头。

同时共享:用qq发送文件A,微信发送文件B。从宏观上来看,微信和qq同时在占用硬盘资源,读取文件。但是从微观上来看,两者是交替访问硬盘的。

操作系统的特征——并发和共享的关系

  • 并发性:指计算机系统同时存在多个运行着的程序。
  • 共享性:指系统内的资源可供内存中多个并发执行的程序共同使用。

从用qq发送文件A,微信发送文件B的例子来看:

  1. 两个进程并发执行(并发性)
  2. 需要共同访问硬盘资源(共享性)

因此,我们发现,并发和共享相互依存

操作系统的特征——虚拟

虚拟是指一个物理上的实体,变成若干逻辑上的对应物。物理实体是实际存在的,逻辑对应物是用户感知到的。

生活案例

案例一:比如说我的电脑有4G的内存,我打开了需要4G内存的lol,还打开了qq,微信,实际上这些东西的内存超过4G了,但是他们还能运行。

这是虚拟存储技术,实际4G,用户看来远超4GB。这也是虚拟技术中的“空分复用技术”。

案例二:一个单核cpu可以打开多个程序。我们都知道,一个程序需要放入内存,并分配cpu才能执行。那为什么单核cpu可以执行那么多程序呢?

这里则用到了虚拟处理器技术。实际上有一个cpu,但用户看到了多个cpu在为自己服务。

这是虚拟技术中的“时分复用技术”,它将时间分成一个个时间片,交替利用单个cpu处理不同进程

操作系统的特征——异步

异步是指多道程序环境下,允许多个程序并发执行。但由于资源有限,进程的执行不是一贯到底,而是走走停停,以不可预知的速度推进,这就是进程的异步性

其实简单理解,程序为什么会走走停停呢?其实就是因为太穷了!可分配的资源太有限了,进程需要一个资源的时候,另一个进程在使用这个资源,所以它需要停下来等待!

所以我们发现,只有系统拥有并发性,才有可能导致异步性!

重要考点

  • 理解并发和并行的区别
  • 并发和共享是互为存在条件的
  • 没有并发,共享,就谈不上虚拟和异步。
  • 并发和共享是操作系统两个最基本的特征

因为共享的前提是,很多进程一起执行,去访问某个资源。