亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Linux C應(yīng)用程序的文件操作優(yōu)化

        2011-06-09 10:14:28翟劍錕
        電子設(shè)計(jì)工程 2011年22期
        關(guān)鍵詞:進(jìn)程用戶設(shè)備

        趙 宇, 翟劍錕, 劉 偉

        (1.北京信息科技大學(xué) 北京 100085;2.中科院計(jì)算與通信學(xué)院 北京 100049;3.北京德潤(rùn)興業(yè)科技開(kāi)發(fā)公司 北京100195)

        在主流技術(shù)應(yīng)用開(kāi)發(fā)過(guò)程中,對(duì)于那些已經(jīng)存在的很多理論和技術(shù),在實(shí)現(xiàn)的過(guò)程中需要有針對(duì)性性地刪減和優(yōu)化,以此達(dá)到應(yīng)用級(jí)別開(kāi)發(fā)的目的。在集成測(cè)試過(guò)程中無(wú)法發(fā)現(xiàn)的很多問(wèn)題,在系統(tǒng)測(cè)試中,要采用更加極端的手段來(lái)甄別系統(tǒng)的穩(wěn)定性和高性能。

        1 應(yīng)用處理進(jìn)程描述

        應(yīng)用處理部分包括小鍵盤(pán)的處理響應(yīng)、液晶顯示、監(jiān)控模塊的數(shù)據(jù)內(nèi)容和執(zhí)行機(jī)構(gòu)等。

        應(yīng)用進(jìn)程中的微型數(shù)據(jù)庫(kù)操作分布在設(shè)備參數(shù)記錄的讀取中,按照用戶信息查詢當(dāng)前用戶信息的存款記錄,完成操作后的應(yīng)用通訊記錄的插入和應(yīng)用記錄的插入等。

        人機(jī)界面的處理包括用戶鍵盤(pán)信息的響應(yīng)、液晶顯示界面和蜂鳴器提示等。

        監(jiān)控模塊的數(shù)據(jù)校驗(yàn)是必須的在運(yùn)行過(guò)程中,會(huì)出現(xiàn)很多意想不到的情況,只有在數(shù)據(jù)校驗(yàn)通過(guò)的前提下才能保證執(zhí)行機(jī)構(gòu)工作的正確性。

        圖1 應(yīng)用處理流程圖Fig.1 Flow chart of application process

        2 監(jiān)控通訊進(jìn)程描述

        后臺(tái)監(jiān)控軟件負(fù)責(zé)設(shè)備的平臺(tái)監(jiān)視和控制命令。

        設(shè)備通訊模式分為在線控制模式、在線監(jiān)視模式、離線工作模式3種。

        1)在線控制模式 監(jiān)控人員有設(shè)備啟動(dòng)、停止、停止用戶消費(fèi)的控制權(quán)限。在發(fā)現(xiàn)用戶消費(fèi)過(guò)程中信息以及操作有問(wèn)題的情況下可以立即停止消費(fèi)行為,并暫時(shí)取消用戶的消費(fèi)權(quán)限,用來(lái)控制用戶消費(fèi)的合法性和合理性。

        2)在線監(jiān)視模式 監(jiān)控人員可以看到設(shè)備狀態(tài),用戶消費(fèi)的全部信息無(wú)任何控制權(quán)限。

        3)離線工作模式 設(shè)備網(wǎng)絡(luò)通訊故障時(shí),離線工作。消費(fèi)記錄存儲(chǔ)在設(shè)備內(nèi),在線后可以上傳至監(jiān)控軟件。

        通訊進(jìn)程使用設(shè)備的配置參數(shù)和后臺(tái)軟件通訊,傳輸用戶信息,消費(fèi)狀態(tài),消費(fèi)記錄、信息。以此達(dá)到監(jiān)控用戶消費(fèi)全過(guò)程過(guò)程,收集用戶消費(fèi)信息的目的。

        圖2 通訊監(jiān)控處理流程圖Fig.2 Flow chort of communication process

        3 集成測(cè)試未發(fā)現(xiàn)問(wèn)題

        應(yīng)用處理進(jìn)程響應(yīng)用戶操作并生成消費(fèi)數(shù)據(jù)記錄,監(jiān)控通訊進(jìn)程負(fù)責(zé)傳送消費(fèi)數(shù)據(jù)記錄給監(jiān)控軟件,進(jìn)程間使用消息通訊。

        當(dāng)設(shè)備工作在線模式時(shí),監(jiān)控軟件垂詢?cè)O(shè)備當(dāng)前的工作狀態(tài)。其中一項(xiàng)是消費(fèi)數(shù)據(jù)記錄的狀態(tài),有兩種狀態(tài)當(dāng)前沒(méi)有新的數(shù)據(jù)記錄和有新的數(shù)據(jù)記錄。應(yīng)用處理進(jìn)程在查詢當(dāng)前所有消費(fèi)數(shù)據(jù)之后得到了一個(gè)新的數(shù)據(jù)記錄的數(shù)目,并發(fā)消息給監(jiān)控通訊進(jìn)程。或者監(jiān)控通訊進(jìn)程自己去查詢當(dāng)前數(shù)據(jù)記錄的狀態(tài)。

        在微型數(shù)據(jù)庫(kù)的建立過(guò)程中使用的是最簡(jiǎn)單的順序存儲(chǔ),并且未對(duì)任何屬性建立有效的索引。在消費(fèi)記錄中有一個(gè)字段是是否上傳標(biāo)志。在監(jiān)控通訊進(jìn)程中,需要查詢是否有未上傳的數(shù)據(jù)并設(shè)置當(dāng)前的通訊狀態(tài)。監(jiān)控程序?qū)崟r(shí)查詢?cè)O(shè)備的狀態(tài),包括是否有問(wèn)上傳的數(shù)據(jù)。

        4 試點(diǎn)過(guò)程中的故障

        開(kāi)發(fā)完成并功能測(cè)試后,順利的進(jìn)入了試點(diǎn)測(cè)試階段。

        試點(diǎn)現(xiàn)場(chǎng)安裝了4臺(tái)設(shè)備,開(kāi)始的兩個(gè)星期內(nèi)沒(méi)有任何問(wèn)題,設(shè)備運(yùn)行良好、通訊正常、消費(fèi)數(shù)據(jù)記錄完整。

        到了第3個(gè)星期,突然一臺(tái)設(shè)備無(wú)法正常通訊。拆機(jī)檢查后沒(méi)有發(fā)現(xiàn)任何硬件故障和軟件問(wèn)題,無(wú)奈之下更換新的設(shè)備。過(guò)了一個(gè)星期,一臺(tái)設(shè)備又出現(xiàn)了通訊故障。嚴(yán)重時(shí)4臺(tái)設(shè)備完全通訊不上,無(wú)法監(jiān)控設(shè)備狀態(tài)。只能離線運(yùn)行模式,使用U盤(pán)采集離線數(shù)據(jù)后上傳到監(jiān)控軟件。

        圖3 現(xiàn)場(chǎng)設(shè)備布局示意圖Fig.3 Field device location

        現(xiàn)場(chǎng)發(fā)現(xiàn)了一個(gè)問(wèn)題,在通訊過(guò)程中,如果數(shù)據(jù)記錄的條數(shù)超過(guò)了1 000條,通訊就會(huì)出現(xiàn)時(shí)斷時(shí)續(xù)的情況。如果超過(guò)了5 000條,通訊基本上就斷開(kāi)了。在清除了數(shù)據(jù)記錄后銅尊正常。也就是在數(shù)據(jù)記錄條數(shù),小于1 000條時(shí)通訊正常,大于1 000條通訊時(shí),通訊異常。

        5 針對(duì)性測(cè)試和文件系統(tǒng)操作優(yōu)化

        現(xiàn)場(chǎng)反饋的問(wèn)題總結(jié)非常清晰明了。在測(cè)試了文件操作的過(guò)程中發(fā)現(xiàn),文件操作嚴(yán)重制約了實(shí)時(shí)響應(yīng)速度。

        下面這個(gè)函數(shù)是在消費(fèi)記錄中讀取是否有未上傳數(shù)據(jù),在記錄操作1 000條后,執(zhí)行時(shí)間大于100 ms,這個(gè)時(shí)間在通訊監(jiān)控程序的響應(yīng)范圍之外。這時(shí)就會(huì)出現(xiàn)通訊中斷的情況。

        優(yōu)化策略一:添加文件上傳標(biāo)志索引文件。

        建立一個(gè)索引文件,在生成數(shù)據(jù)記錄的同時(shí)記錄當(dāng)前數(shù)據(jù)記錄的指針和數(shù)據(jù)記錄的匯總信息包括未上傳數(shù)據(jù)記錄的個(gè)數(shù)。結(jié)構(gòu)和操作如圖4所示。

        圖4 索引文件、記錄文件物理關(guān)系示意圖Fig.4 Relationship of index file and record file

        對(duì)應(yīng)的操作有生成記錄時(shí)的是否上傳判斷,添加至交易記錄中。如果未上傳修改索引文件的記錄數(shù)量,并添加未上傳指針。在通訊正常情況下,上傳未上傳交易記錄數(shù)量,按照指針提取交易記錄。上傳記錄成功后,修改交易記錄標(biāo)志,修改未上傳記錄數(shù)目,刪除未上傳指針。

        圖5 記錄操作流程圖Fig.5 Flow chart of record operation

        在經(jīng)過(guò)一段時(shí)間的程序調(diào)整和測(cè)試發(fā)現(xiàn),當(dāng)前應(yīng)用程序完全符合實(shí)時(shí)要求。但是程序的修改和實(shí)時(shí)響應(yīng)的優(yōu)化代價(jià)實(shí)在是太大了。在應(yīng)用處理和通訊的流程中,添加了太多的操作。使得程序的可讀性和可維護(hù)性變得越來(lái)越差。

        優(yōu)化策略二:添加通訊文件

        經(jīng)過(guò)一段時(shí)間的調(diào)整和測(cè)試,最終采用了添加一個(gè)通訊文件的模式。在記錄生成的同時(shí)在通訊文件和記錄文件添加,記錄文件中的上傳屬性作廢。

        圖6 記錄存儲(chǔ)示意圖Fig.6 Schematic diagram of record storage

        圖7 記錄操作示意圖Fig.7 Schematic diagram of record operation

        不需要生成未上傳記錄數(shù)目。在通訊文件內(nèi)都是未上傳的記錄。查詢未上傳記錄數(shù)目,只要獲取通訊文件的尺寸除以一個(gè)元組的尺寸就是當(dāng)前未上傳記錄的數(shù)目。

        不需要生成未上傳記錄指針。通訊文件內(nèi)都是未上傳記錄,順次上傳即可。同時(shí)不需要操作記錄文件內(nèi)的記錄。

        按照這個(gè)模式優(yōu)化的結(jié)果。操作簡(jiǎn)單、實(shí)時(shí)響應(yīng)比第一種的還要快,完全滿足通訊要求。通過(guò)現(xiàn)場(chǎng)測(cè)試,經(jīng)過(guò)策略二的優(yōu)化的應(yīng)用程序 完全滿足應(yīng)用需要。結(jié)構(gòu)簡(jiǎn)單、實(shí)時(shí)性強(qiáng)。

        6 結(jié) 論

        在了解標(biāo)準(zhǔn)文件操作的時(shí)效性后,按照數(shù)據(jù)庫(kù)技術(shù)哈希索引的技術(shù)指導(dǎo),建立了一個(gè)高效率的索引文件,提高了數(shù)據(jù)搜索的效率。然而卻帶來(lái)了文件操操作的延時(shí)。對(duì)于嵌入式開(kāi)發(fā)來(lái)講,應(yīng)用程序結(jié)構(gòu)簡(jiǎn)單、操作方便和高效率、實(shí)時(shí)性才是更加重要的。對(duì)于大型的數(shù)據(jù)庫(kù)系統(tǒng)技術(shù)指導(dǎo)下的實(shí)現(xiàn)方法一般結(jié)構(gòu)都相對(duì)復(fù)雜,處理流程過(guò)長(zhǎng)。需要在各種技術(shù)指導(dǎo)下,改進(jìn)和選擇最簡(jiǎn)單、有效的方法來(lái)實(shí)現(xiàn)嵌入式應(yīng)用。通過(guò)本文的應(yīng)用程序的文件操作優(yōu)化過(guò)程,希望能讓更多的人了解到結(jié)構(gòu)簡(jiǎn)單的應(yīng)用程序、效率高的文件操作才是嵌入式應(yīng)用追求的目標(biāo)之一。

        參考資料:

        [1]孫瓊.嵌入式Linux應(yīng)用程序開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2006.

        [2]Molay B.Understanding unix/Linux programming[M].北京:清華大學(xué)出版,2004.

        [3]朱義君,楊育紅,趙凱,等.AT91系列ARM微控制器體系結(jié)構(gòu)與開(kāi)發(fā)實(shí)例[M].北京:北京航空航天大學(xué)出版社,2005.

        [4]Silberschatz A.數(shù)據(jù)庫(kù)系統(tǒng)概念[M].5版.唐世渭,馬秀莉,楊冬青,譯.北京:機(jī)械工業(yè)出版社,2008.

        [5]孫瓊.嵌入式Linux應(yīng)用程序開(kāi)發(fā)詳解[M].北京:人民郵電出版社,2006.

        [6]Owens M.The definitive guide to SQLite[M].Apress,2006.

        猜你喜歡
        進(jìn)程用戶設(shè)備
        諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
        債券市場(chǎng)對(duì)外開(kāi)放的進(jìn)程與展望
        基于MPU6050簡(jiǎn)單控制設(shè)備
        電子制作(2018年11期)2018-08-04 03:26:08
        關(guān)注用戶
        關(guān)注用戶
        關(guān)注用戶
        500kV輸變電設(shè)備運(yùn)行維護(hù)探討
        如何獲取一億海外用戶
        原來(lái)他們都是可穿戴設(shè)備
        社會(huì)進(jìn)程中的新聞學(xué)探尋
        亚洲av毛片在线播放| 漂亮人妻被黑人久久精品| 久久综合亚洲色社区| 免费看男女啪啪的视频网站| 痴汉电车中文字幕在线| 人妻有码中文字幕| 午夜免费福利在线观看| 亚洲av第一区综合激情久久久| 国产三级国产精品国产专区50| 亚洲人成人无码www影院| 国产日产高清欧美一区| 成人国产乱对白在线观看| 久久人妻中文字幕精品一区二区 | 免费无码中文字幕a级毛片| 国产欧美VA欧美VA香蕉在| 亚洲va精品va国产va| 美女主播网红视频福利一区二区| 中国女人做爰视频| 日韩一区二区肥| 日本精品啪啪一区二区| 亚洲av综合av一区二区三区| 一区二区黄色在线观看| 少妇被粗大的猛烈进出免费视频| 99re这里只有热视频| 精品在线视频免费在线观看视频 | 无遮挡18禁啪啪羞羞漫画| 欧美婷婷六月丁香综合色| 亚洲色图视频在线播放| 国产免费观看久久黄av麻豆| 中国女人做爰视频| 日韩中文在线视频| 大香蕉视频在线青青草| 又色又爽又黄的视频软件app| 娇妻玩4p被三个男人伺候电影| 久久亚洲一级av一片| 国产av精品一区二区三区久久| 亚洲精品无码久久久久久| 久久夜色精品国产亚洲噜噜| av在线播放中文专区| 免费人成视频x8x8入口| 亚洲 国产 哟|