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

一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法及系統(tǒng)的制作方法

文檔序號(hào):6507908閱讀:272來(lái)源:國(guó)知局
一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明適用于存儲(chǔ)領(lǐng)域,提供了一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法及系統(tǒng)。該方法包括:建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表;將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中;固態(tài)硬盤(pán)接收I/O操作請(qǐng)求,I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址;從內(nèi)存以及固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。借此,本發(fā)明能減少對(duì)系統(tǒng)內(nèi)存的占用,在犧牲較小性能的情況下來(lái)減輕系統(tǒng)整體的負(fù)擔(dān),獲取系統(tǒng)整體性能上的提升。
【專(zhuān)利說(shuō)明】一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及存儲(chǔ)領(lǐng)域,更具體地說(shuō)是涉及一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法及系統(tǒng)。
【背景技術(shù)】
[0002]固態(tài)硬盤(pán)(Solid State Disk, SSD)是一種建立在標(biāo)準(zhǔn)NAND Flash等非揮發(fā)存儲(chǔ)介質(zhì)基礎(chǔ)上的新一代存儲(chǔ)設(shè)備,完全半導(dǎo)體化,無(wú)機(jī)械結(jié)構(gòu),具有低功耗、無(wú)噪音、抗震動(dòng)、低熱量等特點(diǎn),不存在磁盤(pán)尋道時(shí)間,數(shù)據(jù)存取速度快,數(shù)據(jù)吞吐量能和IOPS能達(dá)到傳統(tǒng)硬盤(pán)的數(shù)千倍。緩存軟件是一種利用較小容量較快速度的存儲(chǔ)器來(lái)給較大容量速度較慢的存儲(chǔ)器做為緩存的一種軟件實(shí)現(xiàn)方案,根據(jù)程序局部性原理,經(jīng)常使用的數(shù)據(jù)只占整體數(shù)據(jù)的很少一部分,因此緩存軟件能給應(yīng)用帶來(lái)較快的響應(yīng)速度。緩存軟件在計(jì)算機(jī)系統(tǒng)中應(yīng)用非常普遍,例如CPU緩存,文件系統(tǒng)緩存等。
[0003]在現(xiàn)有技術(shù)中,常采用固態(tài)硬盤(pán)作為緩存來(lái)加速磁盤(pán),以獲取更快的讀寫(xiě),提升應(yīng)用的響應(yīng)速度。固態(tài)硬盤(pán)作為緩存使用時(shí),需要緩存軟件的配合。緩存軟件在運(yùn)行時(shí)需要保存固態(tài)硬盤(pán)與硬盤(pán)之間的映射關(guān)系,由于映射關(guān)系需要經(jīng)常的查詢(xún)或修改,通常是保存在系統(tǒng)內(nèi)存中。由于映射關(guān)系表占用內(nèi)存過(guò)大,通常從幾百兆到幾個(gè)G不等,這給系統(tǒng)帶來(lái)沉重的負(fù)擔(dān)。

【發(fā)明內(nèi)容】

[0004]針對(duì)上述的缺陷,本發(fā)明的目的在于提供一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法及系統(tǒng),可以減少對(duì)系統(tǒng)內(nèi)存的占用,在犧牲較小性能的情況下來(lái)減輕系統(tǒng)整體的負(fù)擔(dān),獲取系統(tǒng)整體性能上的提升。
[0005]為了實(shí)現(xiàn)上述目的,本發(fā)明提供一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法,包括:
[0006]建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表;
[0007]將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中;
[0008]所述固態(tài)硬盤(pán)接收I/O操作請(qǐng)求,所述I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址;
[0009]從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
[0010]根據(jù)本發(fā)明的實(shí)現(xiàn)方法,“從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址,”的步驟包括:
[0011]根據(jù)所述待操作磁盤(pán)物理地址從所述內(nèi)存中保存的緩存地址映射表中查找與該磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址;
[0012]若所述內(nèi)存中保存的緩存地址映射表中未保存與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
[0013]根據(jù)本發(fā)明的實(shí)現(xiàn)方法,“從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址”的步驟之后還包括,
[0014]將從所述固態(tài)硬盤(pán)中查找到的與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系讀取至所述內(nèi)存中,放入哈希桶進(jìn)行管理。
[0015]根據(jù)本發(fā)明的實(shí)現(xiàn)方法,“從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址”的步驟之后包括:
[0016]根據(jù)該固態(tài)硬盤(pán)物理地址在所述固態(tài)硬盤(pán)中進(jìn)行I/O操作。
[0017]根據(jù)本發(fā)明的實(shí)現(xiàn)方法,所述實(shí)現(xiàn)方法還包括:
[0018]當(dāng)某個(gè)緩存地址映射關(guān)系的熱度降低時(shí),將該緩存地址映射關(guān)系放在哈希桶隊(duì)列的尾部,當(dāng)有I/o讀寫(xiě)操作請(qǐng)求需要新的緩存地址映射關(guān)系時(shí)則將該哈希桶隊(duì)列尾部的緩存地址映射關(guān)系刪除。
[0019]本發(fā)明相應(yīng)提供一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)系統(tǒng),所述系統(tǒng)包括:
[0020]映射表建立模塊,用于建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表;
[0021]映射表保存模塊;用于將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中;
[0022]I/O請(qǐng)求接收模塊,用于接收I/O操作請(qǐng)求,所述I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址;
[0023]查找模塊,用于從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
[0024]根據(jù)本發(fā)明的實(shí)現(xiàn)系統(tǒng),所述查找模塊還用于根據(jù)所述待操作磁盤(pán)物理地址從所述內(nèi)存中保存的緩存地址映射表中查找與該磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址;
[0025]若所述內(nèi)存中保存的緩存地址映射表中未保存與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
[0026]根據(jù)本發(fā)明的實(shí)現(xiàn)系統(tǒng),所述系統(tǒng)還包括映射表管理模塊,用于將從所述固態(tài)硬盤(pán)中查找到的與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系讀取至所述內(nèi)存中,放入哈希桶進(jìn)行管理。
[0027]根據(jù)本發(fā)明的實(shí)現(xiàn)系統(tǒng),所述系統(tǒng)還包括I/O操作模塊,用于根據(jù)該固態(tài)硬盤(pán)物理地址在所述固態(tài)硬盤(pán)中進(jìn)行I/O操作。
[0028]根據(jù)本發(fā)明的實(shí)現(xiàn)系統(tǒng),所述映射表管理模塊還用于當(dāng)某個(gè)緩存地址映射關(guān)系的熱度降低時(shí),將該緩存地址映射關(guān)系放在哈希桶隊(duì)列的尾部,當(dāng)有I/o讀寫(xiě)操作請(qǐng)求需要新的緩存地址映射關(guān)系時(shí)則將該哈希桶隊(duì)列尾部的緩存地址映射關(guān)系刪除。
[0029]本發(fā)明通過(guò)建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表,將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中,接收I/o操作請(qǐng)求時(shí),從內(nèi)存以及固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。本發(fā)明采用動(dòng)態(tài)的方法來(lái)管理映射表,在建立映射表的初期只分配所需內(nèi)存的1/N (即按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中),在運(yùn)行過(guò)程中根據(jù)數(shù)據(jù)的熱度不同,將映射表調(diào)入內(nèi)存或存入SSD固定區(qū)域,以此來(lái)減少對(duì)系統(tǒng)內(nèi)存的占用,本發(fā)明能在犧牲較小性能的情況下來(lái)減輕系統(tǒng)整體的負(fù)擔(dān),獲取系統(tǒng)整體性能上的提升。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0030]圖1為本發(fā)明一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)系統(tǒng)的原理框圖;
[0031]圖2為本發(fā)明一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法的流程圖;
[0032]圖3為本發(fā)明一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法一種應(yīng)用實(shí)施例的流程圖。
【具體實(shí)施方式】
[0033]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0034]如圖1所示,本發(fā)明一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)系統(tǒng)100,包括映射表建立模塊10、映射表保存模塊20、I/O請(qǐng)求接收模塊30、查找模塊40、映射表管理模塊50以及I/O操作模塊60。該實(shí)現(xiàn)系統(tǒng)100以軟件形式內(nèi)置于固態(tài)硬盤(pán)和\或系統(tǒng)內(nèi)存中。
[0035]映射表建立模塊10,用于將建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表。由于采用固態(tài)硬盤(pán)作為緩存,需要建立固態(tài)硬盤(pán)和磁盤(pán)之間的物理地址映射關(guān)系,從而在數(shù)據(jù)存取時(shí),直接從固態(tài)硬盤(pán)中進(jìn)行數(shù)據(jù)操作,以提高數(shù)據(jù)存取速度。
[0036]映射表保存模塊20 ;用于將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中。由于映射關(guān)系表過(guò)大,通常從幾百兆到幾個(gè)G不等,因此本發(fā)明全部的緩存地址映射表保存在固態(tài)硬盤(pán)中,而僅僅將其中熱點(diǎn)數(shù)據(jù)對(duì)應(yīng)的映射關(guān)系復(fù)制到內(nèi)存中,一方面提高映射表的查找速度,另一方面避免給系統(tǒng)帶來(lái)較大負(fù)擔(dān)。并且由于對(duì)數(shù)據(jù)進(jìn)行操作過(guò)程中,需要修改緩存映射關(guān)系,因此也需要根據(jù)內(nèi)存中的緩存映射關(guān)系來(lái)實(shí)時(shí)更新固態(tài)硬盤(pán)中保存的緩存地址映射表。在系統(tǒng)斷電時(shí),也可更具固態(tài)硬盤(pán)中的緩存映射表來(lái)進(jìn)行數(shù)據(jù)恢復(fù)。
[0037]I/O請(qǐng)求接收模塊30,用于接收I/O操作請(qǐng)求,I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址。
[0038]查找模塊40,用于從內(nèi)存以及固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。具體的,查找模塊40根據(jù)待操作磁盤(pán)物理地址首先從內(nèi)存中保存的緩存地址映射表中查找與該磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,若找至IJ,則根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址;若內(nèi)存中保存的緩存地址映射表中未保存與待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從固態(tài)硬盤(pán)中查找待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
[0039]映射表管理模塊50,用于將從固態(tài)硬盤(pán)中查找到的與待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系讀取至內(nèi)存中,放入哈希桶進(jìn)行管理。另外映射表管理模塊50還用于當(dāng)某個(gè)緩存地址映射關(guān)系的熱度降低時(shí),將該緩存地址映射關(guān)系放在哈希桶隊(duì)列的尾部,當(dāng)有I/O讀寫(xiě)操作請(qǐng)求需要新的緩存地址映射關(guān)系時(shí)則將該哈希桶隊(duì)列尾部的緩存地址映射關(guān)系刪除。從而在運(yùn)行過(guò)程中將熱度高的數(shù)據(jù)對(duì)應(yīng)的映射關(guān)系調(diào)入內(nèi)存中,熱度低的數(shù)據(jù)對(duì)應(yīng)的緩存映射關(guān)系從內(nèi)存中刪除,以此來(lái)減少對(duì)系統(tǒng)內(nèi)存的占用。
[0040]I/O操作模塊60,用于根據(jù)該固態(tài)硬盤(pán)物理地址在固態(tài)硬盤(pán)中進(jìn)行I/O操作。從固態(tài)硬盤(pán)中進(jìn)行數(shù)據(jù)I/o操作,從而使得固態(tài)硬盤(pán)起到了緩存的作用。
[0041]本專(zhuān)利利用數(shù)據(jù)局部性原理,在分配緩存軟件映射表時(shí),只將部分邏輯物理地址映射表分配至內(nèi)存,其他部分的邏輯物理地址映射表保存至固態(tài)硬盤(pán),系統(tǒng)后臺(tái)根據(jù)數(shù)據(jù)的熱度來(lái)決定將哪些映射表保存到SSD盤(pán),當(dāng)有IO進(jìn)行讀寫(xiě)時(shí)首先在內(nèi)存中進(jìn)行映射表的查找,如果找到映射表則繼續(xù)IO操作,如果沒(méi)有找到相應(yīng)的映射表,則將對(duì)應(yīng)地址的映射表從SSD中讀取并存入到內(nèi)存中,并放入哈希桶進(jìn)行管理。
[0042]在一個(gè)實(shí)施例中,在系統(tǒng)初始運(yùn)行時(shí)候,由于系統(tǒng)中還沒(méi)有熱點(diǎn)數(shù)據(jù),可將緩存地址映射表的前面部分放置內(nèi)存中,并且由于固態(tài)硬盤(pán)中并未緩存數(shù)據(jù),因此固態(tài)硬盤(pán)中的緩存地址映射表也是無(wú)效的。系統(tǒng)運(yùn)行時(shí),當(dāng)系統(tǒng)接收到帶有待操作磁盤(pán)物理地址的I/o請(qǐng)求時(shí),系統(tǒng)首先從內(nèi)存中保存的緩存地址映射表查找待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,若找到,則根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址,從固態(tài)硬盤(pán)中進(jìn)行數(shù)據(jù)存取。若內(nèi)存中保存的緩存地址映射表中未保存與待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址,然后從固態(tài)硬盤(pán)中進(jìn)行數(shù)據(jù)存取,并且將該緩存地址映射關(guān)系(也可以是該緩存地址映射關(guān)系對(duì)應(yīng)的一個(gè)緩存映射頁(yè)表)讀取到內(nèi)存中放入哈希桶進(jìn)行管理,將內(nèi)存中熱度低的數(shù)據(jù)對(duì)應(yīng)的緩存映射關(guān)系進(jìn)行刪除。若固態(tài)硬盤(pán)中也未保存該待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則根據(jù)該待操作磁盤(pán)物理地址從磁盤(pán)中讀取數(shù)據(jù)至內(nèi)存中進(jìn)行操作,并將該數(shù)據(jù)寫(xiě)入固態(tài)硬盤(pán)中進(jìn)行緩存,建立新的緩存地址映射關(guān)系,當(dāng)下一次對(duì)該數(shù)據(jù)進(jìn)行操作時(shí),就可從固態(tài)硬盤(pán)中進(jìn)行數(shù)據(jù)存取,從而提高了數(shù)據(jù)存取速度。另外由于固態(tài)硬盤(pán)中的容量有限,需要建立淘汰機(jī)制,將舊的數(shù)據(jù)從固態(tài)硬盤(pán)中淘汰,該淘汰機(jī)制并非本發(fā)明重點(diǎn),在此不再詳述,可參考現(xiàn)有技術(shù)。
[0043]如圖2所示,本發(fā)明相應(yīng)提供一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法,其通過(guò)如圖1所示的系統(tǒng)實(shí)現(xiàn),該方法包括:
[0044]步驟S201,建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表。本步驟通過(guò)映射表建立模塊10實(shí)現(xiàn)。
[0045]步驟S202,將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中。本步驟通過(guò)映射表保存模塊20實(shí)現(xiàn)。
[0046]步驟S203,固態(tài)硬盤(pán)接收I/O操作請(qǐng)求,所述I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址。本步驟通過(guò)I/O請(qǐng)求接收模塊30實(shí)現(xiàn)。
[0047]步驟S204,從內(nèi)存以及固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。本步驟通過(guò)查找模塊40實(shí)現(xiàn)。
[0048]優(yōu)選的是步驟S204包括:根據(jù)待操作磁盤(pán)物理地址從內(nèi)存中保存的緩存地址映射表中查找與該磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址;若所述內(nèi)存中保存的緩存地址映射表中未保存與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。將從固態(tài)硬盤(pán)中查找到的與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系讀取至內(nèi)存中,放入哈希桶進(jìn)行管理。
[0049]優(yōu)選的是,步驟S204之后還包括:根據(jù)該固態(tài)硬盤(pán)物理地址在固態(tài)硬盤(pán)中進(jìn)行I/O操作。
[0050]優(yōu)選的是,該方法還包括:當(dāng)某個(gè)緩存地址映射關(guān)系的熱度降低時(shí),將該緩存地址映射關(guān)系放在哈希桶隊(duì)列的尾部,當(dāng)有I/o讀寫(xiě)操作請(qǐng)求需要新的緩存地址映射關(guān)系時(shí)則將該哈希桶隊(duì)列尾部的緩存地址映射關(guān)系刪除。
[0051]圖3是本發(fā)明采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法一種應(yīng)用實(shí)施例的流程圖,該流程包括:
[0052]步驟S301,接收I/O讀寫(xiě)操作請(qǐng)求,I/O讀寫(xiě)操作請(qǐng)求包括待操作磁盤(pán)物理地址。本步驟通過(guò)I/o請(qǐng)求接收模塊實(shí)現(xiàn)。
[0053]步驟S302:從內(nèi)存中保存的緩存地址映射表中查找與待操作該磁盤(pán)物理地址對(duì)應(yīng)的緩存映射關(guān)系。
[0054]步驟S303,判斷是否找到該緩存映射關(guān)系,若是則進(jìn)入步驟S307,否則進(jìn)入步驟S304。
[0055]步驟S304,從固態(tài)硬盤(pán)的緩存地址映射表中查找該待操作該磁盤(pán)物理地址對(duì)應(yīng)的緩存映射關(guān)系。
[0056]步驟S305,判斷是否在固態(tài)硬盤(pán)的緩存地址映射表中找到該緩存映射關(guān)系,若是則進(jìn)入步驟S308,否則進(jìn)入步驟S306。
[0057]步驟S306,根據(jù)該待操作磁盤(pán)物理地址從磁盤(pán)中讀取數(shù)據(jù)到內(nèi)存中進(jìn)行操作,并將該數(shù)據(jù)寫(xiě)入固態(tài)硬盤(pán)中,建立新的緩存映射關(guān)系。
[0058]步驟S307,根據(jù)該緩存映射關(guān)系獲取相應(yīng)的固態(tài)硬盤(pán)物理地址,并根據(jù)該固態(tài)硬盤(pán)地址從固態(tài)硬盤(pán)中進(jìn)行數(shù)據(jù)存取。
[0059]綜上所述,本發(fā)明將邏輯物理地址映射表按比例分配至內(nèi)存以及固態(tài)硬盤(pán)中,當(dāng)接收I/o讀寫(xiě)操作請(qǐng)求時(shí);從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的邏輯物理地址映射表的查找該I/O邏輯地址對(duì)應(yīng)的物理地址。并采用動(dòng)態(tài)的方法來(lái)管理映射表,在建立映射表的初期只分配所需內(nèi)存的1/N,在運(yùn)行過(guò)程中根據(jù)數(shù)據(jù)的熱度不同,將映射表調(diào)入內(nèi)存或存入SSD固定區(qū)域,以此來(lái)減少對(duì)系統(tǒng)內(nèi)存的占用,本發(fā)明能在犧牲較小性能的情況下來(lái)減輕系統(tǒng)整體的負(fù)擔(dān),獲取系統(tǒng)整體性能上的提升。
[0060]當(dāng)然,本發(fā)明還可有其它多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員當(dāng)可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明所附的權(quán)利要求的保護(hù)范圍。
【權(quán)利要求】
1.一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)方法,其特征在于,包括: 建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表; 將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中; 所述固態(tài)硬盤(pán)接收I/o操作請(qǐng)求,所述I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址; 從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
2.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于,“從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址,”的步驟包括: 根據(jù)所述待操作磁盤(pán)物理地址從所述內(nèi)存中保存的緩存地址映射表中查找與該磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址; 若所述內(nèi)存中保存的緩存地址映射表中未保存與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
3.根據(jù)權(quán)利要求2所述的實(shí)現(xiàn)方法,其特征在于,“從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址”的步驟之后還包括, 將從所述固態(tài)硬盤(pán)中查找到的與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系讀取至所述內(nèi)存中,放入哈希桶進(jìn)行管理。
4.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于,“從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址”的步驟之后包括: 根據(jù)該固態(tài)硬盤(pán)物理地址在所述固態(tài)硬盤(pán)中進(jìn)行I/o操作。
5.根據(jù)權(quán)利要求1所述的實(shí)現(xiàn)方法,其特征在于,所述實(shí)現(xiàn)方法還包括: 當(dāng)某個(gè)緩存地址映射關(guān)系的熱度降低時(shí),將該緩存地址映射關(guān)系放在哈希桶隊(duì)列的尾部,當(dāng)有I/O讀寫(xiě)操作請(qǐng)求需要新的緩存地址映射關(guān)系時(shí)則將該哈希桶隊(duì)列尾部的緩存地址映射關(guān)系刪除。
6.一種采用固態(tài)硬盤(pán)作為計(jì)算機(jī)高速緩存的實(shí)現(xiàn)系統(tǒng),其特征在于,所述系統(tǒng)包括: 映射表建立模塊,用于建立磁盤(pán)與作為緩存的固態(tài)硬盤(pán)之間的緩存地址映射表; 映射表保存模塊;用于將該緩存地址映射表保存至固態(tài)硬盤(pán)中,并按預(yù)設(shè)比例將部分緩存地址映射表復(fù)制至內(nèi)存中; I/o請(qǐng)求接收模塊,用于接收I/O操作請(qǐng)求,所述I/O操作請(qǐng)求包括待操作磁盤(pán)物理地址; 查找模塊,用于從所述內(nèi)存以及所述固態(tài)硬盤(pán)中保存的緩存地址映射表查找該待操作磁盤(pán)物理地址對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
7.根據(jù)權(quán)利要求6所述的實(shí)現(xiàn)系統(tǒng),其特征在于,所述查找模塊還用于根據(jù)所述待操作磁盤(pán)物理地址從所述內(nèi)存中保存的緩存地址映射表中查找與該磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址; 若所述內(nèi)存中保存的緩存地址映射表中未保存與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,則從所述固態(tài)硬盤(pán)中查找所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系,并根據(jù)該緩存地址映射關(guān)系獲取對(duì)應(yīng)的固態(tài)硬盤(pán)物理地址。
8.根據(jù)權(quán)利要求7所述的實(shí)現(xiàn)系統(tǒng),其特診在于,所述系統(tǒng)還包括映射表管理模塊,用于將從所述固態(tài)硬盤(pán)中查找到的與所述待操作磁盤(pán)物理地址對(duì)應(yīng)的緩存地址映射關(guān)系讀取至所述內(nèi)存中,放入哈希桶進(jìn)行管理。
9.根據(jù)權(quán)利要求6所述的實(shí)現(xiàn)系統(tǒng),其特征在于,所述系統(tǒng)還包括I/O操作模塊,用于根據(jù)該固態(tài)硬盤(pán)物理地址在所述固態(tài)硬盤(pán)中進(jìn)行I/o操作。
10.根據(jù)權(quán)利要求6所述的實(shí)現(xiàn)系統(tǒng),其特征在于,所述映射表管理模塊還用于當(dāng)某個(gè)緩存地址映射關(guān)系的熱度降低時(shí),將該緩存地址映射關(guān)系放在哈希桶隊(duì)列的尾部,當(dāng)有I/O讀寫(xiě)操作請(qǐng)求需要新的緩存地址映射關(guān)系時(shí)則將該哈希桶隊(duì)列尾部的緩存地址映射關(guān)系刪除。
【文檔編號(hào)】G06F12/08GK103678166SQ201310357624
【公開(kāi)日】2014年3月26日 申請(qǐng)日期:2013年8月16日 優(yōu)先權(quán)日:2013年8月16日
【發(fā)明者】王志波 申請(qǐng)人:記憶科技(深圳)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
苏州市| 社旗县| 义马市| 长宁区| 中方县| 丹江口市| 商丘市| 莱州市| 平阴县| 达拉特旗| 高邑县| 乐清市| 保山市| 临夏县| 固安县| 鄄城县| 黄浦区| 临武县| 沙湾县| 阳东县| 高邮市| 房山区| 宁都县| 石渠县| 长春市| 吉隆县| 察雅县| 碌曲县| 年辖:市辖区| 偃师市| 罗田县| 怀化市| 乌苏市| 尖扎县| 新绛县| 通州市| 中卫市| 马边| 大英县| 衡东县| 安远县|