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

計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法

文檔序號(hào):6372941閱讀:274來源:國(guó)知局
專利名稱:計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)內(nèi)存的管理方法,特別涉及獨(dú)立于操作系統(tǒng)的計(jì)算機(jī)內(nèi)存管理方法。
背景技術(shù)
內(nèi)存管理是計(jì)算機(jī)系統(tǒng)中的一項(xiàng)重要工作,一般而言,內(nèi)存管理是由操作系統(tǒng)完成的,應(yīng)用程序在需要內(nèi)存的時(shí)侯向操作系統(tǒng)申請(qǐng),用完以后向操作系統(tǒng)釋放。但是在一些特殊的應(yīng)用領(lǐng)域,特別是對(duì)可靠性要求很高的領(lǐng)域,例如基于嵌入式芯片的實(shí)時(shí)應(yīng)用系統(tǒng)中,為了防止因?yàn)樯暾?qǐng)內(nèi)存得不到滿足而產(chǎn)生的災(zāi)難性后果,往往采用先申請(qǐng)可能用到的最大內(nèi)存,然后由應(yīng)用程序自己管理內(nèi)存的方法。
應(yīng)用程序自行管理內(nèi)存的一種常見做法是把內(nèi)存分割成若干大小相同的內(nèi)存塊,然后用鏈表連接各內(nèi)存塊,在每個(gè)內(nèi)存塊的頭部存放該內(nèi)存塊的控制信息。在這種技術(shù)中,一旦發(fā)生應(yīng)用程序誤寫內(nèi)存的操作,往往會(huì)覆蓋內(nèi)存塊的控制信息,有可能會(huì)導(dǎo)致包括系統(tǒng)崩潰在內(nèi)的嚴(yán)重后果。
造成這種情況的一個(gè)主要原因在于,內(nèi)存塊的控制信息和給應(yīng)用層的內(nèi)存塊連續(xù)存放。

發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,使得應(yīng)用程序更好地管理自己的內(nèi)存,并且降低由于內(nèi)存被錯(cuò)誤地改寫而可能導(dǎo)致的惡果。
為了解決上述技術(shù)問題,在本方明所提供的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法中包含以下步驟
A應(yīng)用程序創(chuàng)建內(nèi)存池,所述內(nèi)存池包括用于存儲(chǔ)內(nèi)存池的控制信息的內(nèi)存池控制域、用于放置數(shù)據(jù)的內(nèi)存塊存儲(chǔ)區(qū)、以及用于標(biāo)示每一塊內(nèi)存的使用狀態(tài)和下一個(gè)可用內(nèi)存塊的索引的內(nèi)存使用標(biāo)記鏈;B應(yīng)用程序根據(jù)內(nèi)存池控制域中的控制信息,向內(nèi)存池申請(qǐng)內(nèi)存塊存儲(chǔ)區(qū)中的內(nèi)存塊,并修改內(nèi)存使用標(biāo)記鏈中信息;C應(yīng)用程序根據(jù)內(nèi)存池控制域中的控制信息,向內(nèi)存池釋放內(nèi)存塊存儲(chǔ)區(qū)中的內(nèi)存塊,并修改內(nèi)存使用標(biāo)記鏈中信息。
其中,所述內(nèi)存池的控制信息包括內(nèi)存池中各內(nèi)存塊的大小、內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)、當(dāng)前可用的內(nèi)存塊的索引、當(dāng)前可用的內(nèi)存塊個(gè)數(shù)、內(nèi)存塊存儲(chǔ)區(qū)的首地址和內(nèi)存使用標(biāo)記鏈的首地址。
所述內(nèi)存塊存儲(chǔ)區(qū)由預(yù)定數(shù)量的大小相同的內(nèi)存塊組成。
所述內(nèi)存使用標(biāo)記鏈由一個(gè)數(shù)組構(gòu)成,數(shù)組的每個(gè)元素包括兩個(gè)部分,分別標(biāo)示相對(duì)應(yīng)的內(nèi)存塊的狀態(tài)標(biāo)記,和下一個(gè)可用內(nèi)存塊的索引。
所述內(nèi)存塊的狀態(tài)標(biāo)記有兩個(gè)狀態(tài)已用狀態(tài)和空閑狀態(tài)。
所述步驟A還包含以下步驟A1 應(yīng)用程序創(chuàng)建內(nèi)存池控制域;A2 應(yīng)用程序創(chuàng)建內(nèi)存塊存儲(chǔ)區(qū);A3 應(yīng)用程序創(chuàng)建內(nèi)存使用標(biāo)記鏈,其中,將內(nèi)存使用標(biāo)記鏈中的內(nèi)存塊的狀態(tài)標(biāo)記置為空閑狀態(tài);將內(nèi)存使用標(biāo)記鏈中的下一個(gè)可用內(nèi)存的索引置為內(nèi)存塊存儲(chǔ)區(qū)中下一個(gè)內(nèi)存塊的索引;A4 應(yīng)用程序填寫所述內(nèi)存池控制域的控制信息,其中,當(dāng)前可用的內(nèi)存塊的索引填內(nèi)存塊存儲(chǔ)區(qū)第一個(gè)內(nèi)存塊的索引,當(dāng)前可用的內(nèi)存塊個(gè)數(shù)填寫內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)、內(nèi)存塊存儲(chǔ)區(qū)的首地址和內(nèi)存使用標(biāo)記鏈的首地址填寫相應(yīng)區(qū)域的內(nèi)存地址。
所述步驟B還包含以下步驟B1應(yīng)用程序根據(jù)所述內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù),判斷是否還有可用內(nèi)存塊,如果沒有,直接返回?zé)o效值,結(jié)束本流程,如果有,進(jìn)入步驟B2;B2計(jì)算機(jī)系統(tǒng)將所述內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊的索引返回給應(yīng)用程序,所述應(yīng)用程序?qū)⒃搩?nèi)存塊的狀態(tài)標(biāo)記設(shè)置成已用狀態(tài),同時(shí)把當(dāng)前可用的內(nèi)存塊的索引設(shè)置成該內(nèi)存塊的下一個(gè)可用內(nèi)存塊的索引,進(jìn)入步驟B3;B3所述應(yīng)用程序?qū)?nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù)減一。
所述步驟C還包含以下步驟C1應(yīng)用程序?qū)⑿枰尫诺膬?nèi)存塊在內(nèi)存使用標(biāo)記鏈中的使用標(biāo)記設(shè)置成空閑狀態(tài),將該內(nèi)存塊的下一個(gè)可用內(nèi)存塊的索引設(shè)置成內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊的索引,并把內(nèi)存池控制域中當(dāng)前可用的內(nèi)存塊的索引設(shè)置成需要釋放的內(nèi)存塊的索引;C2應(yīng)用程序把內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù)加一。
另外,所述計(jì)算機(jī)系統(tǒng)是基于嵌入式芯片的實(shí)時(shí)應(yīng)用系統(tǒng)。
通過比較可以發(fā)現(xiàn),本發(fā)明的技術(shù)方案與現(xiàn)有技術(shù)的區(qū)別在于,將內(nèi)存池分為各自獨(dú)立存儲(chǔ)的內(nèi)存池控制域、內(nèi)存塊存儲(chǔ)區(qū)以及內(nèi)存使用標(biāo)記鏈。其中該內(nèi)存使用標(biāo)記鏈標(biāo)示每一塊內(nèi)存的使用狀態(tài)和下一個(gè)可用內(nèi)存塊的索引。
這種技術(shù)方案上的區(qū)別,帶來了較為明顯的有益效果,即由于存儲(chǔ)數(shù)據(jù)的內(nèi)存塊存儲(chǔ)區(qū)獨(dú)立于存儲(chǔ)控制信息的內(nèi)存池控制域和內(nèi)存使用標(biāo)記鏈,因此當(dāng)誤寫內(nèi)存時(shí),影響僅限于內(nèi)存塊存儲(chǔ)區(qū)范圍內(nèi),極少會(huì)影響到存儲(chǔ)控制信息的內(nèi)存池控制域和內(nèi)存使用標(biāo)記鏈,因此本發(fā)明使誤寫內(nèi)存操作可能導(dǎo)致的危害大大減輕。另外,本發(fā)明獨(dú)立于操作系統(tǒng),具有良好的可移植性。


圖1是本發(fā)明的一個(gè)實(shí)施例中應(yīng)用程序創(chuàng)建內(nèi)存池的流程圖。
圖2是本發(fā)明的一個(gè)實(shí)施例中應(yīng)用程序向內(nèi)存池申請(qǐng)內(nèi)存的流程圖。
圖3是本發(fā)明的一個(gè)實(shí)施例中應(yīng)用程序釋放內(nèi)存的流程圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步地詳細(xì)描述。
在本發(fā)明提出的計(jì)算機(jī)系統(tǒng)內(nèi)存管理方法中,將內(nèi)存池分為內(nèi)存池控制域、內(nèi)存塊存儲(chǔ)區(qū)和內(nèi)存使用標(biāo)記鏈。
其中,內(nèi)存池控制域主要存儲(chǔ)內(nèi)存池的控制信息。內(nèi)存池的控制信息包括內(nèi)存池中各內(nèi)存塊的大小、內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)、當(dāng)前可用的內(nèi)存塊的索引、當(dāng)前可用的內(nèi)存塊個(gè)數(shù)、內(nèi)存塊存儲(chǔ)區(qū)的首地址和內(nèi)存使用標(biāo)記鏈的首地址。
內(nèi)存塊存儲(chǔ)區(qū)由預(yù)定數(shù)量的大小相同的內(nèi)存塊組成,內(nèi)存塊中用于放置數(shù)據(jù)信息。內(nèi)存塊的大小和總個(gè)數(shù)信息都存放在內(nèi)存池控制域中。
內(nèi)存使用標(biāo)記鏈由一個(gè)數(shù)組構(gòu)成,所述數(shù)組中元素的個(gè)數(shù)和內(nèi)存塊的個(gè)數(shù)相同,所述數(shù)組中每一個(gè)元素分別和內(nèi)存塊存儲(chǔ)區(qū)中每一個(gè)內(nèi)存塊一一對(duì)應(yīng),數(shù)組的每個(gè)元素包括兩個(gè)部分,即相對(duì)應(yīng)的內(nèi)存塊的狀態(tài)標(biāo)記和下一個(gè)可用內(nèi)存塊的索引。所述內(nèi)存塊的狀態(tài)標(biāo)記用來標(biāo)示相對(duì)應(yīng)的內(nèi)存塊的使用情況,有兩個(gè)狀態(tài)已用狀態(tài)和空閑狀態(tài)。
需要注意的是,在本實(shí)施例中,內(nèi)存池的上述三個(gè)部分可以使用不同的物理內(nèi)存區(qū)域,但各部分內(nèi)部保持連續(xù),可以使用定義數(shù)組或動(dòng)態(tài)申請(qǐng)大塊內(nèi)存的方法來實(shí)現(xiàn)。
由此可見,在本發(fā)明中,由于存儲(chǔ)數(shù)據(jù)的內(nèi)存塊存儲(chǔ)區(qū)獨(dú)立于存儲(chǔ)控制信息的內(nèi)存池控制域和內(nèi)存使用標(biāo)記鏈,因此萬一發(fā)生誤寫內(nèi)存的操作,絕大多數(shù)情況下僅限于內(nèi)存塊存儲(chǔ)區(qū)范圍內(nèi),極少會(huì)影響到存儲(chǔ)控制信息的內(nèi)存池控制域和內(nèi)存使用標(biāo)記鏈,誤寫內(nèi)存操作可能導(dǎo)致的危害大大減輕。
本發(fā)明提供的內(nèi)存管理方法包括創(chuàng)建內(nèi)存池、申請(qǐng)內(nèi)存和釋放內(nèi)存三個(gè)步驟。下面參照附圖,對(duì)這三個(gè)步驟進(jìn)行詳細(xì)描述和解釋。
首先參照?qǐng)D1描述應(yīng)用程序創(chuàng)建內(nèi)存池的過程。
如圖1所示,在步驟101中,應(yīng)用程序創(chuàng)建內(nèi)存池控制域。由于內(nèi)存池控制域所需內(nèi)存的大小是固定的,故直接為其申請(qǐng)固定大小內(nèi)存即可。
在步驟102中,應(yīng)用程序創(chuàng)建內(nèi)存塊存儲(chǔ)區(qū)。該內(nèi)存塊存儲(chǔ)區(qū)所需內(nèi)存的大小由內(nèi)存池中各內(nèi)存塊的大小和內(nèi)存塊總個(gè)數(shù)的乘積決定。
在步驟103中,應(yīng)用程序創(chuàng)建內(nèi)存使用標(biāo)記鏈。該內(nèi)存使用標(biāo)記鏈所需內(nèi)存的大小由所述內(nèi)存塊總個(gè)數(shù)確定。申請(qǐng)成功以后,將內(nèi)存使用標(biāo)記鏈中的內(nèi)存塊的狀態(tài)標(biāo)記置為空閑狀態(tài)。將內(nèi)存使用標(biāo)記鏈中的下一個(gè)可用內(nèi)存的索引置為內(nèi)存塊存儲(chǔ)區(qū)中下一個(gè)內(nèi)存塊的索引,以形成一個(gè)單向鏈表。
在步驟104中,應(yīng)用程序填寫內(nèi)存池控制域的控制信息。其中,內(nèi)存池中各內(nèi)存塊的大小和內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)是事先知道的,當(dāng)前可用的內(nèi)存塊的索引填內(nèi)存塊存儲(chǔ)區(qū)第一個(gè)內(nèi)存塊的索引,當(dāng)前可用的內(nèi)存塊個(gè)數(shù)填寫內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)、內(nèi)存塊存儲(chǔ)區(qū)的首地址和內(nèi)存使用標(biāo)記鏈的首地址填寫相應(yīng)區(qū)域的內(nèi)存地址。
需要指出的是,內(nèi)存池中各內(nèi)存塊的大小和內(nèi)存塊的總個(gè)數(shù)根據(jù)應(yīng)用程序的需要事先給出,一般在實(shí)時(shí)應(yīng)用程序中,為了避免需要內(nèi)存時(shí)申請(qǐng)不到而造成的異常情況,可以將內(nèi)存塊的總數(shù)設(shè)定為應(yīng)用程序可能需要的最大值。
下面參照?qǐng)D2描述應(yīng)用程序向內(nèi)存池申請(qǐng)內(nèi)存的過程。
如圖2所示,在步驟201中,應(yīng)用程序根據(jù)內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù),確定是否還有可用內(nèi)存塊。如果沒有,直接返回?zé)o效值,結(jié)束本流程;如果有,進(jìn)入步驟202。
在步驟202中,應(yīng)用程序獲取內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊的索引,把該內(nèi)存塊的狀態(tài)標(biāo)記設(shè)置成已用狀態(tài),同時(shí)把當(dāng)前可用的內(nèi)存塊的索引設(shè)置成該內(nèi)存塊的下一個(gè)可用內(nèi)存塊的索引,然后進(jìn)入步驟203。
在步驟203中,應(yīng)用程序把內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù)減需要指出的是,應(yīng)用程序可以根據(jù)得到的內(nèi)存塊索引和內(nèi)存塊存儲(chǔ)區(qū)的首地址計(jì)算出所得內(nèi)存塊的內(nèi)存地址,然后進(jìn)行使用。
下面參照?qǐng)D3描述應(yīng)用程序釋放內(nèi)存的過程。
如圖3所示,在步驟301中,在內(nèi)存使用標(biāo)記鏈中,應(yīng)用程序先將需要釋放的內(nèi)存塊在內(nèi)存使用標(biāo)記鏈中的使用標(biāo)記設(shè)置成空閑狀態(tài),再將該內(nèi)存塊的下一個(gè)可用內(nèi)存塊的索引設(shè)置成內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊的索引,然后把內(nèi)存池控制域中當(dāng)前可用的內(nèi)存塊的索引設(shè)置成需要釋放的內(nèi)存塊的索引。
在步驟302中,應(yīng)用程序把內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù)減一。
需要指出的是,本方法尤其適用于基于嵌入式芯片的實(shí)時(shí)應(yīng)用系統(tǒng)。
雖然通過參照本發(fā)明的某些優(yōu)選實(shí)施例,已經(jīng)對(duì)本發(fā)明進(jìn)行了圖示和描述,但本領(lǐng)域的普通技術(shù)人員應(yīng)該明白,可以在形式上和細(xì)節(jié)上對(duì)其作各種各樣的改變,而不偏離所附權(quán)利要求書所限定的本發(fā)明的精神和范圍。
權(quán)利要求
1.一種計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述方法包含以下步驟A 應(yīng)用程序創(chuàng)建內(nèi)存池,所述內(nèi)存池包括用于存儲(chǔ)內(nèi)存池的控制信息的內(nèi)存池控制域、用于放置數(shù)據(jù)的內(nèi)存塊存儲(chǔ)區(qū)、以及用于標(biāo)示每一塊內(nèi)存的使用狀態(tài)和下一個(gè)可用內(nèi)存塊的索引的內(nèi)存使用標(biāo)記鏈;B 應(yīng)用程序根據(jù)內(nèi)存池控制域中的控制信息,向內(nèi)存池申請(qǐng)內(nèi)存塊存儲(chǔ)區(qū)中的內(nèi)存塊,并修改內(nèi)存使用標(biāo)記鏈中信息;C 應(yīng)用程序根據(jù)內(nèi)存池控制域中的控制信息,向內(nèi)存池釋放內(nèi)存塊存儲(chǔ)區(qū)中的內(nèi)存塊,并修改內(nèi)存使用標(biāo)記鏈中信息。
2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述內(nèi)存池的控制信息包括內(nèi)存池中各內(nèi)存塊的大小、內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)、當(dāng)前可用的內(nèi)存塊的索引、當(dāng)前可用的內(nèi)存塊個(gè)數(shù)、內(nèi)存塊存儲(chǔ)區(qū)的首地址和內(nèi)存使用標(biāo)記鏈的首地址。
3.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述內(nèi)存塊存儲(chǔ)區(qū)由預(yù)定數(shù)量的大小相同的內(nèi)存塊組成。
4.根據(jù)權(quán)利要求3所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述內(nèi)存使用標(biāo)記鏈由一個(gè)數(shù)組構(gòu)成,所述數(shù)組的每個(gè)元素包括兩個(gè)部分,分別標(biāo)示相對(duì)應(yīng)的內(nèi)存塊的狀態(tài)標(biāo)記,和下一個(gè)可用內(nèi)存塊的索引。
5.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述內(nèi)存塊的狀態(tài)標(biāo)記有兩個(gè)狀態(tài)已用狀態(tài)和空閑狀態(tài)。
6.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述步驟A還包含以下步驟A1 應(yīng)用程序創(chuàng)建內(nèi)存池控制域;A2 應(yīng)用程序創(chuàng)建內(nèi)存塊存儲(chǔ)區(qū);A3 應(yīng)用程序創(chuàng)建內(nèi)存使用標(biāo)記鏈,其中,將內(nèi)存使用標(biāo)記鏈中的內(nèi)存塊的狀態(tài)標(biāo)記置為空閑狀態(tài);將內(nèi)存使用標(biāo)記鏈中的下一個(gè)可用內(nèi)存的索引置為內(nèi)存塊存儲(chǔ)區(qū)中下一個(gè)內(nèi)存塊的索引;A4 應(yīng)用程序填寫所述內(nèi)存池控制域的控制信息,其中,當(dāng)前可用的內(nèi)存塊的索引填內(nèi)存塊存儲(chǔ)區(qū)第一個(gè)內(nèi)存塊的索引,當(dāng)前可用的內(nèi)存塊個(gè)數(shù)填寫內(nèi)存塊存儲(chǔ)區(qū)中內(nèi)存塊的總個(gè)數(shù)、內(nèi)存塊存儲(chǔ)區(qū)的首地址和內(nèi)存使用標(biāo)記鏈的首地址填寫相應(yīng)區(qū)域的內(nèi)存地址。
7.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述步驟B還包含以下步驟B1 應(yīng)用程序根據(jù)所述內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù),判斷是否還有可用內(nèi)存塊,如果沒有,直接返回?zé)o效值,結(jié)束本流程,如果有,進(jìn)入步驟B2;B2 計(jì)算機(jī)系統(tǒng)將所述內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊的索引返回給應(yīng)用程序,所述應(yīng)用程序?qū)⒃搩?nèi)存塊的狀態(tài)標(biāo)記設(shè)置成已用狀態(tài),同時(shí)把當(dāng)前可用的內(nèi)存塊的索引設(shè)置成該內(nèi)存塊的下一個(gè)可用內(nèi)存塊的索引,進(jìn)入步驟B3;B3 所述應(yīng)用程序?qū)?nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù)減一。
8.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述步驟C還包含以下步驟C1 應(yīng)用程序?qū)⑿枰尫诺膬?nèi)存塊在內(nèi)存使用標(biāo)記鏈中的使用標(biāo)記設(shè)置成空閑狀態(tài),將該內(nèi)存塊的下一個(gè)可用內(nèi)存塊的索引設(shè)置成內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊的索引,并把內(nèi)存池控制域中當(dāng)前可用的內(nèi)存塊的索引設(shè)置成需要釋放的內(nèi)存塊的索引;C2 應(yīng)用程序把內(nèi)存池控制域中的當(dāng)前可用的內(nèi)存塊個(gè)數(shù)加一。
9.根據(jù)權(quán)利要求1到8任一條所述的計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,其特征在于,所述計(jì)算機(jī)系統(tǒng)是基于嵌入式芯片的實(shí)時(shí)應(yīng)用系統(tǒng)。
全文摘要
本發(fā)明公開了一種計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法,使應(yīng)用程序能夠更好地管理自己的內(nèi)存,并且降低由于內(nèi)存被錯(cuò)誤地改寫而可能導(dǎo)致的惡果。這種計(jì)算機(jī)系統(tǒng)的內(nèi)存管理方法包含以下步驟A應(yīng)用程序創(chuàng)建內(nèi)存池,將內(nèi)存池劃分為用于存儲(chǔ)內(nèi)存池的控制信息的內(nèi)存池控制域、用于放置數(shù)據(jù)的內(nèi)存塊存儲(chǔ)區(qū)、以及用于標(biāo)示每一塊內(nèi)存的使用狀態(tài)和下一個(gè)可用內(nèi)存塊的索引的內(nèi)存使用標(biāo)記鏈;B應(yīng)用程序根據(jù)內(nèi)存池控制域中的控制信息,向內(nèi)存池申請(qǐng)內(nèi)存塊存儲(chǔ)區(qū)中的內(nèi)存塊,并修改內(nèi)存使用標(biāo)記鏈中信息;C應(yīng)用程序根據(jù)內(nèi)存池控制域中的控制信息,向內(nèi)存池釋放內(nèi)存塊存儲(chǔ)區(qū)中的內(nèi)存塊,并修改內(nèi)存使用標(biāo)記鏈中信息。
文檔編號(hào)G06F12/06GK1567249SQ0314889
公開日2005年1月19日 申請(qǐng)日期2003年6月16日 優(yōu)先權(quán)日2003年6月16日
發(fā)明者楊威鋒 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
濮阳市| 巴东县| 兴城市| 嘉善县| 云南省| 彭山县| 西乡县| 天台县| 娄烦县| 九台市| 襄垣县| 天峻县| 当涂县| 阳城县| 昭通市| 德惠市| 井研县| 龙山县| 景宁| 昭通市| 淳化县| 东港市| 黑龙江省| 津市市| 高青县| 广丰县| 交口县| 松桃| 兴山县| 龙岩市| 南皮县| 凯里市| 香港 | 丹巴县| 兖州市| 大宁县| 嵊州市| 海丰县| 增城市| 阳东县| 抚松县|