Replication, Load-balancing, and QoS
Download
Report
Transcript Replication, Load-balancing, and QoS
CS170: Operating Systems
Fall 2010, 4 units
http://www.cs.ucsb.edu/cs170
Lecture M F 12:30-1:45 Phelp 1425.
Discussion F 11:00-11:50 Phelp 2516.
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.
4/1/2016
2
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.
4/1/2016
3
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.
4/1/2016
4
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?
4/1/2016
5
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).
4/1/2016
6
Large-Scale Internet Search: An OS
Perspective
Tens of millions of
users
Lots of data
Lots of networked
computers/memory/dis
ks
Data
Center
Asia
Asian user
NY user
CA user
VP
N
N
3DNS
-WAN
Load
Balancer
P
V
Data
Center
California
VPN
Internet
Level-3 Switch
Level-2 Switch
Data
Center
New York
Level-2 Switch
Level-3 Switch
Level-2 Switch
...
Level-2 Switch
4/1/2016
7
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.
4/1/2016
8
Expected Work
Class participation
Practice exercises on OS concepts
Projects
3 assignments with extensive C++/C programming (read OS
code and extend).
2 persons/group.
Two exams
Not graded; however similar/related problems will appear in
Exam 1 and Exam 2.
Solutions are available from the web site.
Questions on basic OS concepts and projects
Lots of work/great learning
4/1/2016
9
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%).
4/1/2016
10
Grading
Letter grading:
A range (90-100%), B (80-90%), C(7080%), 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
4/1/2016
11
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.
4/1/2016
12
Rest of fall quarter
Process/thread management and
synchronization. System calls.
Address translation and memory
management. File system interface.
Project 2 (~1200 lines of code)
Virtual memory.
File system implementation/disk
management
Project 1 (~330 lines of code)
Project 3 (~700 lines of code)
Scheduling/Deadlocks.
Networking/distributed
systems.
4/1/2016
13