Skip to content

Latest commit

 

History

History
100 lines (77 loc) · 3.27 KB

CSPC20.md

File metadata and controls

100 lines (77 loc) · 3.27 KB
code title similar needs_screening specifics prereq kind
CSPC20
Operating Systems
ITPC20
true
branch semester credits
CS
4
3
1
2
5
PC1

Objectives

  • Understand the services and design of an operating system.
  • Understand the structure and organization of the file system.
  • Understand the process states and various concepts such as scheduling and synchronization related to it.
  • Understand different memory management approaches.
  • Use system calls for managing processes, memory, and file system.
  • Understand the data structures and algorithms for the implementation of OS.

Content

Unit 1

  1. Computer System Architecture and Organization:

    • Introduction and evolution of the OS
    • Introduction to distributed OS
    • Real-time systems and multimedia systems
  2. OS Structures:

    • OS services, system calls, and programs
    • OS design and implementation

Unit 2

  1. Processes:

    • Process concept, scheduling policies, algorithms
    • Multilevel queuing, operations on process
    • Inter-process communication
  2. Threads:

    • Multithreading models and threading issues
  3. CPU Scheduling:

    • Criteria and algorithms
    • Multiprocessor and thread scheduling

Unit 3

  1. Process Synchronization:

    • Critical sections, classical two process and n-process solutions
    • Hardware primitives for synchronization
    • Semaphores, monitors, classical problems in synchronization
  2. Deadlocks:

    • Modeling, resource allocation, characterization
    • Prevention and avoidance, detection, and recovery

Unit 4

  1. Memory Management:

    • Swapping, contiguous memory allocation, paging
    • Multilevel paging, segmentation, demand paging
    • Page replacement algorithms, allocation of frames
    • Thrashing, working set model
  2. Input/Output:

    • I/O system and services
    • Device controllers and device drivers, disks
    • Scheduling algorithms and management
  3. File System Interface:

    • Access methods, access control, directory structures
    • File organization, file sharing and protection
    • System performance, protection, and security
    • Access matrix, security breaches, types of attacks
    • Attack prevention methods, security policy and access control
    • OS design considerations for security, access control lists and OS support
    • Internet and general network security

Reference Books

  • A. Silberschatz, Peter B. Galvin, and G. Gagne: "Operating System Concepts," (6th or newer edition), Wiley
  • H. Brinch: "Operating System Principles," Prentice Hall of India
  • Dhamdhere: "Systems programming & Operating systems," TataMcGraw Hill
  • A. N. Habermann: "Introduction to Operating System Design," Galgotia publication, New Delhi
  • A.S. Tanenbaum: "Modern Operating Systems," Prentice Hall of India

Outcomes

  • Understand functions, structures, and history of operating systems.
  • Know the design issues associated with operating systems.
  • Master various process management concepts such as scheduling, synchronization, multithreading, and deadlocks.
  • Understand the various concepts associated with memory management such as virtual memory, demand paging.
  • Use system calls for managing processes, memory, and file system.
  • Understand the data structures and algorithms for the implementation of OS.