Course Topics

• The role of OS as resource manager; as Welcome to CIS 415 interface between user/pgms and underlying Operating Systems hardware • Emphasis on principles, algorithms, Winter 2006 mechanisms Instructor: Ginnie Lo • //Windows case study GTF: Dayi Zhou Website: http://www.cs.uoregon.edu/classes/cis415

Course Goals Course Structure

• Cover what every CIS graduate should know • Lecture: Mon. and Wed. 2-3:20 about OS - fundamentals Focused lectures, Q/A, exercises, drama, • Appreciation of the astounding complexity of the OS - what it does, how it does it food, 2 midterm exams • Hone your problem solving skills, performance analysis, algorithm development • Discussion Sections: Quizzes, practice • Enable you to apply what you learn to more complex and future OS problems, solutions, programming • Stimulate your interest in learning more about OS assignments

Course Workload Teaching Philosophy

• Homework/quizzes - 20% • Maximize your opportunity to perform at individual and group problems your best no late assignments, drop lowest grade h, q • Group learning • Programming assignments - 20% • Learning is enjoyable one individual, one group • High expectations of you as a student • Two Midterms - 15 % each, total 30% • High expectations of me as teacher • Final - 30% • Feeding you (a great motivator)

1 Course Materials And now the first food item …. • Concepts, 7th Edition by Silbershatz, Galvin, and Gagne (6th edition is OK, get reading list) ß Online lecture slides from the textbook (ch#.pdf) ß My own online lecture slides (topic.pdf) ß Handouts: in class worksheets and readings Why an onion???

OS Layered Structure Layered Approach Access to OS Services • The operating system is divided into a • Management number of layers (levels), each built on top • of lower layers. The bottom layer (layer 0), •File Management is the hardware; the highest (layer N) is the •I/O and Secondary Storage Management . •Protection • With modularity, layers are selected such that each uses functions (operations) and •User Interface services of only lower-level layers.

Case Studies Quiz: Which OS goes with which guy: Unix, Linux, Solaris, , Xinu, Windows, OS/X?

• Mine will be Unix • Yours can be whatever you choose Some homework questions, some extra credit on your case study, esp. if you do in- class presentation

2 The Empress Dowager OS UNIX Kept her ruthless power in Qing Dynasty • The UNIX OS consists of two court through servers who were eunuchs separable parts. – Systems programs – The kernel • Consists of everything below the system-call interface and above the physical hardware • Provides the , CPU scheduling, memory management, and other operating- system functions; a large number of functions for one level.

UNIX System Structure Unix/Linux Family Tree (not up to date)

OS/2 Layer Structure MS-DOS Layer Structure

3 System Design Goals Mechanisms and Policies

• User goals – operating system should be • Mechanisms determine how to do convenient to use, easy to learn, reliable, something, policies decide what will be safe, and fast. done. • System goals – operating system should be • The separation of policy from mechanism is easy to design, implement, and maintain, as a very important principle, it allows well as flexible, reliable, error-free, and maximum flexibility if policy decisions are efficient. to be changed later.

System Implementation OS Terminology

• Traditionally written in assembly language, • Uniprocessor v. multiprocessor operating systems can now be written in higher- level languages. • Uniprogramming v. multiprogramming • Code written in a high-level language: • Time sharing v. batch processing – can be written faster. • Distributed system v. network – is more compact. – is easier to understand and debug. • An operating system is far easier to port (move to Our focus is on multiprogrammed some other hardware) if it is written in a high- uniprocessor systems. level language.

4