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

推測(cè)性數(shù)據(jù)流出磁盤(pán)驅(qū)動(dòng)器和系統(tǒng)的制作方法

文檔序號(hào):6760660閱讀:257來(lái)源:國(guó)知局
專利名稱:推測(cè)性數(shù)據(jù)流出磁盤(pán)驅(qū)動(dòng)器和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明總體上涉及數(shù)字?jǐn)?shù)據(jù)存儲(chǔ),具體地說(shuō)涉及推測(cè)數(shù)據(jù)讀出。更具體地說(shuō),本發(fā)明涉及一種用于從磁盤(pán)驅(qū)動(dòng)器推測(cè)性地讀出數(shù)據(jù)的方法,該數(shù)據(jù)是由讀/寫(xiě)磁頭的位置和以前請(qǐng)求的數(shù)據(jù)的性質(zhì)確定的。
背景技術(shù)
數(shù)字計(jì)算機(jī)執(zhí)行兩種主要內(nèi)部功能。其存儲(chǔ)軟件(即,指令和數(shù)據(jù)存儲(chǔ)在寄存器、緩沖器、高速緩沖存儲(chǔ)器、主存儲(chǔ)器和輔助存儲(chǔ)器中)并操縱該軟件(即計(jì)算機(jī)執(zhí)行算術(shù)運(yùn)算、試探運(yùn)算、數(shù)據(jù)轉(zhuǎn)換和在諸如加法器、移位器等的適當(dāng)執(zhí)行單元中的其它過(guò)程等)。雖然計(jì)算機(jī)的處理速度多半是基于中央處理器和內(nèi)部總線速度,限制計(jì)算機(jī)速度的一個(gè)主要因素是將指令和數(shù)據(jù)提供給執(zhí)行單元的時(shí)間長(zhǎng)度。該時(shí)間長(zhǎng)度在部分上是包含所需指令/數(shù)據(jù)的存儲(chǔ)器的分層結(jié)構(gòu)位置和實(shí)際速度的函數(shù)。
存儲(chǔ)器的分層結(jié)構(gòu)位置是指該存儲(chǔ)器在邏輯上與執(zhí)行單元的靠近程度。數(shù)據(jù)/指令不能跳過(guò)分層結(jié)構(gòu)的層,而是必須從一層通過(guò)下一層,直到其到達(dá)該執(zhí)行單元。
存儲(chǔ)器的實(shí)際速度是存儲(chǔ)器的物理結(jié)構(gòu)的函數(shù)。半導(dǎo)體中的存儲(chǔ)器是受電路速度限制的,而輔助存儲(chǔ)器中的存儲(chǔ)器速度卻是主要受磁盤(pán)和/或讀/寫(xiě)磁頭的機(jī)械運(yùn)動(dòng)限制的。
圖1示出了典型的存儲(chǔ)器分層結(jié)構(gòu)。在存儲(chǔ)器分層結(jié)構(gòu)中越高的存儲(chǔ)器(離中央處理單元-CPU越近)傾向于越快、越昂貴并且容量越小,而在存儲(chǔ)器分層結(jié)構(gòu)中的越低的存儲(chǔ)器傾向于越慢、越便宜并且容量越大。例如,在計(jì)算機(jī)100中,CPU102包括處理器核心104,該處理器核心104通常具有板上第1層(L1)高速緩沖存儲(chǔ)器108。L1高速緩沖存儲(chǔ)器108通常由非??焖俚撵o態(tài)隨機(jī)存儲(chǔ)器(SRAM)組成。(計(jì)算機(jī)核心104還具有板上隊(duì)列106,板上隊(duì)列106是極快的寄存器/鎖存器,其將指令/數(shù)據(jù)傳到處理器核心104中的執(zhí)行單元。但是,雖然隊(duì)列、寄存器和鎖存器主要存儲(chǔ)指令和數(shù)據(jù),但它們通常并不與存儲(chǔ)器分層結(jié)構(gòu)相關(guān)。)另外,第2層(L2)高速緩沖存儲(chǔ)器110在CPU102中,但不在處理器核心104中。第3層(L3)高速緩沖存儲(chǔ)器112不在CPU102的板上。L2高速緩沖存儲(chǔ)器110和L3高速緩沖存儲(chǔ)器112,象L1高速緩沖存儲(chǔ)器108一樣,通常是SRAM的。L3高速緩沖存儲(chǔ)器112通過(guò)系統(tǒng)總線111連接到系統(tǒng)存儲(chǔ)器113,系統(tǒng)存儲(chǔ)器113通常是動(dòng)態(tài)隨機(jī)存儲(chǔ)器(DRAM),其比SRAM稍慢。系統(tǒng)存儲(chǔ)器113通過(guò)輸入/輸出(I/O)總線114連接到輔助存儲(chǔ)器116,輔助存儲(chǔ)器116可以是軟盤(pán)驅(qū)動(dòng)器、壓縮光盤(pán)-只讀存儲(chǔ)器(CD-ROM)驅(qū)動(dòng)器、數(shù)字視盤(pán)(DVD)驅(qū)動(dòng)器、Zip驅(qū)動(dòng)器、或硬盤(pán)驅(qū)動(dòng)器存儲(chǔ)設(shè)備。
輔助存儲(chǔ)器比存儲(chǔ)器分層結(jié)構(gòu)中的其它存儲(chǔ)器慢得多。這主要是因?yàn)檩o助存儲(chǔ)器有機(jī)械部件,而其它存儲(chǔ)器沒(méi)有。也就是說(shuō),其它存儲(chǔ)器主要受組成該存儲(chǔ)器的晶體管導(dǎo)通和截止所用的時(shí)間的限制,而輔助存儲(chǔ)器需要讀寫(xiě)磁頭、光學(xué)傳感器、或其它機(jī)械設(shè)備的物理運(yùn)動(dòng)來(lái)從旋轉(zhuǎn)存儲(chǔ)介質(zhì)(硬盤(pán)、CD-ROM、軟盤(pán)、DVD等)讀出數(shù)據(jù)。
通常,數(shù)據(jù)以代表數(shù)據(jù)的邏輯組的單位從輔助存儲(chǔ)器設(shè)備中檢索出。例如,通過(guò)首先規(guī)定第一數(shù)據(jù)塊的邏輯塊地址(LBA),以及記錄中的塊數(shù),數(shù)據(jù)從磁盤(pán)驅(qū)動(dòng)器中檢索出。信息然后從磁盤(pán)驅(qū)動(dòng)器流到磁盤(pán)控制器,直到最后一個(gè)邏輯塊發(fā)送出。磁盤(pán)然后等待下一個(gè)讀命令,該讀命令具有其LBA和要傳送的塊數(shù)。該方法和系統(tǒng)主要通過(guò)存儲(chǔ)設(shè)備的機(jī)械特性限制數(shù)據(jù)傳送的速度。這樣,在磁盤(pán)驅(qū)動(dòng)器中,當(dāng)驅(qū)動(dòng)器等待下一個(gè)需要的LBA的時(shí)候,浪費(fèi)了大量時(shí)間。
因此,需要一種方法,該方法通過(guò)避免等待下一個(gè)數(shù)據(jù)傳送命令的“停機(jī)時(shí)間”來(lái)增加輔助存儲(chǔ)器設(shè)備的存取速度。

發(fā)明內(nèi)容
鑒于以上所述,本發(fā)明提供了一種支持磁盤(pán)驅(qū)動(dòng)器中的推測(cè)性數(shù)據(jù)傳送的方法和程序產(chǎn)品。所請(qǐng)求的第一數(shù)據(jù)從磁盤(pán)讀出。在第一數(shù)據(jù)讀出之前,確定是否有未請(qǐng)求的第二數(shù)據(jù)也很可能在隨后的時(shí)間里作為數(shù)據(jù)流的一部分而被請(qǐng)求。如果是這樣,則確定第二數(shù)據(jù)和第一數(shù)據(jù)是否存儲(chǔ)在磁盤(pán)上的物理/邏輯靠近的位置。如果第二數(shù)據(jù)靠近第一數(shù)據(jù),則第二數(shù)據(jù)被推測(cè)性地讀出并存儲(chǔ)在本地磁盤(pán)高速緩沖存儲(chǔ)器中。如果接下來(lái)的請(qǐng)求來(lái)到磁盤(pán)驅(qū)動(dòng)器以獲取第二數(shù)據(jù),則第二數(shù)據(jù)被從磁盤(pán)高速緩沖存儲(chǔ)器中快速產(chǎn)生出來(lái),而不是從磁盤(pán)緩慢讀出。
本發(fā)明的上述及其它目的、特征和優(yōu)點(diǎn)在下面的詳細(xì)說(shuō)明中將會(huì)變得明顯。


被認(rèn)為是本發(fā)明特征的新穎性特征在以下說(shuō)明中闡述。但是,參照以下對(duì)示例性實(shí)施例的詳細(xì)說(shuō)明并結(jié)合附圖一起閱讀,本發(fā)明自身以及優(yōu)選使用方式、其進(jìn)一步的目的和優(yōu)點(diǎn)將會(huì)得到最好的理解,其中圖1示出了典型的現(xiàn)有技術(shù)存儲(chǔ)器分層結(jié)構(gòu);圖2示出了本發(fā)明中所用的典型數(shù)據(jù)處理系統(tǒng);圖3是包含本發(fā)明的磁盤(pán)驅(qū)動(dòng)器存儲(chǔ)設(shè)備的優(yōu)選實(shí)施例的框圖;圖4a示出了磁盤(pán)表面的磁道的一部分,該部分存儲(chǔ)了間插的來(lái)自不同讀請(qǐng)求的數(shù)據(jù)段;圖4b示出了磁盤(pán)表面,在該磁盤(pán)表面上來(lái)自不同數(shù)據(jù)讀請(qǐng)求的不同數(shù)據(jù)段位于不同的磁盤(pán)磁道上;以及圖5是示出了在本發(fā)明中所用的優(yōu)選步驟的流程圖。
具體實(shí)施例方式
本發(fā)明提供了一種用于從輔助存儲(chǔ)器設(shè)備推測(cè)性地讀出數(shù)據(jù)的方法,該方法包括從輔助存儲(chǔ)器設(shè)備讀出第一數(shù)據(jù),該輔助存儲(chǔ)器設(shè)備能夠在存儲(chǔ)介質(zhì)上存儲(chǔ)數(shù)據(jù);確定輔助存儲(chǔ)器設(shè)備接收到對(duì)于存儲(chǔ)在存儲(chǔ)介質(zhì)上的第二數(shù)據(jù)的讀出請(qǐng)求的概率,該第二數(shù)據(jù)邏輯上與該第一數(shù)據(jù)相關(guān);如果該概率高于預(yù)定概率值,則確定推測(cè)性讀出第二數(shù)據(jù)的成本,該成本基于當(dāng)讀/寫(xiě)磁頭讀出第一數(shù)據(jù)時(shí)讀/寫(xiě)磁頭相對(duì)于固定介質(zhì)上的第二數(shù)據(jù)的物理位置的位置;如果推測(cè)性讀出第二數(shù)據(jù)的成本低于預(yù)定成本值,則在沒(méi)有從輔助存儲(chǔ)器設(shè)備外部接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的情況下讀出第二數(shù)據(jù);在輔助存儲(chǔ)器設(shè)備高速緩沖存儲(chǔ)器中存儲(chǔ)第二數(shù)據(jù);以及如果輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的后來(lái)的請(qǐng)求,則從輔助存儲(chǔ)器設(shè)備高速緩沖存儲(chǔ)器產(chǎn)生第二數(shù)據(jù)。
在優(yōu)選實(shí)施例中,該輔助存儲(chǔ)器設(shè)備是硬盤(pán)驅(qū)動(dòng)器。
在優(yōu)選實(shí)施例中,該存儲(chǔ)介質(zhì)是磁盤(pán)。
在優(yōu)選實(shí)施例中,該存儲(chǔ)介質(zhì)是光盤(pán)。
在優(yōu)選實(shí)施例中,輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的概率由第二數(shù)據(jù)當(dāng)?shù)谝粩?shù)據(jù)被請(qǐng)求時(shí)而被請(qǐng)求的歷史來(lái)確定。
在優(yōu)選實(shí)施例中,輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的概率由在存儲(chǔ)介質(zhì)上第一和第二數(shù)據(jù)的物理鄰近來(lái)確定。
在優(yōu)選實(shí)施例中,推測(cè)性讀出第二數(shù)據(jù)的成本由位于存儲(chǔ)介質(zhì)上的同一磁道上的第一和第二數(shù)據(jù)來(lái)確定。
在優(yōu)選實(shí)施例中,輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的概率由同一格式的第一和第二數(shù)據(jù)來(lái)確定。
在優(yōu)選實(shí)施例中,第一和第二數(shù)據(jù)位于分別與第一讀/寫(xiě)磁頭和第二讀/寫(xiě)磁頭相關(guān)的不同磁盤(pán)表面上,以及其中推測(cè)性讀出第二數(shù)據(jù)的成本由當(dāng)?shù)谝蛔x/寫(xiě)磁頭位于第一數(shù)據(jù)的物理位置附近時(shí)位于第二數(shù)據(jù)的物理位置附近的第二讀/寫(xiě)磁頭來(lái)確定。
本發(fā)明還提供了一種計(jì)算機(jī)程序產(chǎn)品,位于計(jì)算機(jī)可讀介質(zhì)上,用于從輔助存儲(chǔ)器設(shè)備推測(cè)性地讀出數(shù)據(jù),該計(jì)算機(jī)程序產(chǎn)品包括用于從輔助存儲(chǔ)器設(shè)備讀出第一數(shù)據(jù)的程序代碼,該輔助存儲(chǔ)器設(shè)備能夠在存儲(chǔ)介質(zhì)上存儲(chǔ)數(shù)據(jù);用于確定輔助存儲(chǔ)器設(shè)備接收到對(duì)于存儲(chǔ)在存儲(chǔ)介質(zhì)上的第二數(shù)據(jù)的讀出請(qǐng)求的概率的程序代碼,該第二數(shù)據(jù)邏輯上與該第一數(shù)據(jù)相關(guān);用于如果該概率高于預(yù)定概率值則確定推測(cè)性讀出第二數(shù)據(jù)的成本的程序代碼,該成本基于當(dāng)讀/寫(xiě)磁頭讀出第一數(shù)據(jù)時(shí)讀/寫(xiě)磁頭相對(duì)于固定介質(zhì)上的第二數(shù)據(jù)的物理位置的位置;用于如果推測(cè)性讀出第二數(shù)據(jù)的成本低于預(yù)定成本值,則在沒(méi)有從輔助存儲(chǔ)器設(shè)備外部接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的情況下讀出第二數(shù)據(jù)的程序代碼;用于在輔助存儲(chǔ)器設(shè)備高速緩沖存儲(chǔ)器中存儲(chǔ)第二數(shù)據(jù)的程序代碼;以及用于如果輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的后來(lái)的請(qǐng)求,則從輔助存儲(chǔ)器設(shè)備高速緩沖存儲(chǔ)器產(chǎn)生第二數(shù)據(jù)的程序代碼。
在優(yōu)選實(shí)施例中,該輔助存儲(chǔ)器設(shè)備是硬盤(pán)驅(qū)動(dòng)器。
在優(yōu)選實(shí)施例中,該存儲(chǔ)介質(zhì)是磁盤(pán)。
在優(yōu)選實(shí)施例中,該存儲(chǔ)介質(zhì)是光盤(pán)。
在優(yōu)選實(shí)施例中,輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的概率由第二數(shù)據(jù)當(dāng)?shù)谝粩?shù)據(jù)被請(qǐng)求時(shí)而被請(qǐng)求的歷史來(lái)確定。
在優(yōu)選實(shí)施例中,輔助存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的請(qǐng)求的概率由在存儲(chǔ)介質(zhì)上第一和第二數(shù)據(jù)的物理鄰近來(lái)確定。
在優(yōu)選實(shí)施例中,推測(cè)性讀出第二數(shù)據(jù)的成本由位于存儲(chǔ)介質(zhì)上的同一磁道上的第一和第二數(shù)據(jù)來(lái)確定。
在優(yōu)選實(shí)施例中,推測(cè)性讀出第二數(shù)據(jù)的成本由位于存儲(chǔ)介質(zhì)上的同一磁道上的第一和第二數(shù)據(jù)來(lái)確定。
在優(yōu)選實(shí)施例中,第一和第二數(shù)據(jù)位于分別與第一讀/寫(xiě)磁頭和第二讀/寫(xiě)磁頭相關(guān)的不同磁盤(pán)表面上,以及其中推測(cè)性讀出第二數(shù)據(jù)的成本由當(dāng)?shù)谝蛔x/寫(xiě)磁頭位于第一數(shù)據(jù)的物理位置附近時(shí)位于第二數(shù)據(jù)的物理位置附近的第二讀/寫(xiě)磁頭來(lái)確定。
現(xiàn)在參照?qǐng)D2,數(shù)據(jù)處理系統(tǒng)200示出了本發(fā)明中所用的典型數(shù)據(jù)處理系統(tǒng),它包括中央處理單元(CPU)202,中央處理單元(CPU)202連接到系統(tǒng)總線208。在典型實(shí)施例中,數(shù)據(jù)處理系統(tǒng)200包括也連接到系統(tǒng)總線208的圖形適配器204,用來(lái)提供用戶接口信息到顯示器206。
系統(tǒng)存儲(chǔ)器210和輸入/輸出(I/O)總線橋212也連接到系統(tǒng)總線208。I/O總線橋212將I/O總線214耦合到系統(tǒng)總線208,從一條總線向另一條總線中繼和/或變換數(shù)據(jù)事務(wù)。諸如可能是硬盤(pán)驅(qū)動(dòng)器的非易失性存儲(chǔ)器216的外圍設(shè)備,以及可能包括傳統(tǒng)鼠標(biāo)、軌跡球等的輸入設(shè)備218,連接到I/O總線214。連接到I/O總線214上的還有網(wǎng)絡(luò)接口卡(NIC)226,網(wǎng)絡(luò)接口卡(NIC)226使得能夠在數(shù)據(jù)處理系統(tǒng)200和網(wǎng)絡(luò)220之間進(jìn)行網(wǎng)絡(luò)通信。
圖2所示的典型實(shí)施例僅是為了解釋本發(fā)明而提供,本領(lǐng)域技術(shù)人員將認(rèn)識(shí)到許多變化是可能的,無(wú)論是形式上的還是功能上的。例如,數(shù)據(jù)處理系統(tǒng)200還可包括壓縮光盤(pán)只讀存儲(chǔ)器(CD-ROM)或數(shù)字視盤(pán)(DVD)驅(qū)動(dòng)器、聲卡和揚(yáng)聲器、以及許多其它任選部件。所有這些變化都被認(rèn)為是落在本發(fā)明的精神和范圍內(nèi)。
圖3是包含本發(fā)明的典型磁盤(pán)驅(qū)動(dòng)器存儲(chǔ)設(shè)備304的優(yōu)選實(shí)施例的框圖。存儲(chǔ)器設(shè)備304具有作為數(shù)據(jù)記錄介質(zhì)的硬磁盤(pán)328,以及用于從/向磁盤(pán)328讀/寫(xiě)數(shù)據(jù)的磁頭322。存儲(chǔ)器設(shè)備304還具有用于將承載磁頭322的滑塊移動(dòng)到磁盤(pán)328表面上的特定位置的致動(dòng)器機(jī)構(gòu)325、用于使得致動(dòng)器機(jī)構(gòu)325的存取臂擺動(dòng)的音圈馬達(dá)(VCM)324,以及VCM驅(qū)動(dòng)器322,該VCM驅(qū)動(dòng)器3221)控制用于使得磁盤(pán)328旋轉(zhuǎn)的主軸馬達(dá)以及2)驅(qū)動(dòng)VCM324。VCM驅(qū)動(dòng)器322包括9位數(shù)模轉(zhuǎn)換器(DAC),9位數(shù)模轉(zhuǎn)換器(DAC)將來(lái)自MPU329的數(shù)字控制信號(hào)轉(zhuǎn)換為模擬控制信號(hào)并將其發(fā)送到VCM324。
存儲(chǔ)器設(shè)備304還具有用于控制數(shù)據(jù)讀/寫(xiě)操作的讀/寫(xiě)電路326,讀/寫(xiě)電路326包括模塊,該模塊包括用于檢測(cè)信號(hào)的放大器電路、波形整形器、模數(shù)轉(zhuǎn)換器(ADC)、數(shù)模轉(zhuǎn)換器(DAC)。存儲(chǔ)器設(shè)備304還具有用于控制從/向磁盤(pán)328的數(shù)據(jù)讀/寫(xiě)操作的硬盤(pán)控制器(HDC)337,用于控制連同HDC337在內(nèi)的整個(gè)HDD的操作的微處理器單元(MPU)329,用于存儲(chǔ)微程序和數(shù)據(jù)以操作MPU329的ROM320,用于暫時(shí)存儲(chǔ)將要響應(yīng)當(dāng)前讀/寫(xiě)請(qǐng)求讀/寫(xiě)到磁盤(pán)328上的數(shù)據(jù)的隨機(jī)存儲(chǔ)器(RAM)331,以及通過(guò)雙向線路連接到主機(jī)系統(tǒng)302的接口(I/F)335。
HDC337、RAM331和MPU329通過(guò)數(shù)據(jù)總線(未示)相互連接。此外,HDC337還通過(guò)控制總線(未示)連接到MPU329,并通過(guò)I/F335連接到主機(jī)系統(tǒng)302。
磁盤(pán)328可以是嵌入的伺服(即扇區(qū)伺服)類型,其中磁盤(pán)表面具有同心的和環(huán)形的磁道,每個(gè)磁道包含數(shù)據(jù)區(qū)域和伺服區(qū)域,在數(shù)據(jù)區(qū)域記錄數(shù)據(jù),在伺服區(qū)域事先記錄伺服數(shù)據(jù),磁盤(pán)328或者可以是伺服表面伺服類型,其中磁盤(pán)的一個(gè)磁盤(pán)表面僅供伺服使用,而僅在另一個(gè)磁盤(pán)表面上記錄數(shù)據(jù)。
磁盤(pán)328具有多個(gè)同心的和環(huán)形的數(shù)據(jù)磁道,每個(gè)磁道包括n個(gè)LBA(邏輯塊地址),其中n表示任意正整數(shù)。磁盤(pán)328優(yōu)選被格式化以包括具有預(yù)定數(shù)目的第一順序LBA的第一磁道,緊跟著第一順序LBA、具有預(yù)定數(shù)目的第二順序LBA的第二磁道,以及在第一磁道和第二磁道之間安置的至少一個(gè)磁道。HDC337、RAM331、MPU329、ROM320和I/F335作為一個(gè)整體構(gòu)成了控制器339,該控制器339通過(guò)執(zhí)行控制程序(微程序)以控制從主機(jī)系統(tǒng)302的讀/寫(xiě)請(qǐng)求來(lái)控制整個(gè)磁盤(pán)驅(qū)動(dòng)器存儲(chǔ)器設(shè)備304的操作。
HDC337還包括高速緩沖存儲(chǔ)器332和存取流控制器330。存取流控制器330包括有關(guān)在存取特定的LBA或LBA組后可能需要的記錄的預(yù)測(cè)信息。高速緩沖存儲(chǔ)器332高速緩沖存儲(chǔ)基于存儲(chǔ)在存取流控制器330中的信息預(yù)測(cè)的推測(cè)性讀出。有關(guān)這些推測(cè)性讀出的更多細(xì)節(jié)和其基礎(chǔ)在下面參照?qǐng)D4a、4b和5討論。
雖然存儲(chǔ)器設(shè)備304被描述為硬盤(pán)驅(qū)動(dòng)器,應(yīng)當(dāng)理解,在本發(fā)明的優(yōu)選實(shí)施例中,存儲(chǔ)器設(shè)備304可以是任何輔助存儲(chǔ)器設(shè)備,包括軟盤(pán)驅(qū)動(dòng)器、讀/寫(xiě)壓縮光盤(pán)只讀存儲(chǔ)器(RW-CDROM)、Zip驅(qū)動(dòng)器等等。
現(xiàn)在參照?qǐng)D4a,示出了磁盤(pán)表面的磁道402的一部分。該示出的部分在LBA A1-A8,B1-B5和A9-A11中包括數(shù)據(jù)。如果讀命令從LBAA1-A11中請(qǐng)求數(shù)據(jù),本發(fā)明確定接下來(lái)會(huì)作出從LBA B1-B5中請(qǐng)求數(shù)據(jù)的讀命令的可能性是多大。如果該將來(lái)的對(duì)于LBA B1-B5的讀請(qǐng)求是非常可能發(fā)生的,并且由于讀磁頭無(wú)論如何必須經(jīng)過(guò)LBA B1-B5才能從LBA A8到LBA A9,則存取流控制器330控制HDC337以讀出LBA B1-B5,并將該數(shù)據(jù)存儲(chǔ)在高速緩沖存儲(chǔ)器332中。
在LBA B1-B5中的數(shù)據(jù)在將來(lái)被請(qǐng)求的可能性系數(shù)由存儲(chǔ)在存取流控制器330中的信息來(lái)確定,該信息例如歷史數(shù)據(jù)、邏輯關(guān)系和其它預(yù)測(cè)數(shù)據(jù)。
例如,歷史數(shù)據(jù)可以告知存取流控制器330是否在過(guò)去對(duì)于LBAA1-A11的數(shù)據(jù)讀請(qǐng)求有規(guī)律地在對(duì)于LBA B1-B5的數(shù)據(jù)讀請(qǐng)求之前或之后(緊接著或有很小的時(shí)間間隔)。如果是這樣,則認(rèn)為有可能在當(dāng)前對(duì)于LBA A1-A11的數(shù)據(jù)讀請(qǐng)求后跟著對(duì)于LBA B1-B5的讀請(qǐng)求。可能性確定可以被調(diào)整,以使得如果過(guò)去的讀出發(fā)生在LBAA1-A11讀出之后的任何選定的次數(shù)百分比期間的話作出LBA B1-B5的推測(cè)性讀出。也就是說(shuō),如果在過(guò)去LBA B1-B5的讀出在LBAA1-A11數(shù)據(jù)讀出之后總是(100%)、頻繁(例如80-99%)、經(jīng)常(例如50-79%)、有時(shí)(例如20-49%)或極少(例如5-19%)作出的話,可選擇性地作出LBA B1-B5的推測(cè)性讀出。
推測(cè)性地讀出在LBA B1-B5中的數(shù)據(jù)的選擇可按照在LBAA1-A11和LBA B1-B5中的數(shù)據(jù)之間的邏輯關(guān)系進(jìn)行。例如,如果兩組數(shù)據(jù)都是ASCII(美國(guó)信息交換標(biāo)準(zhǔn)碼)字符,則可以確定兩組數(shù)據(jù)很可能是同一文檔的部分,這樣就調(diào)用LBA B1-B5中的數(shù)據(jù)的推測(cè)性讀出。
其它邏輯關(guān)系也可被用來(lái)調(diào)用該推測(cè)性讀出。例如,該邏輯關(guān)系可以是數(shù)據(jù)所存儲(chǔ)在的磁盤(pán)上的物理位置。這樣,如果LBA B1-B5靠近LBA A1-A11,或在LBA A1-A11中,可確定非??赡軄?lái)自LBAB1-B5的數(shù)據(jù)在會(huì)在請(qǐng)求LBA A1-A11中的數(shù)據(jù)之后接下來(lái)被請(qǐng)求。
現(xiàn)在參照?qǐng)D4b,LBA Ax和LBA Bx可位于不同磁道,如圖所示。即,LBA A1-A8可位于內(nèi)磁道404,LBA A9-A11可位于外磁道408,LBA B1-B5可位于之間磁道406。當(dāng)對(duì)于來(lái)自LBA A1-A11的數(shù)據(jù)的讀請(qǐng)求來(lái)到時(shí),確定關(guān)于讀/寫(xiě)磁頭的物理位置,在內(nèi)磁道404和外磁道408之間運(yùn)動(dòng)(反之亦然)是設(shè)計(jì)好的軌跡。由于讀/寫(xiě)磁頭必須得跨過(guò)中間磁道406,如果確定出非??赡軄?lái)自LBA B1-B5的數(shù)據(jù)接下來(lái)要被請(qǐng)求,則該數(shù)據(jù)被如上所述推測(cè)性地讀出。
在從LBA A1-A8讀出數(shù)據(jù)之后但在從LBA A9-A11讀出數(shù)據(jù)之前從LBA B1-B5推測(cè)性讀出數(shù)據(jù)假定從LBA B1-B5推測(cè)性讀出數(shù)據(jù)不會(huì)產(chǎn)生失速或其它問(wèn)題。也就是說(shuō),如果由于定時(shí)或其它臨界問(wèn)題LBA A9-A11必須在讀出LBA A1-A8之后立即讀出,則推測(cè)性讀出LBA B1-B5,如果真要進(jìn)行的話,在讀出LBA A9-A11之后進(jìn)行。
參照?qǐng)D5,示出了說(shuō)明本發(fā)明的優(yōu)選實(shí)施例的流程圖。從塊502開(kāi)始,在輔助驅(qū)動(dòng)器接收到對(duì)于數(shù)據(jù)A的請(qǐng)求,數(shù)據(jù)A具有兩部分A1和A2,分別存儲(chǔ)在第一組(優(yōu)選連續(xù))LBA和第二組(優(yōu)選連續(xù))LBA中。在接收到該請(qǐng)求后,但優(yōu)選在執(zhí)行完該讀出前,對(duì)數(shù)據(jù)A所存儲(chǔ)在的LBA執(zhí)行分析(塊504)。該分析可以是歷史表格檢查(確定是否通常在對(duì)于數(shù)據(jù)A的請(qǐng)求之后請(qǐng)求其它LBA中的其它數(shù)據(jù))、邏輯檢查等等,如上面所述的。
如果確定出有可能將來(lái)會(huì)請(qǐng)求數(shù)據(jù)B的讀出(查詢塊506),則確定(查詢塊508)關(guān)于是否數(shù)據(jù)B存儲(chǔ)在物理上和邏輯上靠近數(shù)據(jù)A的位置,以使得讀出數(shù)據(jù)B的(時(shí)間)成本低于預(yù)定的量。例如,該確定可以按照數(shù)據(jù)B是如圖4a和4b所示物理上存儲(chǔ)在數(shù)據(jù)A的子段之間,還是數(shù)據(jù)B位于靠近數(shù)據(jù)A的第一讀出段處來(lái)進(jìn)行。如果數(shù)據(jù)B是靠近的,則讀出數(shù)據(jù)A和數(shù)據(jù)B的全部(塊510),并將數(shù)據(jù)A輸出到請(qǐng)求主機(jī)計(jì)算機(jī)(塊512),而將數(shù)據(jù)B在圖3所示的高速緩沖存儲(chǔ)器332中高速緩沖存儲(chǔ)。
接著,確定關(guān)于除了對(duì)于數(shù)據(jù)B的推測(cè)性讀出之外是否進(jìn)行其它推測(cè)性讀出(查詢塊516)。也就是說(shuō),可以基于對(duì)于數(shù)據(jù)A的讀出請(qǐng)求為其它LBA上的其它數(shù)據(jù)進(jìn)行同一類型的分析,象上面對(duì)于數(shù)據(jù)B所描述的那樣。這樣,對(duì)于數(shù)據(jù)A的讀出請(qǐng)求可產(chǎn)生對(duì)于數(shù)據(jù)B和在不同組的LBA位置中其它數(shù)據(jù)(“數(shù)據(jù)X”)和/或其它不同數(shù)據(jù)組的推測(cè)性數(shù)據(jù)讀出。如果其它推測(cè)性讀出被作出,其也被高速緩沖存儲(chǔ)。如果接下來(lái)的推測(cè)性讀出造成高速緩沖存儲(chǔ)器可能的溢出(查詢塊518),則數(shù)據(jù)B被清倉(cāng)(塊520),假定其從來(lái)未被請(qǐng)求。
如果數(shù)據(jù)B仍然在高速緩沖存儲(chǔ)器中并且接下來(lái)接收到對(duì)于數(shù)據(jù)B的讀出請(qǐng)求(查詢塊522),則不是從磁盤(pán)讀出數(shù)據(jù)B,而是高速緩沖存儲(chǔ)器輸出數(shù)據(jù)B到請(qǐng)求方(塊524),該過(guò)程結(jié)束。
因此本發(fā)明提供了一種用于基于以下概率從磁盤(pán)推測(cè)性地讀出數(shù)據(jù)的新穎的和有用的方法1)第二數(shù)據(jù)組將在第一數(shù)據(jù)組被從磁盤(pán)上請(qǐng)求之后被請(qǐng)求,以及2)在第一數(shù)據(jù)組或其一部分要被讀出時(shí)基于讀/寫(xiě)磁頭的物理位置讀出第二數(shù)據(jù)組是節(jié)省時(shí)間/成本的。通過(guò)減少對(duì)于存儲(chǔ)在磁盤(pán)上的數(shù)據(jù)的存取時(shí)間,則由磁盤(pán)數(shù)據(jù)的較長(zhǎng)的存取時(shí)間所引起的失速可以得到避免。
雖然本發(fā)明是以第一數(shù)據(jù)組和第二數(shù)據(jù)組是位于同一磁盤(pán)上的考慮來(lái)說(shuō)明讀/寫(xiě)磁頭的物理位置的,但應(yīng)當(dāng)理解本發(fā)明當(dāng)?shù)谝缓偷诙?shù)據(jù)組位于同一磁盤(pán)驅(qū)動(dòng)器的不同磁盤(pán)(盤(pán)片)上時(shí)也是有用的。也就是說(shuō),如果第一數(shù)據(jù)組位于具有第一讀/寫(xiě)磁頭的第一盤(pán)片上,第二數(shù)據(jù)組位于具有第二讀/寫(xiě)磁頭的第二盤(pán)片上,但第一和第二盤(pán)片的讀/寫(xiě)磁頭被定位以使第一和第二讀/寫(xiě)磁頭同時(shí)靠近其各自的盤(pán)片上的各自的第一和第二數(shù)據(jù)存儲(chǔ)位置,則同一算法(即如圖5的查詢塊508中所述的)適用。同樣,如果第一和第二讀/寫(xiě)磁頭和其各自的第一和第二數(shù)據(jù)組位于同一磁盤(pán)(盤(pán)片)的相反兩面,該同一算法也適用。
應(yīng)當(dāng)理解,本發(fā)明的至少一些方面可換一種方法以程序產(chǎn)品來(lái)執(zhí)行。限定本發(fā)明的功能的程序可被通過(guò)各種信號(hào)承載介質(zhì)輸送到數(shù)據(jù)存儲(chǔ)器系統(tǒng)或計(jì)算機(jī)系統(tǒng),該信號(hào)承載介質(zhì)包括但不限于不可寫(xiě)存儲(chǔ)介質(zhì)(例如CD-ROM)、可寫(xiě)存儲(chǔ)介質(zhì)(例如軟盤(pán)、硬盤(pán)驅(qū)動(dòng)器、讀/寫(xiě)CD ROM、光介質(zhì))、諸如包括以太網(wǎng)的計(jì)算機(jī)和電話網(wǎng)絡(luò)的通信介質(zhì)。因此,應(yīng)當(dāng)理解,在該信號(hào)承載介質(zhì)中,當(dāng)該介質(zhì)承載或編碼控制本發(fā)明的方法功能的計(jì)算機(jī)可讀指令時(shí),這代表了本發(fā)明的另一種實(shí)施例。另外,應(yīng)當(dāng)理解,本發(fā)明可由具有硬件、軟件或軟件及硬件的組合的形式的裝置的系統(tǒng)來(lái)實(shí)現(xiàn),如在此說(shuō)明的或其等同替換。
雖然參照優(yōu)選實(shí)施例具體示出了和說(shuō)明了本發(fā)明,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解各種形式和細(xì)節(jié)的變化可以在不脫離本發(fā)明的精神和范圍的前提下在此作出。
權(quán)利要求
1.一種推測(cè)性數(shù)據(jù)流出存儲(chǔ)器設(shè)備,包括用于記錄數(shù)據(jù)的存儲(chǔ)介質(zhì);用于從存儲(chǔ)介質(zhì)讀出第一數(shù)據(jù)的磁頭;用于承載磁頭的滑塊;用于將滑塊移動(dòng)到介質(zhì)的表面上的特定位置的致動(dòng)器;耦合到所述磁頭的控制器;在所述控制器中用于存儲(chǔ)記錄在介質(zhì)中的數(shù)據(jù)之間的關(guān)系的信息的存取流出控制器;在所述控制器中用于基于該存取流出控制器中存儲(chǔ)的信息來(lái)高速緩存推測(cè)性讀出的高速緩沖存儲(chǔ)器;其中所述控制器根據(jù)所述信息確定存儲(chǔ)器設(shè)備接收到對(duì)于存儲(chǔ)在存儲(chǔ)介質(zhì)上的第二數(shù)據(jù)的讀出請(qǐng)求的概率,如果該概率高于預(yù)定概率值,則所述控制器基于當(dāng)磁頭讀出第一數(shù)據(jù)時(shí)磁頭相對(duì)于固定介質(zhì)上的第二數(shù)據(jù)的物理位置的位置確定推測(cè)性讀出第二數(shù)據(jù)的成本;所述控制器控制讀出操作,以便如果推測(cè)性讀出第二數(shù)據(jù)的成本低于預(yù)定成本值,則在沒(méi)有來(lái)自存儲(chǔ)器設(shè)備外部的對(duì)于第二數(shù)據(jù)的請(qǐng)求的情況下讀出第二數(shù)據(jù);所述控制器在高速緩沖存儲(chǔ)器中存儲(chǔ)第二數(shù)據(jù);以及如果存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的后來(lái)的請(qǐng)求,則所述控制器從高速緩沖存儲(chǔ)器產(chǎn)生第二數(shù)據(jù)。
2.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,其中該存儲(chǔ)器設(shè)備是硬盤(pán)驅(qū)動(dòng)器。
3.根據(jù)權(quán)利要求2的存儲(chǔ)器設(shè)備,其中該存儲(chǔ)介質(zhì)是磁盤(pán)。
4.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,其中該存儲(chǔ)介質(zhì)是光盤(pán)。
5.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,其中所述存儲(chǔ)在存取流出控制器中的信息是第二數(shù)據(jù)當(dāng)?shù)谝粩?shù)據(jù)被請(qǐng)求時(shí)而被請(qǐng)求的歷史。
6.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,其中所述存儲(chǔ)在存取流出控制器中的信息是在存儲(chǔ)介質(zhì)上第一和第二數(shù)據(jù)的物理鄰近。
7.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,其中推測(cè)性讀出第二數(shù)據(jù)的成本由所述第一和第二數(shù)據(jù)位于存儲(chǔ)介質(zhì)上的同一磁道上而確定。
8.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,其中所述存儲(chǔ)在存取流出控制器中的信息是第一和第二數(shù)據(jù)的邏輯關(guān)系。
9.根據(jù)權(quán)利要求1的存儲(chǔ)器設(shè)備,還包括用于存儲(chǔ)數(shù)據(jù)的第二存儲(chǔ)介質(zhì);及用于從第二存儲(chǔ)介質(zhì)讀出第二數(shù)據(jù)的第二磁頭;其中推測(cè)性讀出第二數(shù)據(jù)的成本由當(dāng)?shù)谝淮蓬^位于第一數(shù)據(jù)的物理位置附近時(shí)第二磁頭位于第二數(shù)據(jù)的物理位置附近來(lái)確定。
10.一種計(jì)算機(jī)系統(tǒng),包括連接到系統(tǒng)總線的中央處理單元;將系統(tǒng)總線與輸入/輸出總線耦合的輸入/輸出總線橋;連接到輸入/輸出總線的用于存儲(chǔ)數(shù)據(jù)的非易失性存儲(chǔ)器設(shè)備,其中該非易失性存儲(chǔ)器設(shè)備包括用于記錄數(shù)據(jù)的存儲(chǔ)介質(zhì);用于從存儲(chǔ)介質(zhì)讀出第一數(shù)據(jù)的磁頭;用于承載磁頭的滑塊;用于將滑塊移動(dòng)到介質(zhì)的表面上的特定位置的致動(dòng)器;耦合到所述磁頭的控制器;在所述控制器中用于存儲(chǔ)記錄在介質(zhì)中的數(shù)據(jù)之間的邏輯關(guān)系的信息的存取流出控制器;在所述控制器中用于基于該存取流出控制器中存儲(chǔ)的信息來(lái)高速緩存推測(cè)性讀出的高速緩沖存儲(chǔ)器;其中所述控制器根據(jù)所述信息確定存儲(chǔ)器設(shè)備接收到對(duì)于存儲(chǔ)在存儲(chǔ)介質(zhì)上的第二數(shù)據(jù)的讀出請(qǐng)求的概率,如果該概率高于預(yù)定概率值,則所述控制器基于當(dāng)磁頭讀出第一數(shù)據(jù)時(shí)磁頭相對(duì)于固定介質(zhì)上的第二數(shù)據(jù)的物理位置的位置確定推測(cè)性讀出第二數(shù)據(jù)的成本;所述控制器控制讀出操作,以便如果推測(cè)性讀出第二數(shù)據(jù)的成本低于預(yù)定成本值,則在沒(méi)有來(lái)自存儲(chǔ)器設(shè)備外部的對(duì)于第二數(shù)據(jù)的請(qǐng)求的情況下讀出第二數(shù)據(jù);所述控制器在高速緩沖存儲(chǔ)器中存儲(chǔ)第二數(shù)據(jù);以及如果存儲(chǔ)器設(shè)備接收到對(duì)于第二數(shù)據(jù)的后來(lái)的請(qǐng)求,則所述控制器從高速緩沖存儲(chǔ)器產(chǎn)生第二數(shù)據(jù)。
11.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),其中該非易失性存儲(chǔ)器設(shè)備是硬盤(pán)驅(qū)動(dòng)器。
12.根據(jù)權(quán)利要求11的計(jì)算機(jī)系統(tǒng),其中該非易失性存儲(chǔ)器設(shè)備中的存儲(chǔ)介質(zhì)是磁盤(pán)。
13.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),其中該非易失性存儲(chǔ)器設(shè)備中的存儲(chǔ)介質(zhì)是光盤(pán)。
14.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),其中所述存儲(chǔ)在存取流出控制器中的信息是第二數(shù)據(jù)當(dāng)?shù)谝粩?shù)據(jù)被請(qǐng)求時(shí)而被請(qǐng)求的歷史。
15.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),其中所述存儲(chǔ)在存取流出控制器中的信息是在存儲(chǔ)介質(zhì)上第一和第二數(shù)據(jù)的物理鄰近。
16.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),其中推測(cè)性讀出第二數(shù)據(jù)的成本由所述第一和第二數(shù)據(jù)位于存儲(chǔ)介質(zhì)上的同一磁道上而確定。
17.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),其中所述存儲(chǔ)在存取流出控制器中的信息是第一和第二數(shù)據(jù)的邏輯關(guān)系。
18.根據(jù)權(quán)利要求10的計(jì)算機(jī)系統(tǒng),該非易失性存儲(chǔ)器設(shè)備還包括用于存儲(chǔ)數(shù)據(jù)的第二存儲(chǔ)介質(zhì);及用于從第二存儲(chǔ)介質(zhì)讀出第二數(shù)據(jù)的第二磁頭;其中推測(cè)性讀出第二數(shù)據(jù)的成本由當(dāng)?shù)谝淮蓬^位于第一數(shù)據(jù)的物理位置附近時(shí)第二磁頭位于第二數(shù)據(jù)的物理位置附近來(lái)確定。
全文摘要
一種支持在磁盤(pán)驅(qū)動(dòng)器中推測(cè)性的數(shù)據(jù)傳送的方法和程序產(chǎn)品。從磁盤(pán)讀出被請(qǐng)求的第一數(shù)據(jù)。在第一數(shù)據(jù)被讀出前,確定關(guān)于是否有未被請(qǐng)求的第二數(shù)據(jù)傾向于在稍后作為數(shù)據(jù)流的一部分而被請(qǐng)求。如果是這樣,則確定關(guān)于是否第二數(shù)據(jù)和第一數(shù)據(jù)存儲(chǔ)在磁盤(pán)上的物理上/邏輯上鄰近的位置處。如果第二數(shù)據(jù)靠近第一數(shù)據(jù),則第二數(shù)據(jù)被推測(cè)性地讀出并存儲(chǔ)在本地磁盤(pán)高速緩沖存儲(chǔ)器。如果接下來(lái)的對(duì)于第二數(shù)據(jù)的請(qǐng)求來(lái)到磁盤(pán)驅(qū)動(dòng)器,則從磁盤(pán)高速緩沖存儲(chǔ)器中快速產(chǎn)生第二數(shù)據(jù),而不是緩慢從磁盤(pán)讀出。
文檔編號(hào)G11B20/10GK1936868SQ200610092800
公開(kāi)日2007年3月28日 申請(qǐng)日期2004年8月27日 優(yōu)先權(quán)日2003年8月29日
發(fā)明者拉里·L.·威廉斯 申請(qǐng)人:日立環(huán)球儲(chǔ)存科技荷蘭有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
大英县| 呼玛县| 贵德县| 宜兴市| 石渠县| 沈阳市| 大宁县| 桦南县| 新乡市| 东兰县| 宿迁市| 斗六市| 汾阳市| 唐山市| 凉城县| 固原市| 平遥县| 灵宝市| 亳州市| 广州市| 开原市| 吉林省| 龙陵县| 皮山县| 天全县| 九台市| 泊头市| 平遥县| 天祝| 肥乡县| 资兴市| 雷州市| 青龙| 康平县| 辽源市| 彭州市| 家居| 柳河县| 云林县| 镇平县| 泰州市|