Linux Commands
Linux commands list (CLI). Can be a useful side note when working in terminal.
Vi Tutorial
Helped me get started using vi. The concept and the syntax is well-written.
Awk Tutorial
Some awk techniques. Might be useful in the future.
Shell Scripting Crash Course - Beginner Level
Good for beginners to learn scripting. Branching, iterating, input from terminal/files, etc.
How Asymmetric Encryption Works
A 5 minutes explanation video by Simply Explained. The explanation is really clear and easily understood.
What is Key Signing
If you’re curious what key-signing is about. It is one of optional assignments in this week (week02).
Linux Directory Structure
Learn the surface of the structure of linux directory. Useful for a quick peek if you forget what is where.
Linux Filesystem Hierarchy Standard - A Guide
Explain it deeper. Explain every directory more detailed but simple.
FUSE Complete Documentation
Useful if you’re looking for something very detailed. It’s fairly hard to read but easy to search if you have a keyword.
Memahami Static dan Shared Library di Linux
What does static/shared library means, and some examples in Indonesian. But a bit confusing and lengthy.
What is Paging
A quick explanation of what is paging. But doesn’t provide deeper explanation as it only explains in a nutshell.
More in Paging
Deeper explanation of paging. Explains what is, how it is mapped, how to use the page table, etc.
Pointers in C
What is pointer, how to create, manipulate, and use it in C. Recommended to read this before reading the examples in slide.
Memory Management in OS
Simple explanations about memory address, static/dynamic loading and linking, swapping, memory alloc, fragmentation. The website has more tabs of topics about other OS stuff.
Virtual Memory in OS
Geeksforgeeks article about Virtual Memory. Including demand paging, page fault, swapping, and thrashing.
(Video) Silberschatz Chapter 9: Virtual Memory
Explanation of the Silberschatz slides by Hamid Mukhtar. Useful when you don’t understand some part of the slide, you can watch this video.
fork() in c
Explains what fork()
does. With code example and illustration of a tree for the process.
wait() in c
Explains what wait()
does if combined with fork()
. With code example and illustration of a tree for the process.
What is a Process?
Definitions, states, PCB, and how a process is divided. There are other good stuff too in other tabs.
Process Synchronization in Linux
How synchronization works in Linux. Additional information about Orphan processes and Daemon processes.
Multithreading in C
How to manipulate threads in C language. Mainly use function pthread_create() and pthread_join().
Mutex
Explains how to synchronize Linux thread with mutex in C. The explanations is so detailed and there are many examples provided.
Semaphore
Explains how to synchronize Linux thread with semaphore in C. The explanations is so detailed and there are many examples provided.
Scheduling
Definition, types of schedulers. Explains a bit about CPU burst.
CPU Scheduling
Algorithms of scheduling. SJF, SRTF, LRTF, Round Robin, HRRN, Multilevel Queue. Detailed with small quiz.
Multiple-Processor Scheduling
Multiple-processor scheduling with load sharing. Includes processor affinity, load balancing, multicore processors, etc.
Storage Management
Storage management key attributes, features, and advantages. Explained neatly and simply.
BIOS
Power on Self Test, location of BIOS, etc. Completed with complementary metal oxide semiconductor RAM.
UEFI
Unified Extensible Firmware Interface. Differences and advantages of UEFI instead of BIOS.