CS698Z - Linux Kernel Programming BACK

RCU

Example discussed in class can be downloaded from here. Get a handle on the implementation.
Modify the RCU implementation to replace call_rcu() (asyncronous clean-up of old copy) by synchronize_rcu() (followed by in-place cleanup) and observe the application program behavior. Hypothesis: Porgram will take more time to finish, verify. What about finish time of individual threads (reader and writer)?

mmap and /proc/[pid]/maps

Read mmap() man pages to understand creation of different types of user space mappings. Understand the output format of /proc/[pid]/maps. Write small example programs to perform mmap() with different flags and protection. Observe the changes in /proc/[your program pid]/maps