徐偉1, 李重2
(1.紹興職業(yè)技術(shù)學(xué)院 信息工程學(xué)院,浙江 紹興 312000;2.浙江理工大學(xué) 數(shù)學(xué)科學(xué)系,浙江 杭州 310018)
摘要:高校教室計算機大多采用Windows操作系統(tǒng),使用幾年后必定會因運行速度變慢而影響使用效率。為了在不增加硬件成本的前提下讓計算機能夠在長時間內(nèi)保持較高的性能,從而延長計算機教室的使用期限,本文以基于UNIX/Linux的操作系統(tǒng)為例,結(jié)合Vmwarer Workstation虛擬化技術(shù),在Windows和Linux兩種操作系統(tǒng)平臺做了相關(guān)測試。實驗結(jié)果表明,Linux操作系統(tǒng)結(jié)合Vmware虛擬化技術(shù)能夠顯著提升計算機各方面的性能,這種技術(shù)適用于高校計算機教室。
關(guān)鍵詞:UNIX;Linux;虛擬化技術(shù);計算機教室
0引言
高校的計算機教室有個通病,只要使用三、四年后,運行速度會變得越來越慢,而且系統(tǒng)也會變得越來越不穩(wěn)定,影響了課堂教學(xué)效果。究其原因,一是由于計算機教室一般都采用微軟的Windows操作系統(tǒng),Windows操作系統(tǒng)以漏洞多、病毒多、木馬多著稱[1],系統(tǒng)比較脆弱,而且Windows采用注冊表的方式存儲軟、硬件配置數(shù)據(jù)[2],因此計算機使用時間越久注冊表越臃腫,速度變慢是必然的;二是由于不同專業(yè)、不同課程所需的軟件不相同,計算機教室必然要安裝各種軟件供不同課程使用,各種軟件的安裝容易造成沖突而使計算機變慢、不穩(wěn)定[3]。而其實對于一門課程而言,只需安裝其中一個或幾個軟件就可以了,完全可以避免軟件沖突?;谶@些思路,要解決計算機越來越慢的問題,可以從更改操作系統(tǒng)和采用虛擬化技術(shù)兩方面來進行。
1操作系統(tǒng)分析
針對操作系統(tǒng)問題,嘗試采用基于UNIX操作系統(tǒng)來替換Windows操作系統(tǒng),因為UNIX比Windows更具有優(yōu)勢。
1.1UNIX比Windows系統(tǒng)更具創(chuàng)新積累性
Windows是微軟公司推出的操作系統(tǒng),它誕生于1985年,最初是MSDOS之下的桌面環(huán)境,而后其逐漸發(fā)展成為個人電腦和服務(wù)器操作系統(tǒng),并最終取得了個人電腦操作系統(tǒng)的壟斷地位。而UNIX操作系統(tǒng)是一個強大的多用戶、多任務(wù)操作系統(tǒng),支持多種處理器架構(gòu),按照操作系統(tǒng)的分類,屬于分時操作系統(tǒng),最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的貝爾實驗室開發(fā),1991年Linus Benedict Torvalds在UNIX基礎(chǔ)上開發(fā)了圖形化操作系統(tǒng)Linux。
許多基于UNIX的操作系統(tǒng)是開放源碼的,如Linux、FreeBSD、OpenBSD等,開放源碼的優(yōu)勢是使軟件開發(fā)者可以在前人的基礎(chǔ)上進行創(chuàng)新,其開發(fā)模式是開放和連續(xù)的,源碼經(jīng)過眾多用戶的檢驗和改進。而Windows保密源碼的限制使軟件之間難以相互借鑒,而且軟件錯誤難以及時發(fā)現(xiàn),造成操作系統(tǒng)漏洞較多,補丁更新頻繁,防火墻、防垃圾軟件、防間諜軟件占用了大量的系統(tǒng)資源。
1.2UNIX比Windows系統(tǒng)更具健壯性
隨著Windows操作系統(tǒng)使用時間的增加,注冊表會無限膨脹,使操作系統(tǒng)越用越慢。Windows系統(tǒng)程序與應(yīng)用程序不是相對獨立的,軟件崩潰容易造成系統(tǒng)的癱瘓、宕機,而Linux是一個單塊式的操作系統(tǒng),操作系統(tǒng)通常在用戶進程的內(nèi)存空間內(nèi)進行,免去了發(fā)生系統(tǒng)調(diào)用時的進程切換開銷。Linux支持內(nèi)核級的線程,但它將線程定義為進程的另一個“執(zhí)行上下文”,從而簡化了進程/線程之間的關(guān)系和調(diào)度程序的設(shè)計[4]。Linux一般不開放ROOT遠程權(quán)限,即使系統(tǒng)被外界入侵,危害性也相對較小。另外在開源系統(tǒng)中計算機病毒無法隱身,病毒在Linux沒有寄生的土壤,免去了病毒造成的危害。
1.3UNIX比Windows系統(tǒng)IO性能更佳
IO性能是影響計算機速度的主要因素之一,因此IO接口處理技術(shù)也是關(guān)鍵點。在Windows平臺下,IO模型是IOCP(IO Completion Port)模型[5],而Linux采用Epoll模型[6]。兩者都是處理異步IO的高效模型,都可以通過指針攜帶應(yīng)用層數(shù)據(jù),Epoll主要具有以下三種優(yōu)勢:
?。?)在IOCP模型中,應(yīng)用層數(shù)據(jù)可以通過單句柄數(shù)據(jù)和單IO數(shù)據(jù)與IOCP底層通信;而在Epoll里,可以通過epoll_data里的“void *ptr”來傳遞信息。這種指針傳遞的信息不僅能說明發(fā)生了什么樣的事件,同時還說明了這次事件所操作的數(shù)據(jù)是哪些,擴展了IO接口處理能力。
(2)Epoll模型為內(nèi)核處理大批量文件提供了多路復(fù)用IO接口,它無須遍歷整個被偵聽的描述符集,只需遍歷那些已被內(nèi)核IO事件異步喚醒并加入Ready隊列的描述符集合,可顯著提高程序在大量并發(fā)連接中只有少量活躍的情況下的系統(tǒng)CPU利用率。
(3)Epoll模型除了提供select/poll的水平觸發(fā)(Level Triggered)事件外,還提供了邊緣觸發(fā)(Edge Triggered),這就使得用戶空間程序有可能緩存IO狀態(tài),減少epoll_wait/epoll_pwait的調(diào)用,提高應(yīng)用程序的IO處理效率。
2虛擬化技術(shù)選擇
解決因計算機軟件安裝多而造成軟件沖突問題的方法是為每門課程分別建立獨立的虛擬機運行環(huán)境,即采用虛擬化技術(shù)。當(dāng)前虛擬化技術(shù)已從純軟件逐步深入到處理器級虛擬化、操作系統(tǒng)級虛擬化以及存儲級虛擬化,代表技術(shù)為Intel Virtualization Technology for Directed I/O,簡寫為Intel VT-d。AMD公司采用AMD-V同樣用于x86平臺。主流的虛擬化技術(shù)主要包括服務(wù)器虛擬化、應(yīng)用虛擬化、桌面虛擬化。
2.1服務(wù)器虛擬化
服務(wù)器虛擬化主要分為兩種:“一虛多”和“多虛一”?!耙惶摱唷笔且慌_服務(wù)器虛擬成多臺服務(wù)器,即將一臺物理服務(wù)器分割成多個相互獨立、互不干擾的虛擬環(huán)境[7],這種技術(shù)比較適合計算機教室?!岸嗵撘弧本褪嵌鄠€獨立的物理服務(wù)器虛擬為一個邏輯服務(wù)器,使多臺服務(wù)器相互協(xié)作,處理同一個業(yè)務(wù),這種技術(shù)適合構(gòu)建高性能的服務(wù)器集群。另外還有“多虛多”的概念,就是將多臺物理服務(wù)器虛擬成一臺邏輯服務(wù)器,然后再將其劃分為多個虛擬環(huán)境,即多個業(yè)務(wù)在多臺虛擬服務(wù)器上運行,這種技術(shù)可以為桌面虛擬化技術(shù)提供后端服務(wù)。
2.2應(yīng)用虛擬化
應(yīng)用虛擬化的原理是基于應(yīng)用/服務(wù)器計算A/S架構(gòu),采用類似虛擬終端的技術(shù),把應(yīng)用程序的人機交互邏輯(應(yīng)用程序界面、鍵盤及鼠標的操作、音頻輸入輸出、讀卡器、打印輸出等)與計算邏輯隔離開來[8]。在用戶訪問一個服務(wù)器虛擬化后的應(yīng)用時,用戶計算機只需要把人機交互邏輯傳送到服務(wù)器端,服務(wù)器端為用戶開設(shè)獨立的會話空間,應(yīng)用程序的計算邏輯在這個會話空間中運行,把變化后的人機交互邏輯傳送給客戶端,并且在客戶端相應(yīng)設(shè)備展示出來,從而使用戶獲得如同運行本地應(yīng)用程序一樣的訪問感受。
2.3桌面虛擬化
桌面虛擬化依賴于服務(wù)器虛擬化,在數(shù)據(jù)中心的服務(wù)器上進行服務(wù)器虛擬化,生成大量的獨立的桌面操作系統(tǒng)(虛擬機或者虛擬桌面),同時根據(jù)專有的虛擬桌面協(xié)議發(fā)送給終端設(shè)備[9]。用戶終端通過以太網(wǎng)登錄到虛擬主機上,只需要記住用戶名和密碼及網(wǎng)關(guān)信息,即可隨時隨地地通過網(wǎng)絡(luò)訪問自己的桌面系統(tǒng),從而實現(xiàn)單機多用戶。
綜上所述,計算機教室一般采用服務(wù)器虛擬化與桌面虛擬化技術(shù)相結(jié)合的方式。但在老舊計算機教室升級或改造時,在不增加額外設(shè)備的情況下,可以采用技術(shù)簡明、兼容性佳的VMware Workstation服務(wù)器虛擬化技術(shù),該技術(shù)允許用戶選擇某個特定的操作系統(tǒng)。
3實驗驗證
實驗以Linux內(nèi)核的麒麟Ubuntu Kylin與Windows為操作系統(tǒng)平臺,采用相同版本號的VMware Workstation虛擬機平臺,在相同虛擬機操作系統(tǒng)鏡像下,用PassMark PerformanceTest測試CPU、Graphics、Memory、Disk、開機時間等相關(guān)運行數(shù)據(jù),并進行比較分析。
3.1實驗環(huán)境
計算機硬件平臺:CPU采用英特爾Core i3-4150 @ 3.50 GHz處理器、內(nèi)存采用4 GB(Crucial DDR3 1 600 MHz)、硬盤采用希捷 ST500DM002-1BD142(500 GB/7 200 r/min)、顯卡采用英特爾HD Graphics 4400板載。操作系統(tǒng)分別采用中國版麒麟Linux Ubuntu Kylin 14.10和Windows 7 SP1 64位虛擬機平臺:VMware Workstation 10 for Linux 、VMware Workstation 10 for Windows。虛擬機操作系統(tǒng):Windows 7 SP1 32位。測試軟件:PassMark PerformanceTest 8.0。
3.2實驗過程
(1)在相同硬件平臺的計算機上分別安裝Linux Ubuntu Kylin 14.10和Windows 7 SP1 64位操作系統(tǒng)。
(2)在Ubuntu Kylin 14.10操作系統(tǒng)上安裝VMware Workstation 10 for Linux虛擬機平臺,在Windows 7 SP1 64位操作系統(tǒng)上安裝VMware Workstation 10 for Windows虛擬機平臺。
(3)將事先安裝好PassMark PerformanceTest 8.0的虛擬機Windows 7 SP1 32位,分別拷入Ubuntu Kylin 14.10和Windows 7 SP1 64位操作系統(tǒng)。
(4)在不同操作系統(tǒng)環(huán)境下,運行VMware Workstation 10,并確保虛擬機的所有選項、參數(shù)都一致。分別加載虛擬機操作系統(tǒng)Windows 7 SP1 32位。
(5)在兩種操作系統(tǒng)的虛擬機中運行PassMark PerformanceTest 8.0,并記錄數(shù)據(jù),如表1所示。
用同樣的方法測驗了D409教室中的計算機,該教室計算機CPU采用i3-2100 @ 3.10 GHz處理器,測試數(shù)據(jù)如表2所示。
4結(jié)論
實驗數(shù)據(jù)表明,在Linux和Windows操作系統(tǒng)下,虛擬機性能除了內(nèi)存測試數(shù)據(jù)Windows略勝外,在CPU、Graphics、Disk、開機時間等測試數(shù)據(jù)上,Linux系統(tǒng)更優(yōu),特別是I/O性能方面,Linux遙遙領(lǐng)先,導(dǎo)致兩者綜合分數(shù)Linux比Windows高出近5倍。因此,在計算機性能上,基于UNIX虛擬化技術(shù)相比Windows更具有優(yōu)勢。由于目前像Linux這樣的類UNIX系統(tǒng)的應(yīng)用軟件較少,且沒有特定的技術(shù)支持廠商,不太適用于個人電腦,但這種技術(shù)適用于高校計算機教室這種場合。
參考文獻
[1] 張玲,趙妍. 2014年5月計算機病毒疫情分析[J].信息網(wǎng)絡(luò)安全, 2014(7):92.
[2] 李換雙,潘平,羅輝,等.計算機安全漏洞及防范研究[J].微型機與應(yīng)用,2013,32(7):6465,68.
[3] 王稱. 淺談新形勢下財經(jīng)類高校計算機實驗室管理新問題及解決對策[J]. 福建電腦, 2013,29(9):181183.
[4] 何翔,顧新. LINUX進程調(diào)度算法的分析[J]. 電子科技, 2005(9):2124,28.
?。?] 陳懷松,陳家琪. IOCP寫服務(wù)程序時的關(guān)鍵問題研究[J]. 計算機工程與設(shè)計, 2010,31(17):37933796.
[6] 張軼凡,盧正興,王芙蓉.Linux下高性能網(wǎng)絡(luò)I/O解決方案分析[J]. 現(xiàn)代計算機, 2006(11):1619.
?。?] 彭淑芬.基于虛擬機的信息系統(tǒng)結(jié)構(gòu)安全研究[J].微型機與應(yīng)用,2015,34(3):1114.
[8] 傅仕諍,汪大海.虛擬化技術(shù)對IT管理的影響和應(yīng)對策略[J].微型機與應(yīng)用,2013,32(10):8789.
?。?] 楊宏,張喜成,普奕,等. 桌面虛擬化技術(shù)在高校機房管理中的應(yīng)用[J].軟件導(dǎo)刊, 2015,14(9):184185.