OS

(AIUS-OS.AE1)
Lessons
Lab
TestPrep
AI Tutor (Add-on)
Get A Free Trial

Skills You’ll Get

1

Introduction

  • What Operating Systems Do
  • Computer-System Organization
  • Computer-System Architecture
  • Operating-System Operations
  • Resource Management
  • Security and Protection
  • Virtualization
  • Distributed Systems
  • Kernel Data Structures
  • Computing Environments
  • Free and Open-Source Operating Systems
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
2

Operating-System Structures

  • Operating-System Services
  • User and Operating-System Interface
  • System Calls
  • System Services
  • Linkers and Loaders
  • Why Applications Are Operating-System Specific
  • Operating-System Design and Implementation
  • Operating-System Structure
  • Building and Booting an Operating System
  • Operating-System Debugging
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
3

Processes

  • Process Concept
  • Process Scheduling
  • Operations on Processes
  • Interprocess Communication
  • IPC in Shared-Memory Systems
  • IPC in Message-Passing Systems
  • Examples of IPC Systems
  • Communication in Client–Server Systems
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
4

Threads & Concurrency

  • Overview
  • Multicore Programming
  • Multithreading Models
  • Thread Libraries
  • Implicit Threading
  • Threading Issues
  • Operating-System Examples
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
5

CPU Scheduling

  • Basic Concepts
  • Scheduling Criteria
  • Scheduling Algorithms
  • Thread Scheduling
  • Multi-Processor Scheduling
  • Real-Time CPU Scheduling
  • Operating-System Examples
  • Algorithm Evaluation
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
6

Synchronization Tools

  • Background
  • The Critical-Section Problem
  • Peterson's Solution
  • Hardware Support for Synchronization
  • Mutex Locks
  • Semaphores
  • Monitors
  • Liveness
  • Evaluation
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
7

Synchronization Examples

  • Classic Problems of Synchronization
  • Synchronization within the Kernel
  • POSIX Synchronization
  • Synchronization in Java
  • Alternative Approaches
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
8

Deadlocks

  • System Model
  • Deadlock in Multithreaded Applications
  • Deadlock Characterization
  • Methods for Handling Deadlocks
  • Deadlock Prevention
  • Deadlock Avoidance
  • Deadlock Detection
  • Recovery from Deadlock
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
9

Main Memory

  • Background
  • Contiguous Memory Allocation
  • Paging
  • Structure of the Page Table
  • Swapping
  • Example: Intel 32- and 64-bit Architectures
  • Example: ARMv8 Architecture
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
10

Virtual Memory

  • Background
  • Demand Paging
  • Copy-on-Write
  • Page Replacement
  • Allocation of Frames
  • Thrashing
  • Memory Compression
  • Allocating Kernel Memory
  • Other Considerations
  • Operating-System Examples
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
11

Mass-Storage Structure

  • Overview of Mass-Storage Structure
  • HDD Scheduling
  • NVM Scheduling
  • Error Detection and Correction
  • Storage Device Management
  • Swap-Space Management
  • Storage Attachment
  • RAID Structure
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
12

I/O Systems

  • Overview
  • I/O Hardware
  • Application I/O Interface
  • Kernel I/O Subsystem
  • Transforming I/O Requests to Hardware Operations
  • STREAMS
  • Performance
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
13

File-System Interface

  • File Concept
  • Access Methods
  • Directory Structure
  • Protection
  • Memory-Mapped Files
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
14

File-System Implementation

  • File-System Structure
  • File-System Operations
  • Directory Implementation
  • Allocation Methods
  • Free-Space Management
  • Efficiency and Performance
  • Recovery
  • Example: The WAFL File System
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
15

File-System Internals

  • File Systems
  • File-System Mounting
  • Partitions and Mounting
  • File Sharing
  • Virtual File Systems
  • Remote File Systems
  • Consistency Semantics
  • NFS
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
16

Security

  • The Security Problem
  • Program Threats
  • System and Network Threats
  • Cryptography as a Security Tool
  • User Authentication
  • Implementing Security Defenses
  • An Example: Windows 10
  • Summary
  • Exercises
  • Further Reading
  • Bibliography
17

Protection

  • Goals of Protection
  • Principles of Protection
  • Protection Rings
  • Domain of Protection
  • Access Matrix
  • Implementation of the Access Matrix
  • Revocation of Access Rights
  • Role-Based Access Control
  • Mandatory Access Control (MAC)
  • Capability-Based Systems
  • Other Protection Improvement Methods
  • Language-Based Protection
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography
18

Virtual Machines

  • Overview
  • History
  • Benefits and Features
  • Building Blocks
  • Types of VMs and Their Implementations
  • Virtualization and Operating-System Components
  • Examples
  • Virtualization Research
  • Summary
  • Exercises
  • Further Reading
  • Bibliography
19

Networks and Distributed Systems

  • Advantages of Distributed Systems
  • Network Structure
  • Communication Structure
  • Network and Distributed Operating Systems
  • Design Issues in Distributed Systems
  • Distributed File Systems
  • DFS Naming and Transparency
  • Remote File Access
  • Final Thoughts on Distributed File Systems
  • Summary
  • Practice Exercises
  • Exercises
  • Further Reading
  • Bibliography

1

Introduction

  • Understanding the Storage-Device Hierarchy
  • Understanding the Transition from User to Kernel Mode
  • Understanding Types of Linked Lists
2

Operating-System Structures

  • Understanding the System Calls
  • Understanding the Procedure of Executing a Program
  • Understanding the Structure of Darwin
3

Processes

  • Learning the Process State Diagram
4

Threads & Concurrency

  • Understanding the Multithreading Models
5

CPU Scheduling

  • Understanding Dispatch Latency
6

Deadlocks

  • Understanding the Safety Algorithm
7

Virtual Memory

  • Understanding Steps in Handling a Page Fault
  • Understanding Page Replacement Algorithms
8

Mass-Storage Structure

  • Understanding the Types of Disk Scheduling Algorithms
9

File-System Implementation

  • Understanding the Allocation Methods

Why Do Learners Love This Course?

Any questions?
Check out the FAQs

Still have unanswered questions and need to get in touch?

Contact Us Now

Related Courses

All Courses
scroll to top