徐 偉, 李 重
(1.紹興職業技術學院 信息工程學院,浙江 紹興 312000;2.浙江理工大學 數學科學系,浙江 杭州 310018)
基于UNIX的虛擬化技術在高校計算機教室的應用*
徐 偉1, 李 重2
(1.紹興職業技術學院 信息工程學院,浙江 紹興 312000;2.浙江理工大學 數學科學系,浙江 杭州 310018)
高校教室計算機大多采用Windows操作系統,使用幾年后必定會因運行速度變慢而影響使用效率。為了在不增加硬件成本的前提下讓計算機能夠在長時間內保持較高的性能,從而延長計算機教室的使用期限,本文以基于UNIX/Linux的操作系統為例,結合Vmwarer Workstation虛擬化技術,在Windows和Linux兩種操作系統平臺做了相關測試。實驗結果表明,Linux操作系統結合Vmware虛擬化技術能夠顯著提升計算機各方面的性能,這種技術適用于高校計算機教室。
UNIX;Linux;虛擬化技術;計算機教室
高校的計算機教室有個通病,只要使用三、四年后,運行速度會變得越來越慢,而且系統也會變得越來越不穩定,影響了課堂教學效果。究其原因,一是由于計算機教室一般都采用微軟的Windows操作系統,Windows操作系統以漏洞多、病毒多、木馬多著稱[1],系統比較脆弱,而且Windows采用注冊表的方式存儲軟、硬件配置數據[2],因此計算機使用時間越久注冊表越臃腫,速度變慢是必然的;二是由于不同專業、不同課程所需的軟件不相同,計算機教室必然要安裝各種軟件供不同課程使用,各種軟件的安裝容易造成沖突而使計算機變慢、不穩定[3]。而其實對于一門課程而言,只需安裝其中一個或幾個軟件就可以了,完全可以避免軟件沖突。基于這些思路,要解決計算機越來越慢的問題,可以從更改操作系統和采用虛擬化技術兩方面來進行。
針對操作系統問題,嘗試采用基于UNIX操作系統來替換Windows操作系統,因為UNIX比Windows更具有優勢。
1.1 UNIX比Windows系統更具創新積累性
Windows是微軟公司推出的操作系統,它誕生于1985年,最初是MS-DOS之下的桌面環境,而后其逐漸發展成為個人電腦和服務器操作系統,并最終取得了個人電腦操作系統的壟斷地位。而UNIX操作系統是一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬于分時操作系統,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的貝爾實驗室開發,1991年Linus Benedict Torvalds在UNIX基礎上開發了圖形化操作系統Linux。
許多基于UNIX的操作系統是開放源碼的,如Linux、FreeBSD、OpenBSD等,開放源碼的優勢是使軟件開發者可以在前人的基礎上進行創新,其開發模式是開放和連續的,源碼經過眾多用戶的檢驗和改進。而Windows保密源碼的限制使軟件之間難以相互借鑒,而且軟件錯誤難以及時發現,造成操作系統漏洞較多,補丁更新頻繁,防火墻、防垃圾軟件、防間諜軟件占用了大量的系統資源。
1.2 UNIX比Windows系統更具健壯性
隨著Windows操作系統使用時間的增加,注冊表會無限膨脹,使操作系統越用越慢。Windows系統程序與應用程序不是相對獨立的,軟件崩潰容易造成系統的癱瘓、宕機,而Linux是一個單塊式的操作系統,操作系統通常在用戶進程的內存空間內進行,免去了發生系統調用時的進程切換開銷。Linux支持內核級的線程,但它將線程定義為進程的另一個“執行上下文”,從而簡化了進程/線程之間的關系和調度程序的設計[4]。Linux一般不開放ROOT遠程權限,即使系統被外界入侵,危害性也相對較小。另外在開源系統中計算機病毒無法隱身,病毒在Linux沒有寄生的土壤,免去了病毒造成的危害。
1.3 UNIX比Windows系統IO性能更佳
IO性能是影響計算機速度的主要因素之一,因此IO接口處理技術也是關鍵點。在Windows平臺下,IO模型是IOCP(IO Completion Port)模型[5],而Linux采用Epoll模型[6]。兩者都是處理異步IO的高效模型,都可以通過指針攜帶應用層數據,Epoll主要具有以下三種優勢:
(1)在IOCP模型中,應用層數據可以通過單句柄數據和單IO數據與IOCP底層通信;而在Epoll里,可以通過epoll_data里的“void *ptr”來傳遞信息。這種指針傳遞的信息不僅能說明發生了什么樣的事件,同時還說明了這次事件所操作的數據是哪些,擴展了IO接口處理能力。
(2)Epoll模型為內核處理大批量文件提供了多路復用IO接口,它無須遍歷整個被偵聽的描述符集,只需遍歷那些已被內核IO事件異步喚醒并加入Ready隊列的描述符集合,可顯著提高程序在大量并發連接中只有少量活躍的情況下的系統CPU利用率。
(3)Epoll模型除了提供select/poll的水平觸發(Level Triggered)事件外,還提供了邊緣觸發(Edge Triggered),這就使得用戶空間程序有可能緩存IO狀態,減少epoll_wait/epoll_pwait的調用,提高應用程序的IO處理效率。
解決因計算機軟件安裝多而造成軟件沖突問題的方法是為每門課程分別建立獨立的虛擬機運行環境,即采用虛擬化技術。當前虛擬化技術已從純軟件逐步深入到處理器級虛擬化、操作系統級虛擬化以及存儲級虛擬化,代表技術為Intel Virtualization Technology for Directed I/O,簡寫為Intel VT-d。AMD公司采用AMD-V同樣用于x86平臺。主流的虛擬化技術主要包括服務器虛擬化、應用虛擬化、桌面虛擬化。
2.1 服務器虛擬化
服務器虛擬化主要分為兩種:“一虛多”和“多虛一”。“一虛多”是一臺服務器虛擬成多臺服務器,即將一臺物理服務器分割成多個相互獨立、互不干擾的虛擬環境[7],這種技術比較適合計算機教室。“多虛一”就是多個獨立的物理服務器虛擬為一個邏輯服務器,使多臺服務器相互協作,處理同一個業務,這種技術適合構建高性能的服務器集群。另外還有“多虛多”的概念,就是將多臺物理服務器虛擬成一臺邏輯服務器,然后再將其劃分為多個虛擬環境,即多個業務在多臺虛擬服務器上運行,這種技術可以為桌面虛擬化技術提供后端服務。
2.2 應用虛擬化
應用虛擬化的原理是基于應用/服務器計算A/S架構,采用類似虛擬終端的技術,把應用程序的人機交互邏輯(應用程序界面、鍵盤及鼠標的操作、音頻輸入輸出、讀卡器、打印輸出等)與計算邏輯隔離開來[8]。在用戶訪問一個服務器虛擬化后的應用時,用戶計算機只需要把人機交互邏輯傳送到服務器端,服務器端為用戶開設獨立的會話空間,應用程序的計算邏輯在這個會話空間中運行,把變化后的人機交互邏輯傳送給客戶端,并且在客戶端相應設備展示出來,從而使用戶獲得如同運行本地應用程序一樣的訪問感受。
2.3 桌面虛擬化
桌面虛擬化依賴于服務器虛擬化,在數據中心的服務器上進行服務器虛擬化,生成大量的獨立的桌面操作系統(虛擬機或者虛擬桌面),同時根據專有的虛擬桌面協議發送給終端設備[9]。用戶終端通過以太網登錄到虛擬主機上,只需要記住用戶名和密碼及網關信息,即可隨時隨地地通過網絡訪問自己的桌面系統,從而實現單機多用戶。
綜上所述,計算機教室一般采用服務器虛擬化與桌面虛擬化技術相結合的方式。但在老舊計算機教室升級或改造時,在不增加額外設備的情況下,可以采用技術簡明、兼容性佳的VMware Workstation服務器虛擬化技術,該技術允許用戶選擇某個特定的操作系統。
實驗以Linux內核的麒麟Ubuntu Kylin與Windows為操作系統平臺,采用相同版本號的VMware Workstation虛擬機平臺,在相同虛擬機操作系統鏡像下,用PassMark PerformanceTest測試CPU、Graphics、Memory、Disk、開機時間等相關運行數據,并進行比較分析。
3.1 實驗環境
計算機硬件平臺:CPU采用英特爾Core i3-4150 @ 3.50 GHz處理器、內存采用4 GB(Crucial DDR3 1 600 MHz)、硬盤采用希捷 ST500DM002-1BD142(500 GB/7 200 r/min)、顯卡采用英特爾HD Graphics 4400板載。操作系統分別采用中國版麒麟Linux Ubuntu Kylin 14.10和Windows 7 SP1 64位虛擬機平臺:VMware Workstation 10 for Linux 、VMware Workstation 10 for Windows。虛擬機操作系統:Windows 7 SP1 32位。測試軟件:PassMark PerformanceTest 8.0。
3.2 實驗過程
(1)在相同硬件平臺的計算機上分別安裝Linux Ubuntu Kylin 14.10和Windows 7 SP1 64位操作系統。
(2)在Ubuntu Kylin 14.10操作系統上安裝VMware Workstation 10 for Linux虛擬機平臺,在Windows 7 SP1 64位操作系統上安裝VMware Workstation 10 for Windows虛擬機平臺。
(3)將事先安裝好PassMark PerformanceTest 8.0的虛擬機Windows 7 SP1 32位,分別拷入Ubuntu Kylin 14.10和Windows 7 SP1 64位操作系統。
(4)在不同操作系統環境下,運行VMware Workstation 10,并確保虛擬機的所有選項、參數都一致。分別加載虛擬機操作系統Windows 7 SP1 32位。
(5)在兩種操作系統的虛擬機中運行PassMark PerformanceTest 8.0,并記錄數據,如表1所示。

表1 測試數據B313
注:B313表示實驗數據采樣的計算機教室的房號
用同樣的方法測驗了D409教室中的計算機,該教室計算機CPU采用i3-2100 @ 3.10 GHz處理器,測試數據如表2所示。

表2 測試數據D409
實驗數據表明,在Linux和Windows操作系統下,虛擬機性能除了內存測試數據Windows略勝外,在CPU、Graphics、Disk、開機時間等測試數據上,Linux系統更優,特別是I/O性能方面,Linux遙遙領先,導致兩者綜合分數Linux比Windows高出近5倍。因此,在計算機性能上,基于UNIX虛擬化技術相比Windows更具有優勢。由于目前像Linux這樣的類UNIX系統的應用軟件較少,且沒有特定的技術支持廠商,不太適用于個人電腦,但這種技術適用于高校計算機教室這種場合。
[1] 張玲,趙妍. 2014年5月計算機病毒疫情分析[J].信息網絡安全, 2014(7):92.
[2] 李換雙,潘平,羅輝,等.計算機安全漏洞及防范研究[J].微型機與應用,2013,32(7):64-65,68.
[3] 王稱. 淺談新形勢下財經類高校計算機實驗室管理新問題及解決對策[J]. 福建電腦, 2013,29(9):181-183.
[4] 何翔,顧新. LINUX進程調度算法的分析[J]. 電子科技, 2005(9):21-24,28.
[5] 陳懷松,陳家琪. IOCP寫服務程序時的關鍵問題研究[J]. 計算機工程與設計, 2010,31(17):3793-3796.
[6] 張軼凡,盧正興,王芙蓉.Linux下高性能網絡I/O解決方案分析[J]. 現代計算機, 2006(11):16-19.
[7] 彭淑芬.基于虛擬機的信息系統結構安全研究[J].微型機與應用,2015,34(3):11-14.
[8] 傅仕諍,汪大海.虛擬化技術對IT管理的影響和應對策略[J].微型機與應用,2013,32(10):87-89.
[9] 楊宏,張喜成,普奕,等. 桌面虛擬化技術在高校機房管理中的應用[J].軟件導刊, 2015,14(9):184-185.
Application of virtual technology in computer room of university based on UNIX
Xu Wei1, Li Chong2
(1.Department of Information Engineering, Shaoxing Vocational & Technical Collage, Shaoxing 312000, China;2.Department of Mathematical Sciences, Zhejiang Sci-Tech University, Hangzhou 310018, China)
Most of the computers in university classroom use Windows operating system. A few years later the computer will run slowly and impact the use of efficiency. In order to maintain high performance in a long time without increasing the hardware cost, and extend the computer’s using time, a test is given in this paper. The research is based on UNIX/Linux operating system, combined with the Vmware Workstation virtual technology. We do the relevant test both on the Windows and Linux operating system platform. The experimental results show that the Linux operating system combined with Vmware Workstation virtua technology can significantly improve the performance of the computer. This technique is applied to the computer room in colleges and universities.
UNIX;Linux;virtual technology;computer room
2014年度浙江省教育技術研究規劃重點課題(JA041)
TP368.3
A
1674-7720(2016)05-0098-03
徐偉,李重. 基于UNIX的虛擬化技術在高校計算機教室的應用[J].微型機與應用,2016,35(5):98-100.
2015-11-03)
徐偉(1970-),男,碩士,講師,主要研究方向:計算機應用技術、網絡技術。
李重(1975-),男,博士,教授,博導,主要研究方向:數據分析和人工智能。