Links
Halaman ini berisi pranala-pranala (links) yang berguna dalam, namun tidak terbatas dengan, mata kuliah Sistem Operasi.
Umum
Link-link di bagian ini bersifat umum. Selain topik-topik seputar mata kuliah sistem operasi, terdapat topik-topik lain yang dapat berguna.
- Awesome lists - Daftar link menuju hal-hal berguna yang berkaitan dengan suatu topik spesifik. Berguna untuk eksplorasi.
- Awesome Linux
- Awesome Shell
- Awesome GitHub
- Vim Galore
- β¦dan masih banyak lagi di sindresorhus/awesomeβ¦
- Cheatsheets - Kumpulan command (atau referensi) berbagai aplikasi dalam satu halaman. Berguna untuk melihat apa saja yang bisa dilakukan dalam suatu apilkasi.
- Referensi-referensi dengan pengetahuan umum - Harusnya sudah cukup deskriptif betapa bergunanya ini.
- OSDev.org - Deskriptif terkait segalanya tentang pembuatan OS.
- Operating System Design (Wikibooks) - Deskriptif, namun lebih mudah dipahami
- Tutorials Point - Perkenalan dan sedikit mendalam
- Geeks4Geeks - Perkenalan dan sedikit mendalam
- W3Schools - Untuk programming saja, bagus untuk orang awam
- Petani Kode - Untuk programming saja, menggunakan bahasa Indonesia
Week 0-1
- Operating System Tutorial - Sebuah halaman yang memperkenalkan konsep-konsep terhadap sistem operasi. Cocok sebagai referensi dalam mata kuliah ini.
- What is Linux? - Sebuah artikel yang memperkenalkan Linux.
- About Debian - Sebuah halaman yang memperkenalkan Debian.
- learnshell.org - Sebuah layanan untuk belajar cara menggunakan bahasa scripting Shell di Linux/Unix. Dilengkapi dengan simulator untuk digunakan saat mencoba.
- openvim.com - Sebuah layanan untuk belajar cara menggunakan Vim, dilengkapi dengan simulator dengan panduan.
- RegExr - Sebuah layanan untuk mencoba ekspresi RegEx yang kamu. Mungkin salah satu toolkit yang paling sering saya pakai.
- git - the simple guide - Gambaran singkat mengenai git. Cocok untuk memulai.
- Cheatsheets
- Bash: awesome-cheatsheets, Quick Reference
- Git: Git and Git Flow Cheat Sheet
- RegEx: Quick Reference
- awk: Quick Reference
- sed: Quick Reference
- Vim: Quick Reference
- Markdown: Basic Syntax | Markdown Guide
- Linux: linux-cheatsheet.sh (khazeamo)
Week 2
- learn-c.org - Sebuah layanan untuk belajar cara menggunakan bahasa C. Dilengkapi dengan simulator untuk digunakan saat mencoba.
- C Tutorial - Lebih lengkap dari sebelumnya, sebagai referensi untuk belajar menggunakan bahasa C.
- Cryptography (SearchSecurity) - Pengenalan singkat tentang kriptografi.
- Cheatsheets
- chmod: Quick Reference
Week 3
- What Is a File System? Types of Computer File Systems and How they Work β Explained with Examples - Penjelasan tentang beberapa arsitektur file system yang tersedia.
- An introduction to Linux filesystems - Penjelasan tentang file system di Linux, seperti overview-nya, directory structure, tipe filesystem.
- User Space File Systems: Pros and Cons - Artikel yang mendalami file system in user space. Dijelaskan kenapa user space file system ada, dan kelebihan dan kekurangannya.
Week 4
- Operating System - Memory Management - Rangkuman tentang manajemen memori di sistem operasi. Saya bacanya di akhir, namun lumayan mencakup tentang materi yang dijelaskan, seperti swapping, alokasi memori, paging, dan lain-lain.
- What is memory mapping in Linux? - Penjelasan tentang fitur memory mapping yang ada di Linux/Unix, yang merupakan sebuah cara untuk menempatkan suatu bagian di disk pada address space aplikasi.
- Makefile Tutorial by Examples - Sebuah halaman yang menjelaskan cara menggunakan Makefile, yang digunakan oleh Make dalam meng-compile aplikasi C dan C++
Week 5
- Operating System - Virtual Memory - Rangkuman tentang virtual memory di sistem operasi. Berisi penjelasan tentang demand paging, algoritma-algoritma untuk page replacement yang digunakan, dan sebagainya.
- What is Thrash? - Artikel yang menjelaskan tentang thrash dan thrashing, yang dapat terjadi pada virtual memory saat lebih banyak menyimpan di virtual memory daripada di main memory.
- Cache Memory in Computer Organization - Artikel yang menjelaskan tentang cache memory dari sudut komputer.
Week 6
- Process in Operating System - Artikel tentang process, yang juga dijelaskan bahwa process tidaklah sama dengan program.
- Thread in Operating System - Artikel singkat yang menjelaskan thread. Sekalian juga perbedaan antara process dan thread.
- Concurrency in Operating System - Artikel yang menjelaskan concurrency di sistem operasi, termasuk prinsip, kelebihan/kekurangan, dan isu.
- fork() in C - Artikel singkat tentang fungsi
fork()
, dan bagaimana caranya bekerja.
Week 7
- Introduction of Process Synchronization - Artikel singkat yang menjelaskan tentang process synchronization di sistem operasi. Ini perlu diperhatikan, takutnya ada proses yang memerlukan proses lain.
- Introduction of Deadlock in Operating System - Artikel singkat yang menjelaskan tentang deadlock, di sistem operasi. Deadlock adalah saat suatu proses menunggu suatu proses lain yang menggunakan suatu resource, dan proses lain itu juga menunggu resource yang digunakan oleh proses sebelumnya.
- Monitor vs Semaphore & Mutex vs Semaphore - Artikel yang menjelaskan perbedaan antara monitor, mutex, dan semaphore. Monitor dan semaphore adalah kedua cara untuk menyelesaikan masalah critical selection. Semaphore adalah generalisasi dari mutex, namun keduanya memiliki kegunaan yang berbeda.
Week 8
- Operating System - Process Scheduling - Rangkuman tentang process scheduling: apa itu, modelnya, tipenya, dsb. Process scheduling adalah aktivitas process manager yang menangani kapan suatu proses berjalan atau berhenti dengan suatu strategi tertentu.
- Scheduling Algorithms - Penjelasan tentang algoritma scheduling yang dapat digunakan.
Week 9
- MBR vs GPT - Artikel yang menjelaskan tentang perbedaan antara Master Boot Record (MBR) dan GUID Partition Table (GPT), sekalian dengan BIOS-nya.
- Bootloader (Wikibooks) - Sedikit terkait dengan MBR dan GPT. Penjelasan tentang bootloader secara sederhana.
- Disk Scheduling Algorithms - Artikel yang menjelaskan tentang algoritma disk scheduling yang dapat digunakan.
- (Almost) Everything You Need to Know About RAID - Artikel yang menjelaskan tentang RAID, terutama tipe-tipenya.
Week 10
- Operating System - I/O Hardware dan Operating System - I/O Softwares - Dua artikel yang menjelaskan tentang sistem I/O di sistem operasi, dari sisi software dan hardware.
- C - File I/O Artikel yang menjelaskan tentang interaksi I/O pada file dengan menggunakan bahasa pemogramman C.
- Socket Programming in C/C++ - Artikel tentang socket programming di C, yang digunakan dalam menghubung dua node agar dapat berkomunikasi dari satu dengan yang lainnya.
- Linux from Scratch First Impressions: Waste Of Time? - Video yang baru saya temukan saat akhir-akhir mata kuliah Sistem Operasi. Singkatnya, Anda dapat belajar beberapa hal (jika tidak banyak) dari melakukan LFS. Banyak sebenarnya yang sebenarnya dapat dilompati, jadi pastikan Anda melakukannya dengan cermat dan coba memahaminya jika kalian mau belajar dari ini.