1 / 7

W4118 Operating Systems

This course provides a comprehensive understanding of operating systems, covering topics such as processes, threads, synchronization, scheduling, and file systems. Students will gain hands-on experience by working with a real operating system (Linux) and learn how to read, modify, and debug complex systems. Prerequisites include good knowledge of C, Unix programming, and computer organization. The course is 3 units and is highly recommended for students interested in large software systems.

littrell
Download Presentation

W4118 Operating Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. W4118 Operating Systems Junfeng Yang

  2. What this course is about • Fundamental OS concepts • OS: one of the most crucial, almost everything thru OS • What? Functionality? How? • Processes, threads, synchronization, scheduling, file systems … • Many concepts wide use • broad picture: how everything works together, hardware, programming language, algorithms … • Hands on experience learning and hacking a real OS (Linux) • Skills + concepts • Probably your first course dealing with large software • how to read, know, filter, modify, debug complex systems • Team work

  3. Basic Info • Course webpage: google W4118 + yang • http://www.cs.columbia.edu/~junfeng/09sp-w4118/ • 3 units, heavy, but worth it • “ most useful after graduating” • Pre-requisite: good C, some Unix programming, computer organization • W3137 Data Structures and Algorithms • W3157 Advanced Programming • W3827 Fundamentals of Computer Systems

  4. Basic Info (cont.) • Materials • Operating System Concepts, 8th Edition • Understanding the Linux Kernel, 3rd Edition • Additional materials will be made available online • You need a CS account; all programming assignments must compile on CLIC or VM. Apply ASAP • Discussions, grades, homework submissions: • https://courseworks.columbia.edu/ • Staff mailing list: w4118spr09@lists.cs

  5. Staff • Instructor: Junfeng Yang, 460 CSB, office hours TR 5:30-6:30, start next week • Main research area: OS, reliability, bug-finding • Hacked Linux and Windows, found some of the worst bugs. (e.g. all your files gone!) • Cool projects available for project students • TAs • Supreeth Subramanya • Yunling Wang • We’re getting one more

  6. Format • Lectures: alternate between concepts and Linux case studies • Six assignments: best five, 50% of grades, • Each assignment: written + programming • First programming assignment: warm up • The other five: Linux kernel hacking • Start early! • Two exam • Midterm: 20% • Final: cumulative, 30%

  7. Policies • Homework • No extension, late = 0 • Submit electronically through CourseWorks • Multiple submission okay (timestamped), last counts • Partially complete homework okay • Grading • Follow the procedure • Programming • Code must compile and run on CLIC or VM • Collaboration/Copy • Encourage collaboration • Copying code is strictly prohibited: report to school

More Related