Advanced Operating Systems Exam Review and Guidelines

e81 cse 522s advanced operating systems spring n.w
1 / 19
Embed
Share

Prepare for the Advanced Operating Systems exam with information on exam format, materials allowed, hardware performance counters, and kernel modules. Find details on the exam time and location, studio submissions, and more. Get ready to tackle short answer questions and demonstrate your understanding of key concepts.

  • Operating Systems
  • Exam Review
  • Guidelines
  • Hardware Performance
  • Kernel Modules

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. E81 CSE 522S: Advanced Operating Systems Spring 2022 Exam 1 Review Marion Sudvarg msudvarg@wustl.edu Chris Gill cdgill@wustl.edu 1

  2. Exam Time and Location Thursday, February 24 2:30-3:50PM (usual class time) in Jubel 121 (not Urbauer 216) CSE 522S Advanced Operating Systems 2

  3. Studios Reminder: Studios 1-10 are due by Wednesday, February 23, at 11:59PM One submission per team in Canvas, please If you have a studio marked Incomplete please address the comment! Let us know by email ASAP if you need an extension, and the reason for that request CSE 522S Advanced Operating Systems 3

  4. Exam Format Mostly short answer Some matching of terms Largely intended to test your understanding of concepts What does this do? When would you use this? Where is this implemented? Why was this important? CSE 522S Advanced Operating Systems 4

  5. Materials Allowed Open book, open notes What is allowed: Any handwritten or printed notes Any textbooks An electronic notebook without internet capabilities, if approved by instructor(s) in advance - please ask us What is not allowed: Internet-capable laptops, tablets, phones, etc. We will have two extra copies of all textbooks Recommendation: write a 1-2 sided notes page! Writing it will help you study Easier to access during exam than printing all notes! CSE 522S Advanced Operating Systems 5

  6. Hardware Performance Counters Enable precise measurements of hardware events Used for performance analysis and tuning On Intel, TSC available from userspace by default Linux provides access on ARM through perf_event_open() Syscall induces overhead! Direct userspace access can be enabled via kernel module CSE 522S Advanced Operating Systems 6

  7. Kernel Modules Enable kernel-level functionality to be dynamically loaded on running system Device drivers, architecture-specific code, loading custom functionality at runtime, Use insmod and rmmod to load and remove Requires CAP_SYS_MODULE to load CSE 522S Advanced Operating Systems 7

  8. Virtual File System Provides a single, global hierarchy for the whole system Filesystems are mounted into a location in the hierarchy Allows unified access to functionality via file and directory operations Filenames (in directories) are decoupled from file data (inodes) Allows multiple hard links to a single file Bind mounts allow files and directories to be mounted at another location in the VFS CSE 522S Advanced Operating Systems 8

  9. File System Monitoring with inotify Filesystem operations generate one or more events mkdir, rm, ls, cp, mv Inotify provides an interface for monitoring events 1. Initialize with inotify_init() creates a file descriptor (everything is a file!) 2. Add files and directories to watch with inotify_add_watch() 3. Read from fd with read() 4. Data formatted as array of inotify_event structs Cookie used to track matching events CSE 522S Advanced Operating Systems 9

  10. Process Observability gdb for debugging /proc is a pseudo-filesystem (backed by kernel data structures, not disk) /proc/PID provides information about each process Used by ps, top, htop CSE 522S Advanced Operating Systems 10

  11. Namespaces Create illusion that groups of processes share an isolated instance of a global resource Used in container environments So far: UTS, PID, mount, user, cgroups PID: allows container to have PID 1 init process to reap children and orphans Mount: propagation type determines how events propagate to peer groups User: allows container to have its own root user Creation of namespaces is a privileged task, unless in conjunction with user namespace CSE 522S Advanced Operating Systems 11

  12. Capabilities Provide finer granularity for administrative privilege than root/non-root dichotomy Process capabilities define permissions File capabilities added to process capabilities when exec()ed CSE 522S Advanced Operating Systems 12

  13. Resource Limits and cgroups Resource limits allow a process to define its own (and its subsequent childrens ) limits on access to resources Resource usage reset on fork() Forkbomb need a principled, flexible mechanism cgroups allow resource allocation and monitoring over groups of processes Used by container environments CPU and I/O bandwidth and weighting Access to a subset of CPU cores Memory usage Can be delegated to non-root users Hierarchical All processes must be in leaf node (if not in global cgroup) CSE 522S Advanced Operating Systems 13

  14. I/O I/O is expensive millions of times slower than CPU register/cache access I/O schedulers merge and sort requests Page cache stores data for later use Writes mark pages dirty, writeback deferred Use posix_fadvise to allow kernel to optimize based on intended access patterns CSE 522S Advanced Operating Systems 14

  15. Timers and Interrupts Devices generate interrupts to indicate events to CPU Prevents CPU from having to poll each device Generic Interrupt Controller on ARM multiplexes numbered interrupt lines Timer interrupts allow CPU to preempt task execution Types of timers: absolute, relative, periodic Periodic timers must be correctly implemented to avoid timer drift! CSE 522S Advanced Operating Systems 15

  16. Exam Format Mostly short answer Some matching of terms Largely intended to test your understanding of concepts What does this do? When would you use this? Where is this implemented? Why was this important? CSE 522S Advanced Operating Systems 16

  17. Studios Reminder: Studios 1-10 are due by Wednesday, February 23, at 11:59PM One submission per team in Canvas, please If you have a studio marked Incomplete please address the comment! Let us know by email ASAP if you need an extension, and the reason for that request CSE 522S Advanced Operating Systems 17

  18. Exam Time and Location Thursday, February 24 2:30-3:50PM (usual class time) in Jubel 121 (not Urbauer 216) CSE 522S Advanced Operating Systems 18

  19. Good Luck! That said, please also remember that Fortune favors the prepared mind. Louis Pasteur Any questions? CSE 522S Advanced Operating Systems 19

More Related Content