用于管理存儲(chǔ)器的方法和設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本公開(kāi)總體上涉及一種用于管理終端中的存儲(chǔ)器的方法和設(shè)備,更具體地講,涉及一種能夠快速恢復(fù)終端中的存儲(chǔ)器的區(qū)域的存儲(chǔ)器管理方法和設(shè)備。
【背景技術(shù)】
[0002]系統(tǒng)中的一些功能單元會(huì)需要分配物理上連續(xù)的存儲(chǔ)緩沖器。例如,對(duì)于直接存儲(chǔ)器訪問(wèn)(DMA),一些硬件始終需要物理上連續(xù)的存儲(chǔ)緩沖器。雖然甚至存在配備有用于處理分散/集中DMA功能的硬件的功能單元,但是配備有低成本的DMA引擎的硬件會(huì)非常普遍地需要物理上連續(xù)的存儲(chǔ)器。
[0003]這種硬件可包括相機(jī)、視頻編碼器/解碼器(編解碼器)等。具體地講,最新的全高清(HD)視頻幀具有大約2兆像素或更高的分辨率,并且需要大約6兆字節(jié)(MB)的存儲(chǔ)器來(lái)處理全HD視頻幀。這些硬件模塊因高昂的制造成本而配備有簡(jiǎn)單的DMA引擎,因此這些硬件模塊必需需要物理上連續(xù)的存儲(chǔ)器來(lái)進(jìn)行它們的操作。
[0004]然而,物理上連續(xù)的存儲(chǔ)器的分配因由操作系統(tǒng)(OS)使用的存儲(chǔ)器的管理性質(zhì)而不能始終得以保證。OS將物理地址空間劃分為小的單元的頁(yè)幀,以進(jìn)行管理。該方法在將邏輯上連續(xù)的存儲(chǔ)器空間提供給OS驅(qū)動(dòng)或?qū)崿F(xiàn)的處理方面不存在問(wèn)題。然而,在已經(jīng)工作很長(zhǎng)時(shí)間的終端的系統(tǒng)中,幾乎不可能找到預(yù)定大小或更大的物理上連續(xù)的存儲(chǔ)器空間。換言之,功能單元的驅(qū)動(dòng)取決于物理存儲(chǔ)器的碎片而不能得以保證。
[0005]這些問(wèn)題對(duì)于電子裝置(諸如終端)會(huì)是致命的,意味著終端的一些功能根據(jù)存儲(chǔ)器分配是否成功而不會(huì)被驅(qū)動(dòng)(即,使用)。這些不確定性是嚴(yán)重的問(wèn)題,這是因?yàn)楸仨毐WC無(wú)論用戶何時(shí)需要,可始終驅(qū)動(dòng)電子裝置的功能。
[0006]此外,一些功能單元需要分配特定存儲(chǔ)器位置,或者對(duì)于功能單元,存儲(chǔ)器的區(qū)域會(huì)需要按照預(yù)定規(guī)則被分配。因此,為了減少制造成本或?yàn)榱吮阌陂_(kāi)發(fā),硬件設(shè)計(jì)者經(jīng)常在設(shè)計(jì)中反映出這些限制。然而,這些限制使得物理上連續(xù)的存儲(chǔ)器的分配更困難。
[0007]為了解決這些和其它問(wèn)題,傳統(tǒng)功能單元驅(qū)動(dòng)器使用以下方式:在OS的初始驅(qū)動(dòng)時(shí),單獨(dú)地保留需要的存儲(chǔ)器區(qū)域。在OS的初始驅(qū)動(dòng)時(shí),可容易地獲得物理上連續(xù)的存儲(chǔ)器,這可使功能單元保留其操作所需的存儲(chǔ)器區(qū)域,從而防止OS使用保留區(qū)域。該方法保證在功能單元被驅(qū)動(dòng)時(shí)物理上連續(xù)的存儲(chǔ)器的分配始終成功。因此,OS可僅使用除了由功能單元驅(qū)動(dòng)器保留的存儲(chǔ)器區(qū)域之外的區(qū)域,而存儲(chǔ)器的保留區(qū)域可僅用于功能單元?!膀?qū)動(dòng)功能單元”是指以將使功能單元訪問(wèn)或至少需要存儲(chǔ)器(更具體地講,針對(duì)所述功能單元分配/保留的存儲(chǔ)器)的方式使用或請(qǐng)求功能單元的功能?!膀?qū)動(dòng)”[功能單元]的另一表達(dá)可以是“使用”或“訪問(wèn)”[功能單元]。
[0008]圖1示出包括保留區(qū)域和非保留區(qū)域的示例物理存儲(chǔ)器。圖1中的存儲(chǔ)器具有針對(duì)視頻編解碼單元保留的區(qū)域101a、針對(duì)相機(jī)單元保留的區(qū)域1lb以及除了區(qū)域1la和區(qū)域1lb之外的非保留區(qū)域102,其中,OS可動(dòng)態(tài)地分配非保留區(qū)域102。
[0009]然而,不合需要地,由于即使當(dāng)保留區(qū)域的相關(guān)聯(lián)的功能單元沒(méi)有被驅(qū)動(dòng)時(shí)OS也不能使用保留區(qū)域,因此存儲(chǔ)器保留方法會(huì)造成存儲(chǔ)器的浪費(fèi)。例如,如果相機(jī)單元被激活的時(shí)間與裝置的總使用時(shí)間的比率為10%或更小,則在90%或更多的相機(jī)單元沒(méi)有被使用的剩余時(shí)間內(nèi),針對(duì)相機(jī)單元保留的區(qū)域根本不會(huì)被使用,從而造成存儲(chǔ)器的浪費(fèi)。
[0010]近年來(lái),嵌入式系統(tǒng)將片上芯片(SoC)用作單個(gè)封裝,其中,SoC是通過(guò)將多個(gè)功能單元集成為中央處理器(CPU)芯片而制造的。當(dāng)嵌入在SoC中的功能單元(諸如視頻編解碼器)的類型和數(shù)量增加時(shí),由于針對(duì)這些嵌入式硬件功能單元保留的存儲(chǔ)器區(qū)域而浪費(fèi)的存儲(chǔ)器的量增加得越來(lái)越多,從而導(dǎo)致OS可使用的可用存儲(chǔ)器的減少。為了補(bǔ)償這些不足,廣品可被配備有尚性能存儲(chǔ)器,從而導(dǎo)致成本的提尚。
[0011]為了解決這些問(wèn)題,本公開(kāi)提供了以下方法:當(dāng)具有保留存儲(chǔ)器區(qū)域的功能單元沒(méi)有被驅(qū)動(dòng)時(shí),所述保留存儲(chǔ)器區(qū)域可被用作非保留區(qū)域,即,OS可使用的可用存儲(chǔ)器區(qū)域。
[0012]如果在功能單元沒(méi)有被驅(qū)動(dòng)時(shí)將保留區(qū)域用作非保留區(qū)域時(shí),被分配了保留存儲(chǔ)器區(qū)域的功能單元被驅(qū)動(dòng),則OS丟棄存儲(chǔ)在保留區(qū)域中的數(shù)據(jù),從而如其原始目的那樣,將保留區(qū)域提供或返還給功能單元。
[0013]丟棄存儲(chǔ)在保留區(qū)域中的數(shù)據(jù)通常被稱為“頁(yè)迀移”。
[0014]有利地,該存儲(chǔ)器管理技術(shù)可將針對(duì)幾乎一直處于空閑狀態(tài)的功能單元保留的區(qū)域用作通用目的,從而防止存儲(chǔ)器的浪費(fèi),并增加對(duì)存儲(chǔ)器資源的利用,進(jìn)而對(duì)由于可用存儲(chǔ)器區(qū)域的增加而帶來(lái)的總體系統(tǒng)性能的提高做出貢獻(xiàn)。
【發(fā)明內(nèi)容】
[0015][技術(shù)問(wèn)題]
[0016]然而,不合需要地,功能單元的驅(qū)動(dòng)時(shí)間會(huì)因頁(yè)迀移的負(fù)擔(dān)而增加。
[0017]例如,如果針對(duì)相機(jī)單元保留的存儲(chǔ)器區(qū)域被用作通用目的,則相機(jī)應(yīng)用的驅(qū)動(dòng)或執(zhí)行可比之前延遲?,F(xiàn)今的相機(jī)單元消耗大約10兆字節(jié)的存儲(chǔ)器。對(duì)10兆字節(jié)的存儲(chǔ)器空間執(zhí)行頁(yè)迀移會(huì)引起相機(jī)驅(qū)動(dòng)時(shí)間的顯著延遲。
[0018]上述信息僅被呈現(xiàn)為有助于本公開(kāi)的理解的背景信息。對(duì)于任何上述內(nèi)容是否可適用于針對(duì)本公開(kāi)的現(xiàn)有技術(shù),未做出任何確定,也未做出任何斷言。
[0019][技術(shù)方案]
[0020]為了解決現(xiàn)有技術(shù)的上述缺陷,主要目的在于提供一種能夠快速收回終端中的存儲(chǔ)器的區(qū)域的存儲(chǔ)器管理方法和設(shè)備。
[0021]本公開(kāi)的另一方面在于提供一種能夠在終端中以裝置被驅(qū)動(dòng)或啟用的時(shí)間快速收回裝置的保留區(qū)域的存儲(chǔ)器管理方法和設(shè)備。
[0022]根據(jù)本公開(kāi)的一個(gè)方面,提供一種用于管理終端中的存儲(chǔ)器的方法,所述方法包括:如果分配了多個(gè)保留區(qū)域的功能單元沒(méi)有被驅(qū)動(dòng),則將具有數(shù)據(jù)收回條件集中的數(shù)據(jù)收回條件的數(shù)據(jù)存儲(chǔ)在所述多個(gè)保留區(qū)域中;如果功能單元被驅(qū)動(dòng),則基于數(shù)據(jù)收回條件集中的數(shù)據(jù)收回條件處理存儲(chǔ)在所述多個(gè)保留區(qū)域中的一個(gè)保留區(qū)域中的數(shù)據(jù),以恢復(fù)用于驅(qū)動(dòng)功能單元的所述多個(gè)保留區(qū)域。
[0023]根據(jù)本公開(kāi)的另一方面,提供一種用于管理終端中的存儲(chǔ)器的方法。所述方法包括:如果分配了多個(gè)保留區(qū)域中的一個(gè)保留區(qū)域的功能單元沒(méi)有被驅(qū)動(dòng),則以相應(yīng)的功率單元的驅(qū)動(dòng)頻率的遞減順序,將數(shù)據(jù)存儲(chǔ)在所述多個(gè)保留區(qū)域中的一個(gè)保留區(qū)域中,如果功能單元被驅(qū)動(dòng),則處理存儲(chǔ)在所述多個(gè)保留區(qū)域中的一個(gè)保留區(qū)域中的數(shù)據(jù),以恢復(fù)用于驅(qū)動(dòng)功能單元的所述多個(gè)保留區(qū)域。
[0024]根據(jù)本公開(kāi)的另一方面,提供一種用于管理終端中的存儲(chǔ)器的設(shè)備。所述設(shè)備包括:視頻編解碼器,被驅(qū)動(dòng)以進(jìn)行視頻記錄或視頻回放,且存儲(chǔ)器具有針對(duì)所述視頻編解碼器的用于視頻編解碼器的保留區(qū)域;相機(jī)單元,被驅(qū)動(dòng)以執(zhí)行用于圖像捕捉或視頻記錄的預(yù)覽功能,且存儲(chǔ)器針對(duì)所述相機(jī)單元而具有用于相機(jī)單元的保留區(qū)域;存儲(chǔ)器包括多個(gè)保留區(qū)域和多個(gè)非保留區(qū)域,其中,如果與所述多個(gè)保留區(qū)域相應(yīng)的功能單元沒(méi)有被驅(qū)動(dòng),則將與針對(duì)所述多個(gè)保留區(qū)域中的每個(gè)保留區(qū)域設(shè)置的數(shù)據(jù)收回條件相應(yīng)的數(shù)據(jù)存儲(chǔ)在所述多個(gè)保留區(qū)域中,如果功能單元被驅(qū)動(dòng),則根據(jù)針對(duì)所述多個(gè)保留區(qū)域中的每個(gè)設(shè)置的數(shù)據(jù)收回條件處理存儲(chǔ)在所述多個(gè)保留區(qū)域中的每個(gè)保留區(qū)域中的數(shù)據(jù),以恢復(fù)用于驅(qū)動(dòng)功能單元的所述多個(gè)保留區(qū)域。
[0025]根據(jù)本公開(kāi)的另一方面,提供一種用于管理終端中的存儲(chǔ)器的設(shè)備。所述設(shè)備包括:視頻編解碼器,被驅(qū)動(dòng)以進(jìn)行視頻記錄或視頻回放,且存儲(chǔ)器針對(duì)所述視頻編解碼器而具有用于視頻編解碼器的保留區(qū)域;相機(jī)單元,被驅(qū)動(dòng)以執(zhí)行用于圖像捕捉或視頻記錄的預(yù)覽功能,且存儲(chǔ)器針對(duì)所述相機(jī)單元而具有用于相機(jī)單元的保留區(qū)域;存儲(chǔ)器包括多個(gè)保留區(qū)域和多個(gè)非保留區(qū)域,其中,如果與所述多個(gè)保留區(qū)域相應(yīng)的功能單元沒(méi)有被驅(qū)動(dòng),則以相應(yīng)的功率單元的驅(qū)動(dòng)頻率的遞減順序,將數(shù)據(jù)存儲(chǔ)在所述多個(gè)保留區(qū)域中,如果功能單元被驅(qū)動(dòng),則處理存儲(chǔ)在所述多個(gè)保留區(qū)域中的每個(gè)中的數(shù)據(jù),以恢復(fù)用于驅(qū)動(dòng)功能單元的所述多個(gè)保留區(qū)域。
[0026]從下面結(jié)合附圖公開(kāi)本公開(kāi)的示例性實(shí)施例的【具體實(shí)施方式】中,本公開(kāi)的其它方面、優(yōu)點(diǎn)和顯著特征對(duì)于本領(lǐng)域技術(shù)人員而言將變得清楚。
[0027]在開(kāi)始下面的本公開(kāi)的【具體實(shí)施方式】之前,闡述在本專