A safer OOM-killer
for Android kernel with very low overhead
Course and project information are provided in handout. Implementation details are explained in project report.
-
Baseline
- Implement a custom system call which can set memory limits for
UIDs
- Define a global variable to store
UID
andRSS
information - Implement a naive
OOM-killer
triggered by__alloc_page_nodemask
(not included in this version)
- Implement a custom system call which can set memory limits for
-
Bonus
- Implement a
OOM-killer
triggerd bytimer
- Allow users to exceed memory limits for a pre-set time period
- Implement a
-
Something More!
- Support using
make menueconfig
to add Yimin'sOOM-killer
feature in GUI - Make
timer
dynamic to further decrease overhead - Support passive detection of changes of
UIDs
using tracepoints to reduce the overhead ofOOM-killer
to the limit
- Support using
To my inspiring and gifted classmates @Alex Chi @Bugen Zhao