專利名稱:信息處理方法以及信息處理裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種信息處理方法及其裝置。
背景技術(shù):
為了在DSP等中提高數(shù)據(jù)處理能力,多使用同時(shí)處理多個(gè)數(shù)據(jù)的命令(例如SIMD命令)。這些數(shù)據(jù)配置在被稱為存儲(chǔ)塊(memory bank)的存儲(chǔ)區(qū)域中,在執(zhí)行命令時(shí),所需要的數(shù)據(jù)通過數(shù)據(jù)總線被傳送給運(yùn)算處理部。數(shù)據(jù)總線相對(duì)于存儲(chǔ)塊,為1對(duì)1連接,所以從1個(gè)存儲(chǔ)塊中向運(yùn)算處理部一次不能傳送多個(gè)數(shù)據(jù)。為此,與多個(gè)數(shù)據(jù)總線對(duì)應(yīng),設(shè)置多個(gè)存儲(chǔ)塊。將要同時(shí)處理的多個(gè)數(shù)據(jù)分別配置在不同的塊中。這樣,同時(shí)可以訪問多個(gè)數(shù)據(jù)。過去,為了實(shí)現(xiàn)這樣的硬件性能,用戶需要細(xì)微指定向存儲(chǔ)器的數(shù)據(jù)配置,將被同時(shí)訪問的數(shù)據(jù)分配在不同的存儲(chǔ)塊中。
專利文獻(xiàn)1特公平7-86836號(hào)公報(bào)專利文獻(xiàn)2特開2000-155673號(hào)公報(bào)專利文獻(xiàn)3特開2000-3268號(hào)公報(bào)專利文獻(xiàn)4特開平5-334055號(hào)公報(bào)但是隨著開發(fā)規(guī)模的增大,數(shù)據(jù)量的增加,用戶手動(dòng)進(jìn)行存儲(chǔ)塊的分配非常繁雜,而且工序多。
發(fā)明內(nèi)容
本發(fā)明正是解決上述問題點(diǎn)的發(fā)明,其目的在于通過自動(dòng)地進(jìn)行將被同時(shí)訪問的數(shù)據(jù)分配在不同的存儲(chǔ)塊中的作業(yè),以便防止引用處在同一存儲(chǔ)塊中的數(shù)據(jù)的運(yùn)算(以下稱為存儲(chǔ)塊沖突),從而最大限度地實(shí)現(xiàn)硬件的性能,并且提高軟件的生產(chǎn)效率。
本發(fā)明之1所述的發(fā)明,所具有的特征是包括獲取由運(yùn)算命令訪問存儲(chǔ)器的數(shù)據(jù)的信息的步驟、和將由運(yùn)算命令同時(shí)訪問存儲(chǔ)器的多個(gè)數(shù)據(jù)分配在不同的塊中的步驟,可以自動(dòng)進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之2所述的發(fā)明,所具有的特征是具有設(shè)定塊分配優(yōu)先度的步驟、從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中的步驟,對(duì)塊分配優(yōu)先度高的數(shù)據(jù),可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之3所述的發(fā)明,所具有的特征是具有塊分配優(yōu)先度根據(jù)重復(fù)執(zhí)行運(yùn)算命令的循環(huán)次數(shù)設(shè)定的步驟,通過循環(huán)重復(fù)被訪問的數(shù)據(jù)集合,可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之4所述的發(fā)明,所具有的特征是具有塊分配優(yōu)先度根據(jù)數(shù)據(jù)的使用頻度設(shè)定的步驟,使用頻度高的數(shù)據(jù),可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之5所述的發(fā)明,所具有的特征是具有檢索與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)訪問的數(shù)據(jù)的步驟、同時(shí)訪問的數(shù)據(jù)的塊分配也優(yōu)先進(jìn)行的步驟,所有數(shù)據(jù)可以平均地進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之6所述的發(fā)明,所具有的特征是具有讀取指定分配在不同塊中的數(shù)據(jù)的命令的步驟、將被指定要分配在不同塊中的數(shù)據(jù)分配在不同塊中的步驟,與運(yùn)算命令無關(guān),可以將用戶指定的數(shù)據(jù)集合分配在不同的塊中。
本發(fā)明之7所述的發(fā)明,所具有的特征是具有讀取指定分配在不同塊中的數(shù)據(jù)的命令的步驟、將被指定要分配在不同塊中的數(shù)據(jù)優(yōu)先分配在不同塊中的步驟,與運(yùn)算命令無關(guān),可以將用戶指定的數(shù)據(jù)集合優(yōu)先分配在不同的塊中。
本發(fā)明之8所述的發(fā)明,所具有的特征是具有在指定分配在不同塊中的數(shù)據(jù)中設(shè)定塊分配優(yōu)先度的步驟、即使在指定分配在不同塊中的數(shù)據(jù)中也從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中的步驟,塊分配優(yōu)先度高的數(shù)據(jù)可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之9所述的發(fā)明,所具有的特征是具有讀取對(duì)數(shù)據(jù)指定所分配的塊的命令的步驟、將指定了所分配的塊的數(shù)據(jù)分配在所指定的塊中的步驟,可以將用戶指定的數(shù)據(jù)分配在指定的塊中。
本發(fā)明之10所述的發(fā)明,所具有的特征是具有讀取對(duì)數(shù)據(jù)指定所分配的塊的命令的步驟、將指定了所分配的塊的數(shù)據(jù)優(yōu)先分配在所指定的塊中的步驟,可以將用戶指定的數(shù)據(jù)優(yōu)先分配在指定的塊中。
本發(fā)明之11所述的發(fā)明,所具有的特征是具有獲取由運(yùn)算命令訪問存儲(chǔ)器的數(shù)據(jù)的信息,分配在不同的塊中,可以自動(dòng)進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之12所述的發(fā)明,所具有的特征是具有從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中,塊分配優(yōu)先度高的數(shù)據(jù)可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之13所述的發(fā)明,所具有的特征是具有將重復(fù)執(zhí)行運(yùn)算命令的循環(huán)次數(shù)作為塊分配優(yōu)先度設(shè)定,通過循環(huán)重復(fù)使用的數(shù)據(jù)集合,可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之14所述的發(fā)明,所具有的特征是具有將數(shù)據(jù)的使用頻度作為塊分配優(yōu)先度設(shè)定,使用頻度高的數(shù)據(jù),可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之15所述的發(fā)明,所具有的特征是具有與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)訪問的數(shù)據(jù)也優(yōu)先被分配在塊中,所有數(shù)據(jù)可以平均進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之16所述的發(fā)明,所具有的特征是具有可以指定分配在不同塊中的數(shù)據(jù),與運(yùn)算命令無關(guān),可以指定分配在不同的塊中的數(shù)據(jù)集合。
本發(fā)明之17所述的發(fā)明,所具有的特征是具有將被指定要分配在不同塊中的數(shù)據(jù)優(yōu)先分配在塊中,可以將用戶指定的數(shù)據(jù)集合優(yōu)先分配在不同的塊中。
本發(fā)明之18所述的發(fā)明,所具有的特征是具有在指定分配在不同塊中的數(shù)據(jù)中指定塊分配優(yōu)先度,從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中,在指定分配在不同塊中的數(shù)據(jù)中塊分配優(yōu)先度高的數(shù)據(jù)可以優(yōu)先進(jìn)行不會(huì)出現(xiàn)存儲(chǔ)塊沖突的塊分配。
本發(fā)明之19所述的發(fā)明,所具有的特征是具有對(duì)數(shù)據(jù)可以指定所分配的塊,用戶可以直接對(duì)某個(gè)數(shù)據(jù)指定所分配的塊。
本發(fā)明之20所述的發(fā)明,所具有的特征是具有將指定了所分配的塊的數(shù)據(jù)優(yōu)先分配在所指定的塊中,可以將用戶指定的數(shù)據(jù)優(yōu)先分配在所指定的塊中。
圖1表示依據(jù)第1實(shí)施方案的信息處理裝置的構(gòu)成方框圖。
圖2表示對(duì)由圖1所示信息處理裝置制作的執(zhí)行形式文件進(jìn)行執(zhí)行的處理器的構(gòu)成方框圖。
圖3表示圖1所示連接器的內(nèi)部構(gòu)成方框圖。
圖4表示存儲(chǔ)器所訪問的數(shù)據(jù)的塊分配的說明圖。
圖5表示塊控制的處理的流程圖。
圖6表示塊控制的處理的流程圖。
圖7表示獲取塊控制信息的動(dòng)作的說明圖。
圖8表示獲取塊控制信息的動(dòng)作的流程圖。
圖9表示塊控制方法的說明圖。
圖10表示塊控制方法的流程圖。
圖11表示塊分配動(dòng)作的說明圖。
圖12表示塊分配動(dòng)作的流程圖。
圖13表示獲取塊控制信息的動(dòng)作的說明圖。
圖14表示獲取塊控制信息的動(dòng)作的流程圖。
圖15表示存儲(chǔ)塊控制方法的說明圖。
圖16表示塊控制方法的流程圖。
圖17表示塊分配動(dòng)作的說明圖。
圖18表示塊分配動(dòng)作的流程圖。
圖19表示塊控制方法的說明圖。
圖20表示塊控制方法的流程圖。
圖21表示塊分配動(dòng)作的說明圖。
圖22表示塊分配動(dòng)作的流程圖。
圖23表示塊控制方法的說明圖。
圖24表示塊控制方法的流程圖。
圖25表示塊分配動(dòng)作的說明圖。
圖26表示塊分配動(dòng)作的流程圖。
圖27表示塊分配動(dòng)作的說明圖。
圖28表示塊控制的處理的流程圖。
圖29表示存儲(chǔ)塊控制命令信息的動(dòng)作的說明圖。
圖30表示存儲(chǔ)塊控制命令信息的動(dòng)作的流程圖。
圖31表示塊控制方法的說明圖。
圖32表示塊控制方法的流程圖。
圖33表示塊分配動(dòng)作的說明圖。
圖34表示塊分配動(dòng)作的流程圖。
圖35表示獲取塊控制命令信息的動(dòng)作的說明圖。
圖36表示獲取塊控制命令信息的動(dòng)作的流程圖。
圖37表示存儲(chǔ)塊控制方法的說明圖。
圖38表示塊控制方法的流程圖。
圖39表示塊分配動(dòng)作的說明圖。
圖40表示塊分配動(dòng)作的流程圖。
圖41表示塊分配動(dòng)作的說明圖。
圖42表示塊控制的處理的流程圖。
圖43表示獲取塊指定命令信息的動(dòng)作的說明圖。
圖44表示獲取塊指定命令信息的動(dòng)作的流程圖。
圖45表示塊分配動(dòng)作的說明圖。
圖46表示塊分配動(dòng)作的流程圖。
圖47(a)、(b)表示存儲(chǔ)塊控制信息的結(jié)構(gòu)圖。
圖48(a)~(d)表示塊分配組信息的結(jié)構(gòu)圖。
圖49(a)、(b)表示塊控制命令信息的結(jié)構(gòu)圖。
圖50(a)、(b)表示塊控制命令用存儲(chǔ)塊分配組信息的結(jié)構(gòu)圖。
圖51表示塊指定命令信息的結(jié)構(gòu)圖。
具體實(shí)施例方式
以下參照附圖詳細(xì)說明本發(fā)明的實(shí)施方案。此外,圖中相同的部分或者相當(dāng)?shù)牟糠植捎孟嗤姆?hào)并省略其重復(fù)說明。
(第1實(shí)施方案)<信息處理裝置的構(gòu)成>
圖1表示依據(jù)第1實(shí)施方案的信息處理裝置的構(gòu)成。該信息處理裝置,根據(jù)C/C++源文件f1~f2以及匯編源文件f13制作成執(zhí)行形式文件f31。C/C++源文件f1~f2是用戶采用C/C++語言制作的輸入文件。匯編源文件f13是用戶采用匯編語言制作的輸入文件。
由該信息處理裝置制作的執(zhí)行形式文件f31,在圖2所示的處理器(目標(biāo)程序計(jì)算機(jī))上執(zhí)行。圖2所示處理器,包括數(shù)據(jù)存儲(chǔ)器11、數(shù)據(jù)總線DB1~DB2、運(yùn)算處理部12、命令存儲(chǔ)器13。數(shù)據(jù)存儲(chǔ)器11是配置有由運(yùn)算命令訪問的數(shù)據(jù)的區(qū)域。數(shù)據(jù)存儲(chǔ)器11包含存儲(chǔ)塊MB1~MB2。數(shù)據(jù)總線DB1是連接存儲(chǔ)塊MB1和運(yùn)算處理部12之間的線。數(shù)據(jù)總線DB2是連接存儲(chǔ)塊MB2和運(yùn)算處理部12之間的線。配置在存儲(chǔ)塊MB1中的數(shù)據(jù)通過數(shù)據(jù)總線DB1傳送給運(yùn)算處理部12。然而,由于數(shù)據(jù)總線DB1一次不能傳送多個(gè)數(shù)據(jù),因此不能同時(shí)傳送配置在相同存儲(chǔ)塊MB1中的多個(gè)數(shù)據(jù)。因此,必須在某一數(shù)據(jù)的傳送結(jié)束后才能傳送下一數(shù)據(jù)。對(duì)于配置在存儲(chǔ)塊MB1中的數(shù)據(jù)也相同。運(yùn)算處理部12是引用配置在數(shù)據(jù)存儲(chǔ)器11中的數(shù)據(jù)并實(shí)際進(jìn)行運(yùn)算處理的部分。命令存儲(chǔ)器13是保存由運(yùn)算處理部12執(zhí)行的運(yùn)算命令的區(qū)域。
再次參照?qǐng)D1,該信息處理裝置,包括編譯器1、匯編器2、連接器3。編譯器1將C/C++源文件f1~f2變換成匯編源文件f11~f12。匯編器2,將匯編源文件f11~f13變換成目標(biāo)文件f21~f23。匯編器2與目標(biāo)文件f21~f23一起輸出塊控制信息。連接器3,將目標(biāo)文件f21~f23結(jié)合在一起生成執(zhí)行形式文件f31。連接器3也根據(jù)塊控制信息進(jìn)行塊控制。
<連接器3的內(nèi)部構(gòu)成>
圖1所示的連接器3的內(nèi)部構(gòu)成如圖3所示。連接器3包括輸入部4、連接部5、塊控制部6、配置部7、輸出部8。在輸入部4中,輸入目標(biāo)文件f21~f23。根據(jù)情況也輸入配置指定命令。配置指定命令是指定將目標(biāo)文件f21~f23所使用的數(shù)據(jù)配置在存儲(chǔ)器上時(shí)的配置場所的命令,可以由用戶定義。在連接部5中,將所輸入的目標(biāo)文件f21~f23結(jié)合成一個(gè)執(zhí)行形式文件。在塊控制部6中,根據(jù)塊控制信息,對(duì)目標(biāo)文件f21~f23所使用的數(shù)據(jù)進(jìn)行塊控制。在配置部7中,將目標(biāo)文件f21~f23所使用的數(shù)據(jù)配置在由塊控制所指定的塊中。輸出部8,將由從輸入部4到配置部7的動(dòng)作所制作的執(zhí)行形式文件f31輸出。
<向存儲(chǔ)塊的數(shù)據(jù)分配>
以下參照?qǐng)D4對(duì)在圖2所示處理器上執(zhí)行的運(yùn)算命令中被存儲(chǔ)訪問的數(shù)據(jù)的塊分配(塊控制)進(jìn)行說明。
e1,是記述了要存儲(chǔ)訪問的命令文的輸入文件的一例。在此,對(duì)在輸入文件e1中記述的匯編命令e1-1~e1-14進(jìn)行說明。
匯編命令e1-1,是將保存了數(shù)據(jù)L1的存儲(chǔ)器的地址分配給寄存器P0的命令。匯編命令e1-2,是將保存了數(shù)據(jù)L2的存儲(chǔ)器的地址分配給寄存器P4的命令。
匯編命令e1-3,是指定使匯編命令e1-3之后執(zhí)行的匯編命令e1-4重復(fù)執(zhí)行10次的循環(huán)命令。
匯編命令e1-4,是訪問存儲(chǔ)器的命令(以后,記述為訪問存儲(chǔ)器命令)。匯編命令e1-4,表示將分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù),保存在分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中。在e1-4所示的命令文中記述的“M”,意思是進(jìn)行存儲(chǔ)器訪問。由于同時(shí)訪問分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L1、和分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L2,所以需要將數(shù)據(jù)L1和數(shù)據(jù)L2分配在不同的存儲(chǔ)塊中。
匯編命令e1-5,是將保存了數(shù)據(jù)L3的存儲(chǔ)器的地址分配給寄存器P0的命令。
匯編命令e1-6是訪問存儲(chǔ)器命令,表示將分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù),保存在分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中。由于同時(shí)訪問分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L3、和分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L2,需要將數(shù)據(jù)L3和數(shù)據(jù)L2分配在不同的存儲(chǔ)塊中。
匯編命令e1-7,是將保存了數(shù)據(jù)L4的存儲(chǔ)器的地址分配給寄存器P4的命令。
匯編命令e1-8是訪問存儲(chǔ)器命令,表示將分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù),保存在分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中。由于同時(shí)訪問分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L3、和分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L4,需要將數(shù)據(jù)L3和數(shù)據(jù)L4分配在不同的存儲(chǔ)塊中。
匯編命令e1-9,是將保存了數(shù)據(jù)L1的存儲(chǔ)器的地址分配給寄存器P4的命令。
匯編命令e1-10是訪問存儲(chǔ)器命令,表示將分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)、和分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中的數(shù)據(jù)相乘的結(jié)果保存在寄存器R0中的命令。由于同時(shí)訪問分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L3、和分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L1,需要將數(shù)據(jù)L3和數(shù)據(jù)L4分配在不同的存儲(chǔ)塊中。
匯編命令e1-11,是將保存了數(shù)據(jù)L5的存儲(chǔ)器的地址分配給寄存器P0的命令。匯編命令e1-12,是將保存了數(shù)據(jù)L6的存儲(chǔ)器的地址分配給寄存器P4的命令。匯編命令e1-13,是指定使匯編命令e1-13之后執(zhí)行的匯編命令e1-14重復(fù)執(zhí)行20次的循環(huán)命令。
匯編命令e1-14是訪問存儲(chǔ)器命令,表示將分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù),保存在分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中。由于同時(shí)訪問分配給寄存器P0的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L5、和分配給寄存器P4的存儲(chǔ)器地址所指示的存儲(chǔ)器中所保存的數(shù)據(jù)L6,需要將數(shù)據(jù)L5和數(shù)據(jù)L6分配在不同的存儲(chǔ)塊中。
這樣,由輸入文件e1所訪問的數(shù)據(jù)L1~L6被分配在存儲(chǔ)塊MB1~MB2的結(jié)果為e2以及e3。e2表示保存由輸入文件e1所訪問的數(shù)據(jù)中被分配在存儲(chǔ)塊MB1中的數(shù)據(jù)的存儲(chǔ)器地址的集合。e3表示保存由輸入文件e1所訪問的數(shù)據(jù)中被分配在存儲(chǔ)塊MB2中的數(shù)據(jù)的存儲(chǔ)器地址的集合。
以下,對(duì)圖4所示塊分配(塊控制)的方法進(jìn)行說明。在此,在圖2所示的處理器中,假定對(duì)所有的數(shù)據(jù)進(jìn)行塊分配的優(yōu)先度均相等。
圖5以及圖6表示塊控制的處理流程圖。在此,采用圖5、圖6的那一種方法都可以。
圖5表示一邊讀取在運(yùn)算處理部12所執(zhí)行的訪問存儲(chǔ)器命令中所需要的信息、一邊自動(dòng)進(jìn)行不出現(xiàn)存儲(chǔ)塊沖突的塊分配的塊控制處理流程。
在第ST100步,讀取一條運(yùn)算處理部12所執(zhí)行的訪問存儲(chǔ)器命令。在第ST101步,從在第ST100步讀取的訪問存儲(chǔ)器命令中獲取塊控制所需要的信息。在第ST102步,進(jìn)行塊控制。在第ST103步,判斷對(duì)運(yùn)算處理部12所執(zhí)行的所有訪問存儲(chǔ)器命令進(jìn)行的塊分配是否結(jié)束。在第ST103步如果判斷所有均結(jié)束,則結(jié)束處理,如果判斷沒有結(jié)束,則返回到第ST100步,重復(fù)執(zhí)行第ST100步到第ST103步的動(dòng)作。
圖6表示讀取所有在運(yùn)算處理部12所執(zhí)行的訪問存儲(chǔ)器命令中的所需要的信息后、自動(dòng)進(jìn)行不出現(xiàn)存儲(chǔ)塊沖突的塊分配的塊控制處理流程。
在第ST200步,讀取一條運(yùn)算處理部12所執(zhí)行的訪問存儲(chǔ)器命令。在第ST201步,從在第ST200步讀取的訪問存儲(chǔ)器命令中獲取塊控制所需要的信息。在第ST202步,判斷對(duì)運(yùn)算處理部12所執(zhí)行的所有訪問存儲(chǔ)器命令是否獲取了塊控制所需要的信息,在第ST203步,在第ST202步如果判斷均已獲取時(shí),則進(jìn)行塊控制。在第ST202步如果判斷沒有均已獲取時(shí),則返回到第ST200步,重復(fù)執(zhí)行第ST200步到第ST202步的動(dòng)作。
在此,對(duì)于上述塊控制所需要的信息(以下記述為塊控制信息)采用圖47(a)進(jìn)行說明。圖47(a)所示的塊控制信息,在每次讀取訪問存儲(chǔ)器命令時(shí)制作一條。塊控制信息,包括保存所訪問的數(shù)據(jù)的多個(gè)存儲(chǔ)器的地址信息、以及表示下一塊控制信息的保存場所的地址信息。通過具有表示下一塊控制信息的保存場所的地址信息,所有塊控制信息連接成列表結(jié)構(gòu)。表示下一塊控制信息的保存場所的地址信息,在制作下一塊控制信息的時(shí)刻被登錄。
然后,參照?qǐng)D7說明獲取圖47(a)所示塊控制信息的動(dòng)作。
e1,是記述訪問存儲(chǔ)器的命令文的輸入程序的一例。e5,是根據(jù)訪問存儲(chǔ)器命令e1-4獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-4中由于同時(shí)訪問數(shù)據(jù)L1以及數(shù)據(jù)L2,在塊控制信息e5的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L1的存儲(chǔ)器的地址_L1、以及保存數(shù)據(jù)L2的存儲(chǔ)器的地址_L2進(jìn)行登錄。
e6,是根據(jù)訪問存儲(chǔ)器命令e1-6獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-6中由于同時(shí)訪問數(shù)據(jù)L3以及數(shù)據(jù)L2,在塊控制信息e6的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L3的存儲(chǔ)器的地址_L3、以及保存數(shù)據(jù)L2的存儲(chǔ)器的地址_L2進(jìn)行登錄。塊控制信息e6與塊控制信息e5連接。
e7,是根據(jù)訪問存儲(chǔ)器命令e1-8獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-8中由于同時(shí)訪問數(shù)據(jù)L4以及數(shù)據(jù)L3,在塊控制信息e8的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L4的存儲(chǔ)器的地址_L4、以及保存數(shù)據(jù)L3的存儲(chǔ)器的地址_L3進(jìn)行登錄。塊控制信息e7與塊控制信息e6連接。
e8,是根據(jù)訪問存儲(chǔ)器命令e1-10獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-10中由于同時(shí)訪問數(shù)據(jù)L3以及數(shù)據(jù)L1,在塊控制信息e8的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L3的存儲(chǔ)器的地址_L3、以及保存數(shù)據(jù)L1的存儲(chǔ)器的地址_L1進(jìn)行登錄。塊控制信息e8與塊控制信息e7連接。
e9,是根據(jù)訪問存儲(chǔ)器命令e1-14獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-14中由于同時(shí)訪問數(shù)據(jù)L5以及數(shù)據(jù)L6,在塊控制信息e9的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L5的存儲(chǔ)器的地址_L5、以及保存數(shù)據(jù)L6的存儲(chǔ)器的地址_L6進(jìn)行登錄。塊控制信息e9與塊控制信息e8連接。
這樣,制作成由塊控制信息e5~e9所構(gòu)成的塊控制信息列表e10。
然后,參照?qǐng)D8具體說明獲取圖7所示的塊控制信息的動(dòng)作。圖8表示獲取圖47(a)所示塊控制信息的流程圖,相當(dāng)于圖5的第ST101步、圖6的第ST201步的動(dòng)作。
在第ST300步,獲取保存了在運(yùn)算處理部12執(zhí)行的訪問存儲(chǔ)器命令中所訪問的數(shù)據(jù)的存儲(chǔ)器地址信息。在第ST301步,將在第ST300步獲取的存儲(chǔ)器地址信息登錄在塊控制信息中,連接成塊控制信息列表。
然后,參照?qǐng)D9說明塊分配優(yōu)先度均相等時(shí)的塊控制方法。
e10是塊控制信息列表。e5~e9是構(gòu)成塊控制信息列表e10的塊控制信息。e17~e20是根據(jù)塊控制信息e5~e9制作的塊分配組信息。在此,采用圖48(a)對(duì)在第1實(shí)施方案中制作的塊分配組信息進(jìn)行說明。在第1實(shí)施方案中,制作成圖48(a)所示的塊分配組信息。
圖48(a)所示的塊分配組信息,保存根據(jù)塊控制信息,按照保存了分配在同一塊的數(shù)據(jù)的存儲(chǔ)器地址分在同一組中、保存了分配在不同塊的數(shù)據(jù)的存儲(chǔ)器地址分在不同組中進(jìn)行分組的結(jié)果信息、以及表示下一塊分配組信息的保存場所的地址信息。在此,假定組數(shù)和塊數(shù)相等。另外,通過具有表示下一塊分配組信息的保存場所的地址信息,所有塊分配組信息連接成列表結(jié)構(gòu)。表示下一塊分配組信息的保存場所的地址信息,在制作下一塊分配組信息的時(shí)刻被登錄。
這樣,根據(jù)塊控制信息e5制作的塊分配組信息e17,表示按照在塊控制信息e5的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L1為Gr(組)1,存儲(chǔ)器地址_L2為Gr2那樣,將保存了數(shù)據(jù)L1的存儲(chǔ)器和保存了數(shù)據(jù)L2的存儲(chǔ)器分組在不同組中后的結(jié)果。
另外,根據(jù)塊控制信息e6制作的塊分配組信息e18,表示對(duì)在塊控制信息e6的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L3和存儲(chǔ)器地址_L2進(jìn)行分組后的結(jié)果。在此,存儲(chǔ)器地址_L2由于在塊分配組信息e17中已經(jīng)被分組在Gr2中,存儲(chǔ)器地址_L3被分配在與存儲(chǔ)器地址_L2不同的組的Gr1中。塊分配組信息e18與塊分配組信息e17連接。
同樣,根據(jù)塊控制信息e7制作的塊分配組信息e19,表示將存儲(chǔ)器地址L3分組在組Gr1、存儲(chǔ)器地址_L4分組在Gr2中的結(jié)果。根據(jù)塊控制信息e9制作的塊分配組信息e20,表示將存儲(chǔ)器地址_L5分組在Gr1、存儲(chǔ)器地址_L6分組在Gr2中的結(jié)果。
在此,在塊控制信息e8的存儲(chǔ)器地址信息中雖然登錄了存儲(chǔ)器地址_L1以及存儲(chǔ)器地址_L3,但由于在讀取塊控制信息e8時(shí),存儲(chǔ)器地址_L1、存儲(chǔ)器地址_L3均已登錄在塊分配組信息中,所以沒有必要重新制作塊分配組信息。
這樣,制作成由塊分配組信息e17~e20所構(gòu)成的塊分配組信息列表e21,從在塊分配組信息列表e21的先頭的塊分配組信息e17中登錄的存儲(chǔ)器地址所表示的數(shù)據(jù)開始依次進(jìn)行塊分配。
然后,參照?qǐng)D10具體說明圖9所示的塊控制方法。
圖10表示對(duì)所有數(shù)據(jù)的塊分配的優(yōu)先度均相等時(shí)的塊控制方法的流程圖,相當(dāng)于圖5的第ST102步、圖6的第ST203步的動(dòng)作。
在第ST400步,讀取塊控制信息列表的先頭。
在第ST401步,判斷在所讀取的塊控制信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址中沒有登錄在塊分配組信息列表中的存儲(chǔ)器地址是否存在。
在第ST402步,當(dāng)在第ST401步,判斷沒有登錄在塊分配組信息列表中的存儲(chǔ)器地址存在時(shí),沒有登錄的存儲(chǔ)器地址,作為與在相同塊控制信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址所登錄的組不同的組,登錄在塊分配組信息列表中。
在第ST403步,將讀取后的塊控制信息從塊控制信息列表中刪除。
在第ST404步,判斷在塊控制信息列表中是否存在沒有處理的塊控制信息。在第ST404步,如果判斷在塊控制信息列表中存在沒有處理的塊控制信息,返回到第ST400步,重復(fù)執(zhí)行第ST400步到第ST404步的動(dòng)作。在第ST404步,如果判斷在塊控制信息列表中沒有處理的塊控制信息已經(jīng)不存在,在第ST405步,執(zhí)行塊分配。
然后,參照?qǐng)D11說明相當(dāng)于圖10的第ST405步的動(dòng)作的塊分配動(dòng)作。圖11表示對(duì)所有數(shù)據(jù)的塊分配的優(yōu)先度均相等時(shí)的塊分配動(dòng)作的例子。
e21是塊分配組信息列表。e17~e20構(gòu)成塊分配組信息列表e21,是塊分配組信息。
e27以及e28,是分別保存數(shù)據(jù)的存儲(chǔ)塊,表示從在塊分配組信息列表e21的先頭的塊分配組信息e17中所登錄的存儲(chǔ)器地址所指定的區(qū)域中所保存的數(shù)據(jù)開始依次進(jìn)行塊分配后的結(jié)果。在圖11中,雖然將數(shù)據(jù)L1、數(shù)據(jù)L3、數(shù)據(jù)L5分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L2、數(shù)據(jù)L4、數(shù)據(jù)L6分配在存儲(chǔ)塊MB2中,也可以將數(shù)據(jù)L2、數(shù)據(jù)L4、數(shù)據(jù)L6分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L1、數(shù)據(jù)L3、數(shù)據(jù)L5分配在存儲(chǔ)塊MB2中。
然后,采用圖12具體說明圖11所示塊分配動(dòng)作。圖12表示對(duì)所有數(shù)據(jù)的塊分配的優(yōu)先度均相等時(shí)的塊分配動(dòng)作的流程圖,相當(dāng)于圖10的第ST405步的動(dòng)作。
在第ST500步,讀取塊分配組信息列表的先頭。
在第ST501步,判斷是否可以將在所讀取的塊分配組信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST501步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST502步,將所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)集合分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。在第ST502步進(jìn)行分配時(shí),不出現(xiàn)存儲(chǔ)器塊沖突。
在第ST501步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST503步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST503步,如果判斷可以,在第ST504步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。在第ST504步進(jìn)行分配時(shí),一部分出現(xiàn)存儲(chǔ)塊沖突。
在第ST503步,如果判斷不可以,在第ST505步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST505步,如果判斷可以,在第ST506步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,在第ST506步進(jìn)行分配時(shí),出現(xiàn)存儲(chǔ)塊沖突。
在第ST505步,如果判斷不可以,在第ST507步進(jìn)行出錯(cuò)處理。
在第ST508步,判斷在塊分配組信息列表中是否存在下一信息。如果在第ST508步判斷為存在時(shí),返回到第ST500步,重復(fù)執(zhí)行第ST500步到第ST508步的動(dòng)作。
依據(jù)以上說明的第1實(shí)施方案,可以將由訪問存儲(chǔ)器命令所訪問的數(shù)據(jù),按照使用順序,在不出現(xiàn)存儲(chǔ)塊沖突的情況下,自動(dòng)進(jìn)行塊分配。
(第2實(shí)施方案)在第1實(shí)施方案中,假定對(duì)所有的數(shù)據(jù)進(jìn)行塊分配的優(yōu)先度相等的情況下進(jìn)行塊分配。在第2實(shí)施方案中,根據(jù)循環(huán)次數(shù)設(shè)定塊分配優(yōu)先度,從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配。在第2實(shí)施方案中,進(jìn)行圖6所示的塊控制處理。
在此,對(duì)于在第2實(shí)施方案中獲取的塊控制信息采用圖47(b)進(jìn)行說明。圖47(b)所示的塊控制信息,在每次讀取訪問存儲(chǔ)器命令時(shí)制作一條。塊控制信息,包括保存數(shù)據(jù)的多個(gè)存儲(chǔ)器信息、進(jìn)行塊控制的優(yōu)先度信息、以及表示下一塊控制信息的保存場所的地址信息。在此,在塊控制信息中設(shè)定的塊控制優(yōu)先度,假定與執(zhí)行命令的循環(huán)次數(shù)相等。另外,通過具有表示下一塊控制信息的保存場所的地址信息,所有塊控制信息連接成列表結(jié)構(gòu)。表示下一塊控制信息的保存場所的地址信息,在制作下一塊控制信息的時(shí)刻被登錄。
然后,參照?qǐng)D13說明獲取圖47(b)所示塊控制信息的動(dòng)作。
e1,是記述訪問存儲(chǔ)器的命令文的輸入程序的一例。
e30,是根據(jù)訪問存儲(chǔ)器命令e1-4獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-4中由于同時(shí)訪問數(shù)據(jù)L1以及數(shù)據(jù)L2,在塊控制信息e30的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L1的存儲(chǔ)器的地址_L1、以及保存數(shù)據(jù)L2的存儲(chǔ)器的地址_L2進(jìn)行登錄。訪問存儲(chǔ)器命令e1-4,由于根據(jù)循環(huán)命令e1-3確定的循環(huán)次數(shù)為10,在塊控制信息e30的塊控制優(yōu)先度中登錄10。
e31,是根據(jù)訪問存儲(chǔ)器命令e1-6獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-6中由于同時(shí)訪問數(shù)據(jù)L3以及數(shù)據(jù)L2,在塊控制信息e31的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L3的存儲(chǔ)器的地址_L3、以及保存數(shù)據(jù)L2的存儲(chǔ)器的地址_L2進(jìn)行登錄。由于訪問存儲(chǔ)器命令e1-4的執(zhí)行次數(shù)為1,在塊控制信息e31的塊控制優(yōu)先度中登錄1。塊控制信息e31與塊控制信息e30連接。
e32,是根據(jù)訪問存儲(chǔ)器命令e1-8獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-8中由于同時(shí)訪問數(shù)據(jù)L4以及數(shù)據(jù)L3,在塊控制信息e32的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L4的存儲(chǔ)器的地址_L4、以及保存數(shù)據(jù)L3的存儲(chǔ)器的地址_L3進(jìn)行登錄。由于訪問存儲(chǔ)器命令e1-8的執(zhí)行次數(shù)為1,在塊控制信息e32的塊控制優(yōu)先度中登錄1。塊控制信息e32與塊控制信息e31連接。
e33,是根據(jù)訪問存儲(chǔ)器命令e1-10獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-10中由于同時(shí)訪問數(shù)據(jù)L3以及數(shù)據(jù)L1,在塊控制信息e33的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L3的存儲(chǔ)器的地址_L3、以及保存數(shù)據(jù)L1的存儲(chǔ)器的地址_L1進(jìn)行登錄。由于訪問存儲(chǔ)器命令e1-10的執(zhí)行次數(shù)為1,在塊控制信息e33的塊控制優(yōu)先度中登錄1。塊控制信息e33與塊控制信息e32連接。
e34,是根據(jù)訪問存儲(chǔ)器命令e1-14獲取的塊控制信息。在訪問存儲(chǔ)器命令e1-14中由于同時(shí)訪問數(shù)據(jù)L5以及數(shù)據(jù)L6,在塊控制信息e34的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L5的存儲(chǔ)器的地址_L5、以及保存數(shù)據(jù)L6的存儲(chǔ)器的地址_L6進(jìn)行登錄。由于訪問存儲(chǔ)器命令e1-14的執(zhí)行次數(shù)為20,在塊控制信息e34的塊控制優(yōu)先度中登錄20。塊控制信息e34與塊控制信息e33連接。
這樣,制作成由塊控制信息e30~e34所構(gòu)成的塊控制信息列表e35。
然后,參照?qǐng)D14具體說明獲取圖13的概念圖所示的塊控制信息的動(dòng)作。圖14表示獲取圖47(b)所示塊控制信息的動(dòng)作流程圖,相當(dāng)于圖6的第ST201步的動(dòng)作。
在第ST600步,獲取保存了在運(yùn)算處理部12執(zhí)行的訪問存儲(chǔ)器命令中所訪問的數(shù)據(jù)的存儲(chǔ)器地址信息。
在第ST601步,將訪問存儲(chǔ)器命令所執(zhí)行的循環(huán)次數(shù)設(shè)定為塊控制優(yōu)先度。
在第ST602步,將在第ST600步獲取的存儲(chǔ)器地址信息、以及在第ST601步獲取的塊控制優(yōu)先度,登錄在塊控制信息中,連接成塊控制信息列表。
然后,作為第2實(shí)施方案中的塊控制方法,參照?qǐng)D15說明根據(jù)循環(huán)次數(shù)設(shè)定塊分配優(yōu)先度時(shí)從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配的塊控制方法。
e35是塊控制信息列表。
e37是按照塊控制優(yōu)先度高低的順序?qū)K控制信息列表e35排序后的塊控制信息列表。e38~e42是構(gòu)成塊信息列表e37的塊控制信息。
e43~e46是根據(jù)塊控制信息e38~e42制作的塊分配組信息。
在此,采用圖48(b)對(duì)在第2實(shí)施方案中制作的塊分配組信息進(jìn)行說明。
在第2實(shí)施方案中,制作成圖48(b)所示的塊分配組信息。圖48(b)所示的塊分配組信息,保存根據(jù)塊控制信息,按照保存了分配在同一塊的數(shù)據(jù)的存儲(chǔ)器地址分在同一組中、保存了分配在不同塊的數(shù)據(jù)的存儲(chǔ)器地址分在不同組中進(jìn)行分組的結(jié)果信息、分配塊的優(yōu)先度信息、以及表示下一塊分配組信息的保存場所的地址信息。在此,假定組數(shù)和塊數(shù)相等。另外,通過具有表示下一塊分配組信息的保存場所的地址信,所有塊分配組信息連接成列表結(jié)構(gòu)。表示下一塊分配組信息的保存場所的地址信,在制作下一塊分配組信息的時(shí)刻被登錄。
這樣,根據(jù)塊控制信息e38制作的塊分配組信息e43,表示按照在塊控制信息e38的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L5為Gr1,存儲(chǔ)器地址_L6為Gr2那樣,將保存了數(shù)據(jù)L5的存儲(chǔ)器和保存了數(shù)據(jù)L6的存儲(chǔ)器分組在不同組中后的結(jié)果。另外,塊分配優(yōu)先度,登錄成在塊控制信息e38的塊控制優(yōu)先度中登錄的值。
另外,根據(jù)塊控制信息e39制作的塊分配組信息e44,表示對(duì)在塊控制信息e39的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L1分組在Gr1、存儲(chǔ)器地址_L2分組在Gr2那樣、將保存了數(shù)據(jù)L1的存儲(chǔ)器和保存了數(shù)據(jù)L2的存儲(chǔ)器分組在不同組中后的結(jié)果。另外,塊分配優(yōu)先度,登錄成在塊控制信息e39的塊控制優(yōu)先度中登錄的值。塊分配組信息e44與塊分配組信息e43連接。
根據(jù)塊控制信息e40制作的塊分配組信息e45,表示對(duì)在塊控制信息e40的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L3和存儲(chǔ)器地_L2進(jìn)行分組后的結(jié)果。在此,存儲(chǔ)器地址_L2由于在塊分配組信息e44中已經(jīng)被分組在Gr2中,存儲(chǔ)器地址_L3被分配在與存儲(chǔ)器地址_L2不同的組的Gr1中。塊分配優(yōu)先度,登錄成在塊控制信息e40的塊控制優(yōu)先度中登錄的值。塊分配組信息e45與塊分配組信息e44連接。
同樣,根據(jù)塊控制信息e41制作的塊分配組信息e46,表示將存儲(chǔ)器地址_L3分組在組Gr1、存儲(chǔ)器地址_L4分組在Gr2中的結(jié)果,塊分配優(yōu)先度,登錄成在塊控制信息e41的塊控制優(yōu)先度中登錄的值。
在此,在塊控制信息e42的存儲(chǔ)器地址信息中雖然登錄了存儲(chǔ)器地址_L3以及存儲(chǔ)器地址_L1,由于在讀取塊控制信息e42時(shí),存儲(chǔ)器地址_L3、存儲(chǔ)器地址_L1均已登錄在塊分配組信息中,沒有必要重新制作塊分配組信息。
這樣,制作成由塊分配組信息e43~e46所構(gòu)成的塊分配組信息列表e47,從在塊分配優(yōu)先度高的塊分配組信息e43中登錄的存儲(chǔ)器地址所表示的數(shù)據(jù)開始依次進(jìn)行塊分配。
然后,參照?qǐng)D16具體說明圖15所示的塊控制方法。圖16表示從塊分配優(yōu)先度高的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊控制方法的流程圖,相當(dāng)于圖5的第ST102步。
在第ST700步,按照塊控制優(yōu)先度高低的順序?qū)K控制信息列表中的塊控制信息進(jìn)行排序。
在第ST701步,讀取塊控制信息列表的先頭。
在第ST702步,判斷在所讀取的塊控制信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址中沒有登錄在塊分配組信息列表中的存儲(chǔ)器地址是否存在。
當(dāng)在第ST702步判斷存在時(shí),在第ST703步,沒有登錄的存儲(chǔ)器地址,作為與在相同塊控制信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址所登錄的組不同的組,登錄在塊分配組信息列表中。
在第ST704步,將讀取后的塊控制信息從塊控制信息列表中刪除。
在第ST705步,判斷在塊控制信息列表中是否存在沒有處理的塊控制信息。
在第ST705步如果判斷存在,返回到第ST701步,重復(fù)執(zhí)行第ST701步到第ST705步的動(dòng)作。
在第ST705步如果判斷不存在,在第ST706步,執(zhí)行塊分配。
然后,參照?qǐng)D17說明相當(dāng)于圖16的第ST706步的動(dòng)作的塊分配動(dòng)作。圖17表示根據(jù)循環(huán)次數(shù)設(shè)定塊分配優(yōu)先度時(shí),從塊分配優(yōu)先度高的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊分配動(dòng)作的例子。
e47是塊分配組信息列表。e43~e46是構(gòu)成塊分配組信息列表e47的塊分配組信息。
e53以及e54,是分別保存數(shù)據(jù)的存儲(chǔ)塊,表示從在塊分配組信息列表e21的先頭的塊分配組信息e43中所登錄的存儲(chǔ)器地址所指定的區(qū)域中所保存的數(shù)據(jù)開始依次進(jìn)行塊分配后的結(jié)果。在圖17中,雖然將數(shù)據(jù)L5、數(shù)據(jù)L1、數(shù)據(jù)L3分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L6、數(shù)據(jù)L2、數(shù)據(jù)L4分配在存儲(chǔ)塊MB2中,也可以將數(shù)據(jù)L6、數(shù)據(jù)L2、數(shù)據(jù)L4分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L5、數(shù)據(jù)L1、數(shù)據(jù)L3分配在存儲(chǔ)塊MB2中。
然后,采用圖18具體說明圖17所示塊分配動(dòng)作。圖18表示表示根據(jù)循環(huán)次數(shù)設(shè)定塊分配優(yōu)先度時(shí),從塊分配優(yōu)先度高的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊分配動(dòng)作的流程圖,相當(dāng)于圖16的第ST706步的動(dòng)作。
在第ST800步,讀取塊分配組信息列表的先頭。
在第ST801步,判斷是否可以將在所讀取的塊分配組信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST801步,當(dāng)判斷可以時(shí),在第ST802步,將所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)集合分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。在第ST802步時(shí),不引起存儲(chǔ)器塊沖突。
在第ST801步,當(dāng)判斷不可以時(shí),在第ST803步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST803步,如果判斷可以,在第ST804步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。在第ST804步中分配時(shí),一部分出現(xiàn)存儲(chǔ)塊沖突。
在第ST803步,如果判斷不可以,在第ST805步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST805步,如果判斷可以,在第ST806步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,在第ST806步中分配時(shí),出現(xiàn)存儲(chǔ)塊沖突。
在第ST805步,如果判斷不可以,在第ST807步進(jìn)行出錯(cuò)處理。
在第ST808步,判斷在塊分配組信息列表中是否存在下一信息。如果在在第ST808步判斷為存在時(shí),返回到第ST800步,重復(fù)執(zhí)行第ST800步到第ST808步的動(dòng)作。
依據(jù)以上說明的第2實(shí)施方案,對(duì)于在循環(huán)中重復(fù)使用的數(shù)據(jù)集合,按照循環(huán)次數(shù)多的數(shù)據(jù)集合優(yōu)選的原則,可以在不出現(xiàn)存儲(chǔ)塊沖突的情況下,自動(dòng)進(jìn)行塊分配。
(第3實(shí)施方案)在第4實(shí)施方案中,根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度,優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配。在第3實(shí)施方案中,進(jìn)行圖6所示的塊控制處理。另外,對(duì)于在第3實(shí)施方案中獲取的塊控制信息和圖47(b)所示的塊控制信息等同,獲取圖47(b)所示的塊控制信息的處理,采用圖13所示方法。
然后,作為第3實(shí)施方案中的塊控制方法,參照?qǐng)D15說明根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度、優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊控制方法。
e35是塊控制信息列表。e37是按照塊控制優(yōu)先度高低的順序?qū)K控制信息列表e35排序后的塊控制信息列表。e38~e42是構(gòu)成塊信息列表e37的塊控制信息。
e62是根據(jù)塊控制信息e38制作的塊分配組信息。e63~e66是根據(jù)塊控制信息e39~e42制作的到完成制作塊分配組信息之前的經(jīng)過。
在此,采用圖48(c)對(duì)在第3實(shí)施方案中制作的塊分配組信息進(jìn)行說明。在第3實(shí)施方案中,制作成圖48(c)所示的塊分配組信息。圖48(c)所示的塊分配組信息,保存根據(jù)塊控制信息,按照保存了分配在同一塊的數(shù)據(jù)的存儲(chǔ)器地址分在同一組中、保存了分配在不同塊的數(shù)據(jù)的存儲(chǔ)器地址分在不同組中進(jìn)行分組的結(jié)果信息、分配塊的綜合優(yōu)先度信息、以及表示下一塊分配組信息的保存場所的地址信息。在此,假定組數(shù)和塊數(shù)相等。另外,塊分配綜合優(yōu)先度,在塊控制信息處理時(shí),對(duì)每次在塊控制信息中登錄的塊控制優(yōu)先度相加獲得。為此,登錄了使用頻度越高的數(shù)據(jù)的塊分配組信息,塊分配綜合優(yōu)先度越高。另外,通過具有表示下一塊分配組信息的保存場所的地址信,所有塊分配組信息連接成列表結(jié)構(gòu)。表示下一塊分配組信息的保存場所的地址信,在制作下一塊分配組信息的時(shí)刻被登錄。
這樣,根據(jù)塊控制信息e38制作的塊分配組信息e62,表示按照在塊控制信息e38的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L5為Gr1,存儲(chǔ)器地址_L6為Gr2那樣,將保存了數(shù)據(jù)L5的存儲(chǔ)器和保存了數(shù)據(jù)L6的存儲(chǔ)器分組在不同組中后的結(jié)果。另外,塊分配綜合優(yōu)先度,登錄成在塊控制信息e38的塊控制優(yōu)先度中登錄的值。
另外,根據(jù)塊控制信息e39制作的塊分配組信息e63,表示對(duì)在塊控制信息e39的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L1分組在Gr1、存儲(chǔ)器地址_L2分組在Gr2那樣、將保存了數(shù)據(jù)L1的存儲(chǔ)器和保存了數(shù)據(jù)L2的存儲(chǔ)器分組在不同組中后的結(jié)果。另外,塊分配綜合優(yōu)先度,登錄成在塊控制信息e39的塊控制優(yōu)先度中登錄的值。
塊分配組信息e63,根據(jù)具有在塊分配信息e39中已經(jīng)分組的存儲(chǔ)器地址_L2的信息的塊控制信息e40,更新成塊分配組信息e64。在塊分配組信息e64中,將存儲(chǔ)器地址_L3,追加在分組在與已經(jīng)分組在Gr2中的存儲(chǔ)器地址_L2不同的組Gr1中的結(jié)果中。在塊分配綜合優(yōu)先度中再次登錄成在塊分配組信息e63的塊分配綜合優(yōu)先度上加上塊控制信息e40的塊控制優(yōu)先度后的優(yōu)先度。
塊分配組信息e64,根據(jù)具有在塊分配組信息e63中已經(jīng)分組的存儲(chǔ)器地址_L1的信息的塊控制信息e42,更新成塊分配組信息e65。在塊分配組信息e64的塊分配綜合優(yōu)先度中再次登錄成在塊分配組信息e64的塊分配綜合優(yōu)先度上加上塊控制信息e42的塊控制優(yōu)先度后的優(yōu)先度。在此,由于在塊控制信息e42中登錄的存儲(chǔ)器地址_L3以及_L1已經(jīng)在塊分配組信息中登錄,沒有在塊分配組信息e65中追加的存儲(chǔ)器地址信息。
塊分配組信息e65,根據(jù)具有在塊分配組信息e64中已經(jīng)分組的存儲(chǔ)器地址_L3的信息的塊控制信息e41,更新成塊分配組信息e66。在塊分配組信息e66中,將存儲(chǔ)器_L4,追加在分組在與已經(jīng)分組在Gr1中的存儲(chǔ)器_L3不同的組Gr2中的結(jié)果中。在塊分配綜合優(yōu)先度中再次登錄成在塊分配組信息e65的塊分配綜合優(yōu)先度上加上塊控制信息e41的塊控制優(yōu)先度后的優(yōu)先度。完成后的塊分配組信息e66與塊分配組信息e62連接。
這樣,制作成由塊分配組信息e62以及e66所構(gòu)成的塊分配組信息列表e67,塊分配組信息列表e67按照塊分配綜合優(yōu)先度的高低排序,從在塊分配綜合優(yōu)先度高的塊分配組信息中登錄的存儲(chǔ)器地址所表示的數(shù)據(jù)開始依次進(jìn)行塊分配。
然后,參照?qǐng)D20具體說明圖19所示的塊控制方法。圖20表示根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度、優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊控制方法的流程圖,相當(dāng)于圖6的第ST203步。
在第ST900步,按照塊控制優(yōu)先度高低的順序?qū)K控制信息列表中的塊控制信息進(jìn)行排序。
在第ST901步,讀取塊控制信息列表的先頭。
在第ST902步,將沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址登錄在塊分配組信息列表中。
在第ST903步,在塊分配組信息列表中登錄塊分配綜合優(yōu)先度。
在第ST904步,將讀取后的塊控制信息從塊控制信息列表中刪除。
在第ST905步,判斷在塊控制信息列表中是否存在沒有處理的塊控制信息。
在第ST905步如果判斷存在,在第ST906步,從塊控制信息列表中讀出下一塊控制信息。
在第ST907步,判斷在所讀取的塊控制信息內(nèi)的存儲(chǔ)器地址信息中是否有已經(jīng)在塊分配組信息列表中登錄的存儲(chǔ)器地址。
在第ST907步如果判斷有,在第ST908步,判斷沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址是否在所讀取的塊控制信息中登錄。
在第ST908步,如果判斷沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址已經(jīng)在所讀取的塊控制信息中登錄時(shí),在第ST909步,將沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址,作為與登錄了相同塊控制信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址的組不同的組,登錄在塊分配組信息列表中。
在第ST910步,在塊分配組信息列表的塊分配綜合優(yōu)先度中加上所讀取的塊控制信息的塊控制優(yōu)先度。
在第ST911步,將讀取后的塊控制信息從塊控制信息列表中刪除。
在第ST912步,判斷所讀取的塊控制信息是否是塊控制信息列表中的最后信息。
在第ST912步,如果判斷是最后的信息時(shí),返回到第ST901步,如果判斷不是最后的信息時(shí),返回到第ST905步。
在第ST905步如果判斷沒有處理的塊控制信息不存在時(shí),在第ST913步,執(zhí)行塊分配。
然后,參照?qǐng)D21說明相當(dāng)于圖20的第ST913步的動(dòng)作的塊分配動(dòng)作。圖21表示根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度、優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊分配動(dòng)作的例子。
e67是塊分配組信息列表。e69是按照塊分配綜合優(yōu)先度高低順序?qū)K分配組信息列表e67排序后的塊分配組信息列表。
e72以及e73,是分別保存數(shù)據(jù)的存儲(chǔ)塊,表示從在塊分配組信息列表e69的先頭的塊分配組信息e70中所登錄的存儲(chǔ)器地址所指定的區(qū)域中所保存的數(shù)據(jù)開始依次進(jìn)行塊分配后的結(jié)果。在圖21中,雖然將數(shù)據(jù)L5、數(shù)據(jù)L1、數(shù)據(jù)L3分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L6、數(shù)據(jù)L2、數(shù)據(jù)L4分配在存儲(chǔ)塊MB2中,也可以將數(shù)據(jù)L6、數(shù)據(jù)L2、數(shù)據(jù)L4分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L5、數(shù)據(jù)L1、數(shù)據(jù)L3分配在存儲(chǔ)塊MB2中。
然后,采用圖22具體說明圖21所示塊分配動(dòng)作。圖22表示根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度、優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配時(shí)的塊分配動(dòng)作的流程圖,相當(dāng)于圖20的第ST91 3步的動(dòng)作。
在第ST1000步,按照塊控制綜合優(yōu)先度高低的順序?qū)K控制信息列表中的塊控制信息進(jìn)行排序。
在第ST1001步,讀取塊分配組信息列表的先頭。
在第ST1002步,判斷是否可以將在所讀取的塊分配組信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST1002步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST1003步,將所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)集合分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。在第ST1003步進(jìn)行分配時(shí),不引起存儲(chǔ)器塊沖突。
在第ST1002步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST1004步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1004步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1005步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。在第ST1005步進(jìn)行分配時(shí),一部分出現(xiàn)存儲(chǔ)塊沖突。
在第ST1004步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中,在第ST1006步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1006步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中,在第ST1007步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,在第ST1007步進(jìn)行分配時(shí),出現(xiàn)存儲(chǔ)塊沖突。
在第ST1006步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中,在第ST1008步進(jìn)行出錯(cuò)處理。
在第ST1009步,判斷在塊分配組信息列表中是否存在下一信息。
如果在在第ST1009步判斷為存在時(shí),返回到第ST1001步,重復(fù)執(zhí)行第ST1001步到第ST1009步的動(dòng)作。
依據(jù)以上說明的第3實(shí)施方案,通過在不出現(xiàn)存儲(chǔ)塊沖突的情況下,自動(dòng)對(duì)使用頻度高的數(shù)據(jù)、與使用頻度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,可以對(duì)所有數(shù)據(jù)在平均上不出現(xiàn)存儲(chǔ)塊沖突的情況下進(jìn)行塊分配。
(第4實(shí)施方案)在第4實(shí)施方案中,根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度時(shí),優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,并且對(duì)于與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù),也從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配。在第4實(shí)施方案中,進(jìn)行圖5所示的塊控制處理。另外,對(duì)于在第4實(shí)施方案中獲取的塊控制信息和圖47(b)所示的塊控制信息等同,獲取圖47(b)所示的塊控制信息的處理,采用圖13所示方法。
然后,作為第4實(shí)施方案中的塊控制方法,參照?qǐng)D23說明根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度時(shí),優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,并且對(duì)于與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù),也從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配時(shí)的塊控制方法。
e35是塊控制信息列表。e37是按照塊控制優(yōu)先度高低的順序?qū)K控制信息列表e35排序后的塊控制信息列表。e38~e42是構(gòu)成塊信息列表e37的塊控制信息。
e81是根據(jù)塊控制信息e38制作的塊分配組信息,e82~e85是根據(jù)塊控制信息e39~e42制作的塊分配組信息的、到完成之前的經(jīng)過。
在此,采用圖48(d)對(duì)在第4實(shí)施方案中制作的塊分配組信息進(jìn)行說明。在第4實(shí)施方案中,制作成圖48(d)所示的塊分配組信息。
圖48(d)所示的塊分配組信息,保存根據(jù)塊控制信息,按照保存了分配在同一塊的數(shù)據(jù)的存儲(chǔ)器地址分在同一組中、保存了分配在不同塊的數(shù)據(jù)的存儲(chǔ)器地址分在不同組中進(jìn)行分組的結(jié)果信息、分配塊的綜合優(yōu)先度信息、以及表示下一塊分配組信息的保存場所的地址信息。在此,根據(jù)塊控制信息分組后的存儲(chǔ)器地址信息,具有按照塊控制信息分類的塊分配信息1、塊分配信息2、…、塊分配信息m的形式,塊分配信息分別具有已登錄的存儲(chǔ)器地址的優(yōu)先度。另外,假定所分的組數(shù)和塊數(shù)相等。另外,塊分配綜合優(yōu)先度,在塊控制信息處理時(shí),對(duì)每次在塊控制信息中登錄的塊控制優(yōu)先度相加獲得。為此,登錄了使用頻度越高的數(shù)據(jù)的塊分配組信息,塊分配綜合優(yōu)先度越高。另外,通過具有表示下一塊分配組信息的保存場所的地址信,所有塊分配組信息連接成列表結(jié)構(gòu)。表示下一塊分配組信息的保存場所的地址信,在制作下一塊分配組信息的時(shí)刻被登錄。
這樣,根據(jù)塊控制信息e38制作的塊分配組信息e81,按照在塊控制信息e38的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L5為Gr1,存儲(chǔ)器地址_L6為Gr2那樣,將保存了數(shù)據(jù)L5的存儲(chǔ)器和保存了數(shù)據(jù)L6的存儲(chǔ)器分組在不同組中后的結(jié)果在塊分配信息1中表示。另外,塊分配信息1的優(yōu)先度登錄成塊控制信息e38的塊控制優(yōu)先度。在塊分配綜合優(yōu)先度中,登錄成塊控制信息e38的塊控制優(yōu)先度。
另外,根據(jù)塊控制信息e39制作的塊分配組信息e82,對(duì)在塊控制信息e39的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L1分組在Gr1、存儲(chǔ)器地址_L2分組在Gr2那樣、將保存了數(shù)據(jù)L1的存儲(chǔ)器和保存了數(shù)據(jù)L2的存儲(chǔ)器分組在不同組中后的結(jié)果在塊分配信息1中表示。塊分配信息1的優(yōu)先度登錄成塊控制信息e39的塊控制優(yōu)先度。另外,在塊分配綜合優(yōu)先度中,登錄成塊控制信息e39的塊控制優(yōu)先度。
塊分配組信息e82,根據(jù)具有在塊分配組信息e82中已經(jīng)分組的存儲(chǔ)器地址_L2的信息的塊控制信息e40,更新成塊分配組信息e83。在塊分配組信息e83中,將存儲(chǔ)器地址_L3追加在分組在與已經(jīng)分組在Gr2中的存儲(chǔ)器地址_L2不同的組Gr1中的結(jié)果中作為塊分配信息2。塊分配信息2的優(yōu)先度登錄成塊控制信息e40的塊控制優(yōu)先度。另外,在塊分配綜合優(yōu)先度中,再次登錄成在塊分配組信息e82的塊分配綜合優(yōu)先度上加上塊控制信息e40的塊控制優(yōu)先度后的優(yōu)先度。
塊分配組信息e83,根據(jù)具有在塊分配組信息e82中已經(jīng)分組的存儲(chǔ)器地址_L1的信息的塊控制信息e42,更新成塊分配組信息e84。在塊分配組信息e84的塊分配綜合優(yōu)先度中再次登錄成在塊分配組信息e83的塊分配綜合優(yōu)先度上加上塊控制信息e42的塊控制優(yōu)先度后的優(yōu)先度。在此,由于在塊控制信息e42中登錄的存儲(chǔ)器地址_L3以及_L1已經(jīng)在塊分配組信息中登錄,沒有在塊分配組信息e84中追加的存儲(chǔ)器地址信息。
塊分配組信息e84,根據(jù)具有在塊分配組信息e83中已經(jīng)分組的存儲(chǔ)器地址_L3的信息的塊控制信息e41,更新成塊分配組信息e85。在塊分配組信息e85中,將存儲(chǔ)器地址_L4追加在分組在與已經(jīng)分組在Gr1中的存儲(chǔ)器_L3不同的組Gr2中的結(jié)果中作為塊分配信息3。塊分配信息3的優(yōu)先度登錄成塊控制信息e41的塊控制優(yōu)先度。另外,在塊分配綜合優(yōu)先度中,再次登錄成在塊分配組信息e84的塊分配綜合優(yōu)先度上加上塊控制信息e41的塊控制優(yōu)先度后的優(yōu)先度。以上完成后的塊分配組信息e85與塊分配組信息e81連接。
這樣,制作成由塊分配組信息e81以e85所構(gòu)成的塊分配組信息列表e86,塊分配組信息列表e86按照塊分配綜合優(yōu)先度的高低排序,從在塊分配綜合優(yōu)先度高的塊分配組信息的塊分配信息1中登錄的存儲(chǔ)器地址所表示的數(shù)據(jù)開始依次進(jìn)行塊分配。
然后,參照?qǐng)D24具體說明圖23所示的塊控制方法。圖20表示根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度時(shí),優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,并且對(duì)于與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù),也從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配時(shí)的塊控制方法的流程圖,相當(dāng)于圖5的第ST102步。
在第ST1100步,按照塊控制優(yōu)先度高低的順序?qū)K控制信息列表中的塊控制信息進(jìn)行排序。
在第ST1101步,讀取塊控制信息列表的先頭。
在第ST1102步,將沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址登錄在塊分配組信息列表中。
在第ST1103步,在塊分配組信息列表中登錄塊分配綜合優(yōu)先度。
在第ST1104步,將讀取后的塊控制信息從塊控制信息列表中刪除。
在第ST1105步,判斷在塊控制信息列表中是否存在沒有處理的塊控制信息。
在第ST1105步如果判斷存在沒有處理的塊控制信息,在第ST1106步,從塊控制信息列表中讀出下一塊控制信息。
在第ST1107步,判斷在所讀取的塊控制信息內(nèi)的存儲(chǔ)器地址信息中是否沒有已經(jīng)在塊分配組信息列表中登錄的存儲(chǔ)器地址。
在第ST1107步如果判斷在所讀取的塊控制信息內(nèi)的存儲(chǔ)器地址信息中有已經(jīng)在塊分配組信息列表中登錄的存儲(chǔ)器地址時(shí),在第ST1108步,判斷沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址是否在所讀取的塊控制信息中登錄。
在第ST1108步,如果判斷沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址已經(jīng)在所讀取的塊控制信息中登錄時(shí),在第ST1109步,將沒有在塊分配組信息列表中登錄的存儲(chǔ)器地址,作為與登錄了相同塊控制信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址的組不同的組,登錄在塊分配組信息列表中。
在第ST1110步,在塊分配組信息列表的塊分配綜合優(yōu)先度中加上所讀取的塊控制信息的塊控制優(yōu)先度。
在第ST1111步,將讀取后的塊控制信息從塊控制信息列表中刪除。
在第ST1112步,判斷所讀取的塊控制信息是否是塊控制信息列表中的最后信息。
在第ST1112步,如果判斷是最后的信息時(shí),返回到第ST1101步,如果判斷不是最后的信息時(shí),返回到第ST1105步。
在第ST1105步如果判斷沒有處理的塊控制信息不存在時(shí),在第ST1113步,執(zhí)行塊分配。
然后,參照?qǐng)D25說明相當(dāng)于圖24的第ST1113步的動(dòng)作的塊分配動(dòng)作。圖25表示根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度時(shí),優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,并且對(duì)于與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù),也從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配時(shí)的塊分配動(dòng)作的例子。
e86是塊分配組信息列表。e88是按照塊分配綜合優(yōu)先度高低順序?qū)K分配組信息列表e86排序后的塊分配組信息列表。e89以及e90是構(gòu)成塊分配組信息列表e88的塊分配組信息。
e91以及e92,是分別保存數(shù)據(jù)的存儲(chǔ)塊,表示從在塊分配組信息列表e88的先頭的塊分配組信息e89中所登錄的存儲(chǔ)器地址所指定的區(qū)域中所保存的數(shù)據(jù)開始依次進(jìn)行塊分配后的結(jié)果。在圖25中,雖然將數(shù)據(jù)L5、數(shù)據(jù)L1、數(shù)據(jù)L3分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L6、數(shù)據(jù)L2、數(shù)據(jù)L4分配在存儲(chǔ)塊MB2中,也可以將數(shù)據(jù)L6、數(shù)據(jù)L2、數(shù)據(jù)L4分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L5、數(shù)據(jù)L1、數(shù)據(jù)L3分配在存儲(chǔ)塊MB2中。
然后,采用圖26具體說明圖25所示塊分配動(dòng)作。圖26表示根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度時(shí),優(yōu)選對(duì)塊分配優(yōu)先度高的數(shù)據(jù)、以及與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,并且對(duì)于與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù),也從塊分配優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配時(shí)的塊分配動(dòng)作的流程圖,相當(dāng)于圖24的第ST1113步的動(dòng)作。
在第ST1200步,按照塊控制綜合優(yōu)先度高低的順序?qū)K控制信息列表進(jìn)行排序。
在第ST1201步,讀取塊分配組信息列表的先頭。
在第ST1202步,判斷是否可以將在所讀取的塊分配組信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST1202步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST1203步,將分組后的存儲(chǔ)器地址所指示的數(shù)據(jù)集合分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。在第ST1203步進(jìn)行分配時(shí),不引起存儲(chǔ)器塊沖突。
在第ST1202步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST1204步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1204步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1205步,按照優(yōu)先度高低順序?qū)K分配組信息內(nèi)的塊分配信息進(jìn)行排序。
在第ST1206步,讀取塊分配信息的先頭。
在第ST1207步,判斷是否可以將在所讀取的塊分配信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST1207步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST1208步,將分組后的存儲(chǔ)器地址所指示的數(shù)據(jù)分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。
在第ST1207步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST1209步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。
在第ST1210步,判斷在塊分配組信息內(nèi)是否存在沒有處理的塊分別信息。
在第ST1210步,如果判斷存在時(shí),返回到第ST1206步,重復(fù)執(zhí)行第ST1206步到第ST1210步的處理。從第ST1205步到第ST1210步的處理中進(jìn)行分配時(shí),一部分出現(xiàn)存儲(chǔ)塊沖突。
在第ST1204步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中,在第ST1211步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1211步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中,在第ST1212步,按照優(yōu)先度高低順序?qū)K分配組信息內(nèi)的塊分配信息進(jìn)行排序。
在第ST1213步,讀取塊分配信息的先頭。
在第ST1214步,判斷是否可以將在所讀取的塊分配信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST1214步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST1215步,將分組后的存儲(chǔ)器地址所指示的數(shù)據(jù)分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。
在第ST1214步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST1216步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。
在第ST1217步,判斷在塊分配組信息內(nèi)是否存在沒有處理的塊分別信息。
在第ST1217步,如果判斷存在時(shí),返回到第ST1213步,重復(fù)執(zhí)行從第ST1213步到第ST1217步的處理。從第ST1213步到第ST1217步的處理中進(jìn)行分配時(shí),出現(xiàn)存儲(chǔ)塊沖突。
在第ST1211步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中,在第ST1218步進(jìn)行出錯(cuò)處理。
在第ST1219步,判斷在塊分配組信息列表中是否存在下一信息。
如果在第ST1219步判斷為存在時(shí),返回到第ST1201步,重復(fù)執(zhí)行第ST1201步到第ST1219步的動(dòng)作。
依據(jù)以上說明的第4實(shí)施方案,通過在不出現(xiàn)存儲(chǔ)塊沖突的情況下,自動(dòng)對(duì)使用頻度高的數(shù)據(jù)、與使用頻度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)進(jìn)行塊分配,可以對(duì)所有數(shù)據(jù)在平均上不出現(xiàn)存儲(chǔ)塊沖突的情況下進(jìn)行塊分配。另外,通過對(duì)使用頻度高的數(shù)據(jù)、與使用頻度高的數(shù)據(jù)同時(shí)使用的數(shù)據(jù)從優(yōu)先度高的數(shù)據(jù)開始進(jìn)行塊分配,即使在塊容量不足時(shí),也可以對(duì)優(yōu)先度高的數(shù)據(jù)在不出現(xiàn)存儲(chǔ)塊沖突的情況下分配在塊中。
(第5實(shí)施方案)在第5實(shí)施方案中,通過塊控制命令,采用用戶記述的方法對(duì)從實(shí)施方案1到實(shí)施方案4所示功能進(jìn)行支援。
圖27表示通過塊控制命令,指定分配在不同塊中的數(shù)據(jù)時(shí)的塊分配的例子。e93是記述訪問存儲(chǔ)器命令以及塊控制命令的輸入文件的一例,相當(dāng)于在輸入文件e1中追加了塊控制命令e93-1、e93-12的情況。
塊控制命令e93-1,是指定將數(shù)據(jù)L1和數(shù)據(jù)L2分配在不同的塊中的命令,所指定的數(shù)據(jù)L1和L2,優(yōu)先被分配在不同的塊中。
塊控制命令e93-12,是指定將數(shù)據(jù)L5和數(shù)據(jù)L6分配在不同的塊中的命令,所指定的數(shù)據(jù)L5和L6,優(yōu)先被分配在不同的塊中。
這樣,由塊控制命令指定的數(shù)據(jù)L1、L2、L5、L6優(yōu)先被分配在塊中的結(jié)果的一例為e94以及e95。
在將塊控制命令指定的數(shù)據(jù)分配在塊中后,將輸入文件e93所訪問的數(shù)據(jù)中沒有被塊控制命令分配在塊中的數(shù)據(jù)L3、L4分配在塊中。將沒有被塊控制命令指定的數(shù)據(jù)分配在塊中后的存儲(chǔ)器塊的一例是e96以及e97。
這樣,輸入文件e93所訪問的數(shù)據(jù)L1~L6均被分配在塊中后的結(jié)果的存儲(chǔ)塊成為e96、e97。
然后,說明采用圖27所示塊控制命令進(jìn)行塊分配的方法。
圖28表示通過塊控制命令,指定分配在不同塊中的數(shù)據(jù)時(shí)的塊控制處理的流程圖。
在第ST1300步,讀取1條塊控制命令、或者由運(yùn)算處理部12進(jìn)行的訪問存儲(chǔ)器命令。
在第ST1301步,判斷所讀取的命令文是否是塊控制命令。
在第ST1301步如果判斷所讀取的命令文是塊控制命令,在第ST1302步,對(duì)塊控制命令,獲取塊控制命令進(jìn)行的塊控制中所需要的信息(以下記述為塊控制命令信息)。
在第ST1301步如果判斷所讀取的命令文不是塊控制命令,在第ST1303步,對(duì)所讀取的命令文,獲取塊控制信息。在第ST1303步中的處理,采用圖7以及圖13所示方法進(jìn)行。
在第ST1304步,判斷是否對(duì)所有的塊控制命令、以及對(duì)所有的訪問存儲(chǔ)器命令,獲取了塊控制命令信息、以及塊控制信息。
在第ST1304步如果判斷沒有都獲取時(shí),返回到第ST1300步,重復(fù)執(zhí)行第ST1300步到第ST1304步的動(dòng)作。
在第ST1304步如果判斷都已獲取時(shí),在第ST1305步中,對(duì)由塊控制命令指定的數(shù)據(jù)進(jìn)行塊控制。
在第ST1306步,對(duì)訪問存儲(chǔ)器命令所訪問的數(shù)據(jù)中沒有被塊控制命令指定的數(shù)據(jù),進(jìn)行塊控制,根據(jù)在第ST1303步獲取的塊控制信息,采用圖10、16、20、24所示的任一種方法。
在此,采用圖49(a)對(duì)在第5實(shí)施方案中獲取的塊控制命令信息進(jìn)行說明。圖49(a)所示的塊控制命令信息,在每次讀取塊控制命令時(shí)制作一條。塊控制命令信息,包括保存由塊控制命令所指定的數(shù)據(jù)的存儲(chǔ)器地址信息、以及表示下一塊控制命令信息的保存場所的地址信息。通過具有表示下一塊控制命令信息的保存場所的地址信息,所有塊控制命令信息連接成列表結(jié)構(gòu)。表示下一塊控制命令信息的保存場所的地址信息,在制作下一塊控制命令信息的時(shí)刻被登錄。
然后,參照?qǐng)D29說明獲取圖49(a)所示塊控制命令信息的動(dòng)作。
e93是記述訪問存儲(chǔ)器命令以及塊控制命令的輸入程序的一例。e99是根據(jù)塊控制命令e93-1獲取的塊控制命令信息。在塊控制命令e93-1中由于指定了將數(shù)據(jù)L1和數(shù)據(jù)L2分配在不同的塊中,在塊控制命令信息e99的存儲(chǔ)器地址信息中,登錄保存了數(shù)據(jù)L1的存儲(chǔ)器的地址_L1、以及保存了數(shù)據(jù)L2的存儲(chǔ)器的地址_L2。
e100是根據(jù)塊控制命令e93-12獲取的塊控制命令信息。在塊控制命令e93-12中由于指定了將數(shù)據(jù)L5和數(shù)據(jù)L6分配在不同的塊中,在塊控制命令信息e100的存儲(chǔ)器地址信息中,登錄保存了數(shù)據(jù)L5的存儲(chǔ)器的地址_L5、以及保存了數(shù)據(jù)L6的存儲(chǔ)器的地址_L6。另外,塊控制命令信息e100,與塊控制命令信息e99連接。
這樣,制作成由塊控制命令信息e99、e100構(gòu)成的、塊控制命令信息列表e101。
然后,參照?qǐng)D30具體說明獲取圖29所示的塊控制命令信息的動(dòng)作。圖30表示獲取圖49(a)所示塊控制命令信息的動(dòng)作流程圖,相當(dāng)于圖28的第ST1302步。
在第ST1400步,根據(jù)塊控制命令,獲取保存了指定被分配在不同塊中的數(shù)據(jù)的存儲(chǔ)器的地址信息。
在第ST1401步,將在第ST1400步獲取的存儲(chǔ)器地址信息登錄在塊控制命令信息中,連接成塊控制命令信息列表。
然后,作為第5實(shí)施方案中的塊控制方法,采用圖31說明根據(jù)塊控制命令指定被分配在不同塊中的數(shù)據(jù)時(shí)的塊控制方法。
e101是塊控制命令信息列表。e99以及e100是構(gòu)成塊控制命令信息列表e101的塊控制命令信息。
e105以及e106是根據(jù)塊控制命令信息e99以及e100制作的塊控制命令用塊分配組信息。
在此,采用圖50(a)對(duì)在第5實(shí)施方案中制作的塊控制命令用塊分配組信息進(jìn)行說明。在第5實(shí)施方案中,制作成圖50(a)所示的塊控制命令用塊分配組信息。圖50(a)所示的塊控制命令用塊分配組信息,保存根據(jù)塊控制命令信息,按照保存了分配在同一塊的數(shù)據(jù)的存儲(chǔ)器地址分在同一組中、保存了分配在不同塊的數(shù)據(jù)的存儲(chǔ)器地址分在不同組中進(jìn)行分組的結(jié)果信息、以及表示下一塊分配組信息的保存場所的地址信息。在此,假定組數(shù)和塊數(shù)相等。另外,通過具有表示下一塊分配組信息的保存場所的地址信息,所有塊控制命令用塊分配組信息連接成列表結(jié)構(gòu)。表示下一塊分配組信息的保存場所的地址信息,在制作下一塊分配組信息的時(shí)刻被登錄。
這樣,根據(jù)塊控制命令信息e99制作的塊控制命令用塊分配組信息e105,表示按照在塊控制命令信息e99的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L1為Gr1,存儲(chǔ)器地_L2為Gr2那樣,將保存了數(shù)據(jù)L1的存儲(chǔ)器和保存了數(shù)據(jù)L2的存儲(chǔ)器分組在不同組中后的結(jié)果。
然后,根據(jù)塊控制命令信息e100制作的塊控制命令用塊分配組信息e106,表示按照在塊控制命令信息e100的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L5為Gr1,存儲(chǔ)器地址_L6為Gr2那樣,將保存了數(shù)據(jù)L5的存儲(chǔ)器和保存了數(shù)據(jù)L6的存儲(chǔ)器分組在不同組中后的結(jié)果。塊控制命令用塊分配組信息e106與塊控制命令用塊分配組信息e105連接。
這樣,制作成由塊控制命令用塊分配組信息e105、e106構(gòu)成的塊控制命令用塊分配組信息列表e107,從在塊控制命令用塊分配組信息列表e107的先頭的塊控制命令用塊分配組信息e105中登錄的存儲(chǔ)器地址所表示的數(shù)據(jù)開始依次進(jìn)行塊分配。
然后,參照?qǐng)D32具體說明圖31所示的針對(duì)塊控制命令的塊控制方法。圖32表示根據(jù)塊控制命令指定分配在不同塊中的數(shù)據(jù)時(shí)的塊控制方法的流程圖,相當(dāng)于圖28的第ST1305步的動(dòng)作。
在第ST1500步,讀取塊控制命令信息列表的先頭。
在第ST1501步,判斷在所讀取的塊控制命令信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址中沒有登錄在塊控制命令用塊分配組信息列表中的存儲(chǔ)器地址是否存在。
在第ST1501步如果判斷沒有登錄在塊控制命令用塊分配組信息列表中的存儲(chǔ)器地址存在時(shí),在第ST1502步,沒有登錄的存儲(chǔ)器地址,作為與在相同塊控制命令信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址所登錄的組不同的組,登錄在塊分配組信息列表中。
在第ST1503步,將讀取后的塊控命令信息從塊控制命令信息列表中刪除。
在第ST1504步,判斷在塊控制命令信息列表中是否存在沒有處理的塊控制命令信息。
在第ST1504步,如果判斷在塊控制命令信息列表中存在沒有處理的塊控制命令信息,返回到第ST1500步,重復(fù)執(zhí)行第ST1500步到第ST1504步的動(dòng)作。
在第ST1504步,如果判斷在塊控制命令信息列表中沒有處理的塊控制命令信息已經(jīng)不存在,在第ST1505步,執(zhí)行塊分配。
然后,對(duì)于相當(dāng)于圖32的第ST1505步的動(dòng)作的塊分配動(dòng)作,采用圖33所示的例子進(jìn)行說明。圖33表示根據(jù)塊控制命令指定分配在不同塊中的數(shù)據(jù)時(shí)的塊分配動(dòng)作的例子。
e107是塊控制命令用塊分配組信息列表。e105以及e106是構(gòu)成塊控制命令用塊分配組信息列表e107的塊控制命令用塊分配組信息。
e111以及e112,是分別保存數(shù)據(jù)的存儲(chǔ)塊,表示根據(jù)塊控制命令指定分配在不同塊中的數(shù)據(jù)的塊分配結(jié)果的一例,是從在塊控制命令用塊分配組信息列表e107的先頭的塊控制命令用塊分配組信息e105中所登錄的存儲(chǔ)器地址所指定的區(qū)域中所保存的數(shù)據(jù)開始依次進(jìn)行塊分配后的結(jié)果。在圖33中,雖然將數(shù)據(jù)L1、數(shù)據(jù)L5分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L2、數(shù)據(jù)L6分配在存儲(chǔ)塊MB2中,也可以將數(shù)據(jù)L2、數(shù)據(jù)L6分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L1、數(shù)據(jù)L5分配在存儲(chǔ)塊MB2中。
然后,采用圖34具體說明圖33所示的塊分配動(dòng)作。圖34表示根據(jù)塊控制命令指定分配在不同塊中的數(shù)據(jù)時(shí)的塊分配動(dòng)作的流程圖,相當(dāng)于圖32的第ST1505步的動(dòng)作。
在第ST1600步,讀取塊控制命令用塊分配組信息列表的先頭。
在第ST1601步,判斷是否可以將在所讀取的塊分配組信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST1601步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST1602步,將所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)集合分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。在第ST1602步進(jìn)行分配時(shí),不出現(xiàn)存儲(chǔ)器塊沖突。
在第ST1601步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST1603步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1603步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1604步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。在第ST1604步進(jìn)行分配時(shí),一部分出現(xiàn)存儲(chǔ)塊沖突。
在第ST1603步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1605步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1605步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1606步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,在第ST1606步進(jìn)行分配時(shí),出現(xiàn)存儲(chǔ)塊沖突。
在第ST1605步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1607步進(jìn)行出錯(cuò)處理。
在第ST1608步,判斷在塊控制命令用塊分配組信息列表中是否存在下一信息。
如果在第ST1608步判斷為存在時(shí),返回到第ST1600步,重復(fù)執(zhí)行第ST1600步到第ST1608步的動(dòng)作。
依據(jù)以上說明的第5實(shí)施方案,可以將用戶指定的數(shù)據(jù)集合,優(yōu)先在不出現(xiàn)存儲(chǔ)塊沖突的情況下進(jìn)行塊分配。
(第6實(shí)施方案)在第6實(shí)施方案中,對(duì)在塊控制命令中設(shè)定了進(jìn)行塊控制的優(yōu)先度時(shí)的塊分配方法。在第6實(shí)施方案中,采用圖28所示的方法。在此,對(duì)于在第6實(shí)施方案中獲取的塊控制命令信息采用圖49(b)進(jìn)行說明。圖49(b)所示的塊控制命令信息,在每次塊控制命令時(shí)制作一條。塊控制命令信息,包括保存由塊控制命令指定的數(shù)據(jù)的存儲(chǔ)器地址信息、塊控制優(yōu)先度信息、以及表示下一塊控制命令信息的保存場所的地址信息。通過具有表示下一塊控制命令信息的保存場所的地址信息,所有塊控制命令信息連接成列表結(jié)構(gòu)。表示下一塊控制命令信息的保存場所的地址信息,在制作下一塊控制命令信息的時(shí)刻被登錄。
然后,采用圖35說明獲取圖49(b)所示塊控制命令信息的動(dòng)作。
e113,是記述訪問存儲(chǔ)器以及塊控制命令的輸入程序的一例。輸入程序e113相當(dāng)于將輸入程序e93內(nèi)的塊控制命令e93-1變更成帶優(yōu)先度的塊控制命令e113-1、塊控制命令e93-12變更成帶優(yōu)先度的塊控制命令e113-12后的輸入程序。
e114,是根據(jù)塊控制命令e113-1獲取的塊控制命令信息。在塊控制命令e113-1中由于指定了以優(yōu)先度10將數(shù)據(jù)L1和數(shù)據(jù)L2分配在不同的塊中,在塊控制命令信息e114的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L1的存儲(chǔ)器的地址_L1、以及保存數(shù)據(jù)L2的存儲(chǔ)器的地址_L2進(jìn)行登錄,將塊分配優(yōu)先度登錄為10。
e115,是根據(jù)塊控制命令e113-12獲取的塊控制命令信息。在塊控制命令e113-12中由于指定了以優(yōu)先度20將數(shù)據(jù)L5和數(shù)據(jù)L6分配在不同的塊中,在塊控制命令信息e115的存儲(chǔ)器地址信息中,將保存數(shù)據(jù)L5的存儲(chǔ)器的地址_L5、以及保存數(shù)據(jù)L6的存儲(chǔ)器的地址_L6進(jìn)行登錄,將塊分配優(yōu)先度登錄為20。另外,塊控制命令信息e115與塊控制命令信息e114連接。
這樣,制作成由塊控制命令信息e114、e115構(gòu)成的塊控制命令信息列表e116。
然后,采用圖36具體說明獲取圖35所示的塊控制命令信息的動(dòng)作。圖36表示獲取圖49(b)所示塊控制命令信息的動(dòng)作流程圖,相當(dāng)于圖28的第ST1302步的動(dòng)作。
在第ST1700步,獲取保存了指定被分配在不同塊中的數(shù)據(jù)的存儲(chǔ)器地址信息。
在第ST1701步,以所指定的優(yōu)先度作為塊控制優(yōu)先度。
在第ST1702步,將在第ST1700步獲取的存儲(chǔ)器地址信息、以及在第ST1701步獲取的塊控制優(yōu)先度,登錄在塊控制命令信息中,連接成塊控制命令信息列表。
然后,作為第6實(shí)施方案中的塊控制方法,采用圖37說明在塊控制命令中設(shè)定了進(jìn)行塊控制的優(yōu)先度時(shí)的塊控制方法。
e116是塊控制命令信息列表。e118是按照塊控制優(yōu)先度高低的順序?qū)K控制命令信息列表e116排序后的塊控制命令信息列表。e119以及e120是構(gòu)成塊控制命令信息列表e118的塊控制命令信息。e121以及e122是根據(jù)塊控制命令信息e119以及e120制作的塊控制命令用塊分配組信息。
在此,采用圖50(b)對(duì)在第6實(shí)施方案中制作的塊控制命令用塊分配組信息進(jìn)行說明。在第6實(shí)施方案中,制作成圖50(b)所示的塊控制命令用塊分配組信息。
圖50(b)所示的塊控制命令用塊分配組信息,保存根據(jù)塊控制命令信息,按照保存了分配在同一塊的數(shù)據(jù)的存儲(chǔ)器地址分在同一組中、保存了分配在不同塊的數(shù)據(jù)的存儲(chǔ)器地址分在不同組中進(jìn)行分組的結(jié)果信息、進(jìn)行塊分配的優(yōu)先度信息、以及表示下一塊分配組信息的保存場所的地址信息。在此,假定組數(shù)和塊數(shù)相等。另外,通過具有表示下一塊分配組信息的保存場所的地址信,所有塊控制命令用塊分配組信息連接成列表結(jié)構(gòu)。表示下一塊分配組信息的保存場所的地址信,在制作下一塊分配組信息b的時(shí)刻被登錄。
這樣,根據(jù)塊控制命令信息e119制作的塊控制命令用塊分配組信息e121,表示按照在塊控制命令信息e119的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L5為Gr1,存儲(chǔ)器地址_L6為Gr2那樣,將保存了數(shù)據(jù)L5的存儲(chǔ)器和保存了數(shù)據(jù)L6的存儲(chǔ)器分組在不同組中后的結(jié)果。另外,塊分配優(yōu)先度,登錄成在塊控制命令信息e119中登錄的優(yōu)先度。
然后,根據(jù)塊控制命令信息e120制作的塊控制命令用塊分配組信息e122,表示按照在塊控制命令信息e120的存儲(chǔ)器地址信息中登錄的存儲(chǔ)器地址_L1為Gr1,存儲(chǔ)器地址_L2為Gr2那樣,將保存了數(shù)據(jù)L1的存儲(chǔ)器和保存了數(shù)據(jù)L2的存儲(chǔ)器分組在不同組中后的結(jié)果。另外,塊分配優(yōu)先度,登錄成在塊控制命令信息e120中登錄的優(yōu)先度。塊控制命令用塊分配組信息e122與塊控制命令用塊分配組信息e121連接。
這樣,制作成由塊控制命令用塊分配組信息e121、e122構(gòu)成的塊控制命令用塊分配組信息列表e123。從在塊控制命令用塊分配組信息列表e123的先頭的塊控制命令用塊分配組信息e121中登錄的存儲(chǔ)器地址所指示的數(shù)據(jù)開始依次進(jìn)行塊分配。
然后,采用圖38具體說明圖37所示針對(duì)塊控制命令的塊控制方法。圖38表示在塊控制命令中設(shè)定了進(jìn)行塊控制的優(yōu)先度時(shí)的塊控制方法的流程圖,相當(dāng)于圖28的第ST1305步。
在第ST1800步,按照塊控制優(yōu)先度高低的順序?qū)K控制命令信息列表進(jìn)行排序。
在第ST1801步,讀取塊控制命令信息列表的先頭。
在第ST1802步,判斷在所讀取的塊控制命令信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址中沒有登錄在塊控制命令用塊分配組信息列表中的存儲(chǔ)器地址是否存在。
在第ST1802步如果判斷沒有登錄在塊控制命令用塊分配組信息列表b中的存儲(chǔ)器地址存在時(shí),在第ST1803步,沒有登錄的存儲(chǔ)器地址,作為與在相同塊控制命令信息內(nèi)的存儲(chǔ)器地址信息所表示的存儲(chǔ)器地址所登錄的組不同的組,登錄在塊分配組信息列表中。
在第ST1804步,將讀取后的塊控命令信息從塊控制命令信息列表中刪除。
在第ST1805步,判斷在塊控制命令信息列表中是否存在沒有處理的塊控制命令信息。
在第ST1805步,如果判斷在塊控制命令信息列表中存在沒有處理的塊控制命令信息,返回到第ST1801步,重復(fù)執(zhí)行第ST1801步到第ST1806步的動(dòng)作。
在第ST1805步,如果判斷在塊控制命令信息列表中沒有處理的塊控制命令信息已經(jīng)不存在,在第ST1806步,執(zhí)行塊分配。
然后,對(duì)于相當(dāng)于圖38的第ST1806步的動(dòng)作的塊分配動(dòng)作,采用圖39所示的例子進(jìn)行說明。圖39表示在塊控制命令中設(shè)定了進(jìn)行塊控制的優(yōu)先度時(shí)的塊分配動(dòng)作的例子。
e123是塊控制命令用塊分配組信息列表。e121以及e122是構(gòu)成塊控制命令用塊分配組信息列表e123的塊控制命令用塊分配組信息。
e127以及e128,是分別保存數(shù)據(jù)的存儲(chǔ)塊,表示根據(jù)塊控制命令指定分配在不同塊中的數(shù)據(jù)的塊分配結(jié)果的一例,是從在塊控制命令用塊分配組信息列表的先頭的塊控制命令用塊分配組信息e121中所登錄的存儲(chǔ)器地址所指定的區(qū)域中所保存的數(shù)據(jù)開始依次進(jìn)行塊分配后的結(jié)果。在圖39中,雖然將數(shù)據(jù)L5、數(shù)據(jù)L1分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L6、數(shù)據(jù)L2分配在存儲(chǔ)塊MB2中,也可以將數(shù)據(jù)L6、數(shù)據(jù)L2分配在存儲(chǔ)塊MB1中,將數(shù)據(jù)L5、數(shù)據(jù)L1分配在存儲(chǔ)塊MB2中。
然后,采用圖40具體說明圖39所示的塊分配動(dòng)作。圖40表示在塊控制命令中設(shè)定了進(jìn)行塊控制的優(yōu)先度時(shí)的塊分配動(dòng)作的流程圖,相當(dāng)于圖38的第ST1806步的動(dòng)作。
在第ST1900步,讀取塊控制命令用塊分配組信息列表的先頭。
在第ST1901步,判斷是否可以將在所讀取的塊分配組信息中分組后的存儲(chǔ)器地址所指示的數(shù)據(jù),分別對(duì)于各組,不分配在與分在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)相同的塊中而獨(dú)立分配在塊中。
在第ST1901步,當(dāng)判斷可以獨(dú)立分配在塊中時(shí),在第ST1902步,將所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)集合分別對(duì)于各組獨(dú)立被分配在塊中。在此,所分組的存儲(chǔ)器地址所指示的數(shù)據(jù)中有已經(jīng)進(jìn)行塊分配的數(shù)據(jù)時(shí),將沒有進(jìn)行塊分配的數(shù)據(jù)分配在與已經(jīng)進(jìn)行塊分配的數(shù)據(jù)所分配的塊不同的另外的塊中。在第ST1902步進(jìn)行分配時(shí),不出現(xiàn)存儲(chǔ)器塊沖突。
在第ST1901步,當(dāng)判斷不可以獨(dú)立分配在塊中時(shí),在第ST1903步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1903步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1904步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中。在第ST1904步進(jìn)行分配時(shí),一部分出現(xiàn)存儲(chǔ)塊沖突。
在第ST1903步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)的一部分與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1905步,判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,是否可以將所有的數(shù)據(jù)分配在塊中。
在第ST1905步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1906步,將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,在第ST1906步進(jìn)行分配時(shí),出現(xiàn)存儲(chǔ)塊沖突。
在第ST1905步,如果判斷通過將分組在某一組中的存儲(chǔ)器地址所指示的數(shù)據(jù)與分組在其它組中的存儲(chǔ)器地址所指示的數(shù)據(jù)分配在同一塊中,不可以將所有的數(shù)據(jù)分配在塊中時(shí),在第ST1907步進(jìn)行出錯(cuò)處理。
在第ST1908步,判斷在塊控制命令用塊分配組信息列表中是否存在下一信息。
如果在第ST1908步判斷為存在時(shí),返回到第ST1900步,重復(fù)執(zhí)行第ST1900步到第ST1908步的動(dòng)作。
依據(jù)以上說明的第6實(shí)施方案,在用戶指定的數(shù)據(jù)集合中,通過設(shè)定優(yōu)先度。對(duì)于特別重要的數(shù)據(jù)可以在不出現(xiàn)存儲(chǔ)塊沖突的情況下進(jìn)行塊分配。
(第7實(shí)施方案)在第7實(shí)施方案中,對(duì)采用塊指定命令的塊分配方法進(jìn)行說明。采用圖41對(duì)通過塊指定命令以用戶記述的方法對(duì)從實(shí)施方案1到實(shí)施方案4所示功能進(jìn)行支援的方法進(jìn)行說明。圖41表示通過塊指定命令對(duì)某個(gè)數(shù)據(jù)指定所分配的塊時(shí)、作為塊分配最簡單的例子以處理器的存儲(chǔ)塊數(shù)為2的情況的塊分配的例子。
e129是記述訪問存儲(chǔ)器命令、塊控制命令、塊指定命令的輸入文件的一例,相當(dāng)于在輸入文件e93中追加了塊指定命令e129-12、e129-13的情況。
塊指定命令e129-12,是指定將數(shù)據(jù)L5分配在存儲(chǔ)塊MB1中的命令,所指定的數(shù)據(jù)L5被優(yōu)選分配在存儲(chǔ)塊MB1中。
塊指定命令e129-13,是指定將數(shù)據(jù)L6分配在存儲(chǔ)塊MB2中的命令,所指定的數(shù)據(jù)L6被優(yōu)選分配在存儲(chǔ)塊MB2中。
這樣,由塊指定命令所指定的數(shù)據(jù)L5、L6被優(yōu)選分配在塊中后的結(jié)果為e130以及e131。
在將由塊指定命令所指定的數(shù)據(jù)被分配在所指定的塊中之后,將由塊控制命令被指定分配在不同的塊中的數(shù)據(jù)L1、L2分配在塊中。由塊控制命令所指定的數(shù)據(jù)被分配在所指定的塊中之后的存儲(chǔ)塊的一例為e132以及133。
在將塊控制命令指定的數(shù)據(jù)分配在塊中后,將輸入文件e129所訪問的數(shù)據(jù)中既沒有被塊指定命令也沒有被塊控制命令指定的數(shù)據(jù)L3、L4分配在塊中。將既沒有被塊指定命令也沒有被塊控制命令指定的數(shù)據(jù)分配在塊中后的存儲(chǔ)器塊的一例是e134以及e135。
這樣,輸入文件e129所訪問的數(shù)據(jù)L1~L6均被分配在塊中后的結(jié)果的存儲(chǔ)塊成為e134、e135。
然后,對(duì)圖41所示的采用塊指定命令進(jìn)行塊分配的信息處理方法進(jìn)行說明。圖42表示采用塊指定命令對(duì)某個(gè)數(shù)據(jù)指定所分配的塊時(shí)所進(jìn)行的塊控制處理的流程圖。
在第ST2000步,讀取1條塊指定命令、塊控制命令、或者由運(yùn)算處理部12進(jìn)行的訪問存儲(chǔ)器命令。
在第ST2001步,判斷所讀取的命令文是否是塊指定命令。
在第ST2001步如果判斷所讀取的命令文是塊指定命令,在第ST2002步,對(duì)塊指定命令,獲取塊指定命令進(jìn)行的塊控制中所需要的信息(以下記述為塊指定命令信息)。
在第ST2001步如果判斷所讀取的命令文不是塊指定命令,在第ST2003步,判斷所讀取的命令文是否是塊控制命令。
在第ST2003步如果判斷所讀取的命令文是塊控制命令,在第ST2004步,對(duì)塊控制命令,獲取塊控制命令信息。在第ST2004步,采用圖29以及圖35所示的方法。
在第ST2003步如果判斷所讀取的命令文不是塊控制命令,在第ST2005步,對(duì)所讀取的命令文,獲取塊控制信息。在第ST2005步,采用圖7以及圖13所示的方法。
在第ST2006步,判斷是否所有的塊指定命令、對(duì)所有的塊控制命令、以及對(duì)所有的訪問存儲(chǔ)器命令,獲取了塊指定命令信息、塊控制命令信息、以及塊控制信息。
在第ST2006步如果判斷沒有都獲取時(shí),返回到第ST2000步,重復(fù)執(zhí)行第ST2000步到第ST2006步的動(dòng)作。
在第ST2006步如果判斷都已獲取時(shí),在第ST2007步,對(duì)由塊指定命令指定的數(shù)據(jù)進(jìn)行塊分配。
在第ST2008步,對(duì)由塊控制命令指定的數(shù)據(jù)進(jìn)行塊控制。在第ST2008步,根據(jù)在第ST2004步獲取的塊控制命令信息,采用圖32以及圖38所示的方法。
在第ST2009步,對(duì)訪問存儲(chǔ)器命令所訪問的數(shù)據(jù)中既沒有被塊指定命令也沒有被塊控制命令指定的數(shù)據(jù),進(jìn)行塊控制。在第ST2009步,根據(jù)在第ST2009步獲取的塊控制信息,采用圖10、16、20、24所示的任一種方法。
在此,采用圖51對(duì)在第7實(shí)施方案中獲取的塊控制指定信息進(jìn)行說明。圖51所示的塊指定命令信息,在每次讀取塊控制命令時(shí)登錄所指定的數(shù)據(jù)。塊指定命令信息,包括對(duì)某個(gè)數(shù)據(jù)指定分配在該塊中的數(shù)據(jù)的信息。
然后,采用圖43所示的例子說明獲取圖51所示塊指定命令信息的動(dòng)作。
e129是記述訪問存儲(chǔ)器命令、塊控制命令、塊指定命令的輸入程序的一例。e137是根據(jù)塊指定命令e129-12以及e129-13獲取的塊指定命令信息。由于由塊指定命令e129-12指定將數(shù)據(jù)L5分配在存儲(chǔ)塊MB1中,由塊指定命令e129-13指定將數(shù)據(jù)L6分配在存儲(chǔ)塊MB2中,在塊指定命令信息e37的存儲(chǔ)器地址信息中,作為分配在存儲(chǔ)塊MB1的數(shù)據(jù)的存儲(chǔ)器地址,登錄保存了數(shù)據(jù)L5的存儲(chǔ)器的地址_L5、作為分配在存儲(chǔ)塊MB2的數(shù)據(jù)的存儲(chǔ)器地址,登錄保存了數(shù)據(jù)L6的存儲(chǔ)器的地址_L6。
然后,采用圖44具體說明獲取圖43所示的塊指定命令信息的動(dòng)作。圖44表示獲取圖51所示塊指定命令信息的動(dòng)作流程圖,相當(dāng)于圖42的第ST2002步。
在第ST2100步,獲取在指定的塊中保存了指定的數(shù)據(jù)的存儲(chǔ)器的地址信息。
在第ST2101步,將在第ST2100步獲取的存儲(chǔ)器地址信息登錄在塊指定命令信息中。
然后,作為第7實(shí)施方案中的塊控制方法,采用圖45說明采用塊指定命令對(duì)某個(gè)數(shù)據(jù)指定所分配的塊時(shí)所進(jìn)行的塊分配的動(dòng)作。
e137是塊指定命令信息。e139以及e140是保存數(shù)據(jù)的存儲(chǔ)塊,采用塊指定命令在所指定的分配塊中進(jìn)行數(shù)據(jù)的塊分配后的結(jié)果。
然后,采用圖46具體說明圖45所示的塊分配的動(dòng)作。圖46表示采用塊指定命令對(duì)某個(gè)數(shù)據(jù)指定所分配的塊時(shí)所進(jìn)行的塊分配方法的流程圖,相當(dāng)于圖42的第ST2007步的動(dòng)作。
在第ST2200步,讀取塊指定命令信息。
在第ST2201步,判斷在塊指定命令信息內(nèi)的存儲(chǔ)器地址信息中登錄的所有存儲(chǔ)器地址所指示的數(shù)據(jù),是否可以分配在指定的塊中。
在第ST2201步,如果判斷所有均可分配時(shí),在第ST2202步,將在塊指定命令信息內(nèi)的存儲(chǔ)器地址信息中登錄的所有存儲(chǔ)器地址所指示的數(shù)據(jù)分別分配在所指定的塊中。
在第ST2201步,如果判斷不能對(duì)所有數(shù)據(jù)進(jìn)行分配時(shí),在第ST2203步進(jìn)行出錯(cuò)處理。
依據(jù)以上說明的第7實(shí)施方案,可以將用戶指定了分配塊的數(shù)據(jù)優(yōu)先分配在所指定的塊中。
如上所述,通過獲取由訪問存儲(chǔ)器命令同時(shí)要訪問的多個(gè)數(shù)據(jù)的信息,將同時(shí)要訪問的多個(gè)數(shù)據(jù)分配在不同的塊中,可以自動(dòng)進(jìn)行不出現(xiàn)存儲(chǔ)器沖突的塊分配。另外,通過塊控制命令、以及塊指定命令,可以進(jìn)行用戶所希望的塊分配。
本發(fā)明,通過獲取由訪問存儲(chǔ)器命令同時(shí)要訪問的多個(gè)數(shù)據(jù)的信息,將同時(shí)要訪問的多個(gè)數(shù)據(jù)分配在不同的塊中,可以自動(dòng)進(jìn)行不出現(xiàn)存儲(chǔ)器沖突的塊分配,可以實(shí)現(xiàn)生產(chǎn)效率高的信息處理裝置。
另外,通過利用塊控制命令、以及塊指定命令進(jìn)行用戶所希望的塊分配,可以實(shí)現(xiàn)能適應(yīng)用戶的希望的信息處理裝置。
權(quán)利要求
1.一種信息處理方法,其特征是包括獲取由運(yùn)算命令訪問存儲(chǔ)器的數(shù)據(jù)的信息的步驟(a)、和將由運(yùn)算命令同時(shí)訪問存儲(chǔ)器的多個(gè)數(shù)據(jù)分配在不同的塊中的步驟(b)。
2.根據(jù)權(quán)利要求1所述的信息處理方法,其特征是進(jìn)一步包括設(shè)定塊分配優(yōu)先度的步驟(c),在所述步驟(b)中,從由所述步驟(c)設(shè)定的優(yōu)先度高的數(shù)據(jù)開始分配在塊中。
3.根據(jù)權(quán)利要求2所述的信息處理方法,其特征是在所述步驟(c)中,根據(jù)重復(fù)執(zhí)行運(yùn)算命令的循環(huán)次數(shù)設(shè)定塊分配優(yōu)先度。
4.根據(jù)權(quán)利要求2所述的信息處理方法,其特征是在所述步驟(c)中,根據(jù)數(shù)據(jù)的使用頻度設(shè)定塊分配優(yōu)先度。
5.根據(jù)權(quán)利要求2所述的信息處理方法,其特征是進(jìn)一步包括檢索與由所述步驟(c)設(shè)定的優(yōu)先度高的數(shù)據(jù)同時(shí)訪問的數(shù)據(jù)的步驟(d),在所述步驟(b)中,由所述步驟(d)檢索的數(shù)據(jù)被優(yōu)先分配在塊中。
6.一種信息處理方法,其特征是包括讀取指定分配在不同塊中的數(shù)據(jù)的命令的步驟(a)、和將被指定要分配在不同塊中的數(shù)據(jù)分配在不同塊中的步驟(b)。
7.根據(jù)權(quán)利要求6所述的信息處理方法,其特征是在所述步驟(b)中,將被指定要分配在不同塊中的數(shù)據(jù)優(yōu)先分配在塊中。
8.根據(jù)權(quán)利要求7所述的信息處理方法,其特征是進(jìn)一步包括在被指定要分配在不同塊中的數(shù)據(jù)中設(shè)定塊分配優(yōu)先度的步驟(c),在所述步驟(b)中,從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中。
9.一種信息處理方法,其特征是包括讀取對(duì)數(shù)據(jù)指定所分配的塊的命令的步驟(a)、和將指定了所分配的塊的數(shù)據(jù)分配在所指定的塊中的步驟(b)。
10.根據(jù)權(quán)利要求9所述的信息處理方法,其特征是在所述步驟(b)中,將指定了所分配的塊的數(shù)據(jù)優(yōu)先分配在所指定的塊中。
11.一種信息處理裝置,其特征是獲取由運(yùn)算命令訪問存儲(chǔ)器的數(shù)據(jù)的信息,分配在不同的塊中。
12.根據(jù)權(quán)利要求11所述的信息處理裝置,其特征是從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中。
13.根據(jù)權(quán)利要求12所述的信息處理裝置,其特征是將重復(fù)執(zhí)行運(yùn)算命令的循環(huán)次數(shù)作為塊分配優(yōu)先度設(shè)定。
14.根據(jù)權(quán)利要求12所述的信息處理裝置,其特征是將數(shù)據(jù)的使用頻度作為塊分配優(yōu)先度設(shè)定。
15.根據(jù)權(quán)利要求12所述的信息處理裝置,其特征是與塊分配優(yōu)先度高的數(shù)據(jù)同時(shí)存儲(chǔ)訪問的數(shù)據(jù)也優(yōu)先被分配在塊中。
16.一種信息處理裝置,其特征是可以指定分配在不同塊中的數(shù)據(jù)。
17.根據(jù)權(quán)利要求16所述的信息處理裝置,其特征是將被指定要分配在不同塊中的數(shù)據(jù)優(yōu)先分配在塊中。
18.根據(jù)權(quán)利要求17所述的信息處理裝置,其特征是在被指定要分配在不同塊中的數(shù)據(jù)中指定塊分配優(yōu)先度,從塊分配優(yōu)先度高的數(shù)據(jù)開始分配在塊中。
19.一種信息處理裝置,其特征是對(duì)數(shù)據(jù)可以指定所分配的塊。
20.根據(jù)權(quán)利要求19所述的信息處理裝置,其特征是將指定了所分配的塊的數(shù)據(jù)優(yōu)先分配在所指定的塊中。
全文摘要
一種信息處理方法,通過獲取同時(shí)要訪問的多個(gè)數(shù)據(jù)的信息,并將獲取的數(shù)據(jù)分配在不同的塊中,可以自動(dòng)地進(jìn)行不出現(xiàn)存儲(chǔ)塊沖突的塊分配。另外,通過指定將數(shù)據(jù)分配在不同的塊中的命令、或指定分配數(shù)據(jù)的塊的命令,也可以適應(yīng)用戶的希望。解決了以往的在使用同時(shí)訪問多個(gè)數(shù)據(jù)時(shí),為了不出現(xiàn)存儲(chǔ)塊沖突,而必須由用戶手動(dòng)將數(shù)據(jù)分配在不同的塊中,非常費(fèi)時(shí)的問題。
文檔編號(hào)G06F9/32GK1512364SQ20031011410
公開日2004年7月14日 申請(qǐng)日期2003年11月5日 優(yōu)先權(quán)日2002年11月6日
發(fā)明者宮地涼子, 橋口涉 申請(qǐng)人:松下電器產(chǎn)業(yè)株式會(huì)社