操作系统相关概念

相关概念

1、并发与并行:

 例子:

  1. 顺序执行:你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行。
  2. 并发:你吃饭吃到一半,电话来了,你停了下来接了电话,接完后继续吃饭,这说明你支持并发。
  3. 并行:你吃饭吃到一半,电话来了,你一边打电话一边吃饭,这说明你支持并行。
  • 并发:一段时间内有多个程序执行。
  • 并行:某一个时间点上有多个程序执行。(多个cpu)

并发和并行的意义:

        并发和并行都可以处理“多任务”,二者的主要区别在于是否是“同时进行”多个的任务。但是涉及到任务分解(有先后依赖的任务就不能做到并行)、任务运行(可能要考虑互斥、锁、共享等)、结果合并。

2、分时

        分时操作系统是把CPU的时间划分成长短基本相同的时间区间,即"时间片",通过操作系统的管理,把这些时间片依次轮流地分配给各个用户使用.如果某个作业在时间片结束之前,整个任务还没有完成,那么该作业就被暂停下来,放弃CPU,等待下一轮循环再继续做.此时CPU又分配给另一个作业去使用.由于计算机的处理速度很快,只要时间片的间隔取得适当,那么一个用户作业从用完分配给它的一个时间片到获得下一个CPU时间片,中间有所"停顿";但用户察觉不出来,好像整个系统全由它"独占"似的。
        为了提高程序执行效率,大家在很多应用中都采用了多线程模式,这样可以将原来的序列化执行变为并行执行,任务的分解以及并行执行能够极大地提高程序的运行效率。但这都是代码级别的表现,而硬件是如何支持的呢?那就要靠CPU的时间片模式来说明这一切。程序的任何指令的执行往往都会要竞争CPU这个最宝贵的资源,不论你的程序分成了多少个线程去执行不同的任务,他们都必须排队等待获取这个资源来计算和处理命令。先看看单CPU的情况。

3、VMM

        虚拟机管理器(virtual machine monitor,VMM)是一个宿主程序,它允许一台计算机支持多个完全相同的执行环境。每位用户都会感觉到自己在一台独立的、与其他用户相隔离的计算机上操作,尽管事实上为每位用户提供服务的都是同一台机器。在此种情况下,一台虚拟机就是由一个潜在的控制程序管理的操作系统。

        VMWare是VMM的一大供应商,美国上市公司。它的VMM产品目前有两大系列:免费的ESXi,收费的vSphere。ESXi支持服务器整合等基本的VMM功能,而vSphere则支持了更多的更高级的特性,比如动态迁移、负载均衡,这些高级功能可以让基于VMM之上的应用有更高的可用性、可靠性、容灾度等。当然,vSphere也是比较贵的,买过的人都知道。

猜你喜欢

转载自blog.csdn.net/JinXYan/article/details/88756241
今日推荐