王俊明
jmgwang@gmail.com
目前來說,個人電腦(PC)世界是以IBM-PC規格為主,占有了最大的市場。這樣的規格最早是由IBM在1981所訂定的,並開放給任何廠商自由製造。而這種電腦所使用的作業系統,目前則以Microsoft公司所發行的Windows系列為主,在PC作業系統市場中占有了最主要的部分。
作業系統在電腦系統中主要扮演兩個角色:一是分配管理系統資源,二是提供使用者介面。在1965年左右,電腦都是採用批次處理的方式運作,以組合語言撰寫電腦所能處理的功能,與硬體密不可分。嚴格來說,算是機器的一部分,而無法獨立運作或稱之為「作業系統」。
1969年Ken Thompson在AT&T的Bell實驗室中,嘗試開發出了一種通用型的處理程式。並經過幾年的改良後,研究出一種可以移植到各種機器上的作業系統,稱之為UNIX。為了使UNIX的開發更容易與維護,他們設計出一種新的高階程式語言C,奠定了UNIX普及化的基礎。而C語言也因為UNIX流行的關係,而成為最多程式設計師使用,及最主流的程式語言。
到了1976年,UNIX被AT&T允許開放到以外的地方,並被一些大學等研究機構改良出另一個版本BSD。自此,UNIX及BSD便分別在商業界及學術界各占有了相當的地位。之後也因為許多人投入改良,而造就出許多版本,一直到1985年左右,才有了POSIX標準,使UNIX得以進行整合。
因為UNIX在作業系統的重要性,使得其管理觀念,像是檔案樹狀結構、命令列操作模示、簡單文字檔案表現、及週邊設備的綜合化存取,幾乎影響後來許多PC作業系統的發展。像後面所要介紹的微軟的DOS及Windows,新一代的MacOS,及Linux,都可以視為UNIX系統的改良。由此可見,UNIX在作業系統界中所扮演的重要地位。
1970年代以前,所謂的「電腦」是那種動不動就占用了一間房間的大機器,由專業人員以專業的指令或動作操作電腦,一般人更是可望而不可及。當時賣這種電腦最大的公司就是IBM,它們也因為商業界對電腦的大量需求,而成為了世界上最大的電腦科技公司。
1971年時,大型積體電路出現,開始有人以這種零件為基礎,設計便宜而功能較小的電腦,通常我們稱這種電腦為個人電腦。在1977年時,Jobs創立了蘋果電腦公司,推出一台個人電腦產品Apple II,並因為市場上的需求,而成為銷路最好的個人電腦。Apple II內建BASIC程式語言,可以作運算或用來執行電腦遊戲,因此有人將這樣的操作模式視為Apple II的人機界面,而視其為作業系統的一部分。
有鑒於Apple公司的成功,因此IBM也試著投入個人電腦的市場。但因為公司內部不統一的聲音,以及為了減低生產的成本,於是IBM決定將規格開放,由市場上各公司來協助生產。所採用的晶片是INTEL改良自8088CPU晶片8086,而作業系統則使用一間小軟體公司Micro Soft所設計的MS-DOS,這樣一部電腦便在1981年推出,通常稱為IBM-PC。MS-DOS是當時Bill Gates是買下Dirty DOS,改良後所推出來的產品,以UNIX的操作模式為基礎設計而來,因此執行方式也是以下指令的方式進行。MS-DOS使用上並不是很方便,但因為IBM-PC的價格便宜,且Bill Gates幾乎是以完全免費的方式附送MS-DOS,便使MS-DOS成為所有IBM-PC使用者最優先考慮安裝的作業系統。
IBM-PC因為價格便宜很快的占有了大部份的個人電腦市場,而其作業系統MS-DOS也成為所有使用者接觸電腦時最常見的操作介面。由於MS-DOS是以鍵盤下指令的方式操作,因此學習「鍵盤指令」已經成為理所當然的電腦操作方法。但當Jobs在PARC實驗室看到圖形化使用介面(GUI)的研發後,讓他找到了個人電腦應有的靈魂,便回到公司建議生產一種圖形化介面的個人電腦。1984年Apple推出了一台以滑鼠操作的電腦──麥金塔(Macintosh),使用的作業系統稱為MacOS,但也有人以其內部的核心程式Finder來稱呼。這種電腦只要以滑鼠點選螢幕上的圖形(icon),再搭配一些拖曳的動作,便可以執行許多常見的處理功能,改變了人們使用電腦的觀念,也使得電腦不再是那些受過長時間電腦操作訓練的人才能使用的工具。諷刺的是,當時jobs所主持的其實是另一個被稱為Lisa的計劃,但因為麥金塔的成功,Lisa的失敗,使得他在1985年被迫離開公司。
受到麥金塔成功的刺激,Bill Gates及IBM公司開始有一些改進現有作業系統的想法;然而因為IBM並不很重視個人電腦市場,所以一直到1987年才與Microsoft公司合作開發出OS/2作業系統,試圖取代MS-DOS。可能受到開發大型系統習慣的影響,使得OS/2對電腦硬體的要求過高,在當時的386電腦上表現並不好,因此,大部分的IBM-PC使用者仍然選擇使用MS-DOS作業系統。1990年,Microsoft公司自行開發出Windows 3.0加在MS-DOS上,使得IBM-PC的使用者開始有了圖形化的操作介面;並且在不久之後,較穩定成熟的產品Windows 3.1出現,使得MS-DOS+Windows 3.1已成為大多數的IBM-PC上必備的系統軟體。
此種產品的成功嚴重威脅到Apple公司的生存,於是Apple公司便以圖形化的操作界面與Microsoft有了著作權上的爭議。Apple公司主張圖形化使用介面應該算是該公司的專利,而且Windows 3.1又有很多地方又和MacOS雷同,雙方還因此還鬧上法庭。雖然在當時對Microsoft來說是一項相當嚴重的危機,可是後來因為也沒有被判定違法,再加上往後的日子總是不斷有被告的經驗,因此,像這樣的小事情到現在也就不足為奇了。在Windwos銷售大增之後,Jobs曾說:這是一個黑暗的時代,軟體的創造力已經消失,微軟的產品一點創意也沒有。即使如此,Apple及Microsoft之間的關係還是很微妙,一方面是競爭對手,一方面卻又進行某些奇怪的合作關係:像是Apple答應在MacOS上安裝IE瀏覽器,以換取Microsoft提供MacOS版本的Office。
Windows 3.1的成功,使得Microsoft完全放棄了開發OS/2的想法,轉而專心投入其Windows作業系統的市場。IBM則繼續單獨為其OS/2努力,並且以他們開發大型主機的能力,在1992年推出OS/2 2.0。這個版本的OS/2可以說是奠定其發展的基礎,像是先進的32位元及物件導向的技術(PARC實驗室的第二項重點研究),得到許多電腦展相當高的評價。然而,由於技術過於先進,因此對硬體還是有相當大的要求,以致於在當時是叫好而不叫座。1994年底,OS/2 Warp(3.0)的出現讓情況有了相當大的改變,因為當時的486已經可以支援其多DOS及Windows的使用,使得許多人轉而嘗試使用它,裝機量迅速超過麥金塔,並直逼Windows 3.x。
1995年Microsoft終於推出了完全獨立的圖形化的作業系統Windows95,以用來取代MS-DOS+Windows3.x。基於OS/2的優越及Windows95的繼承,消費者及軟體業者開始觀望最後到底誰勝出。由於Windows95是為了在OS/2站穩市場前搶先推出來的,在當時可以說問題百出,評價並不高;相反地,OS/2評價相當高,並且可以視為與IBM-PC同公司的產品,整合性也相當好。因此,從各方面來看,好像是OS/2穩操勝算,然而情況最後的發展結果卻並非如此,並且有一點出人意料之外。
Microsoft主動出擊,提供作業系統資料供業界開發軟體及驅動程式,而IBM依然擺出高高在上的姿態,等待業者自動上門索取。此外,IBM作業系統的開發在內部並不是一個受到重視的部份,就連IBM公司自行開發銷售的個人電腦,其業務員也都是主動提供Windows95。在這種高姿態及本身內部也不重視的情況下,勝負已經漸漸明朗;硬體業者以提供Windows95的驅動程式為主,軟體業界也選擇先開發Windows95的軟體,最後消費者也基於Windows3.1的使用習慣選擇了Windows95,即使IBM在1996年還是推出了OS/2 Warp 4.0,到最後還是讓Microsoft公司以Windows95搶下了最主要的市場,使得IBM也不得不放棄OS/2的開發。(PS. 但其公司內部仍宣稱永不放棄)
雖然Windows95並不是一個穩定的作業系統,可是當市場上是以Windows95為主後,大家也就只能慢慢去適應他。Microsoft公司其實也知道Windows95並不穩定,只是要使作業系統能穩定執行,勢必要放棄支援過去的DOS環境,而改以一個全新的方式來設計作業系統,於是這樣的觀念造就了Windows NT的出現(有人說,WindowsNT一部份技術來自OS/2)。但即使有了Windows NT,Microsoft公司為了相容過去的產品,仍然不斷的升級Windws95,而有了Windows98、WindowsMe等等的出現。WindowsNT則是以另一個分支發展,如後來的Windows 2000,此外並試圖以此分支來取代現有Windows95系列的作業系統,而有了Windows XP。
在IBM-PC上,除了OS/2及Windows的外,還有一種最近開始掘起的作業系統Linux。1990年左右,有人認為MS-DOS實在太精簡了,無法稱得上是一種作業系統,應該像工作站級的作業系統UNIX一樣,才能算是一種作業系統。因此,開始有人嘗試開發出一種類似UNIX的作業系統,以便將其放在個人電腦上來執行,於是在1991年有了Linux的出現。
Linux其實可以視為是一種學術性質的作業系統,因為其設計者(Linus Torvalds)設計出來後,基於學術自由的理念(free),將原始碼開放出來,使得任何人都能了解其結構,甚至去更動它。後來,大部份在上面開發應用程式的人,也會基於同樣的理念,將程式原始碼也開放出來,而成為目前相當有名所謂「自由軟體」的觀念。在這麼多人發展Linux的情況下,使得Linux有了各式各樣的版本,但維持Linux本質的我們稱為Kernel;並因為這種作業系統的公開性,任何人都有可能發現問題並修改它,因此Kernel常常一兩個星期就可能會修正一次,目前則有特定組織隨時發布最新的Kernel。
在越來越多「正義之士」投入自由軟體的行列後,為了整合各種資源,而開始有了公司或團體出現(如RedHat、Mandrake),這使得Linux的發展能更有組織更有系統。2000年RedHat Linux得到InfoWorld的年度作業系統獎,更加證明了Linux不再那麼遙不可及,開始適合一般人使用。最近,在Microsoft公司不人道的撈錢行為下,有很多人便開始轉而使用這種免費的作業系統;另外,也因為其UNIX的本質,相當適合用於架設網路主機,而其成為網路上架設各種主機的最佳選擇。
同樣的道理也發生在FreeBSD上面,有人希望能開發出在IBM-PC上跑的一種工作站作業系統BSD。在1993年開始發展,在1994年開始有了第一個版本(1.0),並在1995年有了一個較成熟的版本(2.0),漸漸有人安裝使用。類以於Linux,有越來越多的人在上面開發各式各樣的應用程式,以FreeBSD為公司內主機的人也就越來越多了。
FreeBSD及Lnux不只在發展上類似,他們的程式也多半可以互通,這得歸功於他們都是來自同一系列的作業系統,以及本身的開放性。因為Linux及FreeBSD的相似性,因此,常有人以UNIX-Like的作業系統來稱呼他們,與工作站等級的作業系統UNIX及BSD並列,目前世界上有超過七成的電腦主機是以Unix-Like的電腦所架設的。
這種開放的觀念也影響了Apple電腦新一台作業系統MacOSX,MacOSX以一種高尚華麗的操作環境,包裝了令普通使用者難以入門的UNIX,成為麥金塔電腦新一代的作業系統。在優雅的外表下,保存了Unix強大的功能;在開放的規格下,保留了程式設計師開發軟體的環境。因此各種for Mac的軟體不斷出現,開拓了Apple公司更廣大的市場。
Apple電腦在IBM-PC的操作環境也都視覺化之後,漸漸失去其特色,轉而剩下某些特定使用者在使用。然而真正的危機還不只如此,1985年Jobs因為主持公司計劃失敗,因而離開其一手創立的Apple公司。之後為了實現其夢想中偉大的個人電腦,所以另外創立了另一家電腦公司NeXT,並於1988年研發出新一台的作業系統NEXTSTEP。NEXTSTEP是以BSD UNIX為基礎所研發,能支援很多新設備,如CD-ROM、數據機,但其最大特色則是對網路的支援(PARC實驗室的第三項研究)。雖然這是一台劃時代的個人電腦,但價格卻令人不敢接近($8000-$20000)。
另一方面,Apple公司則面臨因為連年虧損,而希望謀求出路。在1990年代初期,甚至接受Bill Gates的建議,將硬體規格開放給其他公司生產,公司業務則改以MacOS銷售為主。因此這一段時間,便有一些非Apple所生產,品質差異很大的麥金塔出現。而公司內部一開始則希望能開發新的作業系統,希望能有別於Windows而打敗Windows95。到了1990年代中期,則又改變策略,希望能下當時成功的作業系統包括BeOS、Windows NT、Solaris等,最後令人吃驚的則是在1997年,以天價買進了NeXT公司($427 million)。
Jobs就這樣又到了Apple公司,並擔任代理總裁的職位。這一年開始,公司開始進行調整,首先將所有麥金塔的硬體版權全數收回,並推出新的個人電腦iMac。iMac的造型前衛,主機、光碟機、及喇叭就包含螢幕下方,彩色的外殼更改變了一般人對電腦冷冰冰的看法。一推出就賣到缺貨,公司的營收開始出現的正成長,接著並推出iBook筆記型電腦,也一樣造成轟動。
但2000年時,Apple公司便以NEXTSTEP技術為基礎,推出MacOS X版,一改過去十幾年來的視窗配置方法,而有了新一代視窗介面的設計。不僅如此,圖案色澤或是動畫展示,也遠比其他各種作業系統來得漂亮優雅,堪稱藝術的佳作。公司也正式確立了電腦主機產品兩個主軸,一個為高階使用者的Power系統,包括PowerMac及PowerBook;另一個則為普通使用者的i系列,包括iMac及iBook。
除了作業系統的改變外,蘋果電腦更朝向生活家電的設計,使其產品不但功能強大、安裝簡單,更能以炫麗的外形成為家中擺飾的一員,如iPod。過去Apple曾以GUI作業系統嘲笑IBM-PC可笑的文字界面,現在則以其優越的外形搶得了更多的風采。總是走在個人電腦尖端的蘋果公司,相信會打下一片新的世界。
2003年Android成立,研發手機作業系統
2005年:Google收購了Android科技公司,研發以linux為核心的手機作業系統。
2007年:Google與各大硬體製造商和軟體開發商成立開放手持設備聯盟,為了創建一個更加開放自由的移動電話環境。以免費開放源始碼許可證授權方式,推出Android智慧型手機作業系統。
2007年:Apple推出iPhone,使用iPhone OS。iPhone OS與MacOS X一樣,都是使用UNIX為核心,隨著iPhone的銷售成功,而相當流行。往後並陸續改版使用適用於iPad上,並於2010年改名為iOS。iOS並不開放給一般手機廠商使用。
2010年:微軟更改Windows Mobile推出Windows Phone手機作業系統,手機廠商必須付授權費才能製造使用。