OOM stands for Out Of Memory. In the linux kernel, this problem is handled by the OOM manager, which simply does the following : check if there is enough memory avalaible, verify that the the system is truly out of memory and then selects a process to kill. The process to kill is selected by the function select_bad_process(). It tends to select a young process which takes a lot of memory.
what i got from your explanation is that out of memory manager kills the process to make sure that memory is freed for a process which needs memory. But my doubt is when there is no memory at all how does OOM gets into memory in the first place? Am i missing something here?
All these informations are extracted from the prefect mel gorman's book, Linux VM. You can find it (and you must read it:)) here : http://www.skynet.ie/~mel/projects/ The last chapter is about OOM. -- tyler tyler@xxxxxxxx ___________________________________________________________________________ Yahoo! Mail réinvente le mail ! Découvrez le nouveau Yahoo! Mail et son interface révolutionnaire. http://fr.mail.yahoo.com -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/
-- play the game -- Kernelnewbies: Help each other learn about the Linux kernel. Archive: http://mail.nl.linux.org/kernelnewbies/ FAQ: http://kernelnewbies.org/faq/