The Linux kernel (which Android runs on) will use free RAM for filesystem buffer cache, to speed up repeated access to storage. But it'll give that memory back if and when applications need it. So over time, depending on what you're measuring, you may see a Linux system's memory usage slowly creep up to 100%. But, this is a good thing! It's just a matter of definition as to whether or not that memory is "free". It is in use, but it's also available if needed. So does "free" mean "unused", or does it mean "available"?
Adding to the complexity, Android caches apps in memory. If you launch an app, then press the home button, the process is suspended, but the RAM it was using is still reserved for it. The purpose is to speed up re-launching that app. But here, too, there's no problem with slowly running out of RAM, since Android will remove suspended processes as needed to free up that memory. (Some people run task killers to free up this memory proactively, but I think this is a mistake which will cost them battery and performance; the OS architects knew what they were doing.)
As far as using the SD card for virtual memory, the Linux concept is called swap. I don't have my Nook handy to check, but since swapping to SD would put wear and tear on the card and 512MB is plenty of RAM to run Android, I'm guessing that it is not configured to swap to SD.
Memory management on Linux and Android is a bit complicated, but it works very well. More RAM means better performance, of course.





Find content
Not Telling

