The course enables the students to
Course Outcomes(COs):
Learning Outcome (at course level)
| Learning and teaching strategies | Assessment Strategies |
CO55.Examine the mechanisms of OS to manage computer’s memory CO56.Apply basic concepts and commands of Unix/Linux CO57.Analyze and evaluate distinct features of Linux in comparison to other popularly used operating systems. CO58.Formulate simple OS mechanisms through shell programming | Approach in teaching: Interactive Lectures, Modeling, Discussions, implementing enquiry based learning, student centered approach
Learning activities for the students: Experiential Learning, Presentations, Discussions, Quizzes and Assignments
|
Examination |
Definition and types of operating systems, OST Concepts, Operating system components and services, System calls. Process and Thread Management: Process concept, Process scheduling, operations on processes, Threads, Inter-process communication, CPU scheduling criteria, Scheduling algorithms, Multiple-processor scheduling, Real-time scheduling and evaluation.
Swapping, Contiguous Allocation, Paging, Segmentation with paging virtual Memory, Demand paging , Page replacement algorithms, Allocation of frames, Thrashing, Page Size and other considerations, Demand segmentation, File systems, secondary Storage Structure, File concept, access methods, directory implementation, Efficiency and performance, recovery.
The Critical-Section problem, Semaphores, Classical problems of synchronization, Critical regions, Monitors, Dining philosopher and producer consumer problem using semaphores or monitors. DeadlocksSystem model, Characterization, Deadlock prevention, Avoidance and Detection, Banker’s Algorithm.
Disk Management:
Disk structure, Disk scheduling methods, Disk management, Recovery, Disk structure, Disk scheduling methods, Disk management, Swap-Space management. Protection and Security-Goals of protection. UNIX/LINUX Operating System: Introduction, Features of UNIX/LINUX operating system, Structure: Kernel and Shell, Basic commands, Accessing help options, Filenames and using wild cards, Types of files, File systems: four block of file systems, directory hierarchy, Operations and utilities for directory and files. User & Group file access permissions.
Shell Programming:
Introduction to vi and Emacs editor. Basic of shell programming, meta characters, shell variable: predefined variables and user defined variable, storing value in variable and accessing it, unsetting variables, storing filenames, content and command in variable, Input: reading word by word, line by line and from file, Expression, Decisions and repetition, Special parameters and variables, shell programming in bash, read command, conditional and looping statements, case statements, changing positional parameters and argument validation, string manipulation.
Simple filter commands – pr, head, tail, cut, paste, sort, uniq, tr, Regular expressions: atoms and operators, grep.