張建
(安徽經(jīng)濟管理學(xué)院,安徽 合肥 230031)
高校機房管理系統(tǒng)的設(shè)計與實現(xiàn)
張建
(安徽經(jīng)濟管理學(xué)院,安徽 合肥 230031)
本文針對高校機房規(guī)模不斷擴大和服務(wù)對象復(fù)雜多樣的特點,根據(jù)安徽經(jīng)濟管理干部學(xué)院機房的目前的管理現(xiàn)狀,結(jié)合對課程安排等問題提出了有效管理機房并充分利用課余時間開放機房設(shè)備.充分利用現(xiàn)有資源開發(fā)一套高效的管理系統(tǒng),既可以為學(xué)生提供更加有效、安全、便捷的上機進行課程實踐環(huán)境,又可以提高管理人員對公共機房的科學(xué)管理水平.本系統(tǒng)開發(fā)過程中采用了VC++數(shù)據(jù)庫編程、網(wǎng)絡(luò)編程等核心技術(shù)和VC的繪圖技術(shù),實現(xiàn)了預(yù)定目標.
計費管理;ADO;屏幕監(jiān)控;Socket;遠程管理;數(shù)據(jù)可視化
目前高校的機房主要的服務(wù)對象是全院師生,主要提供實驗實訓(xùn)教學(xué)、業(yè)余有償自由上機實踐和考試任務(wù).為了使這些任務(wù)得以優(yōu)質(zhì)高效完成,對機房的管理工作提出了新的挑戰(zhàn).特別是隨著高校辦學(xué)規(guī)模的逐漸擴大、上機實踐課程任務(wù)和計算機教學(xué)實驗部門的計算機實驗設(shè)備數(shù)量的增加,高效地管理這些機房成為了迫切需要解決的問題.機房管理信息系統(tǒng)要解決人工管理方式中存在的問題,又要彌補其它傳統(tǒng)管理系統(tǒng)方式中的不足,利用現(xiàn)代計算機和數(shù)據(jù)庫開發(fā)技術(shù)來代替人工處理機房工作是很必要的.很大程度上可以提高工作質(zhì)量和效率,提高機房的利用率和機房管理水平,保證機房管理的穩(wěn)定和高效運作,確保學(xué)生正常上機,提高機房的工作效率,使機房的利用率達到最大化,基于對這些情況的仔細調(diào)查、分析,基于以上情況利用現(xiàn)有的硬件資源,結(jié)合計算機軟件開發(fā)技術(shù)開發(fā)一套完整的公共機房管理系統(tǒng).使公共機房管理真正實現(xiàn)信息化,管理水平提高到一個新臺階.
1.1 可行性分析
軟件的開發(fā)必須遵循安全可靠、穩(wěn)定、維護性好等原則,既要能滿足目前的需要,又要能適應(yīng)將來擴展升級的需要.
從技術(shù)角度來看:本系統(tǒng)采用Visual C++6.0作為開發(fā)工具來開發(fā)該系統(tǒng)界面以及實現(xiàn)各個模塊功能,并利用ADO技術(shù)連接訪問數(shù)據(jù)庫,利用VC的網(wǎng)絡(luò)編程技術(shù)和繪圖技術(shù)開發(fā)軟.
從經(jīng)濟角度:就經(jīng)濟效益來分析,軟件的開發(fā)成本不大,而其它的投入也只是計算機.由于系統(tǒng)運行的基礎(chǔ)環(huán)境均已具備,無需重新開發(fā)建設(shè),所以系統(tǒng)開發(fā)、運行所需的費用是比較低的.
1.2 需求分析
需求分析關(guān)系到設(shè)計的合理性和實用性,現(xiàn)提出機房管理需求情況:
(1)系統(tǒng)能夠產(chǎn)生學(xué)生使用計算機情況的詳細記錄,對設(shè)備的使用可以直接追索到使用者,業(yè)余時間上機還增加監(jiān)控方式,要基本上能夠杜絕惡意損壞等行為的發(fā)生;
(2)老師可以根據(jù)正常實驗上機記錄統(tǒng)計學(xué)生的出勤情況,為學(xué)校和老師更有效的了解學(xué)生實驗和實習情況提供數(shù)據(jù)依據(jù);
(3)學(xué)生通過登錄認證或刷卡認證方式使用計算機,系統(tǒng)會根據(jù)課程表判斷是課堂上機,還是業(yè)余自費上機;學(xué)生在下機時必須做退出或注銷操作,否則可能會被認為正在使用而計費情況.
(4)自動控制,管理端可以喚醒(開啟)和關(guān)閉指定的或全部的客戶端計算機,當客戶端無人再次登錄使用時鎖定,一定時間后自動關(guān)閉;
(5)機房管理員可以遠程控制學(xué)生機,提供必要的遠程協(xié)助功能并可以實時撲捉到學(xué)生屏幕信息用來監(jiān)控用機情況;
(6)管理機應(yīng)能自動計費,實現(xiàn)課程表的相關(guān)管理功能,做到根據(jù)課表自動區(qū)別計費與否;
(7)系統(tǒng)有完整的設(shè)備管理庫并提供實時監(jiān)控這些設(shè)備的使用,為高校固定資產(chǎn)管理提供機房設(shè)備情況的參考;
(8)完成機房計算機使用情況統(tǒng)計匯總與報表的生成;按年度或?qū)W期統(tǒng)計分析機器使用情況,機房賬務(wù)情況,完成實驗課時量.
3.1 系統(tǒng)模塊的劃分
通依據(jù)上面的需求分析,經(jīng)研究與論證,結(jié)合機房管理實際情況,設(shè)計出系統(tǒng)主要模塊:
(1)機房計費管理模塊:主要實現(xiàn)用戶管理和賬戶功能,包括用戶的添加、刪除、修改和查詢等操作;賬戶管理實現(xiàn)帳戶充值、賬戶的掛失和解掛等操作.如圖所示.
(2)網(wǎng)絡(luò)管理模塊:完成公共機房網(wǎng)絡(luò)管理工作,包括對學(xué)生機的開啟和關(guān)閉、屏幕監(jiān)控、硬件設(shè)備的管理,提供消息收發(fā)、文件收發(fā)和遠程幫助等操作功能.
(3)客戶端模塊:集成了機房管理系統(tǒng)中的計費程序、登錄控制管理的部分程序和數(shù)據(jù)通信等程序功能.
(4)數(shù)據(jù)可視化模塊:系統(tǒng)中產(chǎn)生大量的用戶使用數(shù)據(jù)進行可視化處理,生產(chǎn)相應(yīng)圖表圖形.
3.2 系統(tǒng)數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫設(shè)計根據(jù)系統(tǒng)的需求分析要求主要是對數(shù)據(jù)庫進行的一些詳細的設(shè)計,包括設(shè)計數(shù)據(jù)庫的結(jié)構(gòu)和建立數(shù)據(jù)庫.根據(jù)用戶的需求和系統(tǒng)功能功能設(shè)計數(shù)據(jù)庫,既要考慮到現(xiàn)實情況以及程序設(shè)計時實現(xiàn)的可能性,又要使設(shè)計出的數(shù)據(jù)庫中數(shù)據(jù)的冗余度盡可能小以減少存儲空間,并使設(shè)計出的數(shù)據(jù)庫盡可能滿足高一級范式的要求.本系統(tǒng)中的數(shù)據(jù)庫表主要是在ACESS下創(chuàng)建的,根據(jù)系統(tǒng)要求設(shè)計出用戶信息表,類似的設(shè)計出:上機信息表、上機歷史記錄表、機器基本情況表、課程安排基本情況表和管理人員信息表.
3.3 主要模塊設(shè)計與實現(xiàn)
本系統(tǒng)采用基于局域網(wǎng)的客戶/服務(wù)結(jié)構(gòu)模式,主要包括計費管理子系統(tǒng)、網(wǎng)絡(luò)管理子系統(tǒng)、信息管理子系統(tǒng)和系統(tǒng)數(shù)據(jù)可視化等模塊.
3.3.1 計費管理子系統(tǒng)
客戶端遠程登錄,通過遠程服務(wù)器驗證合法有效用戶后可以使用本臺客戶機,并開始計費功能.
實現(xiàn)原理:VC對timer計時器的操作.首先通過添加wm_timer消息來產(chǎn)生On_timer消息響應(yīng)函數(shù),然后通過settimer(1,18000,NULL)函數(shù)設(shè)置計時器,程序執(zhí)行了這個settimer函數(shù)后,就會自動按照你設(shè)置的時間每隔一段時間調(diào)用On_timer函數(shù),最后在On_timer函數(shù)里添加訪問系統(tǒng)數(shù)據(jù)庫的動作代碼.計費操作的過程是在計費對話框中的On_timer消息響應(yīng)函數(shù)實現(xiàn)的.具體實現(xiàn)方法步驟:
(1)創(chuàng)建ADO對象如ado,利用ado對象的OpenRecordset()打開遠程管理機中得數(shù)據(jù)庫;
(2)利用ado對象的m_pRecordset指針的GetCollect()訪問并取出當前學(xué)號的用戶的賬戶余額;
(3)如果取出的余額(yue)小于0.05(以1元錢每小時計),此時余額不足,直接將余額置成0,利用m_pRecordset指針的PutCollect方法將實際余額0寫入遠程系統(tǒng)數(shù)據(jù)庫完成一次計費出現(xiàn)余額不足提示對話框,客戶端啟動倒計時關(guān)閉系統(tǒng);
(4)如果取出的余額(yue)大于0.05,利用m_pRecordset指針的PutCollect將當前余額減去0.05后再寫入遠程系統(tǒng)數(shù)據(jù)庫,成功完成一次計費,計時器歸零重新開始計費;
(5)系統(tǒng)數(shù)據(jù)庫記錄更新Update,以便下次訪問到最新的真實的數(shù)據(jù),關(guān)閉系統(tǒng)數(shù)據(jù)庫并執(zhí)行定時器消除Ki1lTimer(1)操作.
3.3.2 網(wǎng)絡(luò)管理子系統(tǒng)的設(shè)計與實現(xiàn)
網(wǎng)絡(luò)管理子系統(tǒng)設(shè)計功能包括遠程控制操作、鎖屏和解鎖控制操作、遠程監(jiān)控操作和遠程服務(wù)等操作.
3.3.2.1 遠程控制啟動、注銷和關(guān)機等操作實現(xiàn)
遠程開關(guān)機器操作,即在管理端對需要關(guān)閉的客戶端計算機發(fā)送關(guān)機指令,客戶端計算機收到指令后啟動關(guān)機程序關(guān)機.為了有效節(jié)省能源系統(tǒng)提供自動關(guān)機功能,就是在客戶端無人再次登錄時關(guān)閉計算機.
遠程控制是利用Windows系統(tǒng)編程接口(WIN API函數(shù))和鉤子技術(shù)來實現(xiàn)的.其基本原理是,客戶端的Socket發(fā)送命令到服務(wù)端的Socket,同時當服務(wù)器收到相應(yīng)的指令,就執(zhí)行相應(yīng)的操作說明,當然,這些都是在服務(wù)端的管理計算機作上運行的.操作的本質(zhì)就是調(diào)用API函數(shù)BOOL ExitWindowsEx(UINT uFlags,DWORD dwReserved);可以根據(jù)uFlags的取值不同分別實現(xiàn)注銷、重啟、強行關(guān)機等操作.
通過以上的設(shè)計可以使應(yīng)用程序獲得獲得相關(guān)權(quán)限,執(zhí)行注銷、重新啟動或關(guān)閉計算機等操作.結(jié)合遠程通信編程技術(shù)實現(xiàn)網(wǎng)絡(luò)管理中的遠程控制.
3.3.2.2 遠程屏幕鎖定和解鎖
客戶端在正常登錄認證之前處于鎖屏狀態(tài),當用戶輸入正確的用戶名和密碼登錄后,經(jīng)過驗證為合法用戶,管理機向該客戶端計算機發(fā)送解屏信息,此時客戶端用戶可正常使用客戶端計算機,屏幕解鎖完成.本系統(tǒng)設(shè)計是采用鎖定鍵盤功能鍵,如WIN鍵或Ctrl-Alt-Del等,限定了鼠標和隱藏了任務(wù)欄.鎖定后用戶既不能終止客戶端登錄程序,也不能啟動其它進程.
3.3.2.3 遠程監(jiān)控
遠程監(jiān)控操作包括遠程屏幕監(jiān)控和遠程硬件設(shè)備監(jiān)控管理.管理端可以捕捉到監(jiān)控遠程客戶端計算機屏幕信息和操作情況,可以提供上機監(jiān)管和提高實驗教學(xué)質(zhì)量;遠程設(shè)備監(jiān)控管理是對客戶端計算機的硬件情況實時列表檢測,管理人員可以有效和固定資產(chǎn)中計算機設(shè)備情況進行定期核對,以便有效管理固定資產(chǎn)內(nèi)部設(shè)備的完整性.
3.3.2.4 遠程服務(wù)
在網(wǎng)絡(luò)管理中遠程服務(wù)是實現(xiàn)遠程計算機之間的文件和消息的收發(fā)操作以及遠程協(xié)助管理操作即協(xié)助控制計算機.遠程服務(wù)體現(xiàn)了在加強了學(xué)生之間的交流和學(xué)習的同時,也實現(xiàn)的遠程協(xié)助控制操作,這在計算機教學(xué)起到輔助作用.
3.3.3 數(shù)據(jù)可視化的設(shè)計與實現(xiàn)
可視化技術(shù)可以提高使用者對數(shù)據(jù)的理解和識別能力,使管理人員很容易的從大量數(shù)據(jù)中分析總結(jié)出有效的決策信息.
3.3.3.1 系統(tǒng)數(shù)據(jù)可視化的實現(xiàn)原理和意義
圖表圖形可視化,根據(jù)歷史上機記錄庫分類匯總成相應(yīng)統(tǒng)計表,將每年度每月份上機使用和收入情況繪制成直方圖;如果公共機房總上機情況的分析問題,需要計算總機時中各個教學(xué)系部使用構(gòu)成比例時,這就需要繪制出餅型圖顯示出來,管理人員可以更好的對比各個月份課余機房使用情況.分析收入和安排值班情況.
本系統(tǒng)中數(shù)據(jù)可視化主要是分別用直方圖和餅形圖對各年度機房收入情況和平時上課實訓(xùn)機時統(tǒng)計匯總信息作可視化處理.對處理結(jié)果數(shù)據(jù)利用VC的GDI繪圖技術(shù)繪制出相應(yīng)直方圖和餅形圖.
3.3.3.2 系統(tǒng)數(shù)據(jù)可視化步驟:
(1)直方圖數(shù)據(jù)項處理.從數(shù)據(jù)中提取所要的數(shù)據(jù),根據(jù)這些數(shù)據(jù)進行圖表處理.先設(shè)置12個內(nèi)存變量m0-m11分別用來存放1月至12月份的上機使用機時的消費金額之和.這12個變量值是用來繪制直方圖的有效數(shù)據(jù).
(2)直方圖數(shù)據(jù)項映射.在數(shù)據(jù)映射過程中,實現(xiàn)數(shù)值數(shù)據(jù)和幾何圖形的映射,實質(zhì)就是將數(shù)據(jù)項的數(shù)值數(shù)據(jù)轉(zhuǎn)換成幾何數(shù)據(jù).利用所得出數(shù)據(jù)和幾何要素進行映射,結(jié)果如下所示.
直方圖數(shù)據(jù)映像處理圖
(3)直方圖繪制和顯示.
根據(jù)前面對數(shù)據(jù)項的處理和映射,利用VC的GDI繪圖技術(shù)繪制出相應(yīng)直方圖.系統(tǒng)用戶選擇年度后點擊繪制直方圖按鈕,即可繪制出直方圖.
4.1 系統(tǒng)應(yīng)用情況
高校公共機房管理系統(tǒng)于2014年開始在安徽經(jīng)管學(xué)院西校區(qū)公共機房正常使用,運轉(zhuǎn)良好,受到師生的好評,用戶需求分析中的功能模塊基本上全部實現(xiàn).該系統(tǒng)的運行,給我們省級基礎(chǔ)教學(xué)示范中心帶來許多便利和效益.大大減輕了管理人員的工作負擔,提高了工作效率,同時有效提高設(shè)備的使用率提高了教學(xué)質(zhì)量.
4.2 總結(jié)
本文選擇高校公共機房計算機管理為研究對象,以實現(xiàn)機房的全自動化管理、提高工作效率、降低勞動強度為目標,在分析機房計算機管理需求和模式的基礎(chǔ)上,以網(wǎng)絡(luò)通信技術(shù)和數(shù)據(jù)庫訪問技術(shù)為手段,提出了用C/S架構(gòu)來實現(xiàn)機房計算機管理的模型,并依此模型開發(fā)了一個可行的系統(tǒng).采用本系統(tǒng)進行機房管理實現(xiàn)了學(xué)校機房的規(guī)范化制度化管理,同時也方便了學(xué)生上機使用,簡化了管理員的管理.在機房管理員的監(jiān)控下,實現(xiàn)了機房的自助式管理,基本上達到了設(shè)計時的要求.
〔1〕覃國蓉,何濤.校園機房課堂監(jiān)控管理系統(tǒng)的設(shè)計與實現(xiàn).計算機應(yīng)用與軟件,2011(28).
〔2〕鄭昌波,秦前清,袁軍.簡化計算機遠程控制技術(shù)研究及實踐.計算機工程與設(shè)計,2005,26(6).
〔3〕唐彬.Visual C++案例開發(fā)集錦.電子工業(yè)出版社.
〔4〕董萬歸.機房管理系統(tǒng)中一種登陸控制的設(shè)計與實現(xiàn).軟件導(dǎo)刊,2010,9(5).
TP311.51
A
1673-260X(2017)05-0023-03
2017-02-05