Download presentation
Presentation is loading. Please wait.
Published byJulianna Corey Gardner Modified over 9 years ago
1
CS170: Operating Systems Fall 2015, 4 units http://www.cs.ucsb.edu/~cs170
2
7/2/20152 Course Information Instructor: Tao Yang www.cs.ucsb.edu/~tyang Office hours: TR 1:45-2:45 (or stop by). TA: Daniel Kudrow (dkudrow@cs), Varun Kulkarni Somashekhar (varun@umail). Grading: Roman Kazarin (rkazarin@umail) Text Book: Operating Systems: Principles and Practice (Second Edition). by Thomas Anderson and Michael Dahlin. Recursive Books Ltd. 2014 Recommended: Operating System Concepts Essential. Or Operating System Concepts by the same authors
3
OS Market Shares on All Devices Worldwide Device Shipments by Operating System YearAndroidiOSiOS/OS XOS XWindowsOthers 201448.61%11.04%14.0%26.34% 201338.51%10.12%13.98%37.41% 201222.8%9.6%15.62%51.98% http://en.wikipedia.org/wiki/Usage_share_of_o perating_systems
4
OS Market Shares on Desktops and Servers Desktops Windows 755.99% Windows XP 19.15% Windows 8.1 10.49% Windows 83.55% Mac OS X 10.10 3.55% Windows Vista 2.11% Mac OS X (other) 1.7% Mac OS X 10.9 1.65% Linux1.53% Windows (other) 0.28 Unix- based 64.2%67.8% Windows35.9%32.2% Feb 2011March 2015 Web server OS Market shares. W3Techs.com http://en.wikipedia.org/wiki/Usage_share_of_operating_systems
5
OS History: How Linux, Andriod, iOS, and Windows are related?
6
Because of the cost of developing an OS from scratch, most modern OSes have a long lineage: Multics AT&T Unix BSD Unix Ultrix, SunOS, NetBSD,… Mach (micro-kernel) + BSD NextStep XNU Apple OSX, iphone iOS Linux Android OS CP/M QDOS MS-DOS Windows 3.1 NT 95 98 2000 XP Vista 7 8 phone … Linux RedHat, Ubuntu, Fedora, D ebian, Suse,… J. Kubiatowicz CS162 UCB
7
7/2/20157 Course Info Design and implementation of operating systems. Class projects Linux/Unix system calls on process and Pthreads Extend an operating system on a virtual machine. Focus: process/thread management, code loading/execution, multiprogramming, virtual memory, and file systems/disk storage. Need to have a CSIL account Prerequisite: Algorithms/data structure, computer architectures C/C++ programming. Experience with Linux.
8
7/2/20158 Why this course? Myself CS faculty since 1993. Ask Jeeves/Ask.com. Research in parallel distributed systems and information retrieval. Built large-scale web search at Ask.com Why do I teach this course? Exciting System/OS experience is critical for many applications Share my academic/industry experience Help everybody to learn
9
7/2/20159 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
10
Complex interaction of multiple components in multiple administrative domains Systems, services, protocols, … Datacenter Load balancer Ad Server DNS Servers Service engine DNS request Reply page Data store Internet Services: An OS Perspective
11
7/2/201511 Challenges/OS Issues in Internet 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.
12
7/2/201512 Topics/Schedule Weeks 1 and 2 lectures: Introduction to OS and Process/Thread Management. Nachos/Pthreads Action: Join Piazza class discussion group (linked from ~cs170 homepage) Review Project 0 and form a 2-3 person group ~250 lines of C code Due on April 10
13
7/2/201513 Projects Project 0: Shell Linux processes & system calls Project 1: Pthread Synchronization. Nachos Threads Project 2: Nachos Processes& System Calls Project 3A: Nachos virtual memory Optional Project 3B: Nachos file systems Nachos 9K lines
14
7/2/201514 Rest of fall quarter Process/thread management and synchronization. System calls. Project 1 (Read 1K lines. Write ~300 lines) Address translation and memory management. Project 2 (Read 2K lines. Write ~500 lines) Virtual memory and file system implementation Project 3A and 3B (Read 2K lines. Write ~500 lines)) Process Scheduling. Deadlock.
15
15 Discussion Sections Apr 6: Review Linux system calls. Project 0 sample code/Makefile April 10 (Proj 0 deadline) Apr 13: Review Pthreads and synchronization. Project 1 sample code. Apr 20 Project 1. MIPS Assembly. April 23 (Proj 1 deadline) Apr 27: Project 2. May 6 (Proj 2 deadline). May 4. Exercise review for Exam 1 May 7 or 12 (Exam 1) May 11: Project 3A. Memory management May 18: Project 3B. File systems. May 20 (Proj 3A). June 1 (Proj 3B). June 1. Exercise review for final exam
16
16 170 Class Workload: Heavy Projects (45%) 4 projects with extensive C++/C programming Project 3B is optional, and will improve your exam 1 score. 2-3 persons/group. Exam 1+Exam 2 (45%). You can boost Exam 1 with Project 3B or with Exam 2 Exercises and participation (10%) Not curved (tentatively): A level [90-100] A (>92.5%) B level [80-89.9] B (>82.5%) B+(>87) C level [70-79.9] C(>72.5%) C+(>77)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.