操作系统基本特征

说明

  • 如果只想了解操作系统应用:
    • 请忽略这一节
  • 如果想深入学习操作系统:
    • 理解并发,并行,虚拟,异步。
    • 理解并发和并行的区别

概述

操作系统有4个基本特征:并发、共享、虚拟、异步

并发

并发:指两个或多个事件在同一时间间隔内发生。这些事件在宏观上是同时发生的,但是在微观上是交替发生的。

操作系统的并发性:计算机系统中同时运行着多个程序,这些程序在宏观上看是同时运行的,但是在微观上是交替运行的。并发性是操作系统一个最基本的特征

==注意(重要考点):==

  • 单核CPU同一时刻只能执行一个程序,各个程序只能并发的执行。
  • 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行的执行。

比如:Intel的第八代i3处理器就是4核CPU,意味着可以并行的执行4个程序。

共享

共享即资源共享,是指系统中的资源可以供内存多个并发执行的进程同时使用。

alt text

所谓同时往往是指宏观上的,而在微观上,这些进程可能是交替的访问资源的。

比如:

  • 互斥共享方式:使用QQ和微信视频。同一时间内摄像头只能分配给一个进程。
  • 同时共享方式:使用QQ发送文件A,微信发生文件B。宏观上看,两边同时读取并发送文件,说两个进程都在访问硬盘,从中读取数据。微观上看,两个进程都是交替访问硬盘的。

并发和共享关系

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

使用QQ发送文件A,微信发送文件B

  • 两个进程正在并发执行(并发性)。如果失去并发性,则系统中只有一个程序运行,共享性就失去了意义。
  • 需要共享地访问硬盘资源(共享性)。如果失去共享性,则QQ和微信就不能同时访问硬盘资源,就无法实现同时发送文件,也就无法并发。

虚拟

虚拟是指把一个物理上的实体变为逻辑上的对应物。物理实体(前者)是试剂存在的,而逻辑上对应物(后者)是用户感受到的。

举例:GTA5需要5GB的运行内存,QQ需要256MB的内存,迅雷需要256MB的内存,网易云音乐需要256MB的内存。我的电脑只有4GB的内存。这些程序运行需要的内存远大于4GB,那么为什么它们还可以在我的电脑正常运行呢?

这是虚拟存储器技术。实际上只有4GB内存,但是在用户看来似乎远远大于4GB。

举例:某单核计算机中用户可以同时运行多个软件,既然一个程序需要被分配CPU才能运行,那么为什么单核CPU的电脑中可以同时运行多个程序呢?

这是虚拟处理器技术。实际上只有一个单核CPU,在用户看来似乎有6个CPU在同时为自己服务。

alt text

异步

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

举例:在网络服务中,如果程序A需要进行耗时的IO,查询数据库的操作,另外程序B需要占用CPU。此时如果程序A一直占用的CPU,导致CPU死等,会使系统的并发度降低,CPU利用率不高。所以此时可以让程序A暂时休眠,让出CPU资源。

在这个过程中,系统的CPU资源有限,因此进程的执行不是一贯到底的,而是走走停停,以不可预知的速度前进的。如果失去了并发性,即系只能串行的执行各个程序,那么每个程序的执行会一贯到底。

==只有系统拥有并发性,才有可能到时异步性==