Syllabus of CS CS6233 (Graduate) Operating Systems I. Professor: Joel Wein

Similar documents
Computer Organization I (Tietokoneen toiminta)

Course Specifications

SYLLABUS- ACCOUNTING 5250: Advanced Auditing (SPRING 2017)

Computer Architecture CSC

Web-based Learning Systems From HTML To MOODLE A Case Study

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

4. Long title: Emerging Technologies for Gaming, Animation, and Simulation

Syllabus for CHEM 4660 Introduction to Computational Chemistry Spring 2010

Using Moodle in ESOL Writing Classes

INTRODUCTION TO GENERAL PSYCHOLOGY (PSYC 1101) ONLINE SYLLABUS. Instructor: April Babb Crisp, M.S., LPC

Android App Development for Beginners

CS Course Missive

State University of New York at Buffalo INTRODUCTION TO STATISTICS PSC 408 Fall 2015 M,W,F 1-1:50 NSC 210

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

Carolina Course Evaluation Item Bank Last Revised Fall 2009

Education: Integrating Parallel and Distributed Computing in Computer Science Curricula

CPMT 1347 Computer System Peripherals COURSE SYLLABUS

Integration of ICT in Teaching and Learning

Introduction to Mobile Learning Systems and Usability Factors

ITSC 1301 Introduction to Computers Course Syllabus

AST Introduction to Solar Systems Astronomy

Student Handbook. Supporting Today s Students with the Technology of Tomorrow

ECON 484-A1 GAME THEORY AND ECONOMIC APPLICATIONS

Streaming Video Control Review. Who am I?

Visual Journalism J3220 Syllabus

content First Introductory book to cover CAPM First to differentiate expected and required returns First to discuss the intrinsic value of stocks

Developing a Distance Learning Curriculum for Marine Engineering Education

Connect Communicate Collaborate. Transform your organisation with Promethean s interactive collaboration solutions

The Moodle and joule 2 Teacher Toolkit

Foothill College Summer 2016

CS 100: Principles of Computing

Table of Contents. Course Delivery Method. Instructor Information. Phone: Office hours: Table of Contents. Course Description

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

Advanced Multiprocessor Programming

Advanced Multiprocessor Programming

Office Hours: Mon & Fri 10:00-12:00. Course Description

95723 Managing Disruptive Technologies

CENTRAL MAINE COMMUNITY COLLEGE Introduction to Computer Applications BCA ; FALL 2011

JEFFERSON COLLEGE COURSE SYLLABUS BUS 261 BUSINESS COMMUNICATIONS. 3 Credit Hours. Prepared by: Cindy Rossi January 25, 2014

BENG Simulation Modeling of Biological Systems. BENG 5613 Syllabus: Page 1 of 9. SPECIAL NOTE No. 1:

Speak Up 2012 Grades 9 12

BUS Computer Concepts and Applications for Business Fall 2012

Course Content Concepts

POFI 1349 Spreadsheets ONLINE COURSE SYLLABUS

First and Last Name School District School Name School City, State

Records and Information Management Spring Semester 2016

TEACHING ASSISTANT TBD

ADMN-1311: MicroSoft Word I ( Online Fall 2017 )

Syllabus Education Department Lincoln University EDU 311 Social Studies Methods

George Mason University Graduate School of Education Program: Special Education

Texas A&M University-Central Texas CISK Comprehensive Networking C_SK Computer Networks Monday/Wednesday 5.

Introduction to Moodle

Shank, Matthew D. (2009). Sports marketing: A strategic perspective (4th ed.). Upper Saddle River, NJ: Pearson/Prentice Hall.

SYLLABUS: RURAL SOCIOLOGY 1500 INTRODUCTION TO RURAL SOCIOLOGY SPRING 2017

ebusiness Technologies Spring 2000 Syllabus

SkillPort Quick Start Guide 7.0

Syllabus Foundations of Finance Summer 2014 FINC-UB

K 1 2 K 1 2. Iron Mountain Public Schools Standards (modified METS) Checklist by Grade Level Page 1 of 11

Accounting 312: Fundamentals of Managerial Accounting Syllabus Spring Brown

MATH 205: Mathematics for K 8 Teachers: Number and Operations Western Kentucky University Spring 2017

CS 101 Computer Science I Fall Instructor Muller. Syllabus

Quick Start Guide 7.0

ENGINEERING DESIGN BY RUDOLPH J. EGGERT DOWNLOAD EBOOK : ENGINEERING DESIGN BY RUDOLPH J. EGGERT PDF

Protocols for building an Organic Chemical Ontology

ENGINEERING FIRST YEAR GUIDE

HUMAN DEVELOPMENT OVER THE LIFESPAN Psychology 351 Fall 2013

CHEM 101 General Descriptive Chemistry I

OVERVIEW & CLASSIFICATION OF WEB-BASED EDUCATION (SYSTEMS, TOOLS & PRACTICES)

The University of Texas at Tyler College of Business and Technology Department of Management and Marketing SPRING 2015

From Virtual University to Mobile Learning on the Digital Campus: Experiences from Implementing a Notebook-University

MBA 5652, Research Methods Course Syllabus. Course Description. Course Material(s) Course Learning Outcomes. Credits.

MAT 122 Intermediate Algebra Syllabus Summer 2016

Louisiana Free Materials List

CIS Introduction to Digital Forensics 12:30pm--1:50pm, Tuesday/Thursday, SERC 206, Fall 2015

Page 1 of 8 REQUIRED MATERIALS:

similar to the majority ofcomputer science courses in colleges and universities today. Classroom time consisted of lectures, albeit, with considerable

BSM 2801, Sport Marketing Course Syllabus. Course Description. Course Textbook. Course Learning Outcomes. Credits.

Office Location: LOCATION: BS 217 COURSE REFERENCE NUMBER: 93000

ASTR 102: Introduction to Astronomy: Stars, Galaxies, and Cosmology

MAE Flight Simulation for Aircraft Safety

Blended E-learning in the Architectural Design Studio

GIS 5049: GIS for Non Majors Department of Environmental Science, Policy and Geography University of South Florida St. Petersburg Spring 2011

SOUTHWEST COLLEGE Department of Mathematics

COMS 622 Course Syllabus. Note:

Financial Accounting Concepts and Research

Dialogue Live Clientside

SYLLABUS. EC 322 Intermediate Macroeconomics Fall 2012

MGMT 479 (Hybrid) Strategic Management

ICT A learning and teaching tool By Sushil Upreti SOS Hermann Gmeiner School Sanothimi Sanothimi, Bhaktapur, Nepal

Fundamental Accounting Principles, 21st Edition Author(s): Wild, John; Shaw, Ken; Chiappetta, Barbara ISBN-13:

Major Milestones, Team Activities, and Individual Deliverables

Syllabus: CS 377 Communication and Ethical Issues in Computing 3 Credit Hours Prerequisite: CS 251, Data Structures Fall 2015

Lectora a Complete elearning Solution

New Paths to Learning with Chromebooks

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

We seek to be: A vibrant, excellent place of learning at the heart of our Christian community.

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS APPLIED STATICS MET 1040

Interior Design 350 History of Interiors + Furniture

CPMT 1303 Introduction to Computer Technology COURSE SYLLABUS

A Pipelined Approach for Iterative Software Process Model

Transcription:

Syllabus of CS 6233 CS6233 (Graduate) Operating Systems I Professor: Joel Wein Email: wein@poly.edu Professional Website: http://pdc-amd01.poly.edu/~wein Professor s Background/Orientation: He has been a Professor in the Department of Computer Science at NYU-Poly since 1991. His training is as a theoretician (He received his PhD from MIT in theoretical computer science) and he has spent a great deal of time thinking about models for scheduling and resource allocation in operating systems making these systems perform more efficiently. His research in this area has been supported by multiple grants from the National Science Foundation and led to numerous publications. In addition, over the last ten+ years he has had a close affiliation with Akamai Technologies, Akamai operates a 50,000+ node distributed network that serves close to 20% of the internet s content. He is currently a (parttime) Engineering Fellow there, and previously managed multiple engineering efforts related to security infrastructure, multimedia delivery and communications infrastructure. This combination of academic, theoretical and practical experience enables him to bring a somewhat unique perspective to the study of modern systems. Course description Course Overview: This is a graduate-level course that covers an introduction to operating systems. It is geared at graduate students who have not had a good undergraduate course that covers the principles of operating systems. This material is critical for understanding anything about what is really going on in your desktop, your laptop, or in your data center. While it covers material that often finds its place in undergraduate curricula, we will be supplementing that material with some more recent results from the systems literature, and at times we will

jump into the LINUX codebase to see what a real operating system looks like. In addition, there is the opportunity to customize the material based on overall student background entering the course. Finally, we will also focus on some very recent commercial trends in the Operating Systems space, with particular focus on virtualization and how it is transforming the way we think about computing and the way that every Fortune-1000 company manages its information technology infrastructure. Syllabus 1. Overview of Computer Systems 2. Overview of the Evolution of Modern Operating Systems. 3. Processes. 4. Threads 5. Concurrency: Mutual Exclusion and Synchronization- Touch point 6. Concurrency: Deadlock and Starvation 7. Memory Management: Basic 8. Memory Management: Advanced Topics 9. CPU Scheduling 10. I/O Management and Disk Scheduling- Touch point 11. File Systems 12. Advanced Topics in I/O and File Systems. 13. Virtualization: the revolution. What is it good for? How does it work? 14. Introduction to the Impact of Distributed Systems and Networks on Operating Systems. 15. Final Examination. Touch Points: After approximately week 5 and week 10 of the course each student will be required to schedule a brief one on one interaction with me of some sort to discuss how the course is going for you and make any necessary adjustments. Student/Instructor Interaction: I read email frequently at wein@poly.edu and will make every effort to respond in a timely fashion. I am also happy to interact with you over g-mail chat [joelmwein@gmail.com], Skype [joelmwein] or the phone. Outcomes [All measured by quizzes and homework assignments] Week 2: Understand the important elements of the history of Operating Systems and the basics of what an OS does. [Week 2]

Week 3: Week 4: Understand What a Process is Understand the States a Process Can Be In Understand What Information is Needed to Characterize a Process Understand How the OS Controls a Process Understand the issues that lead to the invention of threads Understand what threads are and how they deal with those issues. Understand Applications of Threads Understand User-Level v Kernel Threads Be able to read and understand code that uses threads. Weeks 5-6: Understand the Challenges Concurrency Poses in an Operating System Understand the definitions of key terms like race condition, critical section, mutual exclusion, etc. Understand Multiple Approaches to Enforcing Mutual Exclusion. Understand the Readers-Writers Problem Understand what is a Deadlock, a Deadlock Protection and Avoidance. Week 7-8: Week 9: Understand Requirements for Memory Management Understand Memory Partitioning (Fixed v. Dynamic) Understand Simple Paging and Segmentation Understand the Basic Idea of Virtual Memory Understand Hardware and Software Support for VM Understand a little bit about LINUX Memory Management Understand Basic Objectives for Scheduling Understand Basic Scheduling Algorithms Understand the LINUX Scheduler Week 10-11: Understand Basic Issues in I/O, Geometry of Disks, Basic Disk Scheduling Understand Basic Functionality Offered by File Systems Understand Different Methods of File Organization Understand Different Methods of Secondary Storage Management Understand a little bit about LINUX and Windows File Systems

Weeks 12-15 [Advanced Topics] Understand Motivation and Architecture of Advanced File Systems such as the Fast File System, and Log Structured file system. Understand motivation for RAID and different RAID architectures. Understand motivation for virtualization, its applications, and basic approaches to implementing it. Understand basic issues in distributed systems, including transparency and methods for achieving it. Textbook Operating Systems Internals and Design Principles by William Stallings. Publisher: Pearson/Prentice Hall, published April 2009. Prerequisites: Graduate Standing Expected Student Participation: Online lectures: Each lecture will consist of PowerPoint slides, many accompanied by audio on the material. You are expected to read the relevant material in the textbook, work through the slides, and listen to the audio explanations. Each set of slides will have several Stop and Thinks where you will stop and see if you can answer some questions on the material. Many of these Stop and Thinks will be homework exercises to be handed in, and some will be discussed in the online discussions. Team Assignments Weekly (or close to it) participation in discussion groups. Use of virtual lab, if included in the curriculum: The virtual lab will be used for several illustrative exercises. Exams Course Requirements: The basic course organization is as follows. Biweekly homework exercises including some of the Stop and Thinks.

Biweekly online quizzes during the semester. A final examination, taking in a traditional paper-and-pencil group setting. Your grade will approximately consist of : 25% final examination 30% online quizzes 35% exercises and 10% participation in discussions