[發(fā)明專利]一種雙環(huán)形隊列數(shù)據(jù)存儲方法和智能網(wǎng)關(guān)有效
| 申請?zhí)枺?/td> | 201410303611.3 | 申請日: | 2014-06-30 |
| 公開(公告)號: | CN104035884B | 公開(公告)日: | 2017-04-05 |
| 發(fā)明(設(shè)計)人: | 陸振華 | 申請(專利權(quán))人: | 河南百旺金賦電腦有限公司 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F3/06;H04L12/66 |
| 代理公司: | 鄭州中原專利事務(wù)所有限公司41109 | 代理人: | 李想 |
| 地址: | 450046 河南省鄭州市*** | 國省代碼: | 河南;41 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 環(huán)形 隊列 數(shù)據(jù) 存儲 方法 智能 網(wǎng)關(guān) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種存儲技術(shù)領(lǐng)域,尤其涉及一種雙環(huán)形隊列數(shù)據(jù)存儲方法和智能網(wǎng)關(guān)。
背景技術(shù)
在嵌入式系統(tǒng)中常常使用FLASH(閃存)作為非易失性存儲器,每次FLASH的寫操作都需要將對應(yīng)的位置擦除。因此,按照通常的習(xí)慣會在擦除和寫操作上浪費大量的時間,并因不同空間擦寫次數(shù)不均衡而導(dǎo)致FLASH的使用壽命縮短。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題在于提供一種減少非易失型存儲器擦除次數(shù)的雙環(huán)形隊列數(shù)據(jù)存儲方法和智能網(wǎng)關(guān),以解決現(xiàn)有技術(shù)存在的問題。
為解決上述技術(shù)問題,本發(fā)明采用以下技術(shù)方案:一種雙環(huán)形隊列數(shù)據(jù)存儲方法,其特征在于:它包括以下步驟:
首先,在存儲器中建立一個數(shù)據(jù)緩沖區(qū),在該數(shù)據(jù)緩沖區(qū)中設(shè)置兩個環(huán)形隊列,所述兩個環(huán)形隊列分別為索引環(huán)形隊列和數(shù)據(jù)環(huán)形隊列:索引環(huán)形隊列用于存儲數(shù)據(jù)索引,設(shè)置一個寫向量WI、一個讀向量RI、一個刪除向量EI、一個存儲數(shù)據(jù)長度的數(shù)組、一個存儲數(shù)據(jù)索引的指針數(shù)組以及數(shù)據(jù)環(huán)形隊列的起始地址和結(jié)束地址,并對索引環(huán)形隊列進行初始化;數(shù)據(jù)環(huán)形隊列用于存儲索引環(huán)形隊列中每個索引對應(yīng)的數(shù)據(jù);
其次,進行數(shù)據(jù)的處理流程,包括數(shù)據(jù)的刪除、讀取、插入、恢復(fù)以及未處理數(shù)據(jù)的統(tǒng)計,其中數(shù)據(jù)的刪除包括以下步驟:
步驟1:如果刪除向量EI等于讀向量RI,則返回失敗,否則,刪除向量EI加1,對隊列最大長度取余;
步驟2:結(jié)束刪除數(shù)據(jù);
數(shù)據(jù)的讀取包括以下步驟:
步驟1:如果環(huán)形隊列為空,則返回失敗,否則,拷貝數(shù)據(jù)到緩沖;
步驟2:讀向量RI加1,對隊列最大長度取余;
步驟3:結(jié)束讀取數(shù)據(jù);
數(shù)據(jù)的插入包括以下步驟:
步驟1:若對寫向量加1并對隊列最大長度取余后的值等于刪除向量,則返回失敗,否則,獲取數(shù)據(jù)環(huán)形隊列的寫入地址和刪除地址,若寫入數(shù)據(jù)后寫入地址越界且數(shù)據(jù)環(huán)形隊列的起始地址加上數(shù)據(jù)長度后不超過刪除地址,數(shù)據(jù)環(huán)形隊列的寫入地址回滾為數(shù)據(jù)環(huán)形隊列的起始地址;
步驟2:數(shù)據(jù)拷貝到數(shù)據(jù)環(huán)形隊列寫入地址處;
步驟3:把所述數(shù)據(jù)的長度保存在索引環(huán)形隊列的數(shù)據(jù)長度數(shù)組中;
步驟4:寫向量加1,并對隊列最大長度取余;
步驟5:更新數(shù)據(jù)環(huán)形隊列寫入地址,并保存在索引環(huán)形隊列指針數(shù)組中;
步驟6:結(jié)束插入數(shù)據(jù);
數(shù)據(jù)的恢復(fù)包含以下步驟:
步驟1:若刪除向量EI等于讀向量RI,則返回失敗,否則讀向量RI減1,加隊列最大長度,對隊列最大長度取余;
步驟2:結(jié)束恢復(fù)數(shù)據(jù);
未處理數(shù)據(jù)的統(tǒng)計包含以下步驟:
步驟1:設(shè)置變量n等于寫向量WI減去刪除向量EI;
步驟2:若n大于0,返回n的值,否則設(shè)置n等于n加上隊列最大長度。
初始化時,讀向量RI、寫向量WI和刪除向量EI均設(shè)置為0,保存數(shù)據(jù)索引的指針數(shù)組的第一個元素值設(shè)置為數(shù)據(jù)環(huán)形隊列的起始地址,為0。
多個數(shù)據(jù)采集和讀取任務(wù)同時執(zhí)行數(shù)據(jù)的刪除、恢復(fù)、插入、讀取時采用信號量同步和互斥機制。
環(huán)形隊列為空的條件是讀向量等于寫向量。
一種智能網(wǎng)關(guān),它包括ARM720T中央處理器以及與其連接的時鐘模塊、Zigbee?無線收發(fā)模塊、GPRS模塊、WIFI模塊、接口模塊、存儲模塊和給各功能模塊供電的電源模塊;所述ARM720T中央處理器,實現(xiàn)在存儲模塊中建立一個數(shù)據(jù)緩沖區(qū),在該存儲模塊中設(shè)置雙環(huán)形隊列,即索引環(huán)形隊列和數(shù)據(jù)環(huán)形隊列,并對環(huán)形隊列進行初始化,并在多個數(shù)據(jù)采集和讀取任務(wù)同時運行時實現(xiàn)數(shù)據(jù)的刪除、讀取、插入、恢復(fù)以及未處理數(shù)據(jù)的統(tǒng)計流程。
所述接口模塊包括串行接口、以太網(wǎng)接口和光纖接口。
所述串行接口采用RS485通信接口,ARM720T中央處理器通過串行接口采集數(shù)據(jù);所述以太網(wǎng)接口和光纖接口接收ARM720T中央處理器發(fā)送來的數(shù)據(jù)并傳輸給網(wǎng)絡(luò),以及將網(wǎng)絡(luò)發(fā)送來的數(shù)據(jù)傳輸給ARM720T中央處理器。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于河南百旺金賦電腦有限公司,未經(jīng)河南百旺金賦電腦有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410303611.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





