走出虛擬記憶體禁(轉)
走出虛擬記憶體禁(轉)[@more@] 最近大家都經常談論的話題,就是DDR記憶體的大降價,DDR266從400多元的位置暴跌到200元左右,很多人都用上了512MB甚至1GB的記憶體,於是有一種觀點也在部分玩家中流行起來,說是禁用虛擬記憶體、禁止Windows頁面檔案交換、強行命令資料在記憶體中處理,可以加快資料讀寫效率,是不是真的這樣呢? 根據應用需要設定 筆者認為,這種說法要分情況對待,不能隨便就說禁用是好事。 首先,要搞清楚什麼是“大記憶體”配置。當初設計Windows使用虛擬記憶體本身是因為實體記憶體很貴,一般都不會超過128MB容量,需要硬碟空間作臨時緩衝――也就是說,你應該把應用時需要多少實體記憶體和自己實際擁有的記憶體作一個比較,如果實際擁有的記憶體少於應用峰值,就會遇到麻煩了。 一般來說,如果要進行平面大圖、3D動畫渲染等資料量很大的任務,不應禁用虛擬記憶體;如果經常要列印帶大量圖片的文件,禁止虛擬記憶體也會讓程式出現錯誤。因為像Word一類軟體列印之前要生成緩衝檔案,再傳輸到印表機上,圖片尺寸較大、解析度較高時,需要的緩衝區容量也很大,筆者以前幫助廣告美工出設計圖時,就遇到列印一張圖生成將近300MB臨時檔案的情況。因為Windows和應用程式本身也是需要一定記憶體來執行的,如果你是512MB的配置,禁用了虛擬記憶體,很有可能中途報告虛擬記憶體不足,強行退出造成列印紙張及油墨的浪費。 所以,必須根據你的任務應用環境,來決定是否禁用虛擬記憶體。即使是把虛擬記憶體大小固定設定,也必須謹慎,否則在執行大型應用軟體的時候才出現虛擬記憶體不足的提示,整個系統會因為CPU的佔用率極高而變得很慢,此時再改動就沒那麼方便了。 考慮作業系統的因素 在不同的作業系統下,虛擬記憶體的設定或禁用也是不同的,不能一概而論。 因為架構問題,Windows 9x/Me對大於256MB的記憶體有先天的不足,大於這個數量的記憶體,Windows 98會出現不穩定及啟動速度變慢的情況。如果使用了大記憶體加上禁用虛擬記憶體,不穩定的因素將會進一步增加。Windows 2000/XP可有效管理的記憶體容量為1GB左右,大於這個數目也會出現不穩定的情況,而且視主機板BIOS型號及晶片組效能而不同。 另外,Windows本身的設計就是,一旦發現有程式轉入不活躍狀態,就會把分配給它的記憶體空間對映到交換檔案中,儘可能空出實體記憶體給其它活動的執行緒,並不是用完實體記憶體才開始動用交換檔案。因為如果等到實體記憶體用完再呼叫,就已經太遲了,在配置較低的機器上勢必造成資料傳輸和處理停滯。所以禁止虛擬記憶體從原則上來講,最容易引起Windows異常,即使不出現執行不了的故障,也會頻繁地提示虛擬記憶體不夠,請重新設定云云,讓你不勝其煩。 如何禁用虛擬記憶體 對於擁有很大容量記憶體的朋友,如果真想禁用虛擬記憶體加快執行速度,其實可以用折中的辦法“騙”過Windows,就是把實體記憶體劃出一部分來虛擬成物理硬碟: 1.Windows 98 可以在Config.sys里加入一句: DEVICE=C:WINDOWSRAMDRIVE.SYS 23000 /E(請根據自己的Windows所在分割槽適當設定) 這句話就是利用記憶體由Ramdrive.sys虛擬出一個分割槽,其中23000是你希望使用多少實體記憶體,單位是KB,如果你有1GB,可以把這個數字設到300000到500000左右,即300~500MB,然後把虛擬記憶體設定到該虛擬出的分割槽上,程式就完全在實體記憶體中執行了。 2.Windows 2000/XP 必須依靠第三方的工具軟體來虛擬物理硬碟,然後再把Pagefile.sys頁面檔案設到該虛擬盤上,實現同樣效果;或者可在System.ini中的“[386enh]”底部加入一句,ConservativeSwapfileUsage=1,讓Windows優先使用實體記憶體,儘量不要強行直接禁用虛擬記憶體交換檔案。 結論 筆者認為,禁用虛擬記憶體達到的加速效果很有限,加上一般Windows的預設設定比較適當,尤其是Windows 2000/XP預設設定對虛擬記憶體的管理很好,儘量不要隨意更改,否則出了問題你很難判斷和分析。 題外話:有關記憶體的一些故障分析 有時,Windows出現一些和記憶體有關的故障提示,不一定是和記憶體有關;而一些看似和記憶體無關的故障,卻真是記憶體引起的,很有隱蔽性。 比如:你用PQ分割槽大師之類的工具改過分割槽簇的大小,當簇小於預設值時,Windows 98執行磁碟掃描就可能會報記憶體不足,而在Windows 2000和Windows XP下則正常――也就是說,這跟記憶體根本沒關係。 再比如:有時開機進入Windows時,系統會提示你登錄檔錯誤,是否恢復,當你選恢復後,再次重啟,還是同一個提示,這種故障,卻多半是記憶體條或散熱方面出了問題引起的,需要更換記憶體或是風扇了。 所以,Windows的提示有時會誤導使用者,如果反覆出現同一種故障,按其提示解決不了,應考慮Windows誤報的可能性。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10763080/viewspace-942408/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 聊聊虛擬記憶體記憶體
- Linux 虛擬記憶體Linux記憶體
- 【Java基礎】實體記憶體&虛擬記憶體Java記憶體
- 5.虛擬記憶體記憶體
- 虛擬記憶體有什麼用 虛擬記憶體不足怎麼解決記憶體
- 虛擬記憶體(待補充)記憶體
- 記憶體管理兩部曲之虛擬記憶體管理記憶體
- win10怎樣刪虛擬記憶體_Win10虛擬記憶體如何關閉Win10記憶體
- 虛擬記憶體系統——瞭解記憶體的工作原理記憶體
- Ubuntu 新增虛擬記憶體檔案Ubuntu記憶體
- Linux 虛擬記憶體引數配置Linux記憶體
- 詳細理解Linux虛擬記憶體Linux記憶體
- JAVA 虛擬機器可用記憶體Java虛擬機記憶體
- win10虛擬記憶體怎麼設定 win10虛擬記憶體設定方法Win10記憶體
- win10怎麼更改虛擬記憶體_win10更改虛擬記憶體大小方法Win10記憶體
- win10怎麼加虛擬記憶體_win10系統增加虛擬記憶體教程Win10記憶體
- win10怎麼調整虛擬記憶體_win10怎麼調虛擬記憶體Win10記憶體
- win10虛擬記憶體如何優化_win10怎麼優化虛擬記憶體Win10記憶體優化
- win10 虛擬記憶體怎麼設定好 win10 虛擬記憶體設定方法Win10記憶體
- 怎麼設定虛擬記憶體win10 win10虛擬記憶體如何設定記憶體Win10
- win10 8g記憶體虛擬記憶體設定多少合適_win10 8g記憶體怎麼分配虛擬記憶體Win10記憶體
- win10 8g記憶體還需要虛擬記憶體嗎 win10系統8g記憶體怎麼分配虛擬記憶體Win10記憶體
- win10怎麼刪除虛擬記憶體 刪除win10虛擬記憶體的方法Win10記憶體
- win10虛擬記憶體怎麼設定 筆記本win10虛擬記憶體怎麼看Win10記憶體筆記
- 虛擬記憶體對 OI 的影響記憶體
- 為什麼 Linux 需要虛擬記憶體Linux記憶體
- linux伺服器增加虛擬記憶體Linux伺服器記憶體
- 計算機作業系統——虛擬記憶體與實體記憶體計算機作業系統記憶體
- win10虛擬記憶體怎麼設定最好 win10虛擬記憶體設定多少好Win10記憶體
- win10虛擬記憶體如何最佳化_win10怎麼最佳化虛擬記憶體Win10記憶體
- win10怎麼清除虛擬記憶體 win10系統虛擬記憶體清理的辦法Win10記憶體
- Linux記憶體不夠了?看看如何開啟虛擬記憶體增加記憶體使用量Linux記憶體
- win10虛擬記憶體怎麼設定最好 win10虛擬記憶體設定多少合適?Win10記憶體
- win10虛擬記憶體怎麼設定 win10虛擬記憶體設定步驟詳解Win10記憶體
- win10電腦虛擬記憶體怎麼設定 win10虛擬記憶體設定的方法Win10記憶體
- windows10怎麼關閉虛擬記憶體_win10關閉c盤虛擬記憶體的方法Windows記憶體Win10
- win10關閉虛擬記憶體好嗎_win10刪除虛擬記憶體怎麼設定Win10記憶體
- win10虛擬記憶體設定多少合適_win10電腦虛擬記憶體如何設定Win10記憶體
- 關於虛擬機器記憶體和JVM記憶體設定的思考虛擬機記憶體JVM