正在阅读:操作系统发展历史与虚拟化趋势操作系统发展历史与虚拟化趋势

2007-11-06 11:08 出处:PConline 作者:网络文摘 责任编辑:gongjianhui

  

  今天,虚拟化象一股旋风席卷全球IT业界,且颇有愈演愈烈之势。相信你在很多场合都曾听到过有人在谈虚拟化。由于虚拟化技术的蓬勃发展,使得很多业内人士产生了虚拟化即将取代操作系统的想法。

  在通常的观念中,应用程序总是需要一个操作系统才能运行?然而BEA的WebLogic Server 虚拟版或者WLS-VE是这样的传统观念将被彻底打破。它用一种基于微内核的Java虚拟机LiquidVM替代了传统的操作系统。Java 虚拟机(VM)直接在VMware虚拟化系统管理程序上运行,不需要Windows或者Linux。

  基于Java的应用程序是不需要通用的操作系统来运行的理想产品,因为他们已经运行在一个Java虚拟机内了。这一Java虚拟机能够抽象出Windows、Linux和Unix操作系统。Java虚拟机还可以提供一些操作系统的功能,包括内存和CPU分配,还包括网络(请见下表)。此外,BEA还添加了其他的功能,比如通常都由操作系统来处理的I/O管理功能。

  

虚拟化冲击操作系统

虚拟化冲击操作系统

  同时,虚拟化的系统管理程序还能处理其他的功能,比如加载设备驱动程序,这一功能原来也通常是由操作系统来完成的。

  由此,看来虚拟化的发展和操作系统的发展有着相当密切的联系。因此要预测虚拟化技术未来的发展轨迹一定要细致得研究操作系统的发展历史。

  操作系统简介

  
  操作系统(Operating System,简称OS)是管理计算机系统的全部硬件资源包括软件资源及数据资源;控制程序运行;改善人机界面;为其它应用软件提供支持等,使计算机系统所有资源最大限度地发挥作用,为用户提供方便的、有效的、友善的服务界面。

  操作系统通常是最靠近硬件的一层系统软件,它把硬件裸机改造成为功能完善的一台虚拟机,使得计算机系统的使用和管理更加方便,计算机资源的利用效率更高,上层的应用程序可以获得比硬件提供的功能更多的支持。

  操作系统是一个庞大的管理控制程序,大致包括5个方面的管理功能:进程与处理机管理、作业管理、存储管理、设备管理、文件管理。目前微机上常见的操作系统有DOS、OS/2、UNIX、XENIX、LINUX、Windows2000、Netware等。

  计算机资源可分为两大类:硬件资源和软件资源。硬件资源指组成计算机的硬设备,如中央处理机、主存储器、磁带存储器、打印机、显示器、键盘输入设备等。软件资源主要指存储于计算机中的各种数据和程序。系统的硬件资源和软件资源都由操作系统根据用户需求按一定的策略分配和调度。

  操作系统的处理器管理根据一定的策略将处理器交替地分配给系统内等待运行的程序。

  操作系统的设备管理负责分配和回收外部设备,以及控制外部设备按用户程序的要求进行操作。

  操作系统的文件管理向用户提供创建文件、撤消文件、读写文件、打开和关闭文件等功能。

  操作系统的存储管理功能是管理内存资源。主要实现内存的分配与回收,存储保护以及内存扩充。

  操作系统的作业管理功能是为用户提供一个使用系统的良好环境,使用户能有效地组织自己的工作流程,并使整个系统高效地运行。

  操作系统经历的几个阶段   

  早期的计算机没有操作系统。用户有单独的机器,他(她)会带着记录有程序和数据的卡片(punch card)或較後期的打孔纸带去操作机器。程序读入机器后,机器就开始工作直到程序停止。由于程序难免有误,所以机器通常都会中途崩溃。程序一般通过控制板的开关和状态灯来调试。据说图灵能非常熟练地用这种方法操作 Manchester Mark I 机器。
   
后来,机器引入帮助程序输入输出等工作的代码库。这是现代操作系统的起源。然而,机器每次只能执行一件任务。在英国剑桥大学,这些任务的磁带从前是排成一排挂在衣钩上的,衣钩的颜色代表任务的优先级。

  概念意义上的操作系统和通俗意义上的操作系统差距越来越大。通俗意义上的操作系统为了方便而把最普通的包和应用程序的集合包括在操作系统内。随着操作系统的发展,一些功能更强的“第二类”操作系统软件也被包括进去。在今天,没有图形界面和各种文件浏览器已经不能称为一个真正的操作系统了。

  大型机时代

  
  早期的操作系统非常多样化,生产商生产出针对各自硬件的系统。每一个操作系统都有很不同的命令模式、操作过程和调试工具,即使它们来自同一个生产商。最能反映这一状况的是,厂家每生产一台新的机器都会配备一套新的操作系统。这种情况一直持续到二十世纪六十年代IBM公司开发了System/360系列机器。尽管这些机器在性能上有明显的差异,但是他们有统一的操作系统——OS/360(在开发OS/360过程中遇到的问题在Fred Brooks写的软件工程经典之作《人月神话》中详细地叙述了)。

  OS/360的成功陆续地催化出MFT、MVT、SVS、MVS、MVS/XA、MVS/ESA、OS/390和z/OS。

  小型机和UNIX的崛起

  
  UNIX操作系统是由AT&T公司开发出来的。由于它的早期版本是完全免费的,可以轻易获得并随意修改,所以它得到了广泛的接受。后来,它成为开发小型机操作系统的起点。由于早期的广泛应用,它已经成为的操作系统的典范。不过,它始终属于AT&T公司,只有那些能负担的起许可费的企业才用得起,这限制了它的应用范围。

  早期的操作系统是可以被用户软件所利用的功能的集合。一些有能力的公司发展更好的系统,但他们不支持其他公司硬件的特性。

  60年代末70年代初,几种硬件支持相似的或提供端口的软件可在多种系统上运行。早期的系统已经利用微程序来在他们的系统上实现功能。事实上,除了360/165和360/168外,360/40之后的大部分360系列的机器都实行微程序设计。

  个人计算机时代:

  
  Apple, DOS 和以后微型处理器的发展使计算机的应用普及至中小企及个人爱好者。而计算机的普及又推动了硬件组件公共接口的发展(如S-100,SS-50,Apple II,ISA和PCI总线),并逐渐地要求有一种“标准”的操作系统去控制它们。在这些早期的计算机中,主要的操作系统是8080/8085/Z-80 CPU用的Digital Research’s CP/M-80,它建立在数码设备公司(Digital Research)几个操作系统的基础上,主要针对PDP-11架构。在此基础上又产生了MS-DOS(或IBM公司的PC-DOS)。这些计算机在ROM(只读存储器)都有一个小小的启动程序,可以把操作系统从磁盘装载到内存。IBM-PC系列的BIOS是这一思想的延伸。自1981年第一台IBM-PC诞生以来,BIOS的功能得到不断地增强。

  随着显示设备和处理其成本的降低,很多操作系统都开始提供图形用户界面。如:许多UNIX提供的X Window一类的系统、微软的Windows系统、苹果公司的Mac系统和IBM公司的OS/2等。最初的图形用户界面是由Xerox Palo Alto研究中心70年代初期研发出来的,之后被许多公司模仿,继承发展。

  操作系统虚拟化

  2006年11月8日,权威研究机构Gartner发布了一份服务器技术发展的研究报告,其中有一个不同寻常的预测:到2010年,共享的操作系统虚拟化将成为主流虚拟化技术。文中提到的服务器操作系统虚拟化厂商包括:Sun Solaris Containers、SWsoft Virtuozzo,以及IBM z/OS和HP。

  操作系统虚拟化强调的是在单一操作系统内核实例的基础上实现虚拟化,这一点是它与虚拟机技术的最本质的不同。虚拟机技术,无论是VMM,Hypervisor,还是ParaVirtualization并行虚拟化,都是在多个虚拟的硬件层上安装多个Guest操作系统,然后再运行应用程序。比较两台分别采用操作系统虚拟化和虚拟机技术的服务器,我们看到的最明显的差异就是操作系统实例数量的不同。有趣的是,这一点核心差异同时构成了操作系统虚拟化的最大优势和最大劣势。由于只有一个操作系统内核,少了虚拟机和Guest操作系统两个资源消耗层次,操作系统虚拟化的运行效率、理论最大密度和运行在虚拟环境中的应用性能都天生超过虚拟机技术,减少了操作系统实例的数量也意味着在安装部署、补丁升级、备份迁移的数据量和效率等管理特性上的优势;同理,操作系统虚拟化只能是同一种操作系统的划分和衍生,无法支持异种操作系统并存于同一个物理服务器之上,同时由于虚拟环境不完全等同于一份完整的操作系统,某些需要直接访问硬件层(无论是虚拟的还是物理的)的应用无法在操作系统虚拟化环境中运行。

  操作系统虚拟化技术的出现、成熟和走向主流,对于企业而言,意味着除了既有的虚拟机技术而言又多了一种选择。

  

为您推荐

加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多

服务器论坛帖子排行

最高点击 最高回复 最新
最新资讯离线随时看 聊天吐槽赢奖品