Download CSE 120: Operating Systems - Lecture 1: Course Intro by Geoffrey M. Voelker - Prof. Geoffr and more Study notes Computer Science in PDF only on Docsity! 1 CSE 120 Principles of Operating Systems Fall 2002 Lecture 1: Course Introduction Geoffrey M. Voelker September 26, 2002 CSE 120 – Lecture 1 – Course Intro 2 Lecture 1 Overview Class overview What is an operating system? Operating system modules, interfaces 2 September 26, 2002 CSE 120 – Lecture 1 – Course Intro 3 Personnel Instructor: Geoff Voelker TAs: ◆ Yuchung Cheng: Discussions, homeworks ◆ John Rapp: Projects September 26, 2002 CSE 120 – Lecture 1 – Course Intro 4 CSE 120 Class Overview Course material taught through class lectures, textbook readings, and handouts Course assignments are ◆ Homework questions (mostly from the book) ◆ Three large programming projects in groups Discussion sections are a forum for asking questions ◆ Lecture material and homework ◆ Also “guest” discussions from the project TAs ◆ Additional OS topics (e.g., how does an OS boot?) ◆ Mailing list (cse120@cs.ucsd.edu) ◆ Discussion board (http://discus4.ucsd.edu) 5 September 26, 2002 CSE 120 – Lecture 1 – Course Intro 9 Exams Midterm ◆ Thursday, October 24 ◆ Covers first half of class Final ◆ Friday, December 10 ◆ Covers second half of class plus selected material from first part » I will be explicit about the material covered Crib sheet ◆ You can bring one double-sided 8.5x11” page of notes to each exam to assist you in answering the questions ◆ Not a substitute for thinking September 26, 2002 CSE 120 – Lecture 1 – Course Intro 10 Grading Homeworks: 20% ◆ Think of these collectively as a take-home midterm Midterm: 20% Final: 30% Projects: 30% 6 September 26, 2002 CSE 120 – Lecture 1 – Course Intro 11 How Not To Pass CSE 120 Do not come to lecture ◆ It’s nice out, the slides are online, and the material is in the book anyway ◆ Lecture material is the basis for exams and directly relates to the projects Do not do the homework ◆ It’s only 20% of the grade ◆ Excellent practice for the exams, and some homework problems are exercises for helping with the project ◆ 20% is actually a significant fraction of your grade (difference between an A and a C) September 26, 2002 CSE 120 – Lecture 1 – Course Intro 12 How Not To Pass (2) Do not ask questions in lecture, office hours, or email ◆ It’s scary, I don’t want to embarrass myself ◆ Asking questions is the best way to clarify lecture material at the time it is being presented ◆ Office hours and email will help with homeworks, projects Wait until the last couple of days to start a project ◆ We’ll have to do the crunch anyways, why do it early? ◆ The projects cannot be done in the last couple of days ◆ Some groups last time learned that starting early meant finishing all of the projects on time…and some didn’t 7 September 26, 2002 CSE 120 – Lecture 1 – Course Intro 13 Handouts Course syllabus ◆ Also online (URL at bottom, linked into my home page, deptartmental web pages) ◆ Will update schedule as quarter progresses Nachos paper ◆ Original paper describing the Nachos project Unix paper ◆ Seminal research paper describing the early Unix system ◆ FYI only, but you might find it interesting ◆ Concepts in paper might seem obvious and familiar, but they were new at one time September 26, 2002 CSE 120 – Lecture 1 – Course Intro 14 Questions Before we start the material, any questions about the class structure, contents, etc.? 10 September 26, 2002 CSE 120 – Lecture 1 – Course Intro 19 What is an operating system? The operating system is the software layer between user applications and the hardware The OS is “all the code that you didn’t have to write” to implement your application Operating System Hardware Applications September 26, 2002 CSE 120 – Lecture 1 – Course Intro 20 The OS and Hardware The OS abstracts/controls/mediates access to hardware resources ◆ Computation (CPUs) ◆ Volatile storage (memory) and persistent storage (disk, etc.) ◆ Communication (network, modem, etc.) ◆ Input/output devices (keyboard, display, printer, camera, etc.) The OS defines a set of logical resources (objects) and a set of well-defined operations on those objects (interfaces) ◆ Physical resources (CPU and memory) ◆ Logical resources (files, programs, names) 11 September 26, 2002 CSE 120 – Lecture 1 – Course Intro 21 The OS and Hardware (2) Benefits to applications ◆ Simpler (no tweaking device registers) ◆ Device independent (all network cards look the same) ◆ Portable (same program on Windows95/98/ME/NT/2000/…) ◆ Transportable (same program across different OSes (Java)) September 26, 2002 CSE 120 – Lecture 1 – Course Intro 22 The OS and Applications The OS defines a logical, well-defined environment… ◆ Virtual machine (each program thinks it owns the computer) For users and programs to safely coexist, cooperate, share resources ◆ Concurrent execution of multiple programs (timeslicing) ◆ Communication among multiple programs (pipes, cut & paste) ◆ Shared implementations of common facilities » No need to implement the file system more than once ◆ Mechanisms and policies to manage/share/protect resources » File permissions (mechanism) and groups (policies)