2012年3月30日 星期五

[轉貼] 系統資源記憶體不足 - 說明 & 處理 的幾個基本手法

 

[轉貼] 系統資源記憶體不足 - 說明 & 處理 的幾個基本手法

記憶體不足說明:

「為什麼我的系統資源會不夠?」、「我什麼程式都沒跑,為什麼我的系統資源不是 100%?」 

如果有人告訴你增加電腦的記憶體可以解決的話,那就是「胡說八道」了。 

因為,所謂的系統資源(System Resourecs 註一)跟你電腦上的記憶體(System 
Memory
)的多少,可以說是風馬牛不相及,一點關係都沒有。 

不管你今天 PC 上的記憶體有多少,16MB也好、512 MB 也好,所謂「系統資源」(System 
Sources
)永遠是記憶體中「固定的一小塊區域」,不會因為你的 RAM 特別多,System Sources 就會有特權,多一些。 

System Resources
其實只有 64K可以利用,永遠就是這個數,不管你有多少記憶體,System Resources 
就是64K,這是跟 CPU、還有實體的記憶體數量(Memory) 都沒有關係
系統資源是什麼?系統資源就是用來處理選單、工具列、指標、還有繪圖方面的事情等等。例如? 

像是記住螢幕上每個物件的顏色、按鈕圖案、所使用的字型種類、螢幕上每個按鈕的位置、選項有哪些、選項的狀態、螢幕上每個視窗的位置..等等,用來存放與管理這些東西的空間,就是「系統資源」(System 
Resources
 

所以在解了系統資源做哪些事之後,你應該知道,除非你不開機,否則系統資源絕對不可能達到 
100%
,不要認為系統資源被消耗掉是不正常的,這很正常,系統資源本來就是用來「消耗」的。 

以下都是一些關於系統資源的基本常識: 

System Resource
跟記憶體多寡沒有關係、另外,只要進入 Windows,有程式在跑,就會消耗系統資源。 

除非作業系統告訴你系統資源不足了,否則,不要鑽牛角尖,一直 care 你現在的系統資源有多少,只要 Windows 
沒有警告你,都不用去擔心。 

只有系統資源為「0」的時候,才沒有辦法打開、或關閉應用程式,但是在這之前,Windows 
絕對會警告你,所以你絕對有充分的時間存檔、重新啟動。(除非你根本不理會那些警告訊息) 

怎麼樣可以少用一點系統資源? 

前面說過,系統資源是用做選單、工具列、指標、繪圖.......這些方面的工作,所以,如果你的這類東西:桌面、圖示、工具列、背景、Active 
Desktop..
越少用,系統資源用掉的也越少。 

Active Desktop
就會消耗不少的系統資源。 

擁有炫麗UI介面的軟體也會比使用一般傳統介面的軟體會耗較多的系統資源。 

例如: 

有設有桌面背景圖案就會比沒有設要來得消耗系統資源、用最多色彩顯示圖示也會用較多的系統資源....諸如此類。 

只要執行程式就會消耗系統資源,所以,一開機載入的程式越少,消耗得也越少,一些不是隨時要用的程式,就不需要讓它擺在系統列,我看過有人的系統列是長長的一大串,這也是會佔用不少系統資源的。 

最後還是要提醒,只要執行程式,就會消耗系統資源,這是很正常的,只要Windows 
沒有出現系統資源過低的訊息,你就不用去擔心,出現訊息,你還是有足夠存檔的時間,你不要一直盯著那系統資源數值一直看,那不是股票指數,一直盯著沒有什麼意義。 

有時後你會發現某些程式已經關閉了,但是並沒有釋放系統資源,或是某個應用程式特別吃系統資源,這些現象都跟作業系統本身沒有什麼關聯,是那個應用軟體的問題,要由程式作者改善,你除了不執行之外,不能做什麼事。 

註一:系統資源﹙System Resource﹚是Windows 
作業系統的專有名詞,作業系統它有它自己的定義,你不能任憑自己想像來解釋,例如把「鍵盤」、「螢幕」、「滑鼠」、「記憶體」..等等這些只要是裝在電腦上的東西都當作是「系統資源」,這是你自己的定義,沒有人會承認。 

什麼是「系統資源」(System Resources)?我在哪裡可以看到我的系統資源剩多少?為什麼叫做「資源」? 

你在桌面上「我的電腦」圖示上按滑鼠右鍵選內容,到「效能」頁,其中有一項目叫做「系統資源」,它是以百分比來顯示,告訴你目前可用的資源有多少。 


什麼叫做「系統資源」(System Resources)?在「系統資源與記憶體多寡沒有關係」一文中我已經有大略的講過,這邊我再解釋一次: 


Windows 
在記憶體中,需要一塊空間來追蹤、儲存你目前螢幕上以及正在執行的這些程式的狀態,這一塊空間,它有一個專有名詞:就叫做「系統資源」。 

因為 Windows 把記錄與追蹤應用程式的工作(就是 User Resources GDI 
Resources
),都放在這一塊特殊的地方,所以換個角度看,這空間要是塞滿了會怎樣?當然就沒有辦法執行程式了,因為沒有空間來記錄執行程式時的游標、按鈕、顏色..等等。(不管你 RAM 還剩多少) 

而這塊叫做「系統資源」的空間,大致就是維持 64K 的大小,不管你實體的 RAM 有多少,Windows 作業系統就是劃這麼大塊地方來存放「系統資源」。 

為什麼是 64K Kilobytes)? 

這跟「歷史」有關,你可以說他是歷史包袱,也可以稱之為 Windows 「原罪」。 

時間必須往回追溯到 Windows 3.x 的時代,Windows 3.x 作業系統是以 Intel 286 CPU 架構為藍本發展而成,自然也就是個 16 bit 的作業系統,16 位元的二進位數運算能力是 64K16 bit 所能記憶的容量也就限制在此,所以系統資源有了這種 64K 的限制,以當時的軟、硬體環境來說,只能做到如此。 

Windows 95/98/Me
32 - bit 架構,32 位元的二進位數運算能力比 16-bit 高出了千百倍,「照理說」,應該不會再出現「系統資源不足」的夢靨,然而,事情不是這麼理想。 

32
位元作業系統為了要向下相容(如果以前的程式不能跑了,你會買這種新的作業系統嗎),讓所有的 16 bit 程式、component 都可以順利在 32 bit 作業系統下運作,所以還是維持了這個系統資源 64K 的傳統。 

Windows 9x
比起 Windows 3.x 改善了很多,不會一下子就把 System Resources 吃光,但是,舊的 16-bit 程式跟 32 bit OLE 仍然是會咬著系統資源不放,所以,系統資源還是會有耗盡的機會,只是機會不像以往舊Windows 時代那麼高而已。 

應用程式吃系統資源的多寡,跟程式碼撰寫是否好壞有關係,有的應用軟體在結束之後,仍然抓著系統資源不放,這也是撰寫不良的程式。 

隨著作業系統的差異,對於「低」系統資源 Windows 的忍耐限度也不同,像是同樣只剩 10%,在 Windows Me 底下的操作仍然會比 Windows 98 要順暢。 

一般來講,一開機可以有 70% 左右的系統資源都算正常,如果你一進入 Windows 發現系統資源只有 50% 左右,這一定是你一開機就自動載入了一堆程式,你應該不可能有那麼多的程式需要一開機就載入,移除一些吧。 

有些程式會佔用多一點的系統資源、有些軟體會用較少的系統資源,這是當然的,因為每個軟體的系統資源使用情況不可能完全一樣,你不可能經過任何的設定去要某個軟體少用一點的系統資源,除非,你改寫它的程式碼才有可能。 


補充:我做哪些行為會佔用較多的系統資源? 

先前說過,有程式執行,就會吃系統資源,這是一定的。但是,有哪些系統資源是在我們不經意的情況下,讓他被佔掉的呢?(或者說,就是你可以省下的) 


佈景主題、桌面底圖、動畫游標、Active Desktop、還有 OFFICE 快捷列、還有擁有極度炫麗外表的視窗軟體。 

前面提到的這類行為,因為有些一開機就會載入、有的是炫麗外表會佔用更多 
GDI
,再加上很多人都喜歡把桌面弄得「美美的」,所以與那些沒有使用這些功能的系統比起來,會佔多一點資源。 

天下沒有白吃的午餐,要美麗、要方便,就要付出代價,你付的代價就是「系統資源」。 

不過,我在這裡還是提醒讀者,凡事不要「本末倒置」,執行程式就會消耗系統資源,這是天經地義的,只要你覺得系統穩定、跑起來都很順、什麼感覺都沒有,使用佈景主題、Office 快捷列等等,並無傷大雅,你資源擺在那邊不用也是浪費。


處理「記憶體不足」的幾個基本手法 
Windows中,當你啟動程序或執行程序時,如果收到「記憶體不足」的錯誤消息,那麼請試試筆者以下所述的解決「記憶體不足」的辦法。 
一、記事本佔用了太多的記憶體 
實際上,記事本是記憶體中的一塊臨時區域,當你在程序中使用了「複製」或「剪下」指令後,Windows將把複製或剪下的內容及其格式等信息暫時存儲在記事本上,以供「貼上」使用。如果當前記事本中存放的是一幅圖畫,則記事本就佔用了不少的記憶體。這時,請按下述步驟清除記事本中的內容,釋放其佔用的記憶體資源: 
1.
按下「開始」,指向「程序」或「所有程式」,指向「附件」,指向「系統工具」,然後按下「記事本檢視程序」,開啟「記事本檢視程序」視窗。 
2.
在「編輯」功能表上,按下「刪除」指令。 
3.
關閉「記事本檢視程序」視窗。 
為了與Microsoft Office程序提供的多重記事本相區分,上述所說的記事本,常被我們稱為系統記事本。如果你正在使用Micros OftOffice程序,而且使用了其多重記事本功能,那麼你應清空「Office記事本」上的項目,方法是:在「Office記事本」工作視窗(OfficeXP)或工作列(Office2000)上,按下「全部清空」或「清空『記事本』」。當清空「Office記事本」時,系統記事本也將同時被清空。 
二、開啟的程序太多 
如果同時開啟的我的文件過多或者執行的程式過多,就沒有足夠的記憶體執行其他程序。這時,對於多我的文件界面(MDl)程序,如WordExcel等,請關閉當前我的文件外的所有我的文件,並退出當前未使用的程序,然後或許你就能夠繼續執行因「記憶體不足」而被中斷的工作。 
三、重新啟動電腦 
如果只退出程式,並不重新啟動電腦,程序可能無法將記憶體資源歸還給系統。請重新啟動電腦以釋放系統資源,然後再次執行程序或執行被中斷的工作。 
四、自動執行的程式太多 
如果在啟動Windows時自動執行的程式太多,那麼,即使重新啟動電腦,也沒足夠的記憶體用來執行其它程序。 
(
)確定設定為自動執行的程式是否太多 
1.
按下「開始」,然後按下「執行」。 
2.
在「開啟」框中,鍵入「Msconfig」,按下「確定」按鈕,開啟「系統配置實用程序」視窗。 
3.
按下「一般」選項項,選「選項性啟動」複選鈕,清除「處理Win.ini文件」複選框和「載入啟動組項目」複選框。 
4.
按下「確定」按鈕,當系統提示重新啟動電腦時,請按下「是」按鈕。 
重新啟動電腦後,如果記憶體不足的問題已經解決,你就可以將電腦配置為啟動時不開啟任何程序。 
(
)配置電腦不自動開啟任何程序 
1.
恢復在Msconfig中所作的更改,方法是:在「系統配置實用程序」視窗,按下「一般」選項項,選項「正常啟動」,按下「確定」按鈕,然後重新啟動電腦。 
2.
刪除「啟動」資料夾中的所有建立捷逕 
1按下「開始」,指向「設定」,然後按下「工作列和開始選單」,系統彈出「工作列內容」對話視窗。 
2按下「開始選單程序」選項項,按下「刪除」按鈕。 
3按下「啟動」資料夾旁的加號,以顯示設定為自動執行的程式列表。如果「啟動」資料夾旁沒有加號「+」,則表明沒有設定為自動執行的程式,請按下「關閉」按鈕以終止此程序。 
4按下「啟動」資料夾中的每個建立捷逕,然後按下「刪除」按鈕。此操作將從「開始」功能表中刪除建立捷逕,但並不從硬碟中刪除相應的程序。對於0「啟動」資料夾中的每個建立捷逕,重複該步驟。 
5按下「關閉」按鈕。 
6按下「確定」按鈕。 
3.
禁用從Win.ini文件載入的所有程式 
1如上所述開啟「系統配置實用程序」視窗。 
2按下「Win.ini」選項項,雙按「[windows]」,然後清除「Load=」和「Run=」複選框。 
3按下「確定」按鈕,當系統提示重新啟動電腦時,請按下「是」按鈕。 
五、讓Windows管理虛擬記憶體設定 
如果沒有設定讓Windows管理虛擬記憶體或者禁用虛擬記憶體,那麼電腦可能無法正常工作,也可能收到「記憶體不足」的消息,或在執行某程序時出現相同的錯誤消息。 
1.
按下「開始」,按下「設定」,按下「控制台」,然後雙按「系統」。 
2.
在「系統內容」對話視窗中,按下「效能」選項項,然後按下「虛擬記憶體」按鈕。 
3.
選「讓Windows管理虛擬記憶體設定—(推薦)」選項,將電腦中可作為虛擬記憶體使用的硬碟空間量設定為預設值。此時,虛擬記憶體分頁文件「win386.swp」能夠根據實際記憶體的使用情況動態縮小和放大,最小容量為0,最大容量為硬碟的全部可用空間。 
4.
按下「確定」按鈕。 
六、增加可用磁牒空間 
由於Windows以虛擬記憶體分頁文件的格式使用硬碟空間以模擬RAM(),所以,儘管已設定為讓Windows管理虛擬記憶體,但是當虛擬記憶體分頁文件所在的驅動器(預設為Windows系統所在的硬碟分區)沒有足夠的空間時,仍會出現「記憶體不足」的錯誤。此時,請執行以下一項或多項操作,增加Windows虛擬記憶體分頁文件所在驅動器上的可用空間: 
1.
清空資源回收桶,方法是:在桌面上,右鍵按下「資源回收桶」,再按下「清空資源回收桶」。 
2.
從磁牒中刪除臨時文件,方法是:開啟「Windows檔案總管」或「我的電腦」視窗,右鍵按下要釋放其空間的磁牒,然後按下「內容」,在「一般」選項項上,按下「清理磁碟」按鈕,選要刪除的不需要的文件前的複選框,可以閱讀列表下面區域中每個檔案類型的說明,按下「確定」按鈕。 
3.
從磁牒中刪除過期的文件或已存檔的文件。 
4.
刪除從未使用過的所有文件。 
七、程式文件被毀壞 
如果僅僅是使用某個程序時,系統提示記憶體不足,而其他程序可以正常執行,那麼可能的原因是該程式文件被毀壞,從而導致記憶體問題。然而Windows並沒有確切地提示表明該程序已損壞,所以請嘗試刪除並重新安裝該程序,然後重新執行該程序。如果系統不再提示記憶體不足,那麼說明原程式文件確實被損壞。 
八、使用記憶體最佳化軟體 
記憶體最佳化軟體有很多,比如RAM IdleMemo Kit就是比較出色的兩個。這些軟體都可以設定自動清空記事本、釋放被關閉程序未釋放的記憶體、對Win386.swp文件進行重新組織等,從而免除你手工操作的麻煩,達到自動釋放記憶體的目的,不妨一試
九、查殺病毒 
系統感染電腦病毒也是導致記憶體不足的罪魁禍首,當系統出現「記憶體不足」的錯誤時,請使用最新的防毒軟體查殺病毒,或者在清除電腦病毒之後,就解決了「記憶體不足」的問題. 解決系統資源嚴重不足的方法... -------------------

 

 

每當windows執行一些應用程式時,已經將應用程式關閉, 但是記憶體可能還存在一些DLL檔案,可能會托慢了系統效能, 可以利用登錄編輯器按如下的方法自動的清除記憶體中的dll資料。

1、執行regedit,進入登錄編輯器。

2、找到「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\windows\ CurrentVersion\Explorer

3、在右方窗格新增一個「AlwaysUnloadDll」「字串值」。

4、然後在「AlwaysUnloadDll」上按下滑鼠右鍵選擇「修改」。

5、將「值的資料」設為「1」。

6、重新開機即可完成上述動

 

為何我的Excel一直不斷的出現 ""系統資源不足,無法完全顯示""

為何我的Excel一直不斷的出現 ""系統資源不足,無法完全顯示""

 

為何我的Excel一直不斷的出現 ""系統資源不足,無法完全顯示""我已經有去網路上找一些處理成功的方法,方法如下:

 

記憶體系統資源不足
1、執行regedit,進入登錄編輯器。
2、找到「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Explorer
3、在右方窗格新增一個「AlwaysUnloadDll」「字串值」。
4、然後在「AlwaysUnloadDll」上按下滑鼠右鍵選擇「修改」。
5、將「值的資料」設為「1」。
6、重新開機即可完成上述動