IONA School of Arts & Science TEL 680 EA Introduction to Operating Systems Computer Science Dept. Fall 2009 Prof. Schiaffino Office: MC 113 G Office hours: Thursday 5:00 PM – 6:30 PM Phone: 633-2338 Iona email: rschiaffino@iona.edu Course Description: This course provides an introduction to the study of operating systems. It will examine the concepts and algorithms involved in resource management using Linux as a case study. The course will also provide an introduction to the use of the Linux operating system, shell scripts and the use of Linux utilities. Prerequisites: TEL 600, CS 505 Recommended Texts Linux for Programmers and Users, Glass and Ables, Pearson Prentice Hall, 2006. Guide to UNIX and Linux, Harley Hahn, McGraw-Hill, 2009. Course Objectives 1. explain the lifecycle of a process and all operating system components and hardware elements involved in this cycle 2. explain and compare the process scheduling algorithms. 3. explain and utilize a variety of Inter-Process Communication (IPC) tools. 4. explain the implementation and use of synchronization tools: semaphores, monitors, etc. 5. explain the necessary conditions for the occurrence of deadlocks and the techniques to prevent, detect and avoid them. 6. explain operation and implementation of memory management systems and be able to evaluate their merits with respect to various criteria 7. explain the various system-level data structures involved in data transfer from a storage device, such as a disk, and the principles of I/O buffering 8. implement a range of shell scripts for an Operating System. Assessment Criteria/Tools: Assessment Homework Test 1 (Oct. 1) Test 2 (Oct. 29) Final Exam (Dec. 10) Weight 30% 20% 20% 30% Objectives 1–8 1–5 6–8 1-8 Departmental Objectives IIB, IVA IIB, IIC, IVA IIB, IVA IIB, IVA IIA, IVA IVA IIB, IVA IA, IB Course Outline: 1.0 INTRODUCTION 1.1 Types of Systems 1.2 System Structure 1.3 System Services 1.4 System Calls and Interrupts 1.5 Structure of the Linux system 1.6 Sample Linux System Calls 2.0 PROCESSES and THREADS 2.1 The Concept of a Process 2.2 Operations on Processes 2.3 Process Scheduling 2.4 Threads 2.5 CPU Scheduling 2.6 Linux Process management 3.0 PROCESS SYNCHRONIZATION 3.1 The Critical Section Problem 3.2 Semaphores 3.3 Classical Problems 3.4 Monitors 4.0 DEADLOCKS 4.1 Necessary Conditions for Deadlock 4.2 Prevention 4.3 Avoidance 4.4 Detection and Recovery 4.5 Combined Solutions 5.0 MEMORY MANAGEMENT 5.1 Static Partitioning 5.2 Dynamic Partitioning 5.3 Segmentation 5.4 Paging 6.0 VIRTUAL MEMORY 6.1 Virtual Memory and Paging 6.2 Management of Virtual Memory 6.3 Replacement Policies 6.4 Paging and Segmentation 7.0 FILE SYSTEMS 7.1 File Concepts 7.2 Access Methods 7.3 Allocation Methods 7.4 Free Space Management 7.5 Linux File System 8.0 SECONDARY STORAGE STRUCTURE 8.1 I/O Hardware and Software 8.2 Disk Scheduling 8.3 Disk Management College Policy for all courses and students: (full explanations of policy may be found in the College Catalog) Plagiarism: Is the unauthorized use or close imitation of the language and thoughts of another author/person and the representation of them as one's own original work. Iona College policy stipulates that students may be failed for the assignment or course, with no option for resubmission or re-grading of said assignment. A second instance of plagiarism may result in dismissal from the College. Attendance: All students are required to attend all classes. Iona has an attendance policy for which all students are accountable. While class absence may be explained it is never excused. Professors may weigh class absence in the class grade as they see fit. Failure to attend class may result in a failure of the class for attendance(FA), when the student has missed 20% or more of the total class meetings. The FA grade weighs as an F would in the final official transcript. Course and Teacher Evaluation(CTE): Iona College now uses an on-line CTE system. This system is administered by an outside company and all of the data is collected confidentially. No student name or information will be linked to any feedback received by the instructor. The information collected will be compiled in aggregate form by the agency and distributed back to the Iona administration and faculty, with select information made available to students who complete the CTE. Your feedback in this process is an essential part of improving our course offerings and instructional effectiveness. We want and value your point of view.* NOTE* You will receive several emails at your Iona email account about how and when the CTE will be administered with instructions how to proceed.