• 3

[分享]釋放PPC記憶體的小程式

聽了上面各位大大的發言 小弟我也忍不住試用了一下這個軟體
裝進去之後點選執行....恩..還真的沒反應 (記憶體配置:儲存6MB 程式25MB)
後來小弟想會不會是記憶體配置的問題 導致Hibernate認為不需要釋放
於是我就把她改成儲存21MB 程式10MB
一按....哈哈 程式果然執行了 還幫我釋放2MB多的記憶體
接著當然就是把配置調回來嚕

Luzofan wrote:

以小弟自己的Dopod 818試驗, 先開啟記事, Activesync, Beta Player播MTV, Mediaplayer 10播放MP3
再開啟Papago V9進入導航, 記事自動關閉
開啟Acrobat reader 2.0, Betaplayer自動關閉
開啟遠流字典通專業版, Activesync自動關閉
開啟1-Calc, Mediaplayer自動關閉

你有外掛插件程式吧? 而且通常那種程式都要錢.
這裡是在討論CE對記憶體的管理,不是靠著你外掛的程式就說CE的記憶體管理是很聰明的.

在沒有掛插件或外掛的情況下,WinCE/PPC是不會把開釋放掉的空間放出來的.


何況事情就如我所敘,HIBERNATE在執行前會去check一下Program Memory剩餘的數量,如果不少到某個標準的話是不會有動作的,自己試試看就知道囉!
小弟沒有安裝什麼3rd party的記憶體相關管理軟體, 上述的結果是OS自動進行的.

WM2003SE_PE(WinCE.NET)有32個process slot的限制. 當系統開完機後有可能已吃掉20幾個, 視系統出廠的設定及USER安裝的常駐程式多寡而定. 如果您開的AP又必須用到更多slot(一支AP可能用數個slot), 系統就必須kill背景的process來fit這支AP. 常有USER反應有時藍芽突然不能用, today裡的某些plug-in不正常, 或是輸入法無法載入, 毛病多半是這樣蹦出來的. 所以要讓系統更穩定, 那些花花綠綠的常駐程式越少用越不容易出怪病. 小弟目前用在818的組態也是經過一番測試, 剔除一些較有怪癖的plug-in及常駐程式等, 才容易讓上述的流程走得順.

但是這與Hibernate的相關性不大. 早在需要擠slot前系統可能已經發過Hibernate了, 無法執行的原因通常不是真的RAM不夠, 而是某些DLL無法載入. 當然手動執行Hibernate有好沒壞, USER看得到帳面上的RAM突然跑了出來. 但不一定必要, 因為不見得能排除OS碰到的問題.

您如果對這方面的細節有興趣, 可以參考一下PPCW的這篇文章, 以及MSDN的這篇介紹.
早買早享受 晚買晚後悔 不買不高興
剛寫信去問他們公司,看看是否能透露一點資訊 :p

雖然說是請程式讓出資源,不過這在PPC上卻不容易達成。
(我自己是有寫釋放記憶體的工具,不過在PPC上卻無法實現)
因為有些API並無法支援CE :(

不過越寫PPC的程式就越覺得好玩
Luzofan wrote:
但是這與Hibernate的相關性不大. 早在需要擠slot前系統可能已經發過Hibernate了, 無法執行的原因通常不是真的RAM不夠, 而是某些DLL無法載入. 當然手動執行Hibernate有好沒壞, USER看得到帳面上的RAM突然跑了出來. 但不一定必要, 因為不見得能排除OS碰到的問題.

說了這麼多偏離主題的東西.

能不能請您解說一下要怎麼樣實際的操作才能點了Hibernate後會有反應,這才是重點,
說了一堆很專業的東西無助於這個問題解決吧??

以我實際100%絕對會成功的經驗就是把Program記憶體調小一點,其他您說的什麼DLL無法載入,似乎沒什麼意義?不然每次要釋放的時候還要去調記憶體比例真麻煩.

另外請您不要建議如OS會自己釋放,那乾脆PDA都不要用好了,記憶體根本不會少.


以小弟自己的Dopod 818試驗, 先開啟記事, Activesync, Beta Player播MTV, Mediaplayer 10播放MP3
再開啟Papago V9進入導航, 記事自動關閉
開啟Acrobat reader 2.0, Betaplayer自動關閉
開啟遠流字典通專業版, Activesync自動關閉
開啟1-Calc, Mediaplayer自動關閉

以我數十台PPC的使用經驗,如以上的操作結果就是記憶體會越來越少,然後全部的程式開啟沒有關閉,難道818比較厲害?
各位大大:
1.40版的已經釋出囉!Pocket PC or Smartphone都可用喔!
快去官方網站下載!
不要把別人的錯誤拿來懲罰自己!
  • 3
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?