It's usual on Linux (where Android comes from), while the system has
free memory it caches every access to storage devices to improve later
access to same data.
When the system needs memory for a process the cached memory is
immediately available if needed, the system will discard or save on
disk some of the cached content and use the new free memory for the
demanding process.
You nearly may consider cached memory as free memory.

On 11 mar, 20:46, Porting beginner <porting.begin...@gmail.com> wrote:
> Hi,
>
> I have android running on my target platform.
> When its booting, as kernel boots , I see free memory around 53mb-55mb range
> there till console.
> ( cat /proc/meminfo )
>
> *Just after kernel boot...
> *
>
> MemTotal:          88792 kB
> *MemFree:           53496 kB
> *Buffers:               0 kB
> *Cached:            24028 kB*
> .
> .
> .
>
> But once android services/apps starts and reach to idle screen, most of
> memory cached
> *Once reach to Idle screen*
>
> MemTotal:          88792 kB
> *MemFree:           23228 kB ( keep changing in range of 23mb to 27 mb )*
> *
> *Buffers:              44 kB
> *Cached:            20700 kB ( keep changing 19mb-25mb )
> *
>
> After this, if there is memory request from app , it seems android manage to
> get it from cached
>
> As I start more and more apps, free mem decrease and cached mem increase but
> after exit from app, mem still hold as cached
> mem and not all mem return as free mem.
>
> And  if there is request from kernel space ( from some driver module ,
> kmalloc or kalloc ), it seems its not going through and request failing.
>
> Any idea ? is that generic behavior of android ?
>
> --
> Thanks

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting

Reply via email to