基于IC卡的實驗中心管理信息系統(tǒng)設(shè)計
文章出處:http://botanicstilllife.com 作者:水泱,王軍 人氣: 發(fā)表時間:2011年11月12日
實驗教學(xué)示范中心建設(shè)是適應(yīng)新時期對高校人才培養(yǎng)要求的一個重要舉措。實驗教學(xué)示范中心的作用是進(jìn)一步加強(qiáng)學(xué)生實踐能力和創(chuàng)新能力培養(yǎng),我校計算機(jī)基礎(chǔ)實驗教學(xué)中心為更好地為校內(nèi)外師生提供服務(wù) ,實現(xiàn)實驗教學(xué)資源開放共享,中心在開放性實驗教學(xué)體系、開放性實驗課程體系、開放性實驗管理模式等方面進(jìn)行不斷探索,為使實驗中心的使用真正做到開放、高效、方便,提高機(jī)房的有效利用,開發(fā)一個即保證學(xué)生上機(jī)方便又有利于機(jī)房管理的實驗中心綜合管理信息系統(tǒng),對提高實驗中心的管理效率、管理質(zhì)量及服務(wù)水平十分重要。作者根據(jù)實驗教學(xué)管理的特點,提出了基于IC卡的計算機(jī)實驗中心綜合管理信息系統(tǒng)的設(shè)計思想,系統(tǒng)地闡述了系統(tǒng)的體系結(jié)構(gòu)及相關(guān)實現(xiàn)技術(shù)。
1 設(shè)計思想
實驗中心綜合管理信息系統(tǒng)實現(xiàn)對實驗設(shè)備運(yùn)行監(jiān)控管理及實驗課程管理的功能,實現(xiàn)中心管理的信息化、網(wǎng)絡(luò)化。所以系統(tǒng)的開發(fā)必須遵循安全可靠、穩(wěn)定、靈活、維護(hù)性好等原則,以便于系統(tǒng)既能滿足目前的需要,又能適應(yīng)將來擴(kuò)展的需要。為使系統(tǒng)能很好地滿足實驗室管理的需要,系統(tǒng)設(shè)計應(yīng)具有以下幾方面特點。
1)內(nèi)核級防毒安全:系統(tǒng)必須既能夠防止惡意的侵?jǐn)_,又能防止因誤操作引起的數(shù)據(jù)錯誤,保證系統(tǒng)運(yùn)行的穩(wěn)定性。系統(tǒng)設(shè)計時利用驅(qū)動程序直接訪問系統(tǒng)內(nèi)核中的雙向句柄鏈表,根據(jù)句柄表獲取所有進(jìn)程的結(jié)構(gòu),再掛起對應(yīng)于結(jié)構(gòu)中的所有線程,從而掛起進(jìn)程,實現(xiàn)所有的用戶態(tài)和內(nèi)核態(tài)的病毒的防護(hù)。
2)反彈連接:突破傳統(tǒng)服務(wù)器連客戶端的連接模式。傳統(tǒng)連接方式是基于服務(wù)器掃描客戶端的連接方式,在客戶機(jī)數(shù)量多達(dá)幾百臺甚至數(shù)千臺時,這種連接方式會極大地浪費服務(wù)器資源。反彈式連接通過服務(wù)端開通端口等待客戶端連接,采用多線程處理連接,大大節(jié)省了服務(wù)器資源,提高效率。而且反彈式連接可以突破大部分防火墻,適用場合更廣。
3)客戶端的防惡意刪除:客戶端采用遠(yuǎn)程插入線程、進(jìn)程復(fù)活、進(jìn)程隱藏等多種最新安全技術(shù),使客戶端運(yùn)行更加安全。插入遠(yuǎn)程線程技術(shù)采用了動態(tài)文件名插入的方式,插入完成自動清理垃圾文件,有效防止各類破壞客戶端進(jìn)程的非法行為。
4)可靠性:系統(tǒng)設(shè)計應(yīng)具有較高的可靠性,在系統(tǒng)故障或事故造成中斷后能確保數(shù)據(jù)的準(zhǔn)確性、完整性和一致性并具備迅速恢復(fù)的功能。
5)可擴(kuò)充性:為便于與各種一卡通系統(tǒng)集成,系統(tǒng)設(shè)計了與校園一卡通集成的通用接口,從現(xiàn)有系統(tǒng)升級到校園一卡通集成環(huán)境無需重新安裝,只需簡單升級即可。系統(tǒng)有標(biāo)準(zhǔn)、開放的系統(tǒng)接口,也可根據(jù)校園一卡通要求定制開發(fā)接口。
2 系統(tǒng)總體結(jié)構(gòu)
系統(tǒng)設(shè)計采用集中式的數(shù)據(jù)存儲管理模式,即所有數(shù)據(jù)存放在中心數(shù)據(jù)庫服務(wù)器上,校內(nèi)所有實驗室的管理通過訪問該中心數(shù)據(jù)庫服務(wù)器實現(xiàn)。中心數(shù)據(jù)庫存放全校實驗室的所有實驗設(shè)備、用戶及實驗課程數(shù)據(jù),如個人帳戶信息,基本管理信息,全校課表,統(tǒng)計信息等。
在體系結(jié)構(gòu)的設(shè)計方面,對于用戶帳戶管理、設(shè)備管理、信息錄入、課程管理等功能采用C/S 結(jié)構(gòu),而對于涉及到要在校園網(wǎng)上發(fā)布信息的部分,如教師和學(xué)生上機(jī)預(yù)定、課程信息等,則同時采用B/S 結(jié)構(gòu)和C/S結(jié)構(gòu)設(shè)計。綜合使用基于B/S 和C/S 的體系結(jié)構(gòu),保證系統(tǒng)具有高性能和可擴(kuò)展性,提高系統(tǒng)的效率和響應(yīng)速度。
系統(tǒng)采用非接觸式IC卡及用戶帳戶做為身份識別的工具,用戶只需使用校園卡即可在任一實驗室刷卡上機(jī)。系統(tǒng)在學(xué)生機(jī)上安裝網(wǎng)絡(luò)登錄控制卡及客戶端軟件,來達(dá)到對學(xué)生機(jī)控制和監(jiān)控的預(yù)期效果。系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示。
3 系統(tǒng)設(shè)計
3 .1 系統(tǒng)設(shè)計原理
系統(tǒng)啟動時自動加載客戶端,客戶端常駐內(nèi)存,使系統(tǒng)處于鎖定狀態(tài),用戶進(jìn)入機(jī)房需刷卡,機(jī)房管理系統(tǒng)調(diào)用讀卡接口獲取卡信息根據(jù)上機(jī)課表判斷是否可以上機(jī),輸入賬號和密碼后系統(tǒng)進(jìn)行身份驗證,系統(tǒng)解除鎖定正式開始上機(jī)。機(jī)器運(yùn)行期間系統(tǒng)定時檢測學(xué)生是否開啟游戲軟件,若檢測到則警告學(xué)生并且將系統(tǒng)鎖定;到達(dá)規(guī)定的上機(jī)時限系統(tǒng)自動鎖定機(jī)器,并把學(xué)生的上機(jī)情況和機(jī)器狀態(tài)信息寫入本地數(shù)據(jù)庫。系統(tǒng)鎖定后,學(xué)生不能再使用計算機(jī),從而達(dá)到自動下機(jī)和自動監(jiān)控的目的,實現(xiàn)機(jī)房的無人值守管理。
3 .2 系統(tǒng)功能設(shè)計
機(jī)房管理信息系統(tǒng)按功能分為系統(tǒng)管理、帳戶管理、機(jī)房機(jī)器和教學(xué)管理等子系統(tǒng)。系統(tǒng)功能結(jié)構(gòu)圖如圖2所示。
1)系統(tǒng)管理子系統(tǒng):使用動態(tài)超級密碼、系統(tǒng)初始化操作,記錄日常操作用戶操作過程和操作時間,對于日志審計內(nèi)容的處理可以根據(jù)不同的需求進(jìn)行操作。為確保用戶帳戶數(shù)據(jù)的安全,系統(tǒng)提供帳戶數(shù)據(jù)自動備份或手工備份功能。對不同機(jī)房實行IC卡、帳號登陸進(jìn)行選擇設(shè)置功能。
2)帳戶設(shè)置子系統(tǒng):為實現(xiàn)機(jī)房的自動化管理,不論是教學(xué)安排上機(jī)還是課外預(yù)約上機(jī),均需要進(jìn)行登錄認(rèn)證,需要為上機(jī)用戶進(jìn)行開戶、銷戶,加減機(jī)時等操作,提供批量帳戶的導(dǎo)入導(dǎo)出,按院系、班級分層次管理結(jié)構(gòu)設(shè)置、臨時用戶設(shè)置,根據(jù)不同對象、時段、機(jī)器、機(jī)房的上機(jī)機(jī)時標(biāo)準(zhǔn)設(shè)定功能。
3)機(jī)房機(jī)器管理子系統(tǒng):設(shè)置機(jī)房的名稱、工作組、機(jī)器數(shù)量、費率,機(jī)器的相關(guān)信息,自動考核學(xué)生上機(jī)到課率。實現(xiàn)機(jī)器的跨網(wǎng)段遠(yuǎn)程管理、機(jī)器硬件監(jiān)控封鎖、軟件的跨網(wǎng)端分發(fā),分發(fā)軟件的源文件可在不同網(wǎng)段的多臺服務(wù)器上,支持批處理操作,可單臺、批量、全部傳送,實現(xiàn)遠(yuǎn)程單機(jī)器的管理。
4)實驗教學(xué)管理:實現(xiàn)課程上機(jī)、各類課程外上機(jī)預(yù)約的機(jī)房分配,機(jī)房的動態(tài)排課,控制上機(jī)可運(yùn)行的程序,實時監(jiān)視機(jī)器運(yùn)行情況和運(yùn)行的程序,通過預(yù)約處理,以保證教學(xué)上機(jī)的要求,支持周期化預(yù)約,實現(xiàn)完全學(xué)分制的學(xué)生自由選課形成的班級建立動態(tài)組,課程預(yù)約時自動對動態(tài)組進(jìn)行機(jī)房分配,便于對課程上機(jī)的管理。
5)多媒體教學(xué):實現(xiàn)教學(xué)的全屏及區(qū)域廣播教學(xué)功能,電子黑板功能,示范教學(xué)功能,電子點名功能及學(xué)生電子簽到。
3 .3 系統(tǒng)接口函數(shù)設(shè)計
系統(tǒng)服務(wù)器端安裝在中心服務(wù)器上,接收來自用戶的刷卡請求信息,然后依據(jù)系統(tǒng)數(shù)據(jù)庫對學(xué)生做身份驗證,再依據(jù)上機(jī)安排表判斷用戶是否可以上機(jī),然后通過網(wǎng)絡(luò)向客戶端發(fā)出開放或鎖定系統(tǒng)的控制信息,以實現(xiàn)自動安排上機(jī),相關(guān)接口函數(shù)如下:
1)讀卡機(jī)初始化函數(shù)
function DkjInit - Old(const ComPortNo :Byte ;const YhMm :DWORD) :Boolean ;
參數(shù):Comport ,讀卡機(jī)連接的串口號;YhMm ,用戶單位密碼;實現(xiàn)初始化串口和讀卡機(jī),只有初始化成功后讀卡機(jī)才能進(jìn)行正常讀寫卡工作。
2)讀卡機(jī)釋放函數(shù)
function DkjFinal- Old() :Boolean ;
參數(shù):無;實現(xiàn)釋放讀卡機(jī)占用的串口資源。
3)獲取卡信息函數(shù)
function ReadConsumeCard- Old ( const CardRecAddress :Byte ;var ConsumeCardInfo : TConsume-CardInfo - Old ) :Boolean ;
參數(shù):CardRecAddress ,卡片結(jié)構(gòu)地址;ConsumeCardInfo ,消費卡信息結(jié)構(gòu)。
4)扣款寫卡函數(shù)
function WriteConsumeCard- Old (const CardRecAddress :Byte ; const ConsumeCardInfo : TConsume-CardInfo - Old) :Boolean ;
參數(shù):CardRecAddress ,卡片結(jié)構(gòu)地址;ConsumeCardInfo ,消費卡信息結(jié)構(gòu)。
3 .4 系統(tǒng)監(jiān)控算法設(shè)計
系統(tǒng)具有自動檢測用戶使用軟件并進(jìn)行控制的功能,通過在控制端選擇適當(dāng)?shù)臋z測包,然后發(fā)送到服務(wù)端,服務(wù)端將檢測包轉(zhuǎn)發(fā)到所有的客戶端,客戶端將接收到的檢測包放入內(nèi)存緩沖區(qū)中;客戶端定時(如每分鐘1次)枚舉所有的頂層窗口,并且獲取頂層窗口的標(biāo)題存入到字符串變量中,并將內(nèi)存緩沖區(qū)中的檢測包中的關(guān)鍵字逐一遍歷,檢查這些關(guān)鍵字是否在字符串變量中出現(xiàn),若出現(xiàn)說明用戶在使用規(guī)定外軟件(如電腦游戲) ,客戶端此時發(fā)出警告信息,3次警告過后將自動鎖定系統(tǒng),同時發(fā)消息到服務(wù)端顯示相關(guān)用戶信息。實現(xiàn)該功能的算法描述如下:
4 結(jié)語
系統(tǒng)使用VisualC ++ NET 編程實現(xiàn),通過網(wǎng)絡(luò)通信實現(xiàn)局部范圍內(nèi)的計算機(jī)統(tǒng)一監(jiān)控管理。采用段管理策略實現(xiàn)不同網(wǎng)段實驗室計算機(jī)的集中監(jiān)控管理,大大提高了系統(tǒng)的通用性和可擴(kuò)展性。系統(tǒng)實現(xiàn)了實驗教學(xué)資源開放共享,為學(xué)生提供了簡便的上機(jī)手段,使實驗中心的使用真正做到開放、高效、方便,提高各類實驗設(shè)備的有效利用,并顯著提高機(jī)房的管理水平和工作效率,在實際使用中取得了較好的效果,為實驗中心的實驗教學(xué)改革奠定了良好的基礎(chǔ)。