This wiki is a hub for information on operating system development. It’s a fascinating resource because it provides tutorials, code samples, and documentation for building your own operating system from scratch.
This is an open-source textbook that covers the core concepts of operating systems. It’s interesting because it provides a deep dive into topics such as processes, memory management, and file systems, with practical exercises to solidify your understanding.
This article provides a straightforward explanation of virtual memory, an essential concept in operating systems. It’s valuable because it simplifies the complexities of virtual memory, which is vital for effective memory management in contemporary operating systems.
The article “GPG for Dummies” explains the basics of GPG (GNU Privacy Guard), a tool for encrypting and signing data to ensure secure communications. It describes how to generate a key pair (public and private keys), use the public key for encrypting messages, and the private key for decrypting them.
The article “The Complete Guide to Regular Expressions (Regex)” provides a comprehensive overview of how to use regular expressions for pattern matching in text. It explains the syntax and key components of regex, such as literals, metacharacters, quantifiers, and character classes.
This article details how file permissions and ownership function in Linux. It explains how to use the chmod
command to change file or directory permissions, the chown
command to modify file ownership, and the chgrp
command to change the group owner of a file.
This video provides a brief tutorial on formatting disk partitions and mounting storage volumes. It includes commands like lsblk
for listing block devices, fdisk
for partitioning, mkfs
for file system creation, mount
and umount
for handling mounted file systems, and ncdu
for disk usage analysis.
This cheat sheet covers the most crucial Linux/Unix commands. It includes commands for managing files, handling permissions, working with environment variables, managing users, networking, and processes, among other key functions. It’s an essential resource for both beginners and experienced users.
This article explains how to use the scp
command in Linux to transfer files or directories between a remote machine and a local one. It walks through the syntax and options, providing examples to show how files can be securely copied between computers using SSH.
This playlist covers the topic of virtual memory in Linux, discussing key concepts such as page tables, address translation, and the translation lookaside buffer (TLB).
This video offers a concise overview of cooperating processes, shared memory systems, and the potential occurrence of race conditions.
This article covers essential concepts related to processes in operating systems. It defines what processes are and details their components, which include the stack, heap, text, and data segments. It also outlines the life cycle of a process and introduces the Process Control Block (PCB).
This YouTube video provides a clear explanation of the fork()
function in C programming. Additionally, viewers can explore a featured playlist that delves deeper into Unix processes in C, covering topics such as the wait()
function, exec()
function, and pipes.
This article offers an in-depth explanation of process synchronization in multi-process systems, emphasizing the need to coordinate processes to avoid problems like race conditions and data inconsistencies.
This article explores Peterson’s Algorithm, which provides a way to achieve mutual exclusion between two processes, especially in the producer-consumer scenario. It explains how the algorithm uses shared memory and flags, ensuring that each process waits for the other to complete its critical section before proceeding.
This article provides a comprehensive overview of CPU scheduling in operating systems. It explains the concept of process scheduling, the need for CPU scheduling algorithms, and the objectives of these algorithms. Some of the algorithms discussed in the article are First Come First Serve (FCFS), Shortest Job First (SJF), Longest Job First (LJF), Priority Scheduling, Round Robin, Shortest Remaining Time First (SRTF), and more.
Linux From Scratch 12.0 is a book that teaches you how to build your own Linux distribution from scratch. It guides you through the process of compiling and installing the essential components of a Linux system, such as the kernel, the GNU toolchain, and the basic utilities. By following the book, you will learn not only how Linux works, but also how to customize it to your own needs and preferences.
A short introduction video to what the bash shell is. A good video for new Linux users.