Hello guys. May I ask a question? I've been reading through the linux sources, early versions (the code is much smaller), and I have some doubts. Let's talk about demand paging: When a process is born (via fork, of course), linux gives him a 64MB segment (recall I'm talking about earlier versions). To get this, you need 16 page tables: 16*4MB = 64MB. Each page steal 4KBytes of memory. So, you need 16 * 4KBytes = 64KBytes of memory space, for EACH PROCESS. It is really this way? Think about 100 processes, they would steal 6400 KBytes, just for the page tables!!! -- $ fortune To invent, you need a good imagination and a pile of junk. -- Thomas Edison $ -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/