作者:-1????發(fā)布時(shí)間:2022-11-11 13:58 ????瀏覽次數(shù) :
在前面,我們規(guī)定給定的LBA靜態(tài)映射到特定的allocation pool。然而,cleaning可以以更細(xì)的粒度操作。這樣做的一個(gè)原因是利用閃存架構(gòu)中的低級(jí)效率,例如前面描述的內(nèi)部copy-back操作 ,該操作僅適用于在同一plane內(nèi)移動(dòng)page的情況。由于2048 blocks的單個(gè)閃存plane代表用于負(fù)載分配的非常小的allocation pool,我們希望從更大的allocation pool。然而,如果保持每個(gè)plane的active blocks和cleaning狀態(tài),則可以高概率地布置同一plane內(nèi)的cleaning操作。
把cleaning block和Log-Structured File System 中的log-cleaning看的很相似。但是,除了我們模擬塊存儲(chǔ)而不是文件系統(tǒng)的明顯區(qū)別之外,以嚴(yán)格的磁盤(pán)順序?qū)懭牒颓宄娜罩窘Y(jié)構(gòu)存儲(chǔ)不能選擇候選塊以便產(chǎn)生更高的清除效率。而且,與類似LFS的文件系統(tǒng)一樣,組合工作負(fù)載太容易了,這會(huì)導(dǎo)致所有可恢復(fù)空間遠(yuǎn)離日志的清除指針。例如,反復(fù)寫(xiě)入相同的塊集將需要在磁盤(pán)內(nèi)容上進(jìn)行完整循環(huán),以使清潔指針到達(dá)日志末尾附近的空閑空間。并且,與日志結(jié)構(gòu)文件系統(tǒng)不同,此處的磁盤(pán)始終為“滿”,始終對(duì)應(yīng)于最大清潔壓力。