Advanced Operating Systems CS 202 Presenter today Bashar
Advanced Operating Systems (CS 202) Presenter today: Bashar Romanous
Today • Introduction to xv 6 2
v 6 • Sixth Edition Unix a. k. a. Version 6 Unix • First public release of Unix out of Bell Labs – By Ken Thompson & Dennis Ritchie, 1975 • Designed for DEC PDP-11* • Original source code still available: http: //minnie. tuhs. org/cgi-bin/utree. pl 3
Why not using v 6 • PDP 11 is not used nowadays • Missing some of the key issues in modern Oses Paging – Multicore – • Luckily. . 4
xv 6 • xv 6 is an MIT reimplementation of Unix v 6 – Runs on x 86 • But we will run it on top of QEMU Smaller than v 6 – Preserve basic structure (Processes, files, pipes. etc. ) – Runs on multicores – Got paging in 2011 – • To understand it, you’ll need to read its source code – It’s not that hard – Textbook/commentary: xv 6: a simple, Unix-like teaching operating system • Online: https: //pdos. csail. mit. edu/6. 828/2018/xv 6/book-rev 11. pdf 5
Why xv 6? Why study an old OS instead of Linux, Solaris, or Windows? • 1: Big enough – To illustrate basic OS design & implementation • 2: Small enough – To be (relatively) easily understandable • 3: Similar enough To modern Oses – Once you’ve explored xv 6, you will find your way insde kernels such as Linux – 6
XV 6 Structure • Monolithic kernel – Provides services to running programs • Processes uses system calls to access system services • When a process call a system call Execution will enter the kernel space – Perform the service – Return to the user space – 7
XV 6 system calls 8
XV 6 system calls (2) 9
- Slides: 9