操作系统

操作系统是一种使计算机和用户能进行通讯的计算机软件。操作系统控制数据流、其它程序的请求、文件的组织和管理,以及信息显示。

处理器级操作系统

早期的操作系统,多是建基于处理器上的,使用机器语言或汇编语言开发,多不具备扩展功能。

处理器级的操作系统一般是作为嵌入式系统运行于POS机、洗衣机、照相机、计算器等功能明确的专业设备上。

内核级操作系统

随着软件技术的发展,内核的概念开始形成。内核是对处理器的抽象,不再围绕处理器的机器码进行汇编,而是建立了独立的进程。在内核级操作系统中,内核而不是处理器作为系统的核心,处理器和其它许多硬件一样,使用驱动程序与内核对接。内核级的操作系统往往具有自己的扩展平台,能够以高级语言为内核级操作系统编写具备一定功能的程序,由内核将其翻译成处理器和其它硬件识得的机器码运行。

内核级操作系统的主要代表有当今最流行的Windows(x86平台)、iOS(2.0以降)、macOS、GNU/Linux等。

虚拟机级操作系统

由于内核级操作系统数量庞杂,因此出现了进一步的抽象形式——虚拟机。虚拟机的意图是“一处编写,处处运行”,即是人们只需在虚拟机上编写和执行代码,由虚拟机将其转换为内核代码或直接转换成机器码。最流行的虚拟机有Java、Flash、Silverlight三家。

虚拟机的劣势是能够开放的接口范围较为狭窄,一些硬件特有的性能无法充分发挥。尽管如此,随着软件开发向云端的转移,硬件地位降低,越来越多的操作系统选择跳过内核,而直接基于虚拟机构建自身。

虚拟机级的知名操作系统有Android、BlackBerry OS(基于Java)、WP7(基于Silverlight)等。

浏览器级操作系统

虚拟机级虽然有Java的优势地位,但总体上仍未能解决百花齐放、万马奔腾的状况。因此,使用开放并且统一的网络技术作为开发环境,并能够控制硬件的操作系统受到了越来越多的青睐。

浏览器级操作系统,指的就是这样一种基本上相当于内嵌了一个浏览器,一切的活动都是以浏览器为框架或直接通过浏览器进行的操作系统。早期一些由Flash语言编写,采用网站作为对象的“网络操作系统”,并不符合这样的定义。

浏览器级操作系统的概念早在网景时期就已提出,而网景也确有实力写出自己的操作系统。但受到当时计算能力和民众认知水平的限制,没有付诸实施。

最早正式投入使用的浏览器级操作系统,是iOS 1.0,它也是时至今日在商业上最为成功的网络操作系统。而在当时的桌面端,只有Good OS(后改名为Cloud OS)稍有名气。iOS迫于压力开放本地开发接口之后,浏览器级操作系统一度陷入低潮。但Palm公司的webOS很快接过了大旗,继续宣扬基于web技术开发本地软件的主张。与此同时,Google吸取Cloud OS的精髓理念,宣布了Chromium OS和Chrome OS计划,并利用自己的庞大影响力,真正开启了浏览器级操作系统进入桌面预装的时代。随着webOS的烟消云散,Chrome OS也开始成为当代浏览器级操作系统的旗手。目前正在研发的浏览器级操作系统还有MozillaB2G、Linux基金会牵头的泰泽等。

RIM的QNX、微软的Windows 8等也吸取了网络操作系统的部分理念。