Messages in this thread | | | Subject | Behaviour of the VM on a embedded linux | Date | Fri, 22 Aug 2008 14:31:43 +0200 | From | "Wappler Marcel" <> |
| |
Hi Folks,
I'm trying to figure out whats going on an embedded system I have to deal with. It's running a 2.6.24.7 kernel on 32 MBytes of RAM. There is no swapping. There are some daemons and shells running and - a big monolithic c++ application.
The application runs a lot of pthreads on different real time priority levels. It looks like the application consumes a huge ammount of real memory in contrast to the assumption, that large code size is no problem due to paging out pages with unused code.
I'm not so familiar with the VM internas of the Linux kernel - I only have some general ideas about systems using MMUs. So my assumption was, that even if a application consists of a lot of code, almost all memory pages containing executable code can be paged out in favour of pages which are needed to store data (stacks, heap, slab). I tried to figuring this out through reading in different books like "understanding the linux kernel" but those parts I was not able to catch anywhere.
Now there is the idea, that pages which contain code of pthreads running at real time priority cannot be paged out because of the real time demand.
Is this true?
Thanks a lot, Marcel
PS: please CC me personaly on replies PPS: I'm hapy about every plausible idea
| |