Process Management & Windows Scheduling Architecture

Process Management & Windows Scheduling Architecture
Pertemuan 3 • Sistem Operasi & CPU Scheduling
By Alimin, M.Kom
Program Studi Sistem dan Teknologi Informasi

Process Management & Windows Scheduling Architecture

By Alimin, M.Kom
Process Management CPU
Fokus Perkuliahan: Membedah hierarki Program, Process, dan Thread, komparasi algoritma klasik (FCFS, SJF, HRN, Round Robin), hingga implementasi nyata Priority-Driven Preemptive MLFQ pada arsitektur hybrid Windows 11.
Pertemuan 3: Process Management 1 / 19 Slide Berikutnya →
Capaian Perkuliahan

A. Tujuan Pembelajaran

  • Memahami perbedaan hierarki Program, Process, dan Thread.
  • Menguasai parameter evaluasi CPU: Waiting Time (WT) dan Turn Around Time (TA).
  • Membedah logika dasar FIFO/FCFS, SJF, HRN, dan Round Robin.
  • Memahami cara kerja Priority-Driven Preemptive Multilevel Feedback Queue (MLFQ) di Windows.
  • Mampu menganalisis korelasi Core Fisik vs Logical Processors pada perangkat komputer/laptop riil.
Konsep Fundamental

B. Program vs Process vs Thread

1. Program

Entitas pasif. Berupa berkas instruksi kode yang tersimpan diam di media penyimpanan.

Contoh: python.exe, chrome.exe.

2. Process

Entitas aktif. Program yang sedang dimuat ke memori RAM dan dieksekusi CPU. Memiliki ruang alamat memori mandiri.

3. Thread

Unit terkecil eksekusi di dalam proses. Satu proses dapat memiliki banyak thread yang berbagi memori secara paralel.

Ringkasan Cepat: Process adalah wadah pekerjaan, sedangkan Thread adalah jalur pengerjaan tugasnya.
Studi Kasus Perangkat Nyata

C. Bedah Spesifikasi Laptop (DxDiag)

Data Nyata Laptop (HP Pavilion x360):
• Processor : 12th Gen Intel(R) Core(TM) i5-1235U (12 CPUs), ~1.3GHz
• Memory : 16384MB RAM (16 GB)
• Page file : 9548MB used, 11137MB available

Perbedaan antara 10 Core dan 12 CPUs pada laporan DxDiag disebabkan oleh perbedaan antara Core Fisik (Physical Cores) dan Prosesor Logis (Logical Processors / Threads) pada arsitektur hybrid Intel Generasi ke-12.

Page File (Virtual Memory): Alokasi penyimpanan di SSD saat RAM 16 GB mulai penuh agar sistem operasi tidak mengalami Out of Memory crash.
Arsitektur Hybrid

D. Rincian 10 Core Fisik vs 12 CPUs

1. Core Fisik (Total: 10 Core)

  • 2 P-Cores: Inti performa tinggi untuk kompilasi dan kalkulasi AI.
  • 8 E-Cores: Inti hemat daya untuk background & system services.
Total Core = 2 P-Core + 8 E-Core = 10 Core

2. Mengapa di DxDiag (12 CPUs)?

  • P-Cores Hyper-Threading: 2 core × 2 = 4 Thread.
  • E-Cores non Hyper-Threading: 8 core × 1 = 8 Thread.
Logical CPUs = 4 + 8 = 12 Thread (12 CPUs)
Korelasi Penjadwalan: Windows Kernel melihat 12 jalur antrean (*run queues*). Fitur Intel Thread Director menempatkan beban berat (Python AI) di P-Cores dan beban ringan di E-Cores.
Klarifikasi Miskonsepsi

E. Apakah 10 Core = Maksimal 10 Aplikasi?

Fakta Lapangan: Di Task Manager tercatat Processes: 242 dan Threads: 3114 aktif serempak. Core bukan batas jumlah aplikasi!

True Parallelism

Pada 1 mikrodetik yang persis sama, prosesor mampu memproses 12 instruksi simultan tanpa antre.

Multitasking & Time Slicing

CPU Scheduler membagi jatah waktu milidetik secara bergantian sangat cepat sehingga ratusan program terasa berjalan serempak.

Kesimpulan: Jumlah core adalah kapasitas tenaga mesin, bukan batas jumlah jendela program yang boleh dibuka.
Infografis Komprehensif

F. Penerapan Process Management & CPU Scheduling di Windows

Visual Blueprint
Infografis Penerapan Process Management & CPU Scheduling di Windows
1. Arsitektur: User Space vs Kernel Space
2. Observasi: Task Manager & Tab Details
3. AI Pipeline: Python → CUDA → GPU
Aktivitas Interaktif Kelas

G. Observasi Langsung Task Manager

Silakan seluruh mahasiswa menekan kombinasi tombol: CTRL + SHIFT + ESC

Buka tab Processes dan amati aplikasi yang sedang berjalan di laptop Anda masing-masing.

Pertanyaan Refleksi Kelas:
  1. Sebutkan 3 proses yang sedang berjalan di komputer Anda saat ini!
  2. Menurut Anda, proses mana yang paling banyak membutuhkan penggunaan CPU?
  3. Jika semua proses meminta CPU secara bersamaan, bagaimana Sistem Operasi menentukan siapa yang mendapatkan giliran CPU?
Konsep Penjadwalan

H. Apa Itu CPU Scheduling?

CPU Scheduling adalah mekanisme sistem operasi untuk memilih proses mana di antrean siap (*ready queue*) yang berhak mendapatkan alokasi waktu eksekusi prosesor.

P1: Chrome
P2: Python AI
P3: VS Code
↓ Antrean Menunggu (*Ready Queue*)
CPU SCHEDULER (Algoritma Penentu Giliran)
↓ Memberikan Tiket Eksekusi
CPU CORES (Eksekusi Instruksi Fisik)
Strategi Penjadwalan

I. Non-Preemptive vs Preemptive

1. Non-Preemptive

Proses yang sedang berjalan di CPU tidak dapat diinterupsi secara paksa sampai selesai (*terminate*) atau sukarela melepaskan CPU (*I/O wait*).

Contoh: FIFO / FCFS, SJF Non-Preemptive, HRN.

2. Preemptive

Proses yang sedang berjalan dapat dihentikan sementara oleh OS untuk memberikan giliran ke proses berprioritas lebih tinggi atau habis jatah kuantumnya.

Contoh: Round Robin, SRF, Priority Preemptive.
Parameter Perhitungan

J. Parameter & Rumus Utama

  • Arrival Time (T / AT): Saat proses tiba di antrean (*ready queue*).
  • Burst Time (BT): Durasi waktu komputasi yang dibutuhkan proses di CPU.
  • Waiting Time (WT): Total waktu yang dihabiskan proses menunggu giliran di antrean.
  • Turn Around Time (TA): Total waktu dari saat proses datang sampai tuntas selesai.
Rumus Evaluasi:
• Turn Around Time (TA) = Waktu Selesai - Waktu Kedatangan (AT)
• Waiting Time (WT) = Turn Around Time (TA) - Burst Time (BT)
• Prioritas HRN = (Waiting Time + Burst Time) / Burst Time
Algoritma 1

K. Algoritma FIFO / FCFS

First Come First Served: Proses yang tiba paling awal akan dilayani pertama kali hingga tuntas (Non-Preemptive).

Gantt Chart Eksekusi:
P1 (5)
P2 (4)
P3 (2)
P4 (3)
P5 (2)
059111416
Process AT BT Selesai WT TA
P1 0 5 5 0 5
P2 0 4 9 5 9
P3 0 2 11 9 11
P4 2 3 14 9 12
P5 6 2 16 8 10
Rata-rata WT = 6,2 | Rata-rata TA = 9,4
Algoritma 2

L. Shortest Job First (SJF)

SJF: Proses dengan Burst Time paling kecil diprioritaskan dieksekusi lebih awal untuk meminimalkan rata-rata antrean.

Gantt Chart Eksekusi SJF:
P3 (2)
P4 (3)
P2 (4)
P5 (2)
P1 (5)
02591116
Process AT BT Selesai WT TA
P3 0 2 2 0 2
P4 2 3 5 0 3
P2 0 4 9 5 9
P5 6 2 11 3 5
P1 0 5 16 11 16
Rata-rata WT = 3,8 | Rata-rata TA = 7,0 (Lebih efisien dari FIFO)
Algoritma 3 & 4

M. HRN dan Round Robin

Highest Ratio Next (HRN)

Menggunakan prioritas dinamis. Proses yang lama menunggu nilai rasio prioritasnya akan terus meningkat sehingga mencegah *starvation* (kelaparan proses besar).

Round Robin (Preemptive Time Quantum)

Setiap proses diberi jatah waktu (*quantum time*, misal: 2 detik). Jika proses belum tuntas dalam 2 detik, proses digeser ke antrean belakang dan CPU diserahkan ke proses berikutnya.

Inti: Round Robin adalah pondasi bagi sistem operasi interaktif modern (seperti Windows/Linux) agar komputer tidak terasa macet.
Arsitektur Penjadwalan Nyata

N. Priority-Driven Preemptive MLFQ di Windows

Windows tidak memakai FIFO/SJF murni, melainkan 32 Level Prioritas (0–31) Multilevel Feedback Queue:

Level 16–31 (Real-Time Class): Kritis sistem & driver audio/input. Preemptive mutlak, prioritas tidak pernah turun.
Level 1–15 (Dynamic Class): Aplikasi pengguna (Chrome, VS Code, Python AI). Prioritas bersifat adaptif naik-turun.
Level 0 (Zero-Page Thread): Khusus pembersih blok memori RAM saat sistem sedang menganggur (*idle*).
Priority Boost: Jendela aplikasi yang diklik aktif (*foreground*) atau selesai membaca disk langsung dinaikkan prioritasnya agar responsif.
Priority Decay: Proses yang menghabiskan jatah waktu CPU tanpa henti (misal: training AI) akan diturunkan prioritasnya agar aplikasi lain kebagian CPU.
Konteks AI

O. CPU Scheduling pada Beban Kerja AI

Mengapa Training AI Mengunci CPU 100%?

Saat program Python melatih model deep learning, thread pemrosesan data (*data loader*) dan kalkulasi matriks memonopoli seluruh core prosesor.

Dampak di Server / Laptop:
Jika scheduler tidak menerapkan *preemption* secara ketat, proses web server atau database yang melayani pengguna lain akan terhambat (*starvation*), menyebabkan latensi melonjak tajam.
Tugas Praktikum Mandiri

P. Tugas: Simulasi Spesifikasi Laptop Sendiri

Langkah Pengerjaan:

  1. Buka DxDiag (Win + R > ketik dxdiag) dan Task Manager (Ctrl + Shift + Esc).
  2. Tangkap layar (*screenshot*) tab System di DxDiag serta tab CPU Performance di Task Manager.
  3. Catat spesifikasi: Jumlah Cores, Logical Processors, kapasitas RAM, dan Page File.

Laporan Analisis yang Wajib Dijawab:

• Jelaskan korelasi antara jumlah core fisik dan logical processor pada laptop Anda!
• Amati nilai Processes dan Threads di Task Manager saat membuka 5 aplikasi bersamaan. Berapa jumlahnya?
• Simulasikan jika ada 5 proses dengan Burst Time berbeda (misal: 10, 6, 2, 4, 8 detik), hitung perbandingan Waiting Time jika dijadwalkan dengan FCFS vs SJF!

Studi Kasus & Refleksi

Q. Bahan Diskusi Kelas

Kasus: Mahasiswa menjalankan Chrome, VS Code, MySQL, dan melatih model AI di laptop hingga utilisasi CPU menyentuh angka 100%.

  • Apakah angka CPU 100% menandakan prosesor rusak secara fisik?
  • Mengapa SJF menguntungkan pekerjaan pendek tetapi rentan memicu *starvation* pada pekerjaan panjang?
  • Bagaimana cara Windows mencegah aplikasi berat membekukan aplikasi ringan lainnya?
Rangkuman & Penutup

R. Kesimpulan & Materi Selanjutnya

"Ketika kita membuka banyak aplikasi di Windows, sebenarnya kita sedang melihat salah satu pekerjaan penting Sistem Operasi: mengatur banyak process dan thread agar dapat menggunakan CPU secara teratur dan adil."

Materi Pertemuan 4: Thread, Concurrency & Multithreading

Kita akan membedah secara mendalam bagaimana satu aplikasi mampu memecah pekerjaannya ke dalam puluhan thread paralel di atas prosesor multi-core.