os242

LINKS

WEEK 00 🍟

Topik Penjelasan
OS242 Website OS
Markdown Cheatsheet Referensi dalam menggunakan sintaks Markdown.
Linux Commands 101 Referensi dalam menggunakan command Linux.
Git Command Tutorial Tutorial yang cukup lengkap mengenai perintah git dan github.
  1. Operating Systems: Crash Course
    Video ini berisi penjelasan tentang sejarah dan evolusi sistem operasi, mulai dari batch processing hingga multitasking modern. Disini juga dijelaskan dasar-dasar dari sistem operasi itu sendiri.

  2. Linux in 100 Seconds
    Video singkat yang menjelaskan sejarah Linux, fungsinya, dan beberapa perintah dasar dalam sistem operasi Linux. Menurut saya, ini adalah pengantar yang bagus dan lembut untuk pemula tentang Linux.

  3. Linux Crash Course - nano (command-line text editor)
    Video tutorial tentang cara menggunakan nano, editor teks dasar di Linux.

  4. How Do Operating Systems Work?
    Video yang menjelaskan bagaimana sistem operasi mengelola perangkat keras, alokasi sumber daya, serta memberikan antarmuka untuk pengguna.

WEEK 01 🍔

Topik Penjelasan
Vim Cheatsheet Referensi dalam menggunakan sintaks Vim.
REGEX Cheatsheet Referensi daftar REGEX lengkap.
Bash Scripting Tutorial Tutorial lengkap mengenai bash.
SED Command Tutorial Tutorial dasar penggunaan SED.
AWK Command Tutorial Tutorial dasar penggunaan AWK.
Shell Scripting Tutorial Tutorial lengkap mengenai shell scripting.
  1. What is a Virtual Machine?
    Video ini menjelaskan konsep dasar virtualisasi dan mesin virtual, termasuk apa itu mesin virtual, bagaimana cara kerjanya, dan manfaatnya.

  2. Linux Crash Course - Easy Terminal Commands for Inspecting Hardware
    Video tutorial yang mencakup berbagai perintah terminal untuk memeriksa perangkat keras di Linux, termasuk lsusb, lspci, lshw, lscpu, dan lsblk. Perintah-perintah ini membantu memeriksa perangkat USB, perangkat PCI, informasi CPU, dan perangkat penyimpanan blok.

  3. Introduction to Bash Shell
    Video yang memperkenalkan Bash sebagai interpreter bahasa perintah yang digunakan untuk berinteraksi dengan computer

  4. Vim in 100 Seconds
    Video yang menjelaskan alasan mengapa menggunakan Vim bisa meningkatkan produktivitas pengkodean, cara navigasi di Vim, mode-mode yang ada di Vim, serta berbagai perintah dasar seperti mengedit teks, menyalin, dan mem-paste.

  5. Learn Regular Expressions In 20 Minutes
    Video ini memberikan pengantar singkat tentang regular expressions (regex), mencakup dasar-dasar seperti sintaks, cara membuat pola, dan contoh penggunaannya dalam mencari dan mengganti teks. Cocok untuk pemula yang ingin memahami regex dengan cepat.

WEEK 02 🍿

Topik Penjelasan
SSH Tutorial Artikel ini berisi tutorial yang menjelaskan tentang apa itu SSH dan bagaimana cara kerjanya.
RSA Tutorial Artikel ini berisi tutorial tentang RSA dan cara kerjanya.
SHASUM Command Tutorial Berisi tutorial penggunaan perintah shasum. Tutorial ini menyediakan screenshot setiap command ketika sedang dijalankan di terminal.
Memanfaatkan GNU Privacy Guard (GPG) untuk data Encryption dan Digital signature Panduan untuk menghasilkan GPG dan menggunakannya dalam berbagai situasi, seperti enkripsi data dan tanda tangan data.
Belajar Memakai GnuPG/GPG Penjelasan mengenai GnuPG/GPG dan cara kerjanya
  1. Basic File Encryption with GPG key pairs!
    Video ini menjelaskan penggunaan GNU Privacy Guard (GPG) untuk mengenkripsi dan mendekripsi file di Linux.

  2. How To Generate RSA Public and Private Key Pair with OpenSSL
    Video ini menjelaskan cara menghasilkan pasangan kunci publik dan privat asimetris menggunakan OpenSSL.

  3. How SSH key Works?
    Video ini menjelaskan cara kerja SSH key, dimulai dengan pengantar tentang SSH, yang merupakan protokol jaringan kriptografi.

  4. What Is Cyber Security: How It Works?
    Video ini apa itu Cyber Security dan menjelaskan berbagai jenis serangan siber yang mungkin dihadapi, seperti phishing, malware, man-in-the-middle, dan password attack.

  5. Perbedaan Enkripsi
    Video ini menjelaskan perbedaan antara enkripsi simetris dan enkripsi asimetris. Enkripsi simetris menggunakan satu kunci yang sama untuk enkripsi dan dekripsi data, membuat pengelolaan kunci menjadi tantangan, terutama dalam skala besar. Sebaliknya, enkripsi asimetris menggunakan sepasang kunci—kunci publik dan kunci privat—yang saling terkait secara matematis. Kunci publik dapat dibagikan secara luas, sedangkan kunci privat tetap rahasia.

  6. Manage File Permissions in Linux
    Video ini menjelaskan cara menggunakan perintah chmod untuk mengubah izin pada sistem file Linux.

WEEK 03 🍡

Topik Penjelasan
Memory Management Artikel ini berisi penjelasan tentang manajemen memori dalam sistem operasi, termasuk jenis memori, teknik alokasi, dan cara mengatasi fragmentasi.
File System Artikel ini berisi penjelasan mengenai sistem berkas dalam sistem operasi, termasuk berbagai jenis sistem berkas, metode alokasi, manajemen ruang kosong, serta keuntungan dan kerugian dari penggunaan sistem berkas tersebut.
Partitions, File Systems, Formatting, Mounting Artikel ini berisi tutorial lengkap mengenai mounting, partitioning, dan formatting pada file system.
Understanding File System Artikel ini membahas tentang berbagai jenis sistem berkas yang digunakan dalam sistem operasi, seperti FAT, NTFS, HFS, dan EXT, serta kelebihan dan kekurangannya dalam berbagai kasus penggunaan.
  1. Linux Directories Explained in 100 Seconds
    Video ini menjelaskan tentang struktur dan hierarki sistem berkas Linux, termasuk direktori penting seperti bin, s-bin, usr, etc, home, boot, dev, op, var, dan proc, serta cara menavigasi dan berinteraksi dengan file dan biner dalam sistem operasi Linux.

  2. Linux File System Explained
    Video ini merupakan episode kedua dari seri Linux for Hackers, di mana pembawa acara menjelaskan penggunaan dasar Linux, memberikan akses gratis ke lab Linux, serta memperkenalkan perintah-perintah dasar yang penting untuk navigasi dan pemahaman struktur sistem berkas di Linux.

  3. Introduction to Makefiles
    Video ini menunjukkan cara membuat file Make sederhana untuk mengompilasi program C++ dengan mengatur target dan dependensi, serta menjelaskan pentingnya file Make dalam mengelola kompilasi file-file objek secara efisien.

  4. What’s a Disk Partition?
    Video ini menjelaskan apa itu partisi disk, menguraikan istilah terkait seperti volume dan drive logis serta fisik, dan menunjukkan cara melihat partisi menggunakan manajemen disk di Windows, di mana satu hard disk fisik dapat memiliki beberapa partisi logis yang dapat dialokasikan ruang terpisah.

  5. Files & File Systems:
    Video ini membahas cara kerja berkas komputer dan sistem berkas, menjelaskan berbagai format berkas seperti TXT, WAV, dan BMP, serta pentingnya metadata dalam mengorganisasi dan menginterpretasi data di dalam berkas tersebut.

  6. How to backup and Restore Virtualbox Machines?
    Tutorial ini menjelaskan langkah-langkah untuk membuat cadangan dan memulihkan mesin virtual di VirtualBox dengan menggunakan opsi ekspor untuk menyimpan file OVA dan mengimpor kembali file tersebut untuk mengembalikan sistem ke keadaan sebelumnya.

WEEK 04 🍭

Topik Penjelasan
History of C Language Tutorial ini menguraikan konsep-konsep penting bahasa C secara menyeluruh.
Non-Contiguous Allocation in OS Artikel ini berisi tutorial tentang alokasi non-bersebelahan dalam sistem operasi dan cara kerjanya.
Contiguous Memory Management Techniques Artikel ini berisi penjelasan tentang teknik manajemen memori bersebelahan dan cara implementasinya dalam sistem operasi.
Fixed (or static) Partitioning Artikel ini menjelaskan tentang Partisi Tetap (statis) dalam sistem operasi, yaitu teknik alokasi memori yang membagi memori fisik menjadi wilayah berukuran tetap yang dialokasikan untuk proses tertentu.
Variable (or Dynamic) Partitioning Artikel ini menjelaskan tentang Partisi Variabel (atau Dinamis) dalam sistem operasi, khususnya dalam konteks manajemen memori.
Paging in Operating System Artikel ini menjelaskan tentang paging dalam sistem operasi, sebuah teknik manajemen memori yang memungkinkan alokasi memori fisik tanpa memerlukan pengalokasian berkesinambungan.
  1. Byte Ordering: Little-Endian vs. Big-Endian
    Video ini menjelaskan bagaimana kuantitas multibyte disimpan dalam memori menggunakan dua urutan byte utama, yaitu little-endian dan big-endian, yang penting saat mentransfer data antara sistem dengan konvensi berbeda.

  2. SCP Command to Transfer Files
    Video ini menjelaskan cara menggunakan perintah SCP untuk mentransfer file atau direktori antara mesin lokal dan server remote, termasuk penggunaan opsi rekursif, penyesuaian port, dan otentikasi kunci publik.

  3. Introduction to Pointers in C
    Video ini memperkenalkan konsep pointer dalam C sebagai variabel yang menyimpan alamat awal dari objek yang ditunjuk, dengan contoh menyimpan alamat variabel integer dalam memori.

  4. Pointers in C for Absolute Beginners
    Video ini membahas keuntungan dan kerugian dari menggunakan pointer sebagai argumen dalam fungsi. Disana dijelaskan passing by value lebih aman tetapi memiliki overhead memori yang lebih besar, sementara passing by reference lebih efisien dan memungkinkan akses langsung ke memori, meskipun dapat menyebabkan kode yang lebih sulit dibaca.

  5. Introduction to Virtual Memory
    Video ini menjelaskan virtual memory sebagai lapisan indirection yang memetakan alamat program ke RAM, memberikan fleksibilitas dan keamanan serta mengatasi keterbatasan ruang memori dengan menggunakan disk.

WEEK 05 🍫

Topik Penjelasan
Virtual Memory in OS Artikel ini menjelaskan tentang teknik manajemen memori yang menggunakan penyimpanan sekunder untuk memperluas memori fisik.
Translation Look Aside Buffer (TLB) Artikel ini menjelaskan tentang Cache yang mempercepat akses ke tabel halaman dalam sistem paging.
What is Demand Paging in OS? Artikel ini menjelaskan konsep Demand Paging dalam sistem operasi, di mana halaman hanya dimuat ke memori utama saat dibutuhkan, serta membahas istilah terkait seperti page fault dan thrashing.
Page Table Entries Artikel ini menjelaskan secara mendetail tentang struktur dan fungsi Entri Tabel Halaman (PTE) dalam sistem operasi, bagaimana PTE bekerja dalam manajemen memori, serta informasi yang disimpan dalam setiap entri.
Page Replacement Algorithms Artikel ini menjelaskan tentang algoritma penggantian halaman (Page Replacement Algorithms) secara umum.
Page Replacement Artikel ini menjelaskan tentang berbagai algoritma penggantian halaman dalam sistem operasi, termasuk teknik FIFO, Optimal, LRU, dan MRU untuk mengelola memori secara efisien saat terjadi page fault.
Allocation of frames Artikel ini menjelaskan tentang algoritma alokasi frame dalam sistem operasi, termasuk metode alokasi yang sama, proporsional, serta penggantian frame global dan lokal untuk mengelola memori.
Techniques to handle Thrashing Artikel ini menjelaskan tentang teknik untuk mengatasi thrashing, termasuk penyebab dan model working set.
Segmentation in OS Artikel ini menjelaskan tentang teknik manajemen memori yang membagi memori menjadi segmen variabel dan penerjemahan alamat.
  1. But, what is Virtual Memory?
    Video ini berisi penjelasan tentang cara kerja memori virtual, termasuk masalah yang diselesaikannya, seperti kekurangan memori, fragmentasi memori, dan keamanan, serta implementasi dan proses peta halaman (page table) dalam sistem operasi.

  2. TLB In Virtual Memory
    Video ini berisi penjelasan tentang Translation Lookaside Buffer (TLB), cara kerjanya dalam mengurangi waktu akses memori virtual dengan menyimpan entri halaman yang baru-baru ini diakses, serta proses yang terjadi saat terjadi TLB hit dan TLB miss.

  3. How computer memory works?
    Video ini berisi penjelasan tentang peran memori dalam komputer, termasuk jenis-jenis memori seperti RAM, cache, dan penyimpanan jangka panjang, serta tantangan dalam mempertahankan data dan kecepatan akses.

  4. Virtual To Physical Translation
    Video ini menjelaskan proses translasi alamat virtual ke alamat fisik dalam memori komputer, di mana alamat virtual dibagi menjadi offset halaman dan nomor halaman virtual yang digunakan untuk mengakses tabel halaman dan menghasilkan alamat fisik.

WEEK 06 🍨

Topik Penjelasan
OS Process Artikel ini menjelaskan bahwa Process adalah program yang sedang dieksekusi, dengan komponen utama seperti stack, heap, text, dan data.
Operasi pada Proses Artikel ini menjelaskan bahwa Operasi pada Proses mencakup pembuatan, penjadwalan, pemblokiran, pendahuluan, dan penghentian, yang penting untuk mengelola eksekusi program.
Process Scheduling Artikel ini membahas Process Scheduling yang mengatur pergantian proses di CPU untuk efisiensi, mencakup dua kategori (Non-preemptive dan Preemptive), pengelolaan antrian proses, model dua status, serta jenis-jenis scheduler (Long-Term, Short-Term, Medium-Term).
Multithreading Models in OS Artikel ini menjelaskan konsep Multithreading dalam OS, di mana tugas dibagi menjadi beberapa thread yang dapat berjalan bersamaan.
Threading Issues Desain program multithreading memiliki beberapa tantangan yang perlu dipertimbangkan, di antaranya: pengelolaan fork() dan exec() system calls, Signal Handling, Thread Cancellation, serta Thread Pools.
Fork System Call in OS Fork system call adalah operasi di sistem operasi yang memungkinkan proses membuat duplikat dirinya (child process) untuk mendukung eksekusi paralel, multitasking, dan efisiensi memori melalui teknik copy-on-write, meskipun dapat menyebabkan overhead memori dan kompleksitas komunikasi antar proses.
Dynamic Memory Allocation Artikel ini berisi alokasi memori dinamis dalam C memungkinkan perubahan ukuran struktur data selama runtime menggunakan fungsi malloc(), calloc(), free(), dan realloc() yang memudahkan manajemen memori secara efisien.
Concurrency in Operating System Artikel ini menjelaskan tentang konsep concurrency dalam sistem operasi, yang merupakan kemampuan sistem untuk menangani beberapa tugas atau proses secara bersamaan.
Difference between Concurrency and Parallelism Artikel ini berisi penjelasan mengenai perbedaan antara konkurensi dan paralelisme dalam komputasi.
Fork, Exec, Wait and Exit Artikel ini menjelaskan tentang siklus hidup proses di Unix, meliputi penggunaan fork(), exec(), wait(), dan exit() untuk mengelola pembuatan, eksekusi, dan penghentian proses.
  1. Unix Processes in OS
    Playlist ini berisi tutorial tentang pengelolaan proses di Unix menggunakan bahasa C, mencakup penggunaan fungsi seperti fork(), wait(), exec(), pipes, signal, dan berbagai cara komunikasi antarproses.

  2. fork() and exec() System Calls
    Video ini berisi penjelasan tentang sistem call fork dan exec pada Linux, termasuk cara kerjanya melalui contoh program dalam bahasa C.

  3. Threading Issues fork() & exec() System Calls
    Video ini membahas masalah yang muncul dengan sistem panggilan fork dan exec dalam pemrograman multi-threading, serta menjelaskan kapan sebaiknya menggunakan masing-masing versi fork.

WEEK 07 🥩

Topik Penjelasan
Introduction of Process Synchronization Artikel ini menjelaskan pentingnya sinkronisasi proses dalam sistem multiproses untuk menghindari kondisi persaingan dan memastikan akses yang aman terhadap sumber daya bersama menggunakan teknik seperti semaphore dan critical section.
Critical Section in Synchronization Artikel ini membahas konsep critical section, yaitu segmen kode yang diakses oleh beberapa thread atau proses secara bersamaan dan memerlukan sinkronisasi untuk menghindari kondisi balapan, dengan penggunaan mekanisme sinkronisasi seperti semaphore dan mutex untuk memastikan bahwa hanya satu thread atau proses yang dapat menjalankan critical section pada satu waktu.
Semaphores in Process Synchronization Artikel ini membahas semaphore sebagai mekanisme sinkronisasi dalam ilmu komputer yang efektif dalam mengatur akses proses terhadap sumber daya bersama melalui dua operasi fundamental, yaitu P (Wait) dan V (Signal), serta mengeksplorasi kelebihan, kekurangan, dan contoh-contoh masalah klasik yang dapat dipecahkan dengan penerapan semaphore.
Hardware Synchronization Algorithms Artikel ini membahas algoritma sinkronisasi perangkat keras yang efisien dalam mengatasi masalah sinkronisasi proses, dengan fokus pada tiga metode utama yaitu Test and Set, Swap, serta Unlock and Lock.
Classical Problems of Synchronization Artikel ini membahas pentingnya sinkronisasi dalam sistem operasi untuk mengelola akses ke sumber daya bersama di antara proses-proses yang berjalan secara bersamaan, dengan menggunakan semaphores sebagai solusi klasik untuk sejumlah masalah sinkronisasi terkenal, seperti Bounded Buffer, Dining Philosophers, Readers-Writers, dan Sleeping Barber.
Difference between Deadlock and Starvation in OS Artikel ini membahas perbedaan antara Deadlock dan Starvation dalam sistem operasi.
Deadlock Prevention And Avoidance Artikel ini membahas tentang pencegahan dan penghindaran deadlock dalam sistem operasi.
Deadlock Detection And Recovery Artikel ini menjelaskan mekanisme deteksi dan pemulihan kebuntuan dalam sistem operasi.
  1. Process Synchronization
    Playlist ini berisi rangkaian tutorial lengkap mengenai sinkronisasi proses di sistem operasi, mulai dari dasar-dasar hingga solusi masalah-masalah umum, cocok untuk memperdalam pemahaman mengenai tantangan sinkronisasi dan cara mengelolanya dengan berbagai metode dan algoritma.

  2. Deadlock - Operating System
    Playlist ini berisi video tentang konsep deadlock pada sistem operasi, syarat terjadinya deadlock, pencegahan, dan pendekatan untuk menghindari deadlock.

WEEK 08 & WEEK 09 🧀

Topik Penjelasan
CPU Scheduling in Operating Systems Artikel ini menjelaskan tentang CPU scheduling dalam sistem operasi, yang mencakup berbagai algoritma penjadwalan seperti FCFS, SJF, dan Round Robin untuk mengalokasikan waktu CPU secara efisien, serta evaluasi kinerja menggunakan metrik seperti turnaround time dan waiting time.
CPU Scheduling Criteria Artikel ini menjelaskan tentang kriteria CPU scheduling, termasuk CPU utilization, throughput, turnaround time, waiting time, response time, completion time, dan priority, yang digunakan untuk menentukan algoritma penjadwalan yang efisien.
Thread Scheduling Artikel ini membahas tentang penjadwalan thread, termasuk konsep Lightweight Process (LWP), kontenksi proses, dan domain alokasi, serta perbedaan antara Process Contention Scope (PCS) dan System Contention Scope (SCS).
Multiple-Processor Scheduling in Operating System Artikel ini membahas tentang penjadwalan CPU pada sistem multiprosesor, yang mencakup konsep-konsep seperti affinity prosesor, pembagian beban, dan penggunaan prosesor multicore.
  1. Linux From Scratch 12.1
    Playlist ini menyajikan serangkaian video tutorial yang menjelaskan secara mendalam mengenai buku Linux From Scratch 12.1.

  2. Linux From Scratch 12.2
    Playlist ini menyajikan serangkaian video tutorial yang menjelaskan secara mendalam mengenai buku Linux From Scratch 12.2.

  3. LFS Book for VirtualBox
    Artikel ini membahas tentang penggunaan Linux From Scratch (LFS) dengan VirtualBox

  4. LFS Book for UTM
    Artikel ini membahas tentang penggunaan Linux From Scratch (LFS) dengan UTM

REV: Tue 18 Nov 2024 12.10