內(nèi)存初始化的方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種內(nèi)存初始化的方法及裝置,其中,該方法包括:判斷待填充的字節(jié)個(gè)數(shù)是否大于預(yù)定字節(jié)個(gè)數(shù),其中,預(yù)定字節(jié)個(gè)數(shù)為大于1的自然數(shù);如果是,則連續(xù)填充預(yù)定字節(jié)個(gè)數(shù)的字節(jié)以初始化內(nèi)存。通過運(yùn)用本發(fā)明,解決了相關(guān)技術(shù)中,由于典型的字節(jié)填充方式執(zhí)行時(shí)需要較長的執(zhí)行時(shí)間,內(nèi)存初始化較慢,極大的降低了CPU初始化時(shí)的執(zhí)行效率的問題,在待填充的字節(jié)個(gè)數(shù)大于預(yù)定字節(jié)個(gè)數(shù)的情況下,一次填充多個(gè)字節(jié),加快了內(nèi)存初始化的速度,同時(shí)也提升了CPU初始化時(shí)的執(zhí)行效率。
【專利說明】內(nèi)存初始化的方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,更具體地,涉及一種內(nèi)存初始化的方法及裝置。
【背景技術(shù)】
[0002]memset函數(shù)是計(jì)算機(jī)系統(tǒng)開發(fā)過程中最常用最重要的庫函數(shù)之一,memset函數(shù)用于初始化指定字節(jié)數(shù)的內(nèi)存,計(jì)算機(jī)系統(tǒng)開機(jī)初始化和軟件運(yùn)行過程中,經(jīng)常會(huì)調(diào)用此函數(shù),memset函數(shù)使用頻率比較頻繁。
[0003]memset 函數(shù)原型是 void*memset (void*s, int ch, size t η),該函數(shù)作用是在一段內(nèi)存塊中填充某個(gè)給定的值,它是對(duì)較大的結(jié)構(gòu)體或數(shù)組進(jìn)行清零操作的一種最快方法?,F(xiàn)有memset函數(shù)調(diào)用方式比較簡單,其通常采用簡單的讀取以初始化內(nèi)存,例如,下面
給出一種典型的方法:
[0004]
【權(quán)利要求】
1.一種內(nèi)存初始化的方法,其特征在于,包括: 判斷待填充的字節(jié)個(gè)數(shù)是否大于預(yù)定字節(jié)個(gè)數(shù),其中,所述預(yù)定字節(jié)個(gè)數(shù)為大于I的自然數(shù); 如果是,則連續(xù)填充所述預(yù)定字節(jié)個(gè)數(shù)的字節(jié)以初始化內(nèi)存。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,連續(xù)填充所述預(yù)定字節(jié)個(gè)數(shù)的字節(jié)以初始化內(nèi)存包括: 按次序把初始化指針指向的地址連續(xù)填充所述預(yù)定字節(jié)個(gè)數(shù)的字節(jié); 將計(jì)數(shù)器減去所述預(yù)定字節(jié)個(gè)數(shù),將所述初始化指針增加所述預(yù)定字節(jié)個(gè)數(shù)。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述預(yù)定字節(jié)個(gè)數(shù)至少包括以下之一:8個(gè)字節(jié),16個(gè)字節(jié),32個(gè)字節(jié)。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述初始化指針為Xs指針。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,判斷待填充的字節(jié)個(gè)數(shù)是否大于預(yù)定字節(jié)個(gè)數(shù)之后,還包括: 在所述待填充的字節(jié)個(gè)數(shù)小于所述預(yù)定字節(jié)個(gè)數(shù)的情況下,逐字節(jié)填充所述字節(jié)。
6.一種內(nèi)存初始化的裝置,其特征在于,包括: 判斷模塊,用于判斷待填充的字節(jié)個(gè)數(shù)是否大于預(yù)定字節(jié)個(gè)數(shù),其中,所述預(yù)定字節(jié)個(gè)數(shù)為大于I的自然數(shù); 第一填充模塊,用于在所述待填充的字節(jié)個(gè)數(shù)大于所述預(yù)定字節(jié)個(gè)數(shù)的情況下,連續(xù)填充所述預(yù)定字節(jié)個(gè)數(shù)的字節(jié)以初始化內(nèi)存。
7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述第一填充模塊包括: 填充單元,用于按次序把初始化指針指向的地址連續(xù)填充所述預(yù)定字節(jié)個(gè)數(shù)的字節(jié); 計(jì)數(shù)單元,用于將計(jì)數(shù)器減去所述預(yù)定字節(jié)個(gè)數(shù),并將所述初始化指針增加所述預(yù)定字節(jié)個(gè)數(shù)。
8.根據(jù)權(quán)利要求6所述的裝置,其特征在于,還包括: 第二填充模塊,用于在所述待填充的字節(jié)個(gè)數(shù)小于所述預(yù)定字節(jié)個(gè)數(shù)的情況下,逐字節(jié)填充所述字節(jié)。
【文檔編號(hào)】G06F12/02GK103853667SQ201210518676
【公開日】2014年6月11日 申請(qǐng)日期:2012年12月5日 優(yōu)先權(quán)日:2012年12月5日
【發(fā)明者】楊寶琳, 姚艷松, 任軼, 陸翔宇, 邵文君, 張宏賓, 馬振強(qiáng) 申請(qǐng)人:國家電網(wǎng)公司, 北京市電力公司