xp系統(tǒng)能用4g內(nèi)存嗎?
xp系統(tǒng)能用4g內(nèi)存嗎?
xp系統(tǒng)能用4g內(nèi)存嗎?下面學(xué)習(xí)啦小編給大家分享一個(gè)xp使用4G內(nèi)存方法,希望對(duì)大家有幫助~!
xp系統(tǒng)能用4g內(nèi)存嗎?
1、由于32位系統(tǒng)內(nèi)存尋址只能到4G,所以在32位系統(tǒng)上使用超過4G的內(nèi)存,首先要使用支持大內(nèi)存的軟硬件,比如使用至強(qiáng)的CPU(雖然是32位CPU,但是上增加了擴(kuò)展尋址的能力),windows2003企業(yè)版或數(shù)據(jù)中心版。
2、在操作系統(tǒng)中啟用PAE(Physical Address Extensions )功能,這樣oracle便可以通過windows的AWE(Address Windowing Extensions)API使用多余4G的內(nèi)存。
方法:打開系統(tǒng)根目錄下的隱藏文件 Boot.ini ,添加 PAE 開關(guān):
(1)multi(0)disk(0)rdisk(0)partition(2)\%systemroot%="Windows Server 2003, Datacenter Edition" /PAE
(2)multi(0)disk(0)rdisk(0)partition(2)\%systemroot%="Windows Server 2003, Datacenter Edition" /3GB /PAE
我們知道32位windows對(duì)于每個(gè)進(jìn)程都分配4GB內(nèi)存(虛擬內(nèi)存),其中起始的2GB歸windows核心使用,剩余的歸應(yīng)用程序本身使用。因此這兩種方法的區(qū)別就在于:
方法一只使用了/PAE開關(guān)表示啟用/PAE功能但是系統(tǒng)對(duì)每個(gè)進(jìn)程仍然采用2G核心、2G應(yīng)用程序的內(nèi)存分配方式。
方法二除了/PAE開關(guān)還使用了/3GB開關(guān)表示不僅啟用/PAE功能并且系統(tǒng)對(duì)每個(gè)進(jìn)程采用1G核心、3G應(yīng)用程序的內(nèi)存分配方式。不過這種方式不支持大于16GB的內(nèi)存,也就是說如果你的實(shí)際內(nèi)存超過16GB則只能使用方法一,這是因?yàn)榇笥?6GB后1G的核心內(nèi)存已經(jīng)不夠windows實(shí)現(xiàn)PAE功能。
3、給運(yùn)行Oracle數(shù)據(jù)庫的操作系統(tǒng)帳戶,授予"Lock Pages in Memory"的系統(tǒng)權(quán)限。
執(zhí)行 gpedit.msc打開“組策略”控制臺(tái)
“計(jì)算機(jī)配置”->“Windows 設(shè)置”->“安全設(shè)置”->“本地策略”->“用戶權(quán)利指派”
雙擊右邊“鎖定內(nèi)存中的頁”(或名為"內(nèi)存中鎖定頁"),在“本地安全策略設(shè)置”對(duì)話框中,單擊“添加”按鈕,在“選擇用戶或組”對(duì)話框中,添加有權(quán)運(yùn)行 oracle的帳戶。
4、配置oracle數(shù)據(jù)庫的參數(shù)文件(init*.ora),添加USE_INDIRECT_DATA_BUFFERS=TRUE參數(shù),表示使用擴(kuò)展的內(nèi)存。
5、修改注冊(cè)表中的AWE_WINDOW_MEMORY鍵值為合適值。該值表示在3GB內(nèi)存中(如果使用了/3GB開關(guān),如果沒有使用該開關(guān)則為2GB)有多少用于數(shù)據(jù)庫塊緩存。
注意:
(1)該值位置在HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0為二進(jìn)制類型,單位為bytes。
(2)如果不存在表示使用默認(rèn)值1GB。
(3)該值太大或太小都有可能導(dǎo)致數(shù)據(jù)庫無法啟動(dòng)。
這里解釋一下:盡管我們現(xiàn)在擁有超過4GB的內(nèi)存,但是這些多余的內(nèi)存并不是oracle可以隨便使用的,這些內(nèi)存只能用于數(shù)據(jù)庫塊緩存(即db_buffer),而像share Pool,log buffer等只能保存在應(yīng)用程序可訪問的3GB內(nèi)存中(如果使用了/3GB開關(guān),如果沒有使用該開關(guān)則為2GB)。在這里我將4GB以外內(nèi)存中的數(shù)據(jù)庫塊緩存叫做AWE數(shù)據(jù)塊緩存(自己起的名字:-))。這里又有問題了,oracle緩沖的數(shù)據(jù)塊并不能全部保存到4GB以外的內(nèi)存中,還必須在應(yīng)用程序可直接訪問的3GB內(nèi)存(如果使用了/3GB開關(guān),如果沒有使用該開關(guān)則為2GB)中使用一部分空間來保存,這一部分內(nèi)存我稱為直接數(shù)據(jù)塊緩存(自己起的名字:-))。也就是說“數(shù)據(jù)塊緩存=AWE數(shù)據(jù)塊緩存+直接數(shù)據(jù)塊緩存”,為什么會(huì)這樣呢,因?yàn)閛racle緩沖到內(nèi)存中的每個(gè)數(shù)據(jù)塊的頭部必須保存到“直接數(shù)據(jù)塊緩存”中,是不能夠保存到“AWE數(shù)據(jù)塊緩存”中的,并且每個(gè)數(shù)據(jù)塊的大小(db_block_size)和數(shù)據(jù)塊的多少(db_block_buffers)都會(huì)影響到頭部占用空間的多少。并且訪問“直接數(shù)據(jù)塊緩存”要比“AWE數(shù)據(jù)塊緩存” 快,因此AWE_WINDOW_MEMORY一般來講需要設(shè)置的盡量大(但不能無限大,比如必須小于3GB),oracle建議以默認(rèn)值為基礎(chǔ),以20%遞增擴(kuò)大,進(jìn)行測(cè)試。比如先測(cè)試1GB大小,在測(cè)試1.2GB大小等等。
一般來講AWE_WINDOW_MEMORY有一個(gè)最小公式
min(AWE_WINDOW_MEMORY)=(4096 * db_block_size * db_block_lru_latches)/8
其中:
max buffer pools是一個(gè)常量=8
sets_per_tool=2*cpu_count (use_indirect_data_buffers=true)
sets_per_tool=cpu_count/2 (use_indirect_data_buffers<>true)
很多朋友都裝了4G內(nèi)存甚至8G內(nèi)存,可惜32位系統(tǒng)中除了2003server支持顯示4G內(nèi)存以外,其它都最大利用到3.25G左右,余下0.75G都浪費(fèi)了,這主要是32位操作系統(tǒng)內(nèi)存地址映射限制的問題造成的,如何解決呢?電腦屬性里顯示3.25G的問題是無法真正解決的,即使32位vista旗艦版可以顯示4G內(nèi)存,但無法真正全部利用這4G內(nèi)存,這就需要一個(gè)重要軟件的登場(chǎng)了,RAMDISK,可能很多朋友聽說過,此軟件支持把內(nèi)存當(dāng)硬盤分區(qū)來用,也就是說通過RAMDisk可以把無法利用的那部分內(nèi)存當(dāng)硬盤分區(qū),除了可以把IE的臨時(shí)文件緩沖區(qū)放到這個(gè)分區(qū)以提高訪問網(wǎng)絡(luò)的速度外(具體設(shè)置很簡(jiǎn)單這里就不多說了),還可以通過設(shè)置windows xp等32位的虛擬內(nèi)存來把這部分內(nèi)存真正利用起來,具體設(shè)置如下,以8G系統(tǒng)物理內(nèi)存為例,系統(tǒng)顯示3.25G,余下4.75無法利用,這時(shí)用RAMDISK把4.75G內(nèi)存全部設(shè)置為硬盤分區(qū),把IE緩沖設(shè)置100兆并放到此分區(qū)內(nèi),此時(shí)還余下4.65G,在“我的電腦”-“屬性”里把虛擬內(nèi)存設(shè)置為4.65G,然后將虛擬內(nèi)存頁面文件指向這個(gè)新設(shè)立的分區(qū),保存重啟后,你的新分區(qū)就會(huì)多了一個(gè)4.65G的Pagefile.sys的隱藏文件,這時(shí)你要把C盤(系統(tǒng)盤)下的Pagefile.sys文件刪除(WINDOWS 不會(huì)自動(dòng)刪除這個(gè)文件),這樣你可以利用7.9G的內(nèi)存了(有100M是你的IE緩沖),4.65G的虛擬內(nèi)存因?yàn)橐彩怯成涞秸嬲膬?nèi)存上來用,所以不會(huì)影響速度(速度是原硬盤虛擬內(nèi)存的十幾到幾十倍,因物理內(nèi)存速度而異),但此分區(qū)內(nèi)不能存儲(chǔ)重要文件,因?yàn)槊看侮P(guān)機(jī)或重啟都會(huì)清空此分區(qū),因?yàn)榇朔謪^(qū)不是harddisk而是ram,每次啟動(dòng)系統(tǒng)都會(huì)自動(dòng)生成Pagefile.sys和IE緩沖的目錄,我已驗(yàn)證,對(duì)系統(tǒng)使用沒有任何副作用,至今沒有跳出過任何出錯(cuò)的信息。雖然我的電腦屬性里依舊是3.25G,但用熱鍵調(diào)出的“任務(wù)管理器”下的“性能”頁面里內(nèi)存顯示的可是7.9G,是真正可以被利用的。
xp系統(tǒng)用4g內(nèi)存另一種方法:
1,首先檢查主板是否支持,下載everest檢測(cè)軟件,在主板-內(nèi)存一項(xiàng)中,
Physical Address Extension(PAE)查看“操作系統(tǒng)支持”“處理器支持” 是否為“是”,如果是“否”的話代表主板不支持,不要玩了,如果是“是” 的話,“活動(dòng)”一項(xiàng)是“否”也有可以修改的可能。
2,我的電腦-屬性-高級(jí)-啟動(dòng)和故障恢復(fù)-設(shè)置-編輯,這里編輯操作的是 c盤根目錄下隱藏的boot.ini文件,各位也可以通過在c盤顯示隱藏文件的方法 找到它,
我的boot.ini里的內(nèi)容如下:
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP
Professional" /noexecute=optin /fastdetect "
那么接下來在“multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft
Windows XP Professional" /noexecute=optin /fastdetect”的表明操作系
統(tǒng)的“Microsoft Windows XP Professional ”加上“/PAE”
即“multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows
XP Professional" /PAE /noexecute=optin /fastdetect”
這樣保存關(guān)閉,系統(tǒng)就打開了PAE
重新啟動(dòng)后,電腦屬性的下方多了“物理地址擴(kuò)展”幾個(gè)字,雖然顯示 , 的還是3.25g內(nèi)存,但實(shí)際上4g內(nèi)存已經(jīng)完全啟用了,但怎么證明這一點(diǎn)呢?
就用ramdisk虛擬硬盤軟件來測(cè)試
ramdisk是一款將內(nèi)存轉(zhuǎn)換為虛擬硬盤的小軟件,內(nèi)存的速度是硬盤的幾十倍 ,所以在我處理ps等需要大量暫存盤的軟件時(shí),通常都會(huì)用它來充當(dāng)軟件的暫 存盤,這樣軟件的速度會(huì)倍增,在系統(tǒng)沒有開啟PAE只能識(shí)別3.25g內(nèi)存的情況下,使用ramdisk會(huì)直接占用這3.25g的內(nèi)存,而開啟PAE后,用ramdisk設(shè)置768mb的內(nèi)存作為虛擬硬盤,再調(diào)出任務(wù)管理器,會(huì)發(fā)現(xiàn)內(nèi)存使用絲毫沒有減少,也就是說,ramdisk調(diào)用的768mb內(nèi)存是系統(tǒng)沒有顯示出來的768mb,還而言之,系統(tǒng)已經(jīng)找到了4g內(nèi)存啦。