Windows 95

微軟公司推出的操作系統

Windows95是微軟公司1995年8月24日推出的操作系統。Windows95是一個混合的16位/32位Windows操作系統,其版本號為4.0,開發代號為Chicago。

Windows95是第一次拋棄了對前一代16位x86的支持,因此它要求英特爾公司的80386處理器或者在保護模式下運行於一個兼容的速度更快的處理器。同時也是第一個特別捆綁了一個版本的DOS的視窗版本(MicrosoftDOS7.0)。它帶來了更強大的、更穩定、更實用的桌面圖形用戶界面,同時也結束了桌面操作系統間的競爭。在它發行的一兩年內,它成為有史以來最成功的操作系統之一。

Windows95是微軟之前獨立的操作系統MS-DOS和視窗產品的直接後續版本。它以對GUI的重要的改進和底層工作為特徵。這樣,微軟就可以保持由視窗3.x創建起來的GUI市場的統治地位,同時使得微軟的產品可以提供對系統的底層操作服務。(技術上說,Windows圖形用戶界面可以在DR-DOS上運行,也可能可以在PC-DOS上運行——這個情況直到幾年後在法庭上被揭示,這時其它一些主要的DOS市場的商家已經退出市場了)。

發展歷程


產品發布

1995年8月24日,伴隨著滾石樂隊震耳欲聾的《Start Me Up》,微軟發布了 Windows 95。Windows 95是Windows 3.x的後續版本,拋棄了對前一代16位x86的支持,帶來了更強大的、更穩定、更實用的桌面圖形用戶界面。Windows 95是微軟最成功的操作系統之一。為Windows 95做廣告,微軟花了3億美元。
Windows95發布會
Windows95發布會
Windows 95的發布現場是位於雷蒙德大學校園內的一個12英畝的運動場,全球共有7萬多人通過衛星轉播觀看了此次發布會,媒體的報道也是鋪天蓋地。
微軟對Windows 95中文版精雕細刻、力求完美。據統計,微軟在開發Windows 95中文版過程中總共投入了近10萬人/小時;共派發了6000多套測試版本供用戶測試及徵求建議。與以往的Windows中文版本相比,Windows 95中文版是微軟投入力量最大、持續開發時間最長、與西文版本推出的時間差最短的中文版本。
中國廣大計算機用戶十分關注Windows 95中文版的發展,並表現出濃厚的興趣。很多政府機構、企業用戶和個人用戶紛紛表露了將安裝該軟體的意向;一些軟體開發商也正在Windows 95中文版的基礎上開發系列應用軟體。將與Windows 95中文版一同交付生產的,還有Microsoft Office 95中文標準版和專業版軟體。
Windows95Logo
Windows95Logo
Office 95中文標準版內含Microsoft Word 7.0中文版字處理軟體、Microsoft Excel 7.0中文版電子表格軟體和Microsoft PowerPoint 7.0演示圖形軟體。Office 95中文專業版內除含有以上3個軟體外,還另有Microsoft Visual FoxPro3.0中文版標準版關係資料庫開發軟體。

發展歷史

Windows 95是一個混合的16位/32位Windows操作系統,其版本號為4.0,開發代號為Chicago。1995年8月24日發行。Windows 95是微軟之前獨立的操作系統MS-DOS和Microsoft Windows 1.x、2.x、3.x各系統的直接後續版本。第一次拋棄了對前一代16位x86的支持,因此它要求英特爾的80386處理器或者在保護模式下運行於一個兼容的速度更快的處理器。它以對圖形用戶界面的重要的改進和底層工作(underlying workings)為特徵。同時也是第一個特別捆綁了一個版本的DOS的視窗版本(MS-DOS 7.0)。這樣,微軟就可以保持由Windows 3.x創建起來的GUI市場的統治地位,同時使得沒有非微軟的產品可以提供對系統的底層操作服務。也就是說,Windows 95具有雙重的角色。它帶來了更強大的、更穩定、更實用的桌面圖形用戶界面,同時也結束了桌面操作系統間的競爭。在市場上,Windows 95絕對是成功的:在它發行的一兩年內,它成為有史以來最成功的操作系統。
Windows 95以強大的攻勢進行發布,包括了商業性質的滾石樂隊的歌曲《Start Me Up》。很多沒有電腦的顧客受到宣傳的影響而排隊購買軟體,但他們甚至根本不知道Windows 95是什麼。
Windows 95新增了一個“開始”按鈕以及個人電腦桌面上的工具條,這些一直保留在Windows後來大多數的產品中。但是在Windows 8中,位於任務欄上的開始按鈕被取消。而在其後,微軟為Windows Blue(Windows 8.1)重新加上了開始按鈕!
後來的Windows 95版本附帶了Internet Explorer 3.0,然後是Internet Explorer 4.0。當Internet Explorer 4.0被集成到操作系統后,它將給系統帶來一些新特徵。Internet Explorer被用來給系統的桌面提供HTML支持。這個也是在微軟的反托拉斯案中的焦點,因為集成后的Internet Explorer排擠了微軟的競爭對手網景的產品。

系統功能


全新的用戶界面
Windows 95的用戶界面
Windows 95的用戶界面
Windows 95的全新用戶界面給用戶以全新的感受。對於初學Windows 95的用戶,會體會到Windows 95啟動和其任務欄上應用程序切換的簡便性;對於熟悉Windows 95的用戶,Windows 95將提供更多的對應用程序和Windows 95本身的控制權。
新增的程序和附件
Windows 95包含比Windows 3.X更多的程序和附件,如Microsoft Exchange、Microsoft傳真、Microsoft Network、寫字板、畫圖、電話拔號程序、文件傳送、超級終端、CD播放器、音量控制、MS-DOS方式、磁碟碎片整理程序、磁碟掃描程序、磁碟空間管理和備份。
Web伺服器功能
Microsoft個人Web伺服器是一個使用HTTP(超文本傳輸協議)按HTML文件格式傳輸信息的網路文件和應用程序伺服器。個人Web伺服器允許在Internet上或通過Internet上的區域網(LAN)發布Web頁,使用FTP(文件傳輸協議)服務發送或接收文件。
對便攜機的強力支持
無論在家中還旅行途中,都可以通過Windows 95使用便攜機實現諸如公文包、直接電纜聯接和推遲列印等功能。公文包功能可以用來在兩台計算機之間(如隨身攜帶的便攜機和辦公室的計算機)更新文件。直接電纜聯接功能是指使用一根串列電纜或高速并行電纜將便攜機與其他計算機聯接,這樣可以通過便攜機訪問該計算機和與之相聯的網路,並使用其中的共享資源。Windows 95的推遲列印特性是指在計算機和印表機斷開的情況下仍可以將文檔發送到印表機,當計算機重瓣與印表機聯接時,自動將要列印的文檔送到印表機列印。
NetWare目錄服務
如果計算機聯接到了正運行NetWare Directory Services(NDS)的Novell NetWare網路,在登錄到Windows 95時可以登錄到NDS,實現對NetWare資源的訪問和管理。
聯網功能
Windows 95使用了新的聯網技術,提供簡捷的網路瀏覽方式、資源共享方式、網路安裝和配置操作、撥號網路和遠程網路管理等。撥號網路功能利用數據機,實現網路互聯。通過遠程管理功能,網路系統管理員可以查看正在使用的計算機上的文件,並幫助解決問題。豐富多彩的Windows設計方案。
彩蛋
Windows愛好者和逆向工程師 Albacore 一直在研究 Windows 95,並在 IE4 Internet Mail 應用中發現了一個至今未知的彩蛋。當該打開應用程序時,轉到“關於”界面,選擇其中一個文件,並鍵入“Mortimer”,你將看到一個滾動窗口,會列出應用程序的開發人員的名稱。這個彩蛋此前並沒有被發現過。

系統版本


Windows 95 安裝光碟
Windows 95 安裝光碟
Windows 95共有五種版本:
1:Windows 95 Original Release(Windows 95初始版本)
2:Windows 95 A-包括Windows 95 Service Pack 1
3:Windows 95 B-(OSR2)包括一些改良例如Internet Explorer 3.0和FAT32的支持
4:Windows 95 B-USB-OSR2.1,包括基本的USB支持
5:Windows 95 C-(OSR 2.5)包括以上所有功能和Internet Explorer 4.0,是最後的Windows 95版本
OSR2、OSR2.1和OSR2.5並沒有對公眾發布,而是給與廠商預先安裝在電腦上。Windows 95 OEM Service Release 2(簡稱“Windows 95 OSR2”)是微軟提供給計算機廠商的一個含有更新的版本,增加了例如USB、FAT32等功能。在市場上也有人把它稱作是“Windows 97”。

使用說明


系統問題

雖然Windows 95是首款32位系統,但由於又與16位系統混合,因此從總體上來說它也是微軟公司第一款16位和32位的混合操作系統。所以Windows 95的主要缺點
Windows95藍屏
Windows95藍屏
就是穩定性,藍屏、死機對Windows 95而言算得上是家常便飯,那時Windows 95被戲稱為“瘟酒屋”、“瘟都死”。因此在一年之後才出現了Windows 95的修正版:Windows 95 OSR2,在中國又被稱作Windows 97。

系統結構

系統保護環
Windows 95充分利用386處理器的能力,支援兩個特權級。它用0和3兩個特權級管理微處理器,也可稱為兩個環。環0中的部件是操作系統的底層,如包括對低級內存儲器管理的支持,環0里的軟體在整個系統中功能最強,包括了幾乎所有微處理器的指令,並能存取關鍵的數據結構,如頁表等。因此環0里的軟體最可靠。
Windows 95允許用戶安裝新的虛擬設備驅動程序(VXD),這些VXD可以支持后加的硬體或提供系統範圍內的軟體服務。VXD都在環0里運作,因此,如果VXD有一點差錯,就會使整個系統崩潰。而如果要開發一種軟體,使其能和失敗的VXD分離,那將是非常困難的。
在Intel處理器中,環的過度(特權級的改變)會增加程序的運作時間,以Intel 486為例,如果沒有環的過度,一個子程序調用另一個段中的代碼需要20個時鐘周期,有環的過度則需要69個時鐘周期。這是因為當處理器的特權級變化時,處理器控制會發生變化,寄存器要重裝。因此,較少的環過度意味著性能的提高,這也是Windows 95把其圓形系統的多數代碼放在環3的主要原因。
32位:Windows應用程序優先裝入的空間為4MB—1.5GB,標準開發工具也預設地用這個空間,這主要和Windows NT相匹配。當然,用戶也可以選擇較低的地址空間,這時,用戶需要做起額外的工作。系統為每個32位應用標記的低16KB空間不可獲得,這主要是為了捕獲程式的錯誤。許多程式常犯的錯誤是使用空指針,在Windows 95中,空地址將產生內存儲器錯誤,這對開發者及時發現指針錯誤是有益的。
虛擬機管理器
虛擬機管理器VMM是Windows 95系統的核心,VMM的效率對整個系統的性能有著重要影響。系統中許多複雜的部件都在這裡。虛擬機管理器的代碼包含以下幾項特性:在每個過程的私有地址空間里,32位的Windows應用程序都是搶先調度的;每個32位的應用程序有一個私有的消息隊列;VXD能夠動態裝載和定位,減少系統的操作集;許多系統資源都是按32位內存儲器模式開發的,大大提高了系統能力。
Windows 95有兩種基本的VM:一是系統VM,KERNEL,USER,GDI部件和Windows的應用程序都在這裡;M是MS-DOS VM,運作一個MS-DOS應用程序,這個程序既能運作在虛擬8086模式,也能運作在保護模式。
支持MS-DOS應用程序
Windows支持MS-DOS應用程序,這就意味著當用戶工作基於DOS的應 用時,不必離開Windows 95。Windows 95軟體也提供最新的MS-DOS 6.X版的代碼和數據。Windows 95支持單一的MS-DOS應用模式。這種模式對MS-DOS應用提供絕對的兼容性。雖然開發人員做了很大的努力,使更多的MS-DOS程序能在MS-DOS VM下運作,但這種單一的MS-DOS應用模式為那些不能在Windows下運作的MS-DOS程序提供真正的兼容性,這就是說,此模式對以前的DOS版本向下兼容。 Windows 95因MS-DOS之關係,與Windows 3.1的最大區別是:基於Windows的應用完全不需要MS-DOS代碼支持。Windows已有許多的版本(如Windows 3.1,Windows for Workgroups 3.1,Windows 3.11等),每種都支持越來越多的MS-DOS INT軟體服務。而且,基於Windows的應用程序在進出虛擬86模式時,對MS-DOS代碼的需要也在減少。
虛擬機調度方式
Windows 95 升級版包裝盒
Windows 95 升級版包裝盒
Windows 95 中的過程調度和虛擬機管理關係十分密切。在Windows 95中,線程是系統調度程序要處理的主要對象,也是調度的基本單元,假如用戶熟悉Windows NT,就會習慣處理線程。線程的特徵:
1:在過程里是一個可執行路徑;
2:能夠被任何32位的Windows程序或運作在Windows 95里的VXD創建;
3:有自己私有的堆疊存儲器和執行價前後關係;
4:固定的過程分享存儲器;
5:一個過程可以創建許多併發的線程。
調試程序
Windows 95的VMM實際上有兩個調試程序,即主調度程序和時間片調度程序。前者負責並保證最高優先順序的線程一直在執行;後者負責動態調整線程的優先順序,以便提供合理的多任務。
首先,主調度程序先檢查系統中的每一個線程,然後選擇出優先順序最高的線程來執行。為了與Windows NT兼容,優先順序從0到31,共32級,數字越大優先順序越高。同時,為了與以前的Windows版本兼容,設備驅動程序的優先順序能設置成比這32級還高。比最高優先順序低的線程,主調度程序不予考慮。這裡,最高優先順序未必是31,假如只有兩個線程,優先順序一個是20,一個是16,那麼最高優先順序就是20;如果此時又來一個優先順序是21的線程,那麼21就成為最高優先順序。
除了純粹的定量求優先順序的值外,時間調度程序根據當前VM的狀態來決定時間片的分配。假如一個VM在當前的執行焦點(典型)情況是它的視窗是顯示的活動視窗,那麼,它就是前台VM。當重新計算當前優先順序時,調度程序就使前台的優先順序提高,而其他VM作為後台考慮,繼續沒有升高的優先順序。
系統虛擬機內的調度
系統服務基本結構
系統服務基本結構
所有基於Windows應用程序的線程都運作在系統VM下,它是支持多任務的唯一VM。系統VM中,一個支持16位應用的子系統,多個是支持32位的Windows應用的。在系統VM下,通常包括多個有效一的,具有相同優先順序的線程,為了處理這種情況,調度程序採用Round→Robin調度策略,以確保每個線程公平分配時間片。一旦系統VM中的線程用完了給它的時間片,調度程序就把它放到了這種優先順序相同的線程尾部。假如選擇的線程失敗地用完了分給它的時間片,那麼,調度程序就把處理器交給下一個優先順序相同的線程,並允許失敗的線程利用時間片的剩餘部分。
調度程序控制
調度程序控制有兩種不同的影響,一種是它本身的一套內部演演算法,試圖為每個線程提供一種平滑的多任務環境。“平滑”的目標是給線程提供一個合理的處理器時間,既要使它能很好地完成工作,又不能太長,以免其他線程被鎖住的時間太長。另一個對調度程序的影響是VXD能夠直接調用的一套系統服務。為了達到這一目的,調度程序內部採用了三種線程優先順序的動態升高,定時的損耗優先順序的繼承。
線程的應用
Windows的設計者面臨的問題之一是如何更好地處理失敗的運作程序。要開發完全沒有錯誤的軟體是不可能的,因此,Windows必須能夠處理應用程序中的錯誤。其處理過程包括兩步:一是恰當地處理失敗的程序,即允許用戶關閉應用而不掉失數據;二是做好後續的事,除了打開檔案外,應用程序都會利用和處理系統提供的資源,如內存儲器段、筆、刷等。假如系統不能釋放這些資源佔用的內存儲器,那麼可以獲得的資源就會減少。
大多數應用程序共有的錯誤都是定址時引起的錯誤。這類錯誤是由於應用程序試圖用無效的指針指向某些對象引起的。在Windows 3.1下就產生GP錯誤,用戶會看到一個對話框,它提供了產生錯誤的程序模塊的細節以及關閉錯誤程序的選項。
支持多消息隊列
Windows程序都是事件驅動的,這種特性要求系統能提供一種由應用程序傳遞消息的方法。消息可由設備驅動程序、應用程序和系統發出。系統把所有硬體的初始化消息放在一個被稱為原始輸入隊列(RawInput Queue)的數據結構中。
Windows 95支持多消息隊列,這種設計的改進來自Windows NT。因為有效的消息流對好的響應時間和平滑多任務是極其重要的,而這種支持多消息隊列的設計技術是關鍵。它能夠保證系統在一個應用程序失敗時不至於死鎖。這種多消息隊列技術稱做“非同步輸入”(Input Desynchronization)。在Windows 95下,經原始輸入隊列添加消息十分簡單。系統中還有一個運作的線程,它有規律地把這消息移出隊列轉到各個私有應用消息隊列。這種隊列有兩種:所有16位應用程序的單一隊列和所有32位應用程序中的線程的私有隊列。
API層
結構
結構
Win32 API是Microsoft公司的戰略性系統介面,它第一次出現在Wi ndows NT中,並把其子集Win32 API引入到Windows 3.1中。正是由於Win32 API的強大功能及遠大前途,Windows 95也包含了Win32。Microsoft公司希望每個應用程序都是32位的,而目前許多應用程序都是16位的。因此,Windows 95的特性必須支持16位應用程序。對於Windows 95,這就意味著要有新的編譯器、彙編器和連接程序來開發32位應用程序。系統自身至少必須提供32位版本的包含KERNEL、USER和GDI的Windows子系統來支持新的Win32 API。這些代碼必須小、速度快、易於測試,還要有好的文檔。
16/32位代碼混合
代碼混合技術在以前的Windows版本、OS/2和Windows NT中都已使用過,Windows 95中也用了這種技術,並解決了以下問題:
1:32位代碼使用32位線性定址,而16位代碼使用16位段選擇器加16位偏移量來定址。要使代碼混合使用,必須在兩種定址方式之間有一種轉換。解決這個問題的方法,包含一種稱為“貼瓦”i-link"護的技術,即系統分配一個新的16位段選擇子,它描述的存儲器能覆蓋此時存儲器包含的參數。
2:在C語言中,基於Win32的應用中整型是32位,而在16位的應用中是16位的。當調用16位代碼時,32位的整數參數必須轉換成16位,返回時擴展成32位。如果參數在寄存器中,這種轉換就容易些。但許多Windows函數把參數放在堆疊中。
3:返回32位值(如指針)的16位代碼要用DX:AX這對寄存器,而32位代碼希望返回值放入EAX寄存器中。
4:32位代碼用386的SS:ESP寄存器對為堆疊定址,而16位代碼用SS:SP寄存器對。這就必須進行反覆的寄存器交換,可能還要進行參數拷貝。

支持狀態

Windows 95已經無法支持最新硬體,如需使用Windows 95系統,可以選擇在虛擬機中運行Windows 95,從而在新式計算機上面運行那些為Windows 95開發的老程序。

遊戲

遊戲也開始在Windows下面運行得比較快了。因為在Windows 95面世以前,那些運行在Windows下的遊戲都是被取笑的對象。它們又慢,又難看,而且玩起來很無聊。人人都知道好遊戲都要在DOS下面運行,否則它就根本算不上遊戲。終於,Windows 95改變了這一切。遊戲玩家再也不需要為獲得可用的基本內存和擴展內存來運行某個遊戲程序而整天折騰config.sys和autoexec.bat了。

社會影響


Windows 95的應用標明了一個“開始”按鈕的介紹以及桌面個人電腦桌面上的工具條,這一直保留到後續的各種版本Windows所有操作系統當中,並不斷得到完善,直到Windows 8“開始”按鈕和菜單的取消,換來的是新的“開始”屏幕(在Windows 8.1當中恢復了開始按鈕),不過Windows 10恢復了“開始”菜單,Windows 10“開始”菜單與“開始”屏幕都有。
Windows 95的升級版本是Windows 98、Windows 98 SE(SE意思就是Second Edition;即為Windows 98操作系統第二版)、Windows Me,它們均採用Windows 9x內核。而Windows NT 4.0、Windows 2000、Windows XPWindows Server 2003、Windows Vista、Windows server 2008、Windows 7、Windows Server 2008R2、Windows 8、Windows Server 2012、Windows 8.1、Windows server 2012 R2、Windows 10、Windows server 2016等windows操作系統則都是均採用Windows NT內核,只屬於Windows NT 4.0的後續版本。