Você está na página 1de 4

ACTS, Pune Teaching Guidelines for Operating System Concepts-DAC Aug 2011

Duration: 44 class room hours + 20 Lab hours Objective: To introduce Advanced Operating System Concepts with linux environment. Prerequisites: Knowledge of Computer Fundamentals Evaluation method: Theory exam (objective/subjective/both) 50% weightage Lab exam 40% Assignments 10% weightage List of Books / Other training material Courseware: Reference: 1. Operating System Principles, by Galvin, Wiley. 2. Unix Concept s and Applications by Sumitabha Das, TMH 1. Modern operating Systems, Tanenbaum. 2. Operating Systems A Design Oriented Approach by Crowley

Session 1: (Operating System Architecture) Lecture: Introduction to Operating Systems and Terminologies A Typical Monolithic-architecture of Operating Systems Kernel Components and Non-kernel Components User-space vs Kernel-space and User-mode vs Kernel-mode Interrupt Management and h/w Interrupts / Handlers Session 2 & 3: (System Call Implementation) Lecture: System Call Wrapper Library and System Call Wrapper APIs Interrupt Management and Generic System Call Handler System Call Table and Specific System Call Kernel Routines Interrupt Management and Exception Handlers A Typical Micro-kernel Architecture of Operating Systems Writing and adding a new system call to the Linux kernel Recompiling the Linux kernel and testing the generated kernel Assignment Lab: Review Exercises Session 4: (Timer, Process management, Scheduling Policies) Lecture: H/W Clocks and Timers vs S/W Clocks and Timers Process Management Process Scheduling / CPU Scheduling: Preemptive vs Non-preemptive Different types of Scheduling Policies/Algorithms FCFS, RR, PRIO, FAIR-SHARE, EDF. Preemptive Kernel vs Non-preemptive Kernels Session 5: (Multi-threading Application) Lecture: Introduction to Threads - User-level vs Kernel-level(many-to-one vs one-to-one) Advantages of Multi-threading and some Real-world examples of Multi-threaded Applications Session 6: (Inter-Process Communication) Lecture:

DAC, Operating System

Page 1 of 4

ACTS, Pune Teaching Guidelines for Operating System Concepts-DAC Aug 2011
Introduction to Inter-process Communication Mechanisms ( IPCs ) - for Processes and Threads IPCs - Synchronization vs Data-exchange IPCs - Semaphores and Mutexes

Session 7: (Process and Threads) Lecture: Process/ Thread Co-existence Thread IPCs Thread Scheduling Session 8: (Dead-Lock) Lecture: IPCs - Pipes, Message-queues and Shared-memory (Related to VM) Dead-lock vs Starvation Primer on Dead-lock Prevention, Avoidance and Detection/Recovery Techniques Session 9: (Memory Management) Lecture: Memory Management Hardware Techniques available for Memory-management (Segmentation/Paging) Session 10: (Virtual Memory Techniques) Lecture: Software Techniques built on top of H/W Techniques (Virtual-memory Techniques) Page Replacement Algorithms Session 11: (File System Management) Lecture: File System Organization - Physical File System Organization Techniques (Use Linux File System - ext2/ext3 for Illustration) Virtual File System Manager Physical File System Manager File System Management - File System Manager in the Kernel Disk-cache Management Session 12: (Disk I/O Management) Lecture: Disk I/O Management Disk Scheduling Algorithm Steps Involved in Reading from a File - Use Linux File System for Illustration Steps Involved in Writing to a File - Use Linux File System for Illustration

Session 13: (Virtual Machine System) Lecture: Introduction Virtual Machine Concepts Session 14 & 15: (OS design and architecture for multiprocessor systems) Lecture: Introduction to Multi-Processor System UMA vs NUMA Multiprocessor kernel architectures

DAC, Operating System

Page 2 of 4

ACTS, Pune Teaching Guidelines for Operating System Concepts-DAC Aug 2011
Multiprocessor memory architectures Multi-processor CPU scheduling Multi-processor synchronization techniques Multi-processor timer and time-management techniques Multi-processor interrupt handling techniques Kernel mutex Kernel semaphore

Session 16 Lecture: Introduction to Linux The Linux File System o Working with Files and Directories o Pipes Getting Started to Linux Basic Commands (ls, cp, mv, lpr, sort, grep, cat, tac, more, head, tail, man, whatis, whereis, locate, find, diff, file, rm, mkdir, rmdir, cd, pwd, ln and ln s, gzip and gunzip, zip and unzip, tar an its variants, zcat, cal, bc and bc l, banner date, time, wc, touch, echo, who, finger, w, whoami, who am i, alias, unalias, touch, push, pop, jobs, ps, etc.) Assignment Lab: Getting Acquainted with the Linux Environment Use various commands in Linux system. Session 17 Lecture: Gaining confidence with Linux Access control list and chmod command chown and chgrp commands Standard I/O I/O redirection and tee command Pipes and Filters Commands like telnet, ftp, ssh, and sftp Use of secondary storage devices (Like: - Hard disk, Floppy, CDROM) in Linux environment and formatting of these devices. Assignment Lab: Review Exercises Session 18 Lecture: vi editor Features and different modes of vi editor Editing using vi editor Find and replace commands cut-copy-paste commands The set command Other related commands of vi Assignment Lab: Review Exercises Session 19

DAC, Operating System

Page 3 of 4

ACTS, Pune Teaching Guidelines for Operating System Concepts-DAC Aug 2011
Lecture: Linux shell programming What is shell? Different types of Linux shells Bourne Again Shell (BASH) Shell variables (environment and user defined) Shell files (.bashrc, .profile, .bash_profile, .bash_logout) Positional parameters Assignment Lab: Review Exercises Session 20 Lecture: Linux shell programming (Contd.) Wild cards (* and ?) Command line arguments Arithmetic in shell scripts Read and echo commands in shell scripts The tput command Taking decisions: o if-then-fi o if-then-else-fi o The test command (file tests, string tests) o Nested if-elses o The case control structure Assignment Lab: Review Exercises Session 21 Lecture: Linux shell programming (Contd.) The loop control structure o The while, until and for loop structures o The break and continue statements Shell meta characters Command line expansion Directory stacks manipulation Job control, history and processes Built-ins and functions Shell Files Session 22 Lecture: Linux Installation and Linux Administration

DAC, Operating System

Page 4 of 4

Você também pode gostar