Back to Courses
Sistem Operasi
Master operating system fundamentals from process management to distributed systems and modern OS architectures
14 Sessions
0% Complete
Course Progress0%
14
Total Sessions
42
Materials
28 hrs
Estimated Time
Course Sessions
Learning Objectives:
- Understand the role and objectives of operating systems in computer systems
- Analyze different types of operating systems: batch, time-sharing, real-time, distributed
- Master computer architecture fundamentals: CPU organization, instruction execution cycle
- Understand memory hierarchy: registers, cache, main memory, secondary storage
- Learn interrupt mechanisms and system calls for OS-hardware interaction
- Explore the evolution of operating systems from early batch systems to modern OSes
Available Materials:
Operating System Concepts Textbook Chapter 1-2 (60 pages)
Computer Architecture Fundamentals Reference
OS Evolution Timeline and Historical Perspective
System Call Interface and API Documentation
Interrupt Handling Mechanisms Guide
Comparative Analysis of Different OS Types
Hands-on Lab: Virtual Machine Setup and OS Installation
OS Architecture Diagram Collection
Learning Objectives:
- Master process concepts: program vs process, process states, and state transitions
- Understand Process Control Block (PCB) structure and its components
- Analyze process creation mechanisms: fork(), exec() system calls in Unix/Linux
- Implement process hierarchies and parent-child relationships
- Master context switching mechanisms and associated overhead
- Understand zombie and orphan processes and their management
Available Materials:
Process Management Complete Guide (55 pages)
Process State Diagrams and Transition Analysis
PCB Structure and Implementation Details
Unix Process Creation Tutorial and Examples
Context Switching Performance Analysis
Programming Assignment: Process Creation and Management
Process Management System Calls Reference
Debugging Tools for Process Analysis (ps, top, pstree)
Learning Objectives:
- Master scheduling criteria: CPU utilization, throughput, turnaround time, waiting time, response time
- Implement and analyze FCFS, SJF, SRTF, Priority, Round Robin scheduling algorithms
- Understand preemptive vs non-preemptive scheduling policies
- Design multilevel queue and multilevel feedback queue scheduling systems
- Apply real-time scheduling algorithms: Rate Monotonic and Earliest Deadline First
- Evaluate scheduling algorithm performance using simulation and analysis
Available Materials:
CPU Scheduling Algorithms Complete Reference (65 pages)
Scheduling Algorithm Simulation Software and Tools
Gantt Chart Generation and Analysis
Performance Metrics Calculation Examples
Multilevel Queue Implementation Guide
Real-time Scheduling Theory and Practice
Programming Project: Scheduling Simulator Development
Comparative Analysis of Scheduling Algorithms
Learning Objectives:
- Understand race conditions and the critical section problem
- Master synchronization primitives: locks, semaphores, monitors, condition variables
- Analyze Peterson's solution and hardware-based synchronization mechanisms
- Implement solutions to classical problems: Producer-Consumer, Readers-Writers, Dining Philosophers
- Apply semaphores and monitors for process synchronization
- Understand deadlock prevention in synchronization scenarios
Available Materials:
Process Synchronization Theory and Practice (70 pages)
Critical Section Problem Solutions and Analysis
Semaphore Implementation and Usage Guide
Monitor Concepts and Programming Examples
Classical Synchronization Problems with Solutions
Pthread Synchronization Programming Tutorial
Deadlock Detection and Prevention in Synchronization
Comprehensive Synchronization Programming Project
Learning Objectives:
- Master the four necessary conditions for deadlock occurrence
- Analyze deadlock prevention methods by breaking necessary conditions
- Implement Banker's Algorithm for deadlock avoidance
- Understand resource allocation graphs and cycle detection
- Design deadlock detection algorithms using wait-for graphs
- Apply deadlock recovery strategies: process termination and resource preemption
Available Materials:
Deadlock Theory and Management Guide (60 pages)
Banker's Algorithm Implementation and Examples
Resource Allocation Graph Analysis Tools
Wait-for Graph Construction and Cycle Detection
Deadlock Prevention vs Avoidance Comparison
Detection Algorithm Implementation Project
Recovery Strategy Decision Framework
Real-world Deadlock Case Studies and Solutions
Learning Objectives:
- Master contiguous memory allocation: fixed and variable partitioning
- Understand internal and external fragmentation problems
- Implement paging systems and address translation mechanisms
- Design multi-level page tables and inverted page tables
- Analyze Translation Lookaside Buffer (TLB) for fast address translation
- Calculate effective memory access time with paging overhead
Available Materials:
Memory Management Complete Manual (75 pages)
Paging System Implementation and Architecture
Page Table Structure Design and Optimization
TLB Design and Performance Analysis
Address Translation Examples and Exercises
Memory Management Unit (MMU) Operation
Programming Project: Paging Simulator
Fragmentation Analysis and Solutions
Learning Objectives:
- Master virtual memory concepts and demand paging implementation
- Implement and analyze page replacement algorithms: FIFO, LRU, Optimal, Clock
- Understand page fault handling and its performance impact
- Analyze thrashing phenomenon and working set model
- Apply page buffering and prefetching optimization techniques
- Implement memory-mapped files for efficient I/O operations
Available Materials:
Virtual Memory Systems Complete Guide (80 pages)
Page Replacement Algorithm Simulation Tools
Belady's Anomaly Analysis and Examples
Working Set Model and Locality of Reference
Thrashing Prevention and Detection Strategies
Memory-Mapped I/O Programming Tutorial
Page Replacement Algorithm Comparison Project
Virtual Memory Performance Optimization Guide
Learning Objectives:
- Master file concepts: attributes, operations, types, and access methods
- Understand directory structures: single-level, two-level, tree, acyclic graph
- Implement file system mounting and unmounting procedures
- Design file protection mechanisms: access control lists and capability lists
- Analyze file system interface and system call implementation
- Apply symbolic links and hard links in file systems
Available Materials:
File System Concepts and Design (70 pages)
Directory Structure Implementation Guide
File System Call Interface Reference
Access Control Mechanisms and Permissions
File System Mounting and Namespace Management
Link Types and Inode Structure Analysis
File System Programming Project
Unix/Linux File System Case Study
Learning Objectives:
- Implement file allocation methods: contiguous, linked, indexed allocation
- Master free space management techniques: bitmap, linked list, grouping, counting
- Understand directory implementation and lookup optimization
- Analyze disk caching and buffer cache mechanisms
- Apply consistency and crash recovery mechanisms: journaling, logging
- Optimize file system performance through caching and prefetching
Available Materials:
File System Implementation Complete Manual (75 pages)
Allocation Method Comparison and Analysis
Free Space Management Algorithms
Directory Implementation Optimization Techniques
Journaling File Systems Design (ext3/ext4, NTFS)
Buffer Cache and Page Cache Mechanisms
File System Performance Tuning Guide
Crash Recovery and Consistency Project
Learning Objectives:
- Master disk structure: platters, tracks, sectors, cylinders, and access time components
- Implement disk scheduling algorithms: FCFS, SSTF, SCAN, C-SCAN, LOOK, C-LOOK
- Understand RAID levels and their performance and reliability characteristics
- Analyze disk formatting: low-level, partitioning, logical formatting
- Apply boot block management and swap space allocation
- Optimize disk I/O performance through scheduling and caching
Available Materials:
Mass Storage Systems Architecture (65 pages)
Disk Scheduling Algorithm Simulation and Analysis
RAID Configuration and Performance Guide
Disk Access Time Calculation Examples
Storage Performance Optimization Techniques
Solid State Drive (SSD) Technology and Management
Disk Scheduling Simulator Programming Project
Storage System Benchmarking and Tuning
Learning Objectives:
- Master I/O hardware components: buses, controllers, ports, and device registers
- Understand polling, interrupt-driven I/O, and Direct Memory Access (DMA)
- Implement I/O software layers: interrupt handlers, device drivers, device-independent I/O
- Design buffering, caching, and spooling mechanisms for I/O optimization
- Analyze block and character device interfaces
- Apply I/O scheduling and performance optimization techniques
Available Materials:
I/O Systems Complete Reference (70 pages)
Device Driver Architecture and Implementation
DMA Controller Operation and Programming
Interrupt Handling and I/O Processing
Buffer Management and I/O Optimization
Linux Device Driver Development Tutorial
I/O Performance Analysis and Tuning
Device Driver Programming Project
Learning Objectives:
- Master protection domains and access control matrix implementation
- Understand authentication mechanisms: passwords, biometrics, multi-factor authentication
- Analyze security threats: viruses, worms, trojans, denial of service attacks
- Implement access control models: DAC, MAC, RBAC
- Apply cryptography for data protection and secure communication
- Design intrusion detection and prevention systems
Available Materials:
OS Security and Protection Manual (75 pages)
Authentication Mechanisms and Implementation
Access Control Models and Policies
Security Threat Analysis and Countermeasures
Cryptographic Techniques for OS Security
Intrusion Detection System Design
Security Audit and Vulnerability Assessment Tools
Secure System Design and Implementation Project
Learning Objectives:
- Master virtualization concepts and benefits for resource utilization
- Understand Type 1 and Type 2 hypervisors with architectural differences
- Implement virtual machine monitors and guest OS management
- Analyze CPU virtualization techniques: binary translation, paravirtualization, hardware assistance
- Apply memory and I/O virtualization strategies
- Compare virtual machines with containers (Docker, Kubernetes)
Available Materials:
Virtualization Technology Complete Guide (70 pages)
Hypervisor Architecture and Implementation
VM Creation and Management Tutorial (VMware, VirtualBox, KVM)
CPU Virtualization Techniques Analysis
Container Technology and Orchestration
Cloud Computing Infrastructure Overview
Performance Comparison: VMs vs Containers
Virtualization Platform Setup and Configuration Project
Learning Objectives:
- Master distributed system concepts: transparency, fault tolerance, scalability
- Understand interprocess communication: message passing, remote procedure calls
- Implement distributed file systems: NFS, DFS, and cloud storage systems
- Analyze distributed synchronization and consensus algorithms
- Compare monolithic kernel, microkernel, and exokernel architectures
- Study modern OS designs: Linux, Windows, macOS, Android architecture
Available Materials:
Distributed Operating Systems Guide (80 pages)
IPC Mechanisms and Network Communication
Distributed File System Implementation
Consensus Algorithms: Paxos and Raft
Kernel Architecture Comparison Study
Modern OS Case Studies: Linux, Windows, macOS
Microkernel Design and Implementation
Distributed System Programming Project