欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

信息處理器的制作方法

文檔序號(hào):6477208閱讀:182來(lái)源:國(guó)知局
專利名稱:信息處理器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種信息處理器和其中使用的有序數(shù)據(jù)管理方法,以 及一種關(guān)聯(lián)的程序,更具體地,涉及一種在信息處理器(如信息設(shè)備、 通信設(shè)備等)中使用的有序數(shù)據(jù)管理方法。在本申請(qǐng)中,以固定順序 輸入/輸出的數(shù)據(jù)被定義為"有序數(shù)據(jù)"。
背景技術(shù)
如在FIFO (先進(jìn)先出)或FILO (先進(jìn)后出)之類的數(shù)據(jù)結(jié)構(gòu)中 所知道的,信息設(shè)備或通信設(shè)備中預(yù)留的用于對(duì)其中的數(shù)據(jù)進(jìn)行排隊(duì) 的臨時(shí)數(shù)據(jù)保存區(qū)一般被配置為從第一個(gè)或最后一個(gè)元素中取出數(shù) 據(jù),或向第一個(gè)或最后一個(gè)元素添加數(shù)據(jù)。
另一方面,在具有復(fù)用功能以實(shí)現(xiàn)抑制延遲和最優(yōu)負(fù)載分配的通 信設(shè)備中實(shí)現(xiàn)的分組調(diào)度機(jī)制中,以不同于FIFO和FILO的排序關(guān)系 來(lái)輸入/輸出數(shù)據(jù)。這里,需要一種操作來(lái)從臨時(shí)數(shù)據(jù)保存區(qū)中取出與 隊(duì)列頭部移動(dòng)了數(shù)據(jù)大小的偏移量的數(shù)據(jù),所述移動(dòng)的數(shù)據(jù)大小的偏 移量是基于每條路徑的擁塞狀況來(lái)確定的。本申請(qǐng)人已經(jīng)提出了這種 技術(shù)(專利文獻(xiàn)1)。專利文獻(xiàn)1中的隊(duì)列必須被實(shí)現(xiàn)為使得可以從任 何元素(甚至不同于第一個(gè)和最后一個(gè))取出數(shù)據(jù),或向任何元素添 加數(shù)據(jù)。此外,需要一種方案,使用與頭部的數(shù)據(jù)大小的偏移量作為 關(guān)鍵字來(lái)實(shí)現(xiàn)高速數(shù)據(jù)存取。這種方案的實(shí)現(xiàn)需要數(shù)據(jù)管理,該數(shù)據(jù) 管理允許關(guān)鍵字取任意可能值作為偏移,并且即使在關(guān)鍵字與數(shù)據(jù)之 間的關(guān)系隨數(shù)據(jù)的刪除或添加而動(dòng)態(tài)變化的情況下,也能實(shí)現(xiàn)高速數(shù) 據(jù)存取。
一種用于管理其中任何任意元素可存取的有序數(shù)據(jù)的己知方案涉 及一種以列表或數(shù)組形式配置的數(shù)據(jù)結(jié)構(gòu)。根據(jù)這些結(jié)構(gòu),在數(shù)組結(jié) 構(gòu)中,可以作為關(guān)鍵字的值被限制在一個(gè)范圍內(nèi),在該范圍中,為數(shù)組元素定義了標(biāo)識(shí)號(hào)(索引)。由于該范圍是在為數(shù)組結(jié)構(gòu)預(yù)留存儲(chǔ)器 的階段確定的,因此關(guān)鍵字的范圍由數(shù)組結(jié)構(gòu)本身的大小所限制。另 一方面,在列表結(jié)構(gòu)中,關(guān)鍵字的值不限于列表本身的大小。然而, 在列表結(jié)構(gòu)中,當(dāng)對(duì)與任意關(guān)鍵字相對(duì)應(yīng)的數(shù)據(jù)進(jìn)行存取時(shí),必須在 列表上搜索該關(guān)鍵字。該搜索時(shí)間的期望值在例如線性搜索中與元素 數(shù)目成比例,在快速二叉搜索中,與以2為底的元素?cái)?shù)目的對(duì)數(shù)成比 例。這產(chǎn)生了一個(gè)問(wèn)題與數(shù)組結(jié)構(gòu)相比,較大的元素?cái)?shù)目導(dǎo)致存取 所需時(shí)間較長(zhǎng)。
根據(jù)關(guān)鍵字高速搜索相應(yīng)元素的現(xiàn)有技術(shù)包括散列方法、三重 數(shù)組方法(非專利文獻(xiàn)1)等等。然而,如果這些技術(shù)采用了由于元 素的刪除和插入而表現(xiàn)出動(dòng)態(tài)變化的關(guān)鍵字,如表示來(lái)自其第一個(gè)數(shù) 據(jù)的數(shù)據(jù)體的屬性(數(shù)據(jù)體的大小、丟棄比特的數(shù)目等等)的元數(shù)據(jù) 的總值等,則如在例如專利文獻(xiàn)l中所描述的,由于難以跟隨數(shù)據(jù)和 關(guān)鍵字的相應(yīng)改變,因此這些技術(shù)不能容易地應(yīng)用。
此外,在列表結(jié)構(gòu)中,為了在所有時(shí)刻都能正確維持動(dòng)態(tài)改變的 關(guān)鍵字和元素之間的關(guān)系,必須通過(guò)再次針對(duì)由于如數(shù)據(jù)的刪除、插 入等操作而必須更新的所有元素而設(shè)置關(guān)鍵字來(lái)遵循這些操作。例如, 當(dāng)選擇關(guān)鍵字作為來(lái)自第一個(gè)元素的元數(shù)據(jù)的總值時(shí),刪除特定數(shù)據(jù) 導(dǎo)致該數(shù)據(jù)之后的所有元素的元數(shù)據(jù)的總值改變,使得必須再次針對(duì) 從所刪除的元素至最后一個(gè)元素的所有元素而設(shè)置關(guān)鍵字。當(dāng)必須再 次設(shè)置的元素?cái)?shù)目較大時(shí),需要較長(zhǎng)時(shí)間來(lái)執(zhí)行用于再次設(shè)置關(guān)鍵字 的處理。
如上所述,提供快速存取的數(shù)組結(jié)構(gòu)和散列方法不適用于管理可 以取具有任意值的關(guān)鍵字的有序數(shù)據(jù),其中,在如特定數(shù)據(jù)的刪除和 改變、新數(shù)據(jù)的添加等操作的情況下,預(yù)期進(jìn)行操作的數(shù)據(jù)或其他數(shù) 據(jù)的關(guān)鍵字值動(dòng)態(tài)改變。另一方面,列表結(jié)構(gòu)具有的問(wèn)題在于,需要 過(guò)多時(shí)間來(lái)存取和操作數(shù)據(jù)。
專利文獻(xiàn)l:國(guó)際公布No. 2007/111331小冊(cè)子 非專禾U文獻(xiàn)1: Iriguchi, Tsuda, Shishibori, Aoe, "Efficient Storage Search Method for Graph Structure," Transactions of the Institute ofand Communication Engineers D-l, Vol. J79-D-1 No. 8,pp.502-510 (1996)。

發(fā)明內(nèi)容
因此,本發(fā)明的目的是提供一種解決上述問(wèn)題并能夠高速引用與 作為元數(shù)據(jù)總值的關(guān)鍵字相關(guān)聯(lián)的元素的信息處理器和在其中使用的 有序數(shù)據(jù)管理方法,以及關(guān)聯(lián)的程序。
本發(fā)明的信息處理器用于管理具有固定順序的數(shù)據(jù)序列。所述信 息處理器包括
指示數(shù)組,用于將對(duì)數(shù)據(jù)序列中每個(gè)數(shù)據(jù)的引用存儲(chǔ)在具有與數(shù) 據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素中,以及裝置,操作用于當(dāng)所述指示 數(shù)組中任意索引范圍內(nèi)的元素所引用的所有數(shù)據(jù)的關(guān)鍵字改變相同的 量時(shí),以與改變的量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)所述指示數(shù)組中所述范 圍內(nèi)的存儲(chǔ)器內(nèi)容。
本發(fā)明的有序數(shù)據(jù)管理方法是在用于管理具有固定順序的數(shù)據(jù)序 列的信息存儲(chǔ)器中使用的,其中
所述信息處理器具有指示數(shù)組,所述指示數(shù)組用于將對(duì)數(shù)據(jù)序列 中每個(gè)數(shù)據(jù)的引用存儲(chǔ)在具有與數(shù)據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素 中,以及
當(dāng)信息處理器對(duì)所述指示數(shù)組中任意索引范圍內(nèi)的元素所引用的 所有數(shù)據(jù)的關(guān)鍵字改變相同的量時(shí),執(zhí)行以與所述改變的量相對(duì)應(yīng)的 索引數(shù)目來(lái)移動(dòng)所述指示數(shù)組中所述范圍內(nèi)的存儲(chǔ)器內(nèi)容的處理。
本發(fā)明的程序使處理器在用于管理具有固定順序的數(shù)據(jù)序列的信 息處理器中執(zhí)行處理。所述程序的特征在于使所述信息處理器執(zhí)行 處理,以
向所述信息處理器提供指示數(shù)組,所述指示數(shù)組用于將對(duì)數(shù)據(jù)序 列中每個(gè)數(shù)據(jù)的引用存儲(chǔ)在具有與數(shù)據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素 中;以及
當(dāng)所述指示數(shù)組中任意索引范圍內(nèi)的元素所引用的所有數(shù)據(jù)的關(guān) 鍵字改變相同的量時(shí),以與所述改變的量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)所儲(chǔ)器內(nèi)容。
使用上述配置和操作,本發(fā)明可以有利地高速引用具有作為元數(shù)據(jù)總值的關(guān)鍵字的元素。


圖1是示出了根據(jù)本發(fā)明第一實(shí)施例的信息處理器中的程序處理部分的示例配置的框圖。
圖2是示出了圖1中的引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的示例狀態(tài)的圖。
圖3是示出了圖2的示例中與每個(gè)數(shù)據(jù)值相對(duì)應(yīng)的元數(shù)據(jù)及其總值的示例的圖。
圖4是示出了圖2中向其添加數(shù)據(jù)之后引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的示例狀態(tài)的圖。
圖5是示出了圖4的示例中與每個(gè)數(shù)據(jù)值相對(duì)應(yīng)的元數(shù)據(jù)及其總值的示例的圖。
圖6是示出了圖2中從其中刪除數(shù)據(jù)之后引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的示例狀態(tài)的圖。
圖7是示出了用于通過(guò)圖1的程序處理部分管理有序數(shù)據(jù)的示例操作的流程圖。
圖8是示出了用于通過(guò)圖1的程序處理部分管理有序數(shù)據(jù)的示例操作的流程圖。
圖9是示出了本發(fā)明第二實(shí)施例中的引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的示例狀態(tài)的圖。
圖10是示出了圖9中從其中刪除數(shù)據(jù)之后引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的示例狀態(tài)的圖。
圖11是示出了根據(jù)本發(fā)明第二實(shí)施例的通過(guò)程序處理部分管理有序數(shù)據(jù)的示例操作的流程圖。
圖12是示出了根據(jù)本發(fā)明第二實(shí)施例的通過(guò)程序處理部分管理有序數(shù)據(jù)的示例操作的流程圖。
具體實(shí)施例方式
接下來(lái)將參照附圖來(lái)描述本發(fā)明的實(shí)施例。實(shí)施例l
圖l是示出了根據(jù)本發(fā)明第一實(shí)施例的信息處理器中的程序處理部分的示例配置的框圖。
在圖1中,程序處理單元1包括引用數(shù)據(jù)存儲(chǔ)部分2、 CPU (中央處理單元)3、程序存儲(chǔ)部分4、輸入端11和輸出端12,并通過(guò)通信總線100連接至存儲(chǔ)器5。程序存儲(chǔ)部分4存儲(chǔ)程序41。
圖2是示出了圖1中的引用數(shù)據(jù)存儲(chǔ)部分2和存儲(chǔ)器5的示例狀態(tài)的圖。
在圖2中,引用數(shù)據(jù)存儲(chǔ)部分2包括多個(gè)單元存儲(chǔ)區(qū)21-0至21-3、指示數(shù)組22和臨時(shí)變量集23。
單元存儲(chǔ)區(qū)21-0至21-3包括有序數(shù)據(jù)211-a至211-h作為變量。
臨時(shí)變量集23包含最新元數(shù)據(jù)總值(TL) 231和指示最后的數(shù)據(jù)所屬的單元存儲(chǔ)區(qū)的指示數(shù)組索引(SL) 232,作為不同于有序數(shù)據(jù)211-a至211-h和指示數(shù)組22的變量。
存儲(chǔ)器5上由程序41的操作通過(guò)通信總線100預(yù)留有分別與數(shù)據(jù)211-a至211-h相對(duì)應(yīng)的單獨(dú)區(qū)域511-a至511-h (為程序41的變量)以及與指示數(shù)組22相對(duì)應(yīng)的順序區(qū)域52。
圖3是示出了圖2的示例中與每個(gè)數(shù)據(jù)值相對(duì)應(yīng)的元數(shù)據(jù)及其總值的示例的圖。圖4是示出了圖2中添加數(shù)據(jù)i之后引用數(shù)據(jù)存儲(chǔ)部分2和存儲(chǔ)器5的示例狀態(tài)的圖,圖5是示出了圖4的示例中與每個(gè)數(shù)據(jù)值相對(duì)應(yīng)的元數(shù)據(jù)及其總值的示例的圖。
圖6是示出了圖2中刪除數(shù)據(jù)之后引用數(shù)據(jù)存儲(chǔ)部分2和存儲(chǔ)器5的示例狀態(tài)的圖,圖7和圖8是示出了用于通過(guò)圖1中的程序處理單元1管理有序數(shù)據(jù)的示例操作的流程圖。
參照這些圖1至8,給出對(duì)用于通過(guò)根據(jù)本發(fā)明第一實(shí)施例的信息處理器的程序處理單元管理有序數(shù)據(jù)的操作的描述。
對(duì)此,圖7和8中所示的處理由CPU 3執(zhí)行的程序41來(lái)實(shí)現(xiàn)。
本發(fā)明的第一實(shí)施例示出了使用被選擇為與從第一個(gè)數(shù)據(jù)至相應(yīng)數(shù)據(jù)的每個(gè)數(shù)據(jù)相關(guān)聯(lián)的元數(shù)據(jù)的總值的關(guān)鍵字來(lái)實(shí)現(xiàn)高速數(shù)據(jù)引用和數(shù)據(jù)操作的示例。
各個(gè)數(shù)據(jù)211-a至211-h伴隨有表示其屬性的元數(shù)據(jù),并且分配在單元存儲(chǔ)區(qū)21-0至21-3中,使得其元數(shù)據(jù)的總值在每個(gè)單元存儲(chǔ)區(qū)內(nèi)的設(shè)定值S附近。
此外,臨時(shí)變量集23在末端包括針對(duì)與單元存儲(chǔ)區(qū)21-3相對(duì)應(yīng)的指示數(shù)組22的索引(TL)231以及從第一個(gè)數(shù)據(jù)至最后一個(gè)數(shù)據(jù)的元數(shù)據(jù)總值(SL) 232作為變量。
首先,給出對(duì)本發(fā)明第一實(shí)施例中的數(shù)據(jù)引用的操作的描述。
在從輸入端11接收到對(duì)與元數(shù)據(jù)總值T相對(duì)應(yīng)的數(shù)據(jù)的引用的請(qǐng)求時(shí)(圖7中的步驟S1),程序處理單元1使用由指示數(shù)組22的第T/S個(gè)元素所指示的單元存儲(chǔ)區(qū)中出現(xiàn)的一些或全部數(shù)據(jù)或者對(duì)這些數(shù)據(jù)的引用從輸出端12向請(qǐng)求方返回響應(yīng)(圖7中的步驟S2)。這里,"引用"是指提供用于存取其他數(shù)據(jù)的數(shù)據(jù),并包括例如存儲(chǔ)器地址值、指針等。
圖3示出了圖2中所示的引用數(shù)據(jù)存儲(chǔ)部分2和存儲(chǔ)器5的示例狀態(tài)中與每個(gè)數(shù)據(jù)值相對(duì)應(yīng)的元數(shù)據(jù)及其總值的示例。這里假定設(shè)定值S等于500。這就是說(shuō),每次當(dāng)元數(shù)據(jù)的總值在500的倍數(shù)附近時(shí),數(shù)據(jù)屬于不同的單元存儲(chǔ)區(qū),并且在圖3中,指示數(shù)組22的相應(yīng)索引遞增1。
例如,當(dāng)請(qǐng)求對(duì)等于900的元數(shù)據(jù)總值T進(jìn)行引用時(shí),T/S將取以下值。
T/S-5 00/900= 1.8。
此時(shí),由于指示數(shù)組22的索引為整數(shù),因此將T/S的值向下取整,以引用"第一個(gè)"元素,或向上取整或舍入至最接近的整數(shù),以引用"第二個(gè)"元素。根據(jù)本發(fā)明的應(yīng)用等,可以以不同方式來(lái)實(shí)現(xiàn)用于確定應(yīng)當(dāng)采用哪種方案的機(jī)制。
在本實(shí)施例中,將T/S的值向上取整,從而將圖2中單元存儲(chǔ)區(qū)211-1中包括的數(shù)據(jù)d、 e中的任何或全部數(shù)據(jù)返回作為引用結(jié)果,如指示數(shù)組的[第二個(gè)]元素(索引為[l])所示。接下來(lái),對(duì)本發(fā)明第一實(shí)施例中的數(shù)據(jù)結(jié)構(gòu)的結(jié)尾添加新數(shù)據(jù)時(shí)的操作給出描述。
在從輸入端11接收到添加數(shù)據(jù)i的請(qǐng)求時(shí)(圖7中的步驟S3),
在即使添加了數(shù)據(jù)i,單元存儲(chǔ)區(qū)21-3末端的當(dāng)前元數(shù)據(jù)總值仍在設(shè)定值S附近范圍內(nèi)的情況下(圖7中的步驟S6),程序處理單元l將數(shù)據(jù)i添加至單元存儲(chǔ)區(qū)21-3 (圖7中的步驟S7)。
程序處理單元1添加數(shù)據(jù)i,并且,如果當(dāng)前位于末端的單元存儲(chǔ)區(qū)21-3的元數(shù)據(jù)總值不在設(shè)定值S的附近(圖7中的步驟S6),則創(chuàng)建新單元存儲(chǔ)區(qū)(圖7中的步驟S8)。根據(jù)本發(fā)明的應(yīng)用,可以以不同方式來(lái)實(shí)現(xiàn)用于確定是否應(yīng)當(dāng)創(chuàng)建新單元存儲(chǔ)區(qū)的機(jī)制。
這里假定數(shù)據(jù)i具有的元數(shù)據(jù)值為200,并且未創(chuàng)建新單元存儲(chǔ)區(qū)。圖4示出了在這種情況下添加了數(shù)據(jù)i之后,引用數(shù)據(jù)存儲(chǔ)部分2和存儲(chǔ)器5的示例狀態(tài),圖5示出了表示數(shù)據(jù)與元數(shù)據(jù)之間關(guān)系的表。
然而,在進(jìn)行上述工作之前,程序處理單元1必須根據(jù)需要在存儲(chǔ)器5上預(yù)留存儲(chǔ)數(shù)據(jù)i所需的區(qū)域(圖7中的步驟S4)。此外,當(dāng)在存儲(chǔ)器5上成功預(yù)留了區(qū)域時(shí),程序處理單元1將數(shù)據(jù)i的元數(shù)據(jù)值與目前位于末端的數(shù)據(jù)h處的元數(shù)據(jù)總值相加,計(jì)算與數(shù)據(jù)i相對(duì)應(yīng)的元數(shù)據(jù)總值,并使用計(jì)算結(jié)果來(lái)更新最新元數(shù)據(jù)總值(TL) 231(圖7中的步驟S5)。
此外,當(dāng)添加新單元存儲(chǔ)區(qū)時(shí),程序處理單元1將指示添加數(shù)據(jù)i之后最后的數(shù)據(jù)所屬的單元存儲(chǔ)區(qū)的指示數(shù)組索引(SL) 232更新為遞增1的值(圖7中的步驟S9)。在圖4和5所示的示例中,將所計(jì)算的最新元數(shù)據(jù)總值(TL) 231更新為以下值
1820+200=2020
指示數(shù)組索引(SL) 232與插入數(shù)據(jù)i之前保持不變,即為"3"。接下來(lái),對(duì)本發(fā)明第一實(shí)施例中刪除數(shù)據(jù)時(shí)的操作給出描述。在從輸入端11接收到與元數(shù)據(jù)總值T相對(duì)應(yīng)的數(shù)據(jù)刪除請(qǐng)求時(shí)(圖8中的步驟SIO),程序處理單元1擦除由指示數(shù)組22的第T/S個(gè)元素所指示的單元存儲(chǔ)區(qū),以及屬于該單元存儲(chǔ)區(qū)的數(shù)據(jù)(圖8中的步驟Sll)。
在擦除了單元存儲(chǔ)區(qū)和屬于該單元存儲(chǔ)區(qū)的數(shù)據(jù)之后,程序處理
單元1將由指示數(shù)組22的第T/S個(gè)元素所指示的存儲(chǔ)器區(qū)域和之后的存儲(chǔ)器區(qū)域中存儲(chǔ)的內(nèi)容前移指示數(shù)組22的一個(gè)元素(圖8中的步驟S12)。
圖6示出了一種狀態(tài),其中假定丁=900, T/S=1.8向上取整為2,使得程序處理單元l擦除了由"第二"指示數(shù)組元素(索引為"1")指示的單元存儲(chǔ)區(qū)21-1以及其中包括的數(shù)據(jù)d、 e。在擦除了單元存儲(chǔ)區(qū)21-l和其中包括的數(shù)據(jù)d、 e之后,程序處理單元1將圖2所示的指示數(shù)組22中索引等于或大于"2"的存儲(chǔ)器的內(nèi)容前移一個(gè)元素。
因此,對(duì)擦除之前(圖2中所示的狀態(tài))索引"2"的元素中包含的單元存儲(chǔ)區(qū)21-2的引用移至擦除單元存儲(chǔ)區(qū)21-1和其中包括的數(shù)據(jù)d、 e之后的索引"1"的元素。此外,對(duì)擦除之前索引"3"的元素中包含的單元存儲(chǔ)區(qū)21-3的引用移至擦除單元存儲(chǔ)區(qū)21-1和其中包括的數(shù)據(jù)d、 e之后的索引"2"的元素。
按照這種方式,對(duì)直至n的所有索引中包含的單元存儲(chǔ)區(qū)的引用移至索引遞減"l"的元素。因此,當(dāng)例如在此后接收到具有T=900的引用請(qǐng)求時(shí),將返回?cái)?shù)據(jù)f。由于屬于單元存儲(chǔ)區(qū)21-0至21-3中的每一個(gè)的數(shù)據(jù)的容量在設(shè)定值S中被量化,與相應(yīng)元數(shù)據(jù)總值的減法等效的更新自動(dòng)地通過(guò)在指示數(shù)組22中簡(jiǎn)單的移動(dòng)索引"1 "來(lái)進(jìn)行。
因此,在本實(shí)施例中,由于指示數(shù)組22的索引是元數(shù)據(jù)總值的函數(shù),因此,可以高速執(zhí)行使用元數(shù)據(jù)總值作為關(guān)鍵字對(duì)元素的引用,這是由于不需要對(duì)與元數(shù)據(jù)總值相對(duì)應(yīng)的索引進(jìn)行搜索。
此外,在本實(shí)施例中,不需要逐元素地進(jìn)行處理以從元數(shù)據(jù)總值中減去所擦除元素的元數(shù)據(jù),而是僅使用單次存儲(chǔ)器移動(dòng)處理來(lái)更新元數(shù)據(jù)總值,使得可以在擦除元素之后高速更新每個(gè)數(shù)據(jù)項(xiàng)的元數(shù)據(jù)總值。
圖9是示出了本發(fā)明第二實(shí)施例中的引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的示例狀態(tài)的圖。
根據(jù)本發(fā)明第二實(shí)施例的信息處理器的程序處理單元與根據(jù)本發(fā)明第一實(shí)施例的信息處理器的程序處理單元在配置上類似,但是在引用數(shù)據(jù)存儲(chǔ)部分和存儲(chǔ)器的狀態(tài)方面有所不同。
具體地,在上述本發(fā)明第一實(shí)施例中,在刪除數(shù)據(jù)之后,以設(shè)定值S為單位來(lái)更新元數(shù)據(jù)總值。然而,由于不是總能針對(duì)設(shè)定值S的每個(gè)整數(shù)倍來(lái)配置單元存儲(chǔ)區(qū),因此,在實(shí)際移除的數(shù)據(jù)與設(shè)定值s之間存在誤差。因此,在引用數(shù)據(jù)時(shí)輸入的T與對(duì)應(yīng)于返回?cái)?shù)據(jù)的實(shí)際元數(shù)據(jù)總值之間也出現(xiàn)誤差。本發(fā)明的第二實(shí)施例示出了將該誤差限制在特定值或更小的示例。
參照?qǐng)D9,本實(shí)施例與上述本發(fā)明第一實(shí)施例的區(qū)別在于,將指示數(shù)組22劃分為索引指示數(shù)組22A和數(shù)據(jù)指示數(shù)組22B。
以與本發(fā)明第一實(shí)施例中的指示數(shù)組22類似的方式,數(shù)據(jù)指示數(shù)組22B中的每個(gè)元素存儲(chǔ)對(duì)單元存儲(chǔ)區(qū)21-0至21-3的引用。另一方面,索引指示數(shù)組22A中的每個(gè)元素存儲(chǔ)數(shù)據(jù)指示數(shù)組22B中應(yīng)當(dāng)被引用的索引。單元存儲(chǔ)區(qū)21-0至21-3內(nèi)的元素的元數(shù)據(jù)總值被量化在設(shè)定值S的整數(shù)倍附近,實(shí)際元數(shù)據(jù)總值與設(shè)定值S的整數(shù)倍的比值等于或小于另一誤差設(shè)定值R。
圖10是示出了圖9中從其中刪除數(shù)據(jù)之后引用數(shù)據(jù)存儲(chǔ)部分2和存儲(chǔ)器5的示例狀態(tài)的圖,圖11和圖12是示出了根據(jù)本發(fā)明第二實(shí)施例的程序處理單元1管理有序數(shù)據(jù)的示例操作的流程圖。
參照這些圖9至12,對(duì)根據(jù)本發(fā)明第二實(shí)施例的信息處理器的程序處理單元管理有序數(shù)據(jù)的操作給出描述。
對(duì)此,圖11和12中示出的過(guò)程由CPU 3執(zhí)行的程序41來(lái)實(shí)現(xiàn)。此外,圖11中步驟S21至S25和S27至S29的處理與上述圖7中步驟S1至S5和S7至S9的處理以及圖8中步驟S10的處理類似,因此省略其描述。
在本實(shí)施例中,在添加數(shù)據(jù)時(shí)確定是否應(yīng)當(dāng)產(chǎn)生新單元存儲(chǔ)區(qū)時(shí),在將數(shù)據(jù)添加至指示數(shù)組索引(SL) 232之前,當(dāng)指示數(shù)組索引(SL) 232內(nèi)的元數(shù)據(jù)總值TSL與最接近元數(shù)據(jù)總值TSL的設(shè)定值S的整數(shù)倍的比值等于或小于誤差設(shè)定值R時(shí)(圖11中的步驟S26),應(yīng)當(dāng)產(chǎn)生新單元存儲(chǔ)區(qū)(圖11中的步驟S28)。當(dāng)元數(shù)據(jù)總值TSL等于或大于S/R時(shí),該條件在所有時(shí)刻均滿足。另一方面,在刪除數(shù)據(jù)時(shí),程序處理單元l擦除由數(shù)據(jù)指示數(shù)組 22B的元素所指示的單元存儲(chǔ)區(qū)以及其中包括的數(shù)據(jù),該元素的索引
為索引指示數(shù)組22A的第T/S個(gè)元素,其中程序處理單元l已經(jīng)接收到 針對(duì)元數(shù)據(jù)總值T的刪除請(qǐng)求(圖12中的步驟S31)。
程序處理單元1還擦除索引指示數(shù)組22A中取值T/S的所有元素, 并將索引指示數(shù)組22A中與所擦除的最大索引和后續(xù)索引相對(duì)應(yīng)的存 儲(chǔ)器區(qū)域中的內(nèi)容前移所擦除元素的數(shù)目(圖12中的步驟S32)。
圖10示出了一種狀態(tài),其中將存儲(chǔ)數(shù)據(jù)的圖3中所示的狀態(tài)中 T二900的刪除請(qǐng)求調(diào)整為S425、 R=0.25。在圖10中,將T/S向上取整 至"8",使得程序處理單元1擦除由數(shù)據(jù)指示數(shù)組22B的元素所指示的 單元存儲(chǔ)區(qū)21-l和其中包括的數(shù)據(jù)d、 e,該元素的索引為索引指示數(shù) 組22A中的"第8"個(gè)元素"1"。
程序處理單元1還擦除了索引指示數(shù)組22A中具有索引"5"至"8" 的元素,這些元素的取值為"1"。此外,在擦除存儲(chǔ)器區(qū)域之前,索 引指示數(shù)組22A中原先與向前的索引"9"相對(duì)應(yīng)的部分前移4個(gè)所擦
除的元素。
因此,以"空"引用結(jié)束的數(shù)據(jù)指示數(shù)組22B中的索引"1"的元 素可以在未來(lái)產(chǎn)生新單元存儲(chǔ)區(qū)時(shí)用作存儲(chǔ)引用的變量。對(duì)此,當(dāng)最 后一個(gè)元素SL的元數(shù)據(jù)總值SL與最接近元數(shù)據(jù)總值TSL的設(shè)定值S的 整數(shù)倍之比大于誤差設(shè)定值R時(shí),程序處理單元l被配置為不接受刪除 請(qǐng)求,除非元素SL是數(shù)據(jù)指示數(shù)組22B中僅有的非空元素。
按照這種方式,在本實(shí)施例中,在接收到針對(duì)與元數(shù)據(jù)總值T相 對(duì)應(yīng)的數(shù)據(jù)的引用請(qǐng)求時(shí),程序處理單元1返回由數(shù)據(jù)指示數(shù)組22B的 元素所指示的單元存儲(chǔ)區(qū)中包括的數(shù)據(jù),該元素的索引為索引指示數(shù) 組22A的第T/S個(gè)元素。
在本實(shí)施例中,當(dāng)添加或刪除單元存儲(chǔ)區(qū)時(shí),單元存儲(chǔ)區(qū)中包括 的元數(shù)據(jù)總值與T/S(用作數(shù)據(jù)指示數(shù)組的索引)之比保持等于或小于 誤差設(shè)定值R,使得即使對(duì)于重復(fù)執(zhí)行這些操作之后的引用請(qǐng)求,返 回?cái)?shù)據(jù)的元數(shù)據(jù)總值的誤差也保持等于或小于誤差設(shè)定值R。
具體地,根據(jù)本發(fā)明的信息處理器(如信息設(shè)備、通信設(shè)備等)包括一個(gè)或多個(gè)引用矩陣(指示數(shù)組22),這些引用矩陣是對(duì)數(shù)據(jù)的引 用的矩陣而不是數(shù)據(jù)體,并將每個(gè)引用矩陣的索引與數(shù)據(jù)搜索關(guān)鍵字 相關(guān)聯(lián)。然而,當(dāng)引用矩陣中任意索引范圍內(nèi)的元素所引用的所有數(shù) 據(jù)的關(guān)鍵字改變相同的量時(shí),以與改變量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)索 引數(shù)組中該范圍內(nèi)的存儲(chǔ)器的內(nèi)容。
本發(fā)明的信息處理器提供了引用矩陣,該引用矩陣是對(duì)被管理的 數(shù)據(jù)的引用的矩陣,而不是被管理的有序數(shù)據(jù)本身的矩陣。此外,在 本發(fā)明中,定義了引用矩陣中的索引與所存儲(chǔ)數(shù)據(jù)的關(guān)鍵字的對(duì)應(yīng)關(guān) 系。例如,索引被定義為等于關(guān)鍵字值。
本發(fā)明的信息處理器將對(duì)被管理的每個(gè)數(shù)據(jù)項(xiàng)的引用存儲(chǔ)在具 有與數(shù)據(jù)的關(guān)鍵字相對(duì)應(yīng)的引用矩陣中的索引的元素中。通過(guò)引用矩 陣中與具有關(guān)鍵字相對(duì)應(yīng)的索引的元素中存儲(chǔ)的引用,對(duì)與任意關(guān)鍵 字相對(duì)應(yīng)數(shù)據(jù)進(jìn)行存取。
本發(fā)明的信息處理器實(shí)現(xiàn)了對(duì)與任意關(guān)鍵字相對(duì)應(yīng)的數(shù)據(jù)的高 速存取,這是由于不需要搜索與關(guān)鍵字相對(duì)應(yīng)的元素。在一些情況下, 由于特定元素的刪除、關(guān)鍵字值的改變、新元素的添加、元素之間的 數(shù)據(jù)交換等等,引用矩陣的特定索引范圍內(nèi)的元素所引用的所有數(shù)據(jù) 的關(guān)鍵字必須改變相同的量。在這種情況下,本發(fā)明的信息處理器以 與改變量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)指示矩陣中該范圍內(nèi)的存儲(chǔ)器的內(nèi) 容。
按照這種方式,本發(fā)明的信息處理器執(zhí)行與每個(gè)數(shù)據(jù)項(xiàng)的關(guān)鍵字 值的改變相等的改變。在單一過(guò)程中完成這種改變,而與元素的數(shù)目 無(wú)關(guān),引用矩陣不是數(shù)據(jù)體,而是引用的矩陣,該矩陣一般而言大小 有限,使得與數(shù)據(jù)體的存儲(chǔ)器移動(dòng)相比,僅需要較小容量的存儲(chǔ)器移 動(dòng)。相應(yīng)地,本發(fā)明的信息處理器能夠以比與本發(fā)明相關(guān)的數(shù)組結(jié)構(gòu) 中的索引改變更高的速度來(lái)執(zhí)行處理操作。
盡管己經(jīng)參照實(shí)施例描述了本發(fā)明,但是本發(fā)明不限于上述實(shí)施 例??梢砸愿鞣N方式在配置和細(xì)節(jié)上對(duì)本發(fā)明進(jìn)行修改,本領(lǐng)域技術(shù) 人員可以理解,這些修改在本發(fā)明的范圍之內(nèi)。
本申請(qǐng)要求2007年6月13日提交的本專利申請(qǐng)No. 2007-155808的優(yōu)先權(quán),其全部公開(kāi)內(nèi)容通過(guò)引用并入此處,
權(quán)利要求
1.一種信息處理器,用于管理具有固定順序的數(shù)據(jù)序列,其特征在于信息處理器包括指示數(shù)組,用于將對(duì)數(shù)據(jù)序列中每個(gè)數(shù)據(jù)項(xiàng)的引用存儲(chǔ)在具有與數(shù)據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素中;以及裝置,操作用于當(dāng)所述指示數(shù)組中任意索引范圍內(nèi)的元素所引用的所有數(shù)據(jù)的關(guān)鍵字改變相同的量時(shí),以與改變的量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)所述指示數(shù)組中所述范圍內(nèi)的存儲(chǔ)器內(nèi)容。
2. 根據(jù)權(quán)利要求1所述的信息處理器,其特征在于,數(shù)據(jù)的關(guān)鍵字是與從第一個(gè)數(shù)據(jù)至該數(shù)據(jù)的每個(gè)數(shù)據(jù)項(xiàng)相對(duì)應(yīng)的元數(shù)據(jù)之和或其函數(shù)。
3. 根據(jù)權(quán)利要求1或2所述的信息處理器,其特征在于,所述指示數(shù)組的索引以以下關(guān)系相關(guān)聯(lián)關(guān)鍵字的范圍與所述指示數(shù)組的索引一一對(duì)應(yīng)。
4. 根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的信息處理器,其特征在于,對(duì)于任何索引,被分配給所述指示數(shù)組的每個(gè)索引的關(guān)鍵字范圍的寬度相同。
5. 根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的信息處理器,其特征在于,在刪除特定數(shù)據(jù)時(shí),以所述指示數(shù)組的索引范圍,移動(dòng)存儲(chǔ)器內(nèi)容,該索引范圍與緊接該范圍之前至頭部或從緊接該范圍之后至末端的數(shù)據(jù)相對(duì)應(yīng)。
6. 根據(jù)權(quán)利要求1至5中任一項(xiàng)所述的信息處理器,其特征在于,在插入特定數(shù)據(jù)時(shí),以插入所述數(shù)據(jù)所需的索引數(shù)目,移動(dòng)從緊接該插入之前至頭部的存儲(chǔ)器內(nèi)容或從緊接該插入之后至最后的存儲(chǔ)器內(nèi)谷。
7. 根據(jù)權(quán)利要求1至6中任一項(xiàng)所述的信息處理器,其特征在于,當(dāng)在數(shù)據(jù)與索引之間的關(guān)系中多個(gè)數(shù)據(jù)與單一索引相對(duì)應(yīng)時(shí),在添加數(shù)據(jù)之前收集所有的相應(yīng)數(shù)據(jù),或者,當(dāng)刪除特定數(shù)據(jù)時(shí),將與所述數(shù)據(jù)的索引相同的索引相對(duì)應(yīng)的數(shù)據(jù)全部擦除。
8. —種有序數(shù)據(jù)管理方法,在用于管理具有固定順序的數(shù)據(jù)序列的信息存儲(chǔ)器中使用,其特征在于向所述信息處理器提供指示數(shù)組,指示數(shù)組用于將對(duì)數(shù)據(jù)序列中每個(gè)數(shù)據(jù)項(xiàng)的引用存儲(chǔ)在具有與數(shù)據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素中,以及當(dāng)所述信息處理器將所述指示數(shù)組中任意索引范圍內(nèi)的元素所引用的所有數(shù)據(jù)的關(guān)鍵字改變相同的量時(shí),執(zhí)行以與改變的量相對(duì)應(yīng)的索引數(shù)目來(lái)移動(dòng)所述指示數(shù)組中所述范圍內(nèi)的存儲(chǔ)器內(nèi)容的處理。
9. 根據(jù)權(quán)利要求8所述的有序數(shù)據(jù)管理方法,其特征在于,數(shù)據(jù)的關(guān)鍵字是與從第一個(gè)數(shù)據(jù)至該數(shù)據(jù)的每個(gè)數(shù)據(jù)項(xiàng)相對(duì)應(yīng)的元數(shù)據(jù)之和或其函數(shù)。
10. 根據(jù)權(quán)利要求8或9所述的有序數(shù)據(jù)管理方法,其特征在于,所述指示數(shù)組的索引以以下關(guān)系相關(guān)聯(lián)關(guān)鍵字的范圍與所述指示數(shù)組的索引一一對(duì)應(yīng)。
11. 根據(jù)權(quán)利要求8至10中任一項(xiàng)所述的有序數(shù)據(jù)管理方法,其特征在于,對(duì)于任何索引,被分配給所述指示數(shù)組的每個(gè)索引的關(guān)鍵字范圍的寬度相同。
12. 根據(jù)權(quán)利要求8至11中任一項(xiàng)所述的有序數(shù)據(jù)管理方法,其特征在于,在刪除特定數(shù)據(jù)時(shí),以所述指示數(shù)組的索引范圍,移動(dòng)存儲(chǔ)器內(nèi)容,該索引范圍與緊接該范圍之前至頭部或從緊接該范圍之后至末端的數(shù)據(jù)相對(duì)應(yīng)。
13. 根據(jù)權(quán)利要求8至12中任一項(xiàng)所述的有序數(shù)據(jù)管理方法,其特征在于,在插入特定數(shù)據(jù)時(shí),以插入所述數(shù)據(jù)所需的索引數(shù)目,移動(dòng)從緊接該插入之前至頭部的存儲(chǔ)器內(nèi)容或從緊接該插入之后至最后的存儲(chǔ)器內(nèi)容。
14. 根據(jù)權(quán)利要求8至13中任一項(xiàng)所述的有序數(shù)據(jù)管理方法,其特征在于,當(dāng)在數(shù)據(jù)與索引之間的關(guān)系中多個(gè)數(shù)據(jù)與單一索引相對(duì)應(yīng)時(shí),在添加數(shù)據(jù)之前收集所有的相應(yīng)數(shù)據(jù),或者,當(dāng)刪除特定數(shù)據(jù)時(shí),將與所述數(shù)據(jù)的索引相同的索引相對(duì)應(yīng)的數(shù)據(jù)全部擦除。
15. —種使處理器在用于管理具有固定順序的數(shù)據(jù)序列的信息存儲(chǔ)器內(nèi)執(zhí)行處理的程序,所述程序的特征在于使所述信息處理器執(zhí)行處理,以向所述信息處理器提供指示數(shù)組,指示數(shù)組用于將對(duì)數(shù)據(jù)序列中每個(gè)數(shù)據(jù)項(xiàng)的引用存儲(chǔ)在具有與數(shù)據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素中,以及當(dāng)所述指示數(shù)組中任意索引范圍內(nèi)的元素所引用的所有數(shù)據(jù)的關(guān)鍵字改變相同的量時(shí),以與改變的量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)所述指示數(shù)組中所述范圍內(nèi)的存儲(chǔ)器內(nèi)容。
全文摘要
本發(fā)明提供了一種信息處理器(程序處理單元1),用于管理具有固定順序的數(shù)據(jù)序列,所述信息處理器包括指示數(shù)組(引用數(shù)據(jù)存儲(chǔ)部分2),用于將對(duì)數(shù)據(jù)序列中每個(gè)數(shù)據(jù)項(xiàng)的引用存儲(chǔ)在具有與數(shù)據(jù)的關(guān)鍵字相關(guān)聯(lián)的索引的元素中,以及用于將所述指示數(shù)組中任意索引范圍內(nèi)的元素所引用的所有數(shù)據(jù)關(guān)鍵字改變相同量的裝置(CPU3),其中,以與改變量相對(duì)應(yīng)的索引數(shù)目,移動(dòng)所述指示數(shù)組中所述范圍內(nèi)的存儲(chǔ)器內(nèi)容。
文檔編號(hào)G06F12/00GK101681291SQ20088001664
公開(kāi)日2010年3月24日 申請(qǐng)日期2008年5月29日 優(yōu)先權(quán)日2007年6月13日
發(fā)明者中田恒夫 申請(qǐng)人:日本電氣株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
洱源县| 和硕县| 肥西县| 道孚县| 朔州市| 西盟| 梨树县| 岳阳市| 吉安市| 旬阳县| 同仁县| 社会| 五华县| 岳池县| 乌审旗| 宁远县| 屏山县| 长兴县| 霍山县| 乐东| 闽清县| 芒康县| 平泉县| 北海市| 宝坻区| 吉林市| 济源市| 光山县| 仁寿县| 水富县| 德庆县| 淮南市| 望谟县| 郸城县| 蓝山县| 霍邱县| 邮箱| 明星| 岐山县| 银川市| 大荔县|