Upload
chrystal-powers
View
214
Download
0
Tags:
Embed Size (px)
Citation preview
CS170: Operating Systems
Fall 2010, 4 unitshttp://www.cs.ucsb.edu/cs170
Lecture M F 12:30-1:45 Phelp 1425. Discussion F 11:00-11:50 Phelp 2516.
04/18/23 2
Course Info
Design and implementation of operating systems. Class projects
Build/extend an operating system on a simulated MIPS-style computer
Focus: process/thread management, code loading/execution, multiprogramming, virtual memory, and file systems.
Prerequisite: Algorithms/data structure, C++/C programming Computer organization, experience with Linux or Unix.
04/18/23 3
Course Info Instructor: Tao Yang
[email protected] HFH building, Room 5113. Office hours: MW 1:45-2:45 (or by
appointments or just stop by). TA: Maha A. Alabduljalil ([email protected]) Discussion group: TBA Text Book: Operating System Concepts. 8th edition
available in hardcover, paperback and Kindle.
04/18/23 4
About myself Professor of Computer Science
Joined UCSB in 1993 Research/Courses taught: Scientific computing
(111), Parallel scientific computing (140). Compilers (160), OS(170), Parallel computing/program parallelization, Web search/data mining
Industry experience Chief scientist/senior VP for Ask Jeeves/Ask.com in
last 10 years. Built Ask.com search, Ask kids with over 90 million
users.
04/18/23 5
Why do I teach this course/why do you need to take this course?
Why do I teach this course? Exciting System/OS experience is critical for many
applications Share my academic/industry experience Make sure/help everybody to learn
Make the course easier/good learning
Why do you need to take this course?
04/18/23 6
What will you learn? Basic operating system concepts How to program an operating system
Have a deep understanding of key components.
Program execution & multiprogramming Process/thread management Memory management File system implementation (disk).
Impact on your job after graduation Interpret performance behavior and optimize
applications in using CPU/memory/disk Adapt quickly: new CPU/memory/storage
New OS. Different devices/platform (e.g. cell phone, TV).
04/18/23 7
Large-Scale Internet Search: An OS Perspective
Tens of millions of users
Lots of data Lots of networked
computers/memory/disks
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
...
04/18/23 8
Infrastructure Challenges/OS Issues for Search Engines
Data intensive Tens of billions of documents: hundreds of
terabytes/petabytes of data with replication/data reformation.
Management of memory, disk storage. High performance and availability
Response time < 1 sec. High throughput (thousands of requests per sec) Fault tolerant/speed optimization.
Infrastructure Cost: Huge computer clusters/data center+networking
expense. Resource/efficiency optimization.
04/18/23 9
Expected Work Class participation Practice exercises on OS concepts
Not graded; however similar/related problems will appear in Exam 1 and Exam 2.
Solutions are available from the web site. Projects
3 assignments with extensive C++/C programming (read OS code and extend).
2 persons/group.
Two exams Questions on basic OS concepts and projects
Lots of work/great learning
04/18/23 10
Grading Final grade
3 Projects (55%). Late submission
One free chance per group. 10% penalty per day. No more than 3 days.
Oral group interview will be conducted (typically once).
Partial credits will be given even not working.
Exam 1 (15%) and Exam 2 (25%). Exam 1 score can be improved.
Class participation (5%).
04/18/23 11
Grading Letter grading:
A range (90-100%), B (80-90%), C(70-80%), D (60-70%), F(below 60%) in general.
Based on class score curve, we will shift some points (e.g. 5%) in considering +/- grades in the boundary situation.
Good efforts-> good learning->good grade. Discuss with me/TA on your progress in the
middle of quarter
04/18/23 12
Topics/Schedule Weeks 1/2:
Introduction to OS and Process/Thread Management.
Cover OSC Chapters 1-4. Practice Exercises Programming Project:
Project #0: NACHOS Warm-up Form a project group.
04/18/23 13
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)
Scheduling/Deadlocks. Networking/distributed systems.