Introduction to Operating Systems, Computer System Architecture; Operating System Operations; ; Operating System Structure: Operating System Services; System Calls; Types of System Calls; System Programs; Virtual Machines; System boot.
Process Management Process Scheduling:
Basic Concepts, Scheduling Criteria, Scheduling Algorithms, Multiple Processor Scheduling. Process Synchronization
Deadlocks:
System model; Deadlock Characterization, Methods for handling deadlocks; Deadlock Prevention; Deadlock Avoidance; Deadlock Detection and Recovery from deadlock. Memory Management: Memory Management Strategies: Background, Swapping; Contiguous Memory Allocation; Paging; Segmentation; Virtual Memory Management; Demand Paging; Page Replacement; Allocation of Frames; Thrashing.
The File System:
The File, What’s in a File name? The Parent-Child Relationship, The HOME Variable: The Home Directory, pwd, cd, mkdir, rmdir, Absolute Pathnames, Relative Pathnames, The Unix File System. The vi Editor: vi Basics, Input Mode, ex Mode and Command Mode.
Basic File Attributes:
Is options, File Ownership, File Permissions, chmod, Directory Permissions, Changing the File Ownership More File Attributes: File Systems and Inodes, Hard Links, Symbolic Links, The Directory, umask, Modification and Access Times, find. The Shell: The Shell’s Interpretive Cycle, Shell Offerings, Pattern Matching-The Wild-cards, Escaping and Quoting, Redirection: The Three Standard Files, Two Special Files: /dev/null and /dev/tty, pipes, tee: Creating a Tee, Command Substitution.
The Process:
Process Basics, ps: Process Status, System Processes, Mechanism of Process Creation, Internal and External Commands, Running Jobs in Background, Killing Processes with Signals, Job Control, at and batch, cron.
Essential Shell Programming:
Shell Variables, Environment Variables, Shell Scripts, read, Using Command Line Arguments, exit and exit status of command, The Logical Operators, The if Conditional, using test and [] to Evaluate Expression, The case Conditional, expr, while: looping, for: looping with a list, set and shift, trap, Debugging Shell Scripts with set – x.
AWK and Advanced Shell Programming
Simple AWK Filtering, Splitting a Line into Fields, printf, the Logical and Relational Operators, Number Processing, Variables, The –f option, BEGIN and END positional Parameters, getline, Built-invariables, Arrays, Functions, Interface with the Shell, Control Flow. The sh command, export Command, Conditional Parameter Substitution, Merging Streams, Shell Functions, eval, Exec Statement and Examples
Question Paper Pattern:
• The Question paper will have TEN questions
• Each full question will be for 20 marks
• There will be 02 full questions (with maximum of four sub questions) from each module.
• Each full question will have sub questions covering all the topics under a module.
• The students will have to answer FIVE full questions, selecting one full question from each module.
Text books
1. Sumitabha Das: UNIX Concepts and Applications, 4th Edition, Tata McGraw Hill, 2006.
2. Abraham Silberschatz, Peter Baer Galvin, Greg Gagne: Operating Systems Principles, 8th Edition, Wiley – India.
References
1. UNIX: The Complete Reference: Kenneth Roson et al, Osborne/McGraw Hill, 2000.
2. Using UNIX: Steve Montsugu, 2ndEdition, Prentice Hall India, 1999.
3. UNIX and Shell Programming: M G Venkateshmurthy, Pearson Education Asia, 2005
4. Behrouz A Forouzan and Richard F Gilberg
5. 4.D M Dhamdhere: Operating Systems – A Concept Based Approach, 2nd Edition, Tata McGraw – Hill, 2002.
6. P C P Bhatt: Operating Systems, 2ndEdition, PHI, 2006.
7. 6. Harvey M Deital: Operating Systems, 3rd Edition, Addison Wesley, 1990.
Course Outcomes:
1. CO1:Analyse the basic Operating System Structure and concept of Process Management
2. CO2:Analyse the given Synchronization/ Deadlock problem to solve and arrive at valid conclusions.
3. CO3:Analyse OS management techniques and identify the possible modifications for the given problem context.
4. CO4:Demonstrate the working of basic commands of Unix environment including file processing
5. CO5:Demonstrate the usage of different shell commands, variable and AWK filtering to the given problem