Windows 95

Windows 95是微軟於1995年推出的電腦操作系統。Windows 95是一個混合的16位/32位Windows系統，是Windows 9x系列的第一代產品，其版本號為NT4.0，開發代號為Chicago。於1995年8月15日發行給製造商（RTM），並於1995年8月24日發行零售版。
Windows 95整合了微軟之前獨立的MS-DOS和Windows操作系統，並在其前身的基礎上進行了重大改進，最顯著的是對圖形使用者介面的重要的改進和和簡化的“即插即用”特性。操作系統的核心組件也進行了重大更改，例如從主要為協作式多任務的16位架構轉變為搶佔式多任務的32位架構；拋棄了對前一代16位x86的支持，因此它要求英特爾的80386處理器或者在保護模式下運行於一個兼容的速度更快的處理器。同時也是第一個特別捆綁一個版本的DOS的視窗版本（MS-DOS 7.0）。這樣，微軟就可以保持由Windows 3.x建立起來的GUI市場的統治地位，同時使得沒有非微軟的產品可以提供對系統的底層操作服務。也就是說，Windows 95具有雙重的角色。它帶來了更強大的、更穩定、更實用的桌面圖形用戶界面，同時也結束了桌面操作系統間的競爭。

**歷史**
Windows 95以強大的攻勢進行發佈，包括商業性質的滾石樂隊的歌曲《Start Me Up》。很多沒有電腦的顧客受到宣傳的影響而排隊購買軟件，有些人甚至不知道Windows 95是什麼。
後來的Windows 95版本附帶了Internet Explorer 3，然後是Internet Explorer 4。當Internet Explorer 4被整合到操作系統後，它將給系統帶來一些新特徵。Internet Explorer被用來給系統的桌面提供HTML支持。這個也是在微軟的反托拉斯案中的焦點，因為整合後的Internet Explorer排擠了微軟的競爭對手網景的產品。Windows 95的後續產品是Windows 98。

**版本**
Windows 95共有五種版本：- Windows 95 零售版（發佈日期1995年8月24日）- Windows 95 OEM Service Release 1（OSR1）（發佈日期1996年2月14日，包括 Windows 95 Service Pack 1）- Windows 95 OEM Service Release 2（OSR2）（發佈日期1996年8月24日，包括一些改良例如IE 3.0和FAT32的支援）
*Windows 95 OEM Service Release 2.1（OSR2.1）（發佈日期1997年8月24日，包括基本USB和AGP的支援）
*Windows 95 OEM Service Release 2.5（OSR2.5）（發佈日期1997年11月26日，包括以上版本多所有功能，另附IE 4.0與DirectX 5.0）
OSR2、OSR2.1和OSR2.5並沒有對公眾發行，而是由廠商預先安裝在電腦上。

**架構**
架構圖示Windows 95的架構由Windows for Workgroups的386增強模式演變而來，旨在最大程度地兼容現有的MS-DOS和16位Windows程序與設備驅動程序，同時提供更穩定和更出色的系統性能。Windows 95的最低運作水平包括以32位保護模式運行的大量虛擬設備驅動程序（VxD）以及以虛擬8086模式運行的一個或多個虛擬DOS計算機。虛擬驅動程序負責處理物理設備（例如視頻卡與網卡）、模擬虛擬機所使用的虛擬設備或提供各種系統服務。三個最重要的虛擬設備驅動程序分別是：
虛擬機管理器（Virtual Machine Manager / VMM32.VXD）
 負責內存管理、事件處理、中斷處理、加載和初始化虛擬設備驅動程序、創建新虛擬機以及線程調度。
配置管理器（Configuration Manager / CONFIGMG）
負責實現隨插即用功能、監控硬件配置變化、使用總線枚舉器檢測設備以及以無衝突的方式分配I/O端口、IRQ，DMA通道和內存。
可安裝文件系統管理器（Installable File System Manager）；輸入/輸出子系統（Input/Output Subsystem）
協調對支持的文件系統的訪問。Windows 95 最初附帶支持FAT12，FAT16，VFAT擴展，ISO 9660（CDFS）和網絡重定向器，而後期版本支持FAT32。
對物理媒體的訪問請求被髮送到輸入/輸出管理器，由其負責調度請求。每個物理介質都有自己的設備驅動程序：訪問磁盤由端口驅動程序執行；訪問SCSI設備則由在SCSI層上運作的微型端口驅動程序處理。端口與微型端口驅動程序繞過MS-DOS和BIOS，以32位保護模式執行讀寫操作，從而顯著提高性能。若存儲設備沒有原生Windows驅動程序，或者設備被強制以兼容模式運行，則“實模式映射器”（Real Mode Mapper）可以通過MS-DOS訪問此存儲設備。
32位Windows程序能夠自行分配內存段，且內存段的大小可以任意調整。程序無法訪問段外的存儲區。 某個程序崩潰並不會使其他程序收到損壞。而在此之前，程序會使用固定的非獨佔64KB段。雖然64KB大小是DOS和Windows 3.x系統的嚴重障礙，但缺乏對排他性的保證是造成穩定性問題的原因，因為程序有時會彼此覆蓋內存段。在Windows 3.x中，崩潰的程序會破壞其內存段周圍的進程。
Win32 API由三個模塊實現，每個模塊由一個16位和一個32位組件組成：
 內核
 提供對內存和進程管理的高級訪問，以及對文件系統的訪問。 由KRNL386.EXE、KERNEL32.DLL和VWIN32.VXD組成。
 用戶
 負責管理和繪製用戶界面組件，如窗口、菜單和按鈕。 由USER.EXE和USER32.DLL組成。
 圖形設備接口（GDI）
 負責以獨立於設備的方式繪製圖形。 由GDI.EXE和GDI32.DLL組成。

**對MS-DOS的依賴**
對於終端用戶來說，MS-DOS是Windows 95的底層組件，例如用戶可以阻止加載圖形用戶界面並將系統引導到實模式MS-DOS環境中。這引發了用戶和專業人士之間程度不小的爭論：Windows 95究竟是操作系統，還是僅僅在MS-DOS上運行的圖形外殼。
在啟動圖形用戶界面時，虛擬機管理器會接管與文件系統和磁盤相關的功能。MS-DOS本身被降級為16位設備驅動程序的兼容層。這與依賴於MS-DOS執行文件和磁盤訪問的Windows早期版本形成對比（Windows for Workgroups 3.11在啟用32位文件及磁盤訪問時也能夠在很大程度上繞過MS-DOS）。將MS-DOS保留在內存中允許Windows 95在合適的Windows驅動程序不可用時使用DOS設備驅動程序。Windows 95能夠使用所有16位Windows 3.x驅動程序。
與Windows 3.1x不同，在Windows 95中運行的DOS程序不需要為鼠標、CD-ROM及聲卡加載DOS驅動程序，而是使用Windows驅動程序。啟動Windows 95仍然需要HIMEM.SYS，但EMM386和其他內存管理器僅由舊版DOS程序所使用。此外，CONFIG.SYS和AUTOEXEC.BAT的設置對Windows程序沒有影響（除HIMEM.SYS外）。無法在Windows 3.x上運行的DOS遊戲可以在Windows 95中運行（遊戲往往會將Windows 3.x鎖定或導致其他問題）。與Windows 3.x一樣，使用EGA或VGA圖形模式的DOS程序會在窗口模式下運行（CGA和文本模式程序可以繼續以全屏模式運行）。
要激活Windows 95的MS-DOS組件，可以在啟動Windows 95之前按下F8鍵暫停默認啟動過程並顯示DOS啟動選項菜單，由此允許用戶繼續正常啟動Windows、以安全模式啟動Windows或打開DOS提示符。此時系統與早期版本的MS-DOS一樣沒有32位支持，必須為鼠標和其他硬件加載DOS驅動程序。
由於Windows 95基於DOS開發，Windows 95必須保持內部DOS數據結構與的數據結構同步。即使是原生32位Windows程序，啟動程序時MS-DOS也會被短暫執行以創建稱為“程序段前綴”的數據結構。MS-DOS甚至可能會在執行此操作時耗盡常規內存，從而阻止程序啟動，而Windows 3.x首先在常規內存中分配固定段。由於內存段是固定分配的，Windows無法移動這些內存段，從而導致無法啟動更多的程序。
Microsoft在Windows 95 OSR2（OEM Service Release 2）中部分刪除了對文件控制塊（DOS 1.x和CP/M的API保留）的支持。FCB功能可以讀取但無法寫入FAT32卷。

**參見**
 Microsoft Windows的歷史- 作業系統- 作業系統列表- 微軟作業系統列表- 微軟- Windows 95 開發歷史

**註釋**

**參考資料 ==