<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM9與Linux的門(mén)禁監(jiān)控系統(tǒng)軟件設(shè)計(jì)

          基于ARM9與Linux的門(mén)禁監(jiān)控系統(tǒng)軟件設(shè)計(jì)

          作者: 時(shí)間:2011-04-06 來(lái)源:網(wǎng)絡(luò) 收藏

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


          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();