999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于嵌入式Linux的用電信息采集終端存儲(chǔ)數(shù)據(jù)的方法

2016-07-25 07:59:37孫明剛積成電子股份有限公司山東濟(jì)南250100

孫明剛(積成電子股份有限公司,山東 濟(jì)南 250100)

?

基于嵌入式Linux的用電信息采集終端存儲(chǔ)數(shù)據(jù)的方法

孫明剛
(積成電子股份有限公司,山東濟(jì)南250100)

摘要:本發(fā)明公開(kāi)一種基于嵌入式Linux的用電信息采集終端使用內(nèi)存映射文件存儲(chǔ)數(shù)據(jù)的方法,通過(guò)內(nèi)存映射函數(shù)mmap(Linux系統(tǒng)調(diào)用)將所需讀寫(xiě)的數(shù)據(jù)映射到用戶進(jìn)程空間,以讀寫(xiě)內(nèi)存的形式訪問(wèn)存儲(chǔ)數(shù)據(jù)具有可將數(shù)據(jù)固化存儲(chǔ)、掉電不丟、讀寫(xiě)方便、性能優(yōu)越和節(jié)約成本等優(yōu)勢(shì)。

關(guān)鍵詞:嵌入式Linux;用電信息;終端存儲(chǔ)

一、技術(shù)領(lǐng)域

本發(fā)明涉及智能電網(wǎng)用電信息采集系統(tǒng)領(lǐng)域,具體涉及基于嵌入式Linux用電信息采集終端存儲(chǔ)數(shù)據(jù)的方法。

二、背景技術(shù)

電力用戶用電信息采集系統(tǒng)(power userelectricenergydataacquiresystem)是對(duì)電力用戶的用電信息進(jìn)行采集、處理和實(shí)時(shí)監(jiān)控的系統(tǒng),實(shí)現(xiàn)用電信息的自動(dòng)采集、計(jì)量異常監(jiān)測(cè)、電能質(zhì)量監(jiān)測(cè)、用電分析和管理、相關(guān)信息發(fā)布、分布式能源監(jiān)控、智能用電設(shè)備的信息交互等功能。

用電信息采集終端(electricenergy dataacquireterminal)是對(duì)各信息采集點(diǎn)用電信息采集的設(shè)備,簡(jiǎn)稱(chēng)采集終端。可以實(shí)現(xiàn)電能表數(shù)據(jù)的采集、數(shù)據(jù)管理、數(shù)據(jù)雙向傳輸以及轉(zhuǎn)發(fā)或執(zhí)行控制命令的設(shè)備。用電信息采集終端按應(yīng)用場(chǎng)所分為專(zhuān)變采集終端、集中抄表終端(包括集中器、采集器)、分布式能源監(jiān)控終端等類(lèi)型。

采集終端因功能要求在運(yùn)行過(guò)程中會(huì)對(duì)部分?jǐn)?shù)據(jù)進(jìn)行頻繁讀寫(xiě)體現(xiàn)在以下幾個(gè)方面:采集終端在每輪次抄表結(jié)束后會(huì)對(duì)采集結(jié)果進(jìn)行統(tǒng)計(jì)、計(jì)算并存儲(chǔ),采集終端會(huì)每分鐘對(duì)各采集點(diǎn)進(jìn)行數(shù)據(jù)統(tǒng)計(jì)、計(jì)算并存儲(chǔ),采集終端會(huì)每秒種讀取自身計(jì)量芯片數(shù)據(jù)計(jì)算、累加并存儲(chǔ),采集終端會(huì)實(shí)時(shí)讀取脈沖表狀態(tài)并累加、存儲(chǔ)。

三、關(guān)于存儲(chǔ)、讀寫(xiě)此類(lèi)數(shù)據(jù)的方案

(一)存文件,將所使用的數(shù)據(jù)先緩沖在內(nèi)存中然后讀寫(xiě)完成后存入文件。數(shù)據(jù)存入文件可避免系統(tǒng)停電帶來(lái)的數(shù)據(jù)丟失問(wèn)題,但讀寫(xiě)文件操作較為繁瑣、不能以操作字節(jié)的形式訪問(wèn)數(shù)據(jù)使用不便,且頻繁地讀寫(xiě)文件性能有限特別體現(xiàn)在大型文件的重復(fù)、隨機(jī)讀寫(xiě)上。

(二)增加硬件SRAM(掉電不丟內(nèi)存),可以以操作字節(jié)的形式訪問(wèn)數(shù)據(jù),但需額外供電,采集終端的板載鋰電池一般設(shè)計(jì)壽命為5年,即使是壽命未到也存在電池自放電、批量質(zhì)量問(wèn)題造成SRAM供電電池失效導(dǎo)致數(shù)據(jù)丟失,且使硬件意外地增加成本。

(三)編程到Flash,可以實(shí)現(xiàn)固化存儲(chǔ)不需額外供電,掉電后數(shù)據(jù)不丟失,但Flash編程需專(zhuān)用驅(qū)動(dòng)且需先擦除再寫(xiě)入,不能以操作字節(jié)的形式讀寫(xiě),還需考慮Flash的損耗均衡以保證其讀寫(xiě)壽命。

四、發(fā)明內(nèi)容

針對(duì)上述問(wèn)題,本發(fā)明提供一種可將數(shù)據(jù)固化存儲(chǔ)、掉電不丟、讀寫(xiě)方便、性能優(yōu)越的基于嵌入式Linux的用電信息采集終端存儲(chǔ)數(shù)據(jù)的方法。

為解決上述問(wèn)題,本發(fā)明采取的技術(shù)方案為:基于嵌入式Linux的用電信息采集終端存儲(chǔ)數(shù)據(jù)的方法,包括如下步驟:

(一)確定所需存儲(chǔ)的數(shù)據(jù)以及數(shù)據(jù)長(zhǎng)度,在進(jìn)程地址空間中定義內(nèi)存映射區(qū)的基地址,并定義用于存儲(chǔ)各數(shù)據(jù)的地址與基地址的相對(duì)偏移;比如需存儲(chǔ)1M的數(shù)據(jù)這些數(shù)據(jù)分別為數(shù)據(jù)1、數(shù)據(jù)2、數(shù)據(jù)3.....數(shù)據(jù)256,每個(gè)占用4個(gè)字節(jié),如果內(nèi)存映射區(qū)基地址為0xffff0000,則存儲(chǔ)這些數(shù)據(jù)的地址分別為數(shù)據(jù)1->0xffff0000,數(shù)據(jù)2->0xffff0004,數(shù)據(jù)3->0xffff0008......,則可如下定義:[0013]數(shù)據(jù)1:(基地址+0);[0014]數(shù)據(jù)2:(基地址+4);[0015]數(shù)據(jù)3:(基地址+8);.....定義這些偏移是為了方便讀寫(xiě)各數(shù)據(jù)。

(二)根據(jù)步驟一中所需存儲(chǔ)數(shù)據(jù)的長(zhǎng)度檢測(cè)待內(nèi)存映射文件的合法性,若文件合法則進(jìn)入步驟三;若不合法則根據(jù)所需存儲(chǔ)數(shù)據(jù)長(zhǎng)度創(chuàng)建文件并將文件內(nèi)容填充為零值再進(jìn)入步驟三。

(三)調(diào)用內(nèi)存映射函數(shù)mmap,建立與步驟二中的待內(nèi)存映射文件的映射,將內(nèi)存映射函數(shù)mmap返回地址賦予步驟一中定義的基地址。

(四)使用步驟一中定義的內(nèi)存映射區(qū)的基地址以及其他數(shù)據(jù)的相對(duì)偏移地址讀寫(xiě)所需存儲(chǔ)數(shù)據(jù)。

內(nèi)存映射文件利用虛擬內(nèi)存把文件映射到進(jìn)程的地址空間中去,在此之后進(jìn)程操作文件,就像操作進(jìn)程空間里的地址一樣,比如使用memcpy等內(nèi)存操作的函數(shù)。這種方法能夠很好地應(yīng)用在需要頻繁處理一個(gè)文件或者是一個(gè)大文件的場(chǎng)合,這種方式處理IO效率比普通IO效率要高。Linux提供了內(nèi)存映射函數(shù)mmap,調(diào)用時(shí)指明待映射文件以及文件長(zhǎng)度即可返回映射內(nèi)存首地址,它把文件內(nèi)容映射到一段內(nèi)存上。通過(guò)對(duì)這段內(nèi)存的讀取和修改,實(shí)現(xiàn)對(duì)文件的讀取和修改。

根據(jù)所需存儲(chǔ)數(shù)據(jù)長(zhǎng)度確定所需映射內(nèi)存的長(zhǎng)度,同時(shí)也決定了待內(nèi)存映射文件的大小。所述步驟二中檢測(cè)待內(nèi)存映射文件合法性的條件還包括文件的起始字節(jié)及文件的結(jié)束字節(jié)。

本發(fā)明公開(kāi)一種基于嵌入式Linux的用電信息采集終端使用內(nèi)存映射文件存儲(chǔ)數(shù)據(jù)的方法,通過(guò)內(nèi)存映射函數(shù)mmap (Linux系統(tǒng)調(diào)用)將所需讀寫(xiě)的數(shù)據(jù)映射到用戶進(jìn)程空間,以讀寫(xiě)內(nèi)存的形式訪問(wèn)存儲(chǔ)數(shù)據(jù)具有可將數(shù)據(jù)固化存儲(chǔ)、掉電不丟、讀寫(xiě)方便、性能優(yōu)越、節(jié)約成本等優(yōu)勢(shì)。

五、本發(fā)明具備的有益效果

(一)無(wú)需增加硬件節(jié)約成本,并增加可靠性;

(二)數(shù)據(jù)讀寫(xiě)可以以操作內(nèi)存的形式進(jìn)行;

(三)實(shí)現(xiàn)固化存儲(chǔ),系統(tǒng)掉電后無(wú)需電池供電以保存數(shù)據(jù);

(四)無(wú)需考慮存儲(chǔ)器件的磨損均衡;

(五)無(wú)需考慮存儲(chǔ)器件的讀寫(xiě)次數(shù);

(六)無(wú)需專(zhuān)用存儲(chǔ)器件的讀寫(xiě)驅(qū)動(dòng)程序、可移植性高。

內(nèi)存映射文件性能優(yōu)勢(shì):正常的系統(tǒng)IO讀寫(xiě)需要兩次傳輸一次是在文件和內(nèi)核高速緩沖區(qū)之間,另一次在高速緩沖區(qū)和用戶空間緩沖區(qū)之間。使用內(nèi)存映射函數(shù)mmap就無(wú)需第二次傳輸了,對(duì)于輸入來(lái)講,一旦內(nèi)核將相應(yīng)的文件塊映射進(jìn)內(nèi)存之后用戶進(jìn)程就能夠使用這些數(shù)據(jù)了。對(duì)于輸出來(lái)講,用戶進(jìn)程僅僅需要修改內(nèi)存中的內(nèi)容,然后可以依靠?jī)?nèi)核管理器來(lái)自動(dòng)更新底層的文件。除了節(jié)省了內(nèi)核空間和用戶空間之間的一次傳輸之后,內(nèi)存映射函數(shù)mmap還能夠通過(guò)減少所需使用的內(nèi)存來(lái)提升性能。

圖1

圖2

附圖說(shuō)明:

圖1為本發(fā)明的流程圖,圖2為本發(fā)明的原理示意圖。

參考文獻(xiàn)

[1]張鐘玲.用電信息采集系統(tǒng)功能及技術(shù)應(yīng)用[J].科技創(chuàng)新導(dǎo)報(bào),2013(31):47-48.

中圖分類(lèi)號(hào):TM73

文獻(xiàn)標(biāo)識(shí)碼:A

主站蜘蛛池模板: 成人福利免费在线观看| 狠狠ⅴ日韩v欧美v天堂| 免费在线播放毛片| h视频在线播放| 久热中文字幕在线| 青青青伊人色综合久久| 狠狠亚洲五月天| 亚洲无码视频喷水| 国产精品浪潮Av| 高清无码不卡视频| 欧美天堂久久| 免费 国产 无码久久久| 久久人与动人物A级毛片| 国产午夜一级淫片| 一本大道无码高清| 成人韩免费网站| 日韩无码真实干出血视频| 亚洲人成网线在线播放va| 亚洲精品不卡午夜精品| 國產尤物AV尤物在線觀看| 国产小视频免费| 亚洲精品另类| 久久黄色免费电影| 黄色网页在线播放| 中文字幕va| 日本久久久久久免费网络| 亚洲一道AV无码午夜福利| 色综合激情网| 国产精品视频a| 国产福利免费视频| 国产成人精品高清不卡在线| 久久国产av麻豆| 在线观看亚洲人成网站| 热这里只有精品国产热门精品| 九月婷婷亚洲综合在线| 免费在线看黄网址| 中文字幕色在线| 欧美成人综合视频| 亚洲人免费视频| 国产成人精品一区二区不卡| AV老司机AV天堂| 国产无码性爱一区二区三区| 久久精品国产电影| 无码aaa视频| 无码网站免费观看| 亚洲无码37.| 国产成人久久777777| 波多野结衣爽到高潮漏水大喷| 国产精品亚洲欧美日韩久久| 1024你懂的国产精品| 国产精品露脸视频| 一级毛片在线播放免费| 国产亚洲高清视频| 国产精品永久久久久| 91精品国产福利| 亚洲欧美日韩另类在线一| 美女免费精品高清毛片在线视| 久久精品丝袜高跟鞋| 亚洲精品制服丝袜二区| 东京热高清无码精品| 一本大道香蕉中文日本不卡高清二区 | 天天综合网站| 亚洲AV人人澡人人双人| 欧美一区二区啪啪| 欧美成人日韩| 国产精品性| 午夜a视频| 国产资源免费观看| 九九九国产| 免费一极毛片| 精品国产黑色丝袜高跟鞋| 日韩国产欧美精品在线| 欧美精品影院| 伊人久久婷婷五月综合97色| 天堂网亚洲综合在线| 香蕉久久永久视频| 国产精品永久不卡免费视频| 欧美亚洲综合免费精品高清在线观看 | 国产成人综合日韩精品无码首页| 久久天天躁狠狠躁夜夜躁| 亚洲免费人成影院| 精品国产三级在线观看|