基于A(yíng)RM9與Linux的門(mén)禁監控系統軟件設計
3.2 后臺設計
當系統運行后,門(mén)禁控制器會(huì )一直運行主監控程序,主監控程序存在兩種工作方式,分別為調試模式和監控模式。
3.2.1 調試模式
在調試模式下,可以對門(mén)禁控制器進(jìn)行一些基本的設置:包括有門(mén)禁控制器的IP設置,系統管理員用戶(hù)名及密碼設置,卡權限設置等操作,在此部分,需要配合圖形環(huán)境方便調試,本系統采用minigui嵌入式圖形庫。
MiniGUI下的通訊是一種類(lèi)似于Win32的消息機制,是由某公司開(kāi)發(fā)的自由軟件,遵循LGPL協(xié)議,可以為嵌入式linux系統建立的一個(gè)快速,穩定和輕量級的圖形用戶(hù)界面支持系統。
3.2.2 監控模式
在工作模式下,后臺駐留程序會(huì )時(shí)刻監視是否有刷卡信息,在檢測到刷卡信息后,后臺駐留程序通過(guò)訪(fǎng)問(wèn)數據庫進(jìn)行卡信息的比對,只有當比對通過(guò)后,方可進(jìn)行門(mén)打開(kāi)動(dòng)作。
由于在開(kāi)門(mén)的同時(shí),需要保存圖片至數據庫,而此時(shí),可能會(huì )存在客戶(hù)端對系統存儲圖片的訪(fǎng)問(wèn),這會(huì )造成對相同數據庫的訪(fǎng)問(wèn)沖突,所以系統在接收到客戶(hù)端訪(fǎng)問(wèn)系統存儲圖片請求的時(shí)候,前端CGI服務(wù)程序通過(guò)命名管道的進(jìn)程間通信方式和后臺監控程序通信,以獲得數據庫訪(fǎng)問(wèn)句柄,在客戶(hù)端訪(fǎng)問(wèn)結束后,前端CGI服務(wù)程序會(huì )釋放數據庫句柄。
本系統中由于涉及到頻繁的數據庫存取操作,基于ARM9的硬件平臺,選用數據庫為Berkeley DB數據庫,Berkeley DB是歷史悠久的嵌入式數據庫系統,主要應用在UNIX/LINUX操作系統上,其設計思想是簡(jiǎn)單、小巧、可靠、高性能,滿(mǎn)足本系統的需求。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論