18
CS170: Operating Systems Fall 2012, 4 units http://www.cs.ucsb.edu/~cs170

CS170: Operating Systems

  • Upload
    hadar

  • View
    68

  • Download
    0

Embed Size (px)

DESCRIPTION

CS170: Operating Systems. Fall 2012, 4 units http://www.cs.ucsb.edu/~cs170. Course Info. Instructor: Tao Yang [email protected] . www.cs.ucsb.edu/~tyang HFH building, Room 5113. Office hours: MW 11-12 (or by appointments or just stop by). Increase before exam/project due time. - PowerPoint PPT Presentation

Citation preview

Page 1: CS170: Operating Systems

CS170: Operating Systems

Fall 2012, 4 unitshttp://www.cs.ucsb.edu/~cs170

Page 2: CS170: Operating Systems

04/20/23 2

Course Info Instructor: Tao Yang

[email protected]. www.cs.ucsb.edu/~tyang

HFH building, Room 5113. Office hours: MW 11-12 (or by appointments

or just stop by). Increase before exam/project due time.

TA: Wei Zhang, Qin Zhou Text Book: Operating System Concepts Essential. Or

Operating System Concepts by the same authors

Page 3: CS170: Operating Systems

Operating Systems: Market Shares

Wikimedia.org, August 2012. Traffic Analysis

Page 4: CS170: Operating Systems

Unix-based and Windows OS Market Shares

Unix-based 64.2% 63.9%

Windows 35.9% 36.2%

Feb 2011 Sept 2012

Web server OSMarket shares.W3Techs.com

Smartphone market share

Page 5: CS170: Operating Systems

04/20/23 5

Course Info Design and implementation of operating systems. Class projects

Build/extend an operating system on a virtual machine.

Focus: process/thread management, code loading/execution, multiprogramming, virtual memory, and file systems/disk storage.

Exercise pthreads/system calls on Linux Need to have a CSIL account Prerequisite:

Algorithms/data structure, Knowledge of computer architectures C++/C programming. Experience with Linux.

Page 6: CS170: Operating Systems

04/20/23 6

About myself Professor of Computer Science

Joined UCSB in 1993 Research/Courses taught:

Scientific computing (111), Parallel computing (140), Compilers (160), OS(170),

Graduate courses: OS, Parallel Computing, Web search/data mining

Industry experience Chief scientist/senior VP for Ask

Jeeves/Ask.com for 10 years. Built Ask.com/Ask Jeeves search with over 100 million users.

Also advised Microsoft Bing

Page 7: CS170: Operating Systems

04/20/23 7

Why this course? Why do I teach this course?

Exciting System/OS experience is critical for many

applications Share my academic/industry experience Help everybody to learn

Why do you take this course?

Page 8: CS170: Operating Systems

04/20/23 8

What will you learn? Operating system concepts How to program an operating system

Program execution & multiprogramming Process/thread management Memory management File system implementation (disk).

Impact on your job or advanced studies Interpret performance behavior and optimize

software that uses CPU/memory/disk Adapt technology evolution:

New OS, new devices/platform (e.g. cell phone, TV).

Page 9: CS170: Operating Systems

04/20/23 9

Internet Services: An OS Perspective

Millions of users Big data Lots of networked

computers Cloud computing Internet

Data Center

California

Data Center

New York

Data CenterAsia

3DNS -WAN Load Balancer

Asian user

NY user

CA user

Level-2 Switch Level-2 Switch Level-2 Switch

Level-3 Switch

Level-2 Switch

Level-3 Switch

...

Page 10: CS170: Operating Systems

04/20/23 10

Challenges/OS Issues in Web Systems

Data intensive Hundreds of terabytes/petabytes of data partitioned

and replicated in many machines. Management of memory, disk storage, CPU

High performance and availability Response time < 1 sec. High throughput (thousands of requests per second) Fault tolerant

Infrastructure Cost: Huge computer clusters/data center+networking

expense. OS resource/efficiency optimization.

Page 11: CS170: Operating Systems

04/20/23 11

OS issues in Smart Phones

More powerful CPU &more memory Optimization for powerconsumption, speed, networking. Apps management

Search Fault tolerance Energy usage Portability

Page 12: CS170: Operating Systems

04/20/23 12

170 Class Workload: Heavy Practice exercises on OS concepts

Not graded (but count for 8% of total). Solutions are available from the textbook website.

Projects 3 assignments with extensive C++/C programming

(read OS code and extend). Write about 2,200 lines of code, extended from 9,000 lines of OS

code. Partial sample solutions will be given

2 persons/group.

Two exams Questions on OS concepts and projects

Page 13: CS170: Operating Systems

04/20/23 13

Grading Final grade

3 Projects (50%). Late submission

One free chance per group (3 days). 10% penalty per day. No more than 3

days. Partial credits will be given even not

working. Midterm (16%) Final (26%). 3 Practice exercise sets (8%).

Page 14: CS170: Operating Systems

04/20/23 14

Grading Exam score is adjusted if the average

is low.

Page 15: CS170: Operating Systems

04/20/23 15

Topics/Schedule Weeks 1 and 2 lectures:

Introduction to OS and Process/Thread Management. Nachos/Pthreads

Cover  text book Chapters 1, 3, 4. Assignments:

Join Google class discussion group Complete practice exercises Form a project group and download Nachos

code Project #0: NACHOS Warm-up 

Page 16: CS170: Operating Systems

04/20/23 16

Rest of fall quarter Process/thread management and

synchronization. System calls. Project 1 (~330 lines of code)

Address translation and memory management. File system interface. Project 2 (~1200 lines of code)

Virtual memory. File system implementation/disk

management Project 3 (~700 lines of code)

Process Scheduling.

Page 17: CS170: Operating Systems

04/20/23 17

Discussion Sections (tentative) W1: Project 0. Makefile. MIPS code. W2: Assembly used in Nachos. PThreads. W3: Project 1 & related code. W4: Exercise review for midterm W5: Project 2 and system calls. W6: Exercise/midterm review W7: Project 3 Part I W8: Project 3 Part II W9: Exercise review W10: Exercise review for final exam

Page 18: CS170: Operating Systems

04/20/23 18

Timeline Oct 10: Project 0. Oct 15: Exercise set 1 Oct 22: Project 1. Nov 5: Midterm exam Nov 9: Project 2 Nov 14: Exercise set 2 Nov 29: Project 3 Dec 3: Exercise set 3 Dec 8 week: Final exam