Presentation is loading. Please wait.

Presentation is loading. Please wait.

Course Introduction David Ferry, Chris Gill Department of Computer Science and Engineering Washington University, St. Louis MO 1E81.

Similar presentations


Presentation on theme: "Course Introduction David Ferry, Chris Gill Department of Computer Science and Engineering Washington University, St. Louis MO 1E81."— Presentation transcript:

1 Course Introduction David Ferry, Chris Gill Department of Computer Science and Engineering Washington University, St. Louis MO davidferry@wustl.edu 1E81 CSE 522S - Advanced Operating Systems

2 Three Goals for Students The goal of this course is that students develop: 1.A good intuition about OS operation and design principles – OS mechanisms: syscalls, interrupts, processes, process scheduling, process synchronization, inter-process communication 2.Skills for monitoring the runtime operation of an OS – Tracers: ftrace (trace-cmd and kernelshark), strace – User space benchmarking 3.Hands-on experience in modifying an OS – Source-code intensive course – You’ll be asked to modify and evaluate the OS – Course project requires a substantial modification E81 CSE 522S - Advanced Operating Systems2

3 Course Motivation For an increasing number of computer applications, general purpose operating systems are not enough, E.g.: – Real-time Systems – Embedded Systems – Cyber-physical Systems – High-speed Networking Or are moving away from discrete microprocessor designs, E.g.: – Automotive – Digital control Many graduate students are doing research that modifies or heavily depends on the details of the kernel. E81 CSE 522S - Advanced Operating Systems3

4 Topics Overview The OS is too large to cover everything! This course specifically focuses on OS features that affect process semantics. E.g.: – Scheduling – Inter-process communication – System timing – See course website for specifics This course doesn’t cover: – Device drivers – File systems – Networking – Memory management – Plenty other topics E81 CSE 522S - Advanced Operating Systems4

5 Course Environment Our OS of choice is the Linux kernel – Open source, most deployed – Most practical for research – Broadly applicable skill set The course is designed around the Raspberry Pi 2 – We don’t want to modify the kernel on “production” machines – Provides four cores at 900MHz – Reasonably fast, provides interesting multicore behavior – Cheap – Useful and used elsewhere in WUSTL CS curriculum E81 CSE 522S - Advanced Operating Systems5

6 Words of Warning OS hacking requires a lot of patience and thought – RPI2 kernel compile time: approx 90 minutes! – Spend more time thinking through code before writing – Huge established codebase to digest – Our goal is that your “hands-on” time is similar to other courses – Start early, fail early. The RPi2 is an ARM processor – The OS has lots of processor dependent code – Will try to provide pointers to x86 references as well Your instructor knows less than you think! – There are too many specifics in the kernel to know everything – But we’re happy to talk about anything E81 CSE 522S - Advanced Operating Systems6

7 Course Format Class time is split between lecture and studios. There will be two lab assignments in the first 8 weeks of class. There will be a course project in the last 6 weeks of class. We will have a midterm and final exam. E81 CSE 522S - Advanced Operating Systems7

8 Class Readings Course textbook: Linux Kernel Development, 3 rd Ed., by Robert Love, 2010. – Book is a great starting resource for kernel hackers – Other class readings are relatively current documents about the Linux kernel – Plan to look at a lot of source code in your spare time – Course website provides a number of free/online references Google is your friend – Linux is widely documented (but often not current) – Lots of resources exist for individual directories, files, and even functions E81 CSE 522S - Advanced Operating Systems8

9 This is a New Course Hopefully this course: – Isn’t too hard (or too easy) – Builds upon basic OS understanding – Works for people with basic to advanced knowledge of Linux I welcome comments and suggestions about topics and pacing Please come talk to me if you have any questions or comments E81 CSE 522S - Advanced Operating Systems9


Download ppt "Course Introduction David Ferry, Chris Gill Department of Computer Science and Engineering Washington University, St. Louis MO 1E81."

Similar presentations


Ads by Google