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