Hacking Operating Systems
Table of Contents
Things you should know to be an OS researcher (hacker).
Linux Kernel
Virtualization/Emulation
- qemu
- https://www.qemu.org/
- Run OS/program written for one architecture to another, w/ dynamic translation.
- KVM
- https://www.linux-kvm.org/page/Main_Page
Bootloader
- MIT 6.828 Lab 1
- https://pdos.csail.mit.edu/6.828/2018/labs/lab1/
- Tutorial
- Writing Boot Loader by Frank Rosner
Driver
- NVIDIA GPU Driver
- https://github.com/NVIDIA/open-gpu-kernel-modules
- Tutorial
- Writing Keyboard Driver by Frank Rosner
Memory Management
- Memory Allocator
- Hoard
File System
- User space file system
- libfuse
Hacking
- Intercept system call
- syscallintercept
- (no term)
- Hijacking Library Functions and Injecting Code Using the Dynamic Linker
OS paper example
- Hemem @ SOSP 2021
- https://bitbucket.org/ajaustin/hemem/src/sosp-submission/