2014-08-28 55 views
0

當我分析應用程序的內存問題,我找到了自己的地圖(cat /proc/pid/maps)是這樣的:/proc/pid/maps是什麼意思?

903 5fec1000-5fec2000 r--s 00001000 b3:10 98   /system/app/PacProcessor.apk 

904 5fec2000-5fec3000 r--s 00000000 b3:10 98   /system/app/PacProcessor.apk 

905 5fec3000-5fed7000 r--s 00560000 b3:10 125  /system/app/iReader.apk 

906 5fed7000-5ff09000 r--s 0019a000 b3:10 125  /system/app/iReader.apk 

907 5ff09000-5ff0b000 r--s 00043000 b3:10 81   /system/app/Galaxy4.apk 

908 5ff0b000-5ff0c000 r--s 00042000 b3:10 81   /system/app/Galaxy4.apk 

看來這個應用程序加載其他應用程序的代碼到它的堆棧。

我該如何避免這種內存分配?

+0

什麼是進程名稱? 如果它是一個系統進程,那麼它是不可避免的。我想你必須自己殺死這些應用程序才能釋放這些資源。 – mariusm 2014-08-28 13:13:33

+0

是的,這是一個系統應用程序(不是持久的,但安裝在/系統/應用程序),但我檢查/系統/應用程序目錄中的其他應用程序,他們沒有這些分配。 – summer 2014-08-29 03:35:16

回答

0

從PROC手冊上的Linux:

/proc/[pid]/maps 
      A file containing the currently mapped memory regions and their access permissions. See 
      mmap(2) for some further information about memory mappings. 
+0

謝謝,我幾乎知道他們的意思,但我無法弄清楚爲什麼這個應用程序有這麼多的分配像那樣,我想減少這種內存分配 – summer 2014-08-29 03:42:46

-1

我怎樣才能避免這種內存分配?

當然,如果您不讓它運行,您可以避免應用程序的內存分配。