I am wondering what happens when i try to run a new process on an embedded board running linux with no swap partition or swap file. Normally for linux on PC, it swaps out the pages out of RAM and thus free memory for the new process. Now, embedded boards (take any development board for example), running linux with no swap wants to run a new process with RAM completely full, how does it run a new process?
The boards will have flash memories which have limited life so can’t swap frequently even if we implement swap.
OOM Killer comes and kills whichever process it thinks needs to be killed.
More information available here: http://linux-mm.org/OOM_Killer