Documente Academic
Documente Profesional
Documente Cultură
Course Code CSE316 Course Category Course Title OPERATING SYSTEMS Courses with conceptual focus Course Planner 15359::Baljit Singh Saini Lectures 3.0 Tutorials Practicals Credits 0.0 0.0 3.0
TextBooks Sr No T-1 Title Operating System Concepts Reference Books Sr No R-1 R-2 R-3 R-4 R-5 Other Reading Sr No OR-1 OR-2 OR-3 OR-4 OR-5 OR-6 OR-7 OR-8 OR-9 OR-10 Journals articles as Compulsary reading (specific articles, complete reference) http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-828-operating-system-engineering-fall-2006/lecture-notes/l1.pdf , http://nptel.iitm.ac.in/courses/Webcourse-contents/IISc-BANG/Operating%20Systems/pdf/Lecture_Notes/Mod%201_LN.pdf , http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-828-operating-system-engineering-fall-2006/lecture-notes/l3.pdf , http://nptel.iitm.ac.in/courses/Webcourse-contents/IISc-BANG/Operating%20Systems/pdf/Lecture_Notes/Mod%202_LN.pdf , http://nptel.iitm.ac.in/courses/Webcourse-contents/IISc-BANG/Operating%20Systems/pdf/Lecture_Notes/Mod%203_LN.pdf , http://nptel.iitm.ac.in/courses/Webcourse-contents/IISc-BANG/Operating%20Systems/pdf/Lecture_Notes/Mod%204_LN.pdf , http://nptel.iitm.ac.in/courses/Webcourse-contents/IISc-BANG/Operating%20Systems/pdf/Lecture_Notes/Mod%208_LN.pdf , http://anale-informatica.tibiscus.ro/download/lucrari/8-2-02-Opeyemi.pdf , http://www.doaj.org/doaj?func=abstract&id=695328&q1=system%20call&f1=all&b1=and&q2=&f2=all&recNo=2&uiLanguage=en , www.softlookup.com/tutorial/os.asp , Title Operating Systems Internals and Design Principles Operating Systems Author WilliamStallings D.M.Dhardhere Edition 5th 2nd 2nd 3rd 1st Year 2000 2006 2011 2005 2009 Publisher Name Prentice Hall Tata McGraw Hill Pearson PHI (Pretice Hall India) PHI (Pretice Hall India) Author Abraham Silberschatz, Galvin Edition 8th Year 2009 Publisher Name Wiley India Pvt Ltd
Advanced Programming in the UNIX W.Richard Stevens and Environment Stephen A. Rago Modern Operating System Andrew S. Tanenbaum UNIX System Programming Using C Terrence Chan ++,
Relevant Websites Sr No RW-1 RW-2 RW-3 RW-4 RW-5 RW-6 RW-7 RW-8 RW-9 RW-10 RW-11 RW-12 RW-13 RW-14 (Web address) (only if relevant to the course) http://academic.research.microsoft.com/Keyword/44295/virtual-memory http://static.usenix.org/events/hotos11/tech/final_files/Kuz.pdf http://www.yolinux.com/TUTORIALS/LinuxTutorialPosixThreads.html http://oss.sgi.com/LDP/HOWTO/Deciding-Linux-HOWTO/windows_compare.html http://www.csse.uwa.edu.au/programming/ansic-library.html http://c-faq.com/ansi/ https://en.wikipedia.org/wiki/C%2B%2B https://en.wikipedia.org/wiki/POSIX http://unix.stackexchange.com/questions/11983/what-exactly-is-posix http://www.grose.us/academic/device.html http://cs-alb-pc3.massey.ac.nz/notes/59305/a.html www.cs.auckland.ac.nz/courses/compsci340s2c/lectures/lecture02.pdf http://warih.blog.ittelkom.ac.id/blog/files/2010/12/Presedence-Graph.pdf http://warih.blog.ittelkom.ac.id/blog/files/2010/12/Presedence-Graph.pdf Salient Features Discussed Virtual Memory Multicore OS benchmarks Information and Sample program of Thread Comaprison between linux and MS DOS ANSI C standard ANSI C standard ANSi C++ standard POSIX standard POSIX standard Device management Resident monitor Resident monitor Precedence graph Concurrent processes
LTP week distribution: (LTP Weeks) Weeks before MTE Weeks After MTE Spill Over 7 7 3
Week 1
Lecture 1
To give general idea of Basic working of operating system and its operating system working
Week 1
Lecture 2
Teaching about different learning about different Discussion types of kernal structures kernal structures student will come to know about kernal structures of UNIX and Windows etc RW-4 Teaching about Students learns how difference between different operating various operating system system work Teaching about different Difference of various POSIX standards POSIX standards Discussion
Introduction to OS concepts (General structure of MSDOS, Windows 2000 and linux) Lecture 3 Introduction to OS concepts(ANSI C standard, ANSI/ISO C++ standard and POSIX standards) R-3:Chapter 2 2.2
Discussion
Introduction to OS concepts (Difference between ANSI C and C++) Introduction to OS concepts (Introduction - UNIX and ANSI standards) Week 2 Lecture 4 Process Management(Process and threads) Process Management(Process states) R-3:Chapter 2 2.1 2.2
Discussion
Discussion
T-1:Chapter 3 3.1
Basics of a process
Discussion
T-1:Chapter 3 3.1
Introduction to different How moving a thread Discussion states that a thread goes from one state to through another effects it and its children To teach how process is stored in memory Student learns about Discussion different attributes of a process
Lecture 5
T-1:Chapter 3 3.1
T-1:Chapter 3 3.2
To introduce the concept Student learns Discussion of scheduling parameters upon which scheduling is done To describe the various Student can create features of processes, processes and see how creation, termination and they communicate communication To introduce the notion of a thread Hoe process are managed in UNIX Know how threads are useful Learns to optimize resource utilization by processes Demonstration
Lecture 6
T-1:Chapter 3 3.3
Week 3
Lecture 7
Process Management(Threads)
Demonstration
T-1:Chapter 3
Discussion
Week 3
Lecture 8
T-1:Chapter 5 5.1
To introduce the basics of scheduling To introduce the basics of scheduling To introduce CPU scheduling, which is the basis for multiprogrammed operating systems
Learns how to schedule Discussion processes among single processor Learns how to schedule Discussion processes among single processor Learning how CPU manages resources among different processes Discussion
Lecture 9
T-1:Chapter 5 5.1
T-1:Chapter 5 5.2
Week 4
Lecture 10
T-1:Chapter 5 5.3
To describe various CPU Student learns which Discussion scheduling algorithms in scheduling algorithm is lecture 10 best Revision in Lecture 11 of topics covered till lecture 10
Lecture 11
T-1:Chapter 5 5.3
To describe various CPU Student learns which Discussion scheduling algorithms in scheduling algorithm is lecture 10 best Revision in Lecture 11 of topics covered till lecture 10
Lecture 12
Process Synchronization (Concurrent processes) Process Synchronization(Cooperating processes) Process Synchronization (Precedence graph) Process Synchronization(Hierarchy of processes)
To describe about concurrent processes To describe about co operating processes RW-13 To describe the use of precedence graph To describe levels of processes To introduce the criticalsection problem, whose solutions can be used to ensure the consistency of data To present hardware solutions of the critical section problem
Learns about concurrent Discussion processes Learns about difference Discussion in co operating and concurrent processes Learns how precedence Discussion graph is helpful Learns about hierarchy Discussion of processes Student learns why Discussion synchronization among processes is crucial
Week 5
Lecture 13
T-1:Chapter 6 6.4
Discussion
Week 5
Lecture 14
T-1:Chapter 6 6.5
To present both software Learns how to handle and hardware solutions critical section of the critical section problem To present both software Learns how to handle and hardware solutions critical section of the critical section problem To demonstrate how to take input from user Learning how to develop programs that take input when program is run at command line Learns the importance and use of shared libraries
Discussion
Process Synchronization(Monitors)
T-1:Chapter 6 6.7
Discussion
Lecture 15
R-3:Chapter 7 7.4
Demonstration
R-3:Chapter 7 7.7
Demonstration
Week 6
To show how to manage Student can handle memory memory according to need To teach how to make use of environment variables To teach how to make use of setjmp and longjmp variables To teach how to make use of getrlimit and setrlimit variables To teach how to make use of environment list Learning the use of environment variables
Demonstration
R-3:Chapter 7 7.9
Demonstration
Lecture 18
R-3:Chapter 7 7.10
Learning the use of setjmp and longjmp variables Learning the use of getrlimit and setrlimit variables Learning the use of environment list
Demonstration
R-3:Chapter 7 7.11
Demonstration
Week 7
Lecture 19
R-3:Chapter 7 7.5
Demonstration
UNIX processes(Memory layout of a C program) UNIX processes(Main function) Lecture 20 UNIX processes(Process termination) UNIX processes(UNIX kernel support for processes)
To teach how memory is Learns about memory used by a C program usage by a program To teach about the main Learns about the main function function To teach how to end processes To teach the basics of process
Demonstration Demonstration
Week 7
Lecture 20
To describe how to Learns to control handle processes in processes lecture 20 Revision in Lecture 21 of all topics covered To describe how to Learns to control handle processes in processes lecture 20 Revision in Lecture 21 of all topics covered
Discussion
Lecture 21
Discussion
MID-TERM
Week 8 Lecture 22 Deadlock(Detection) T-1:Chapter 7 7.1 7.2 7.6 T-1:Chapter 7 7.3 To develop a description Learn basics of of deadlocks deadlock To develop a description Learn how to handle of deadlocks deadlock To present a number of Student learns how to different methods for prevent deadlock from preventing and avoiding happening deadlock To present a number of Student learns how to different methods for prevent deadlock from preventing and avoiding happening deadlock To present different methods for deadlock detection and recovery To present different methods for deadlock detection and recovery To present different methods for deadlock detection and recovery To explain the function of file systems Discussion
Lecture 23
Deadlock(Handling)
Discussion
Deadlock(Prevention)
T-1:Chapter 7 7.4
Discussion
Lecture 24
Deadlock(Avoidance)
T-1:Chapter 7 7.5
Discussion
Week 9
Lecture 25
Deadlock(Recovery)
T-1:Chapter 7 7.7
Know how to deal with Discussion deadlock if it all happens Know how to deal with Discussion deadlock if it all happens Know how to deal with Discussion deadlock if it all happens Student will learn the basics of file system Discussion
Deadlock(Starvation)
T-1:Chapter 7 7.7
Deadlock(Critical regions)
T-1:Chapter 7 7.7
Lecture 26
Information management(Files and T-1:Chapter 10 10.1 directories) 10.2 Information management (Directory structure) T-1:Chapter 10 10.3
Lecture 27
To describe the Student learns how files Discussion interfaces to file systems are created and managed
Week 9
Lecture 27
Information management T-1:Chapter 11 11.3 (Directory implementation - linear 11.4 list and hash table) Device management(Dedicated, shared and virtual devices) T-1:Chapter 13 13.3 13.3.1 RW-10
To describe how directory can be implemented Describe the physical structure of secondary storage devices Describe the physical structure of secondary storage devices
Discussion
Week 10
Lecture 28
Understanding of how Discussion data is read and written on disk Understanding of how Discussion data is read and written on disk
RW-10
Lecture 29
Device management(Direct Access Storage Devices Channels and Control Units) Device management(Disk scheduling methods) T-1:Chapter 12 12.4
RW-10
To study the various disk Understand various Discussion read techniques methods of reading data from disk To study the various disk Understand various Discussion read techniques in methods of reading data lecture 29 from disk Revision in Lecture 30 of topics covered till lecture 29
Lecture 30
T-1:Chapter 12 12.4
To study the various disk Understand various Discussion read techniques in methods of reading data lecture 29 from disk Revision in Lecture 30 of topics covered till lecture 29
Device management(Direct Access Storage Devices Channels and Control Units) Week 11 Lecture 31 Memory Management(Objectives and functions) T-1:Chapter 8 8.1 8.3
RW-10
To study the various disk Understand various Discussion read techniques methods of reading data from disk To provide a detailed description of various ways of organizing memory Will learn how memory Discussion is allocated
RW-11 RW-12
To provide a detailed description of various ways of organizing memory To provide a detailed description of various ways of organizing memory
Lecture 32
T-1:Chapter 8 8.2
Week 11
Lecture 32
T-1:Chapter 8 8.4
To explain the concepts Know how page Discussion of demand paging, page replacement helps to replacement algorithms, increase virtual memory To discuss how memory Learns how to wastage can be reduced optimally assign memory to processes To describe the benefits of a virtual memory system To describe the benefits of a demand paging Student learns how to increase memory virtually Student learns how to increase memory virtually Discussion
Lecture 33
Memory Management (Fragmentation - internal and external) Memory Management(Virtual memory concept)
T-1:Chapter 8 8.3.3
T-1:Chapter 9 9.1
Discussion
Week 12
Lecture 34
T-1:Chapter 9 9.2
Discussion
To describe the reason of Student learns how to page replacement minimize page faults To understand various page replacement algorithms
Discussion
Lecture 36
Memory Management (Segmentation - simple, multilevel and with paging) Memory Management(Memory management in UNIX)
T-1:Chapter 8 8.6
To discuss how memory Learns how to wastage can be reduced optimally assign memory to processes To provide a detailed description of various ways of organizing memory in UNIX Term Paper,Quiz,Test 2
Discussion
T-1:Chapter 8
Week 13
Lecture 37 Lecture 38 Inter process communication (Introduction to IPC (Inter process communication) Methods) R-3:Chapter 15 15.1
To introduce the concept Learns how processes of inter process will communicate communication To show how processes pass information To describe about co processes
Discussion
Inter process communication(Pipes R-3:Chapter 15 15.2 - popen and pclose functions) 15.3 Inter process communication(Coprocesses) Lecture 39 Inter process communication (FIFOs) Inter process communication (System V IPC) Inter process communication (Message queues) R-3:Chapter 15 15.4 R-3:Chapter 15 15.5
Learns to send message Demonstration from one process to another Learns to handle co processes Demonstration
To describe the working Learns to communicate Demonstration of FIFO pipes between processes using FIFO pipes To cover the similar features of the three types of IPC To describe how inter process communication is done using message passing Learns about Demonstration similarities of different IPCs Learns to handle message queues for inter process communication Demonstration
R-3:Chapter 15 15.6
R-3:Chapter 15 15.7
Week 13
Lecture 39
R-3:Chapter 15 15.8
To describe how Learns to manage Demonstration semaphores help to shared variables among provide access to shared competing processes data object To show how processes pass information Learns to send message Demonstration from one process to another Demonstration
Week 14
Lecture 40
Inter process communication (Shared memory) Inter process communication (Client-server connection functions) Inter process communication (Stream pipes) Inter process communication (Passing File descriptors)
R-3:Chapter 15 15.9
R-3:Chapter 15 15.10
To tell how client server Learns how IPC affect properties are affected by client server model IPC To show how processes pass information using pipes
R-3:Chapter 17 17.2
R-3:Chapter 17 17.4
To show how processes Learns to handle file pass file descriptors over descriptors pipes To how how is a program executed by process to open one or more files
Lecture 41
R-3:Chapter 17 17.5
R-3:Chapter 15 15.10
To describe the working Learns about client of client server model in server model lecture 41 Revision in Lecture 42 of all topics covered To describe the working Learns about client of client server model in server model lecture 41 Revision in Lecture 42 of all topics covered To how how is a program executed by process to open one or more files
Discussion
Lecture 42
R-3:Chapter 15 15.10
Discussion
R-3:Chapter 17 17.5
SPILL OVER
Week 15 Lecture 43 Lecture 44 Lecture 45 Spill Over Spill Over Spill Over
Term Paper 1
The term paper should be pedagogical in nature, explaining or illustrating a certain aspect of topic assigned. Based on answers written
Test 1
Individual
4/6
Quiz 1
To prepare students Quiz will be conducted of syllabus covered till week 10th week for placement activities
Individual
Answers submitted
9 / 11
List of suggested topics for term paper[at least 15] (Student to spend about 15 hrs on any one specified term paper) Sr. No. Topic 1 Compare the MemoryManagement of Windows with Linux 2 Case Study: According to you which one among UNIX, LINUX and Windows, is best. 3 Compare CPU Scheduling of LINUX and UNIX. 4 Compare the MemoryManagement of UNIX with Linux 5 Compare Features of Windows 2000 with windows Vista 6 Compare Features of Windows 2000 with windows XP 7 Compare Features of Windows 2000 with windows 98 8 Which operating system is used in Nokia Mobile Phones and how it works? 9 Differentiate FAT, FAT32 and NTFS 10 Compare File Security mechanism of windows 98 with windows XP 11 Compare File Security mechanism of windows ME with windows XP 12 Compare File Security mechanism of windows 2000 with windows XP 13 How registry is helpful in managing security. 14 How operating system manages disk drives? How can we prevent disk damage?What is the process of disk sharing 15 How windows operating system handles viruses? Write down various viruses that can cause serious damage to the computer system.