os242

LINKSđź”—

WEEK 00

  1. About Operating Systems
    Introduction the basic concepts of operating system (OS) with its role as the intermediary between the user, hardware, and software applications.

  2. History of Operating Systems
    The evolution of operating systems, from the early batch processing systems to modern multi-user. Trace the developmnet of key OS features such as time-sharing, virtual memory, and graphical user interfaces (GUIs).

WEEK 01

  1. Linux Tutorials For Beginners
    The fundamentals of Linux commands, focus on how to navigate the command-line interface (CLI), manage files, and perform administrative tasks.

  2. About Debian
    Debian’s history and its role as the foundation for many other distributions like Ubuntu. Also, Debian’s package management system, show on how to install, update, and other tools.

  3. Grep Vs Sed Vs Awk
    Compare the utilities of three essential Unix text-processing utilities: grep, sed, and awk with the esamples to show how each tool can be used in different situations.

WEEK 02

  1. Linux Directories
    Concise explanation of the Linux file hierarchy system (FHS) and the purpose of essential directories such as /bin, /usr, /home, /var, and more.

  2. FUSE (Filesystem in Userspace)
    The importance of FUSE, a tool that allows non-privileged users to create their own file systems in Linux. The importance of FUSE n allowing custom file system implementations without needing to modify kernel code.

  3. Fundamentals of C Programming Language
    Comprehensive introduction to C programming, focus on embedded systems with essentials topics such as variables, constants, functions, loops, and arrays.

  4. Introduction to Cyber Security
    Foundational overview of cybersecurity, such as the importance of protecting systems, networks, and data from cyber threats.

WEEK 03

  1. Introduction to File Systems
    Detail summary of what a file system is, give a solid foundational knowledge before diving into more advanced topics.

  2. File Systems in Operating System
    Brief explanation about file systems, their types, advantages, and disadvantages; give comprehensive overview of different file system types.

  3. FAT32 vs exFAT vs NTFS
    The difference types of file systems used in Windows, such as FAT32, exFAT, and NTFS, along with their pros and cons.

  4. FUSE
    Explores use cases, advantages, and technical mechanics behind FUSE.

WEEK 04

  1. C Memory Addresses
    Foundational direct manipulation of memory addresses with pointers in C programming.

  2. Dynamic & Static Linking
    The differences between dynamic and static linking in C, explain how C programs interact with external libraries and how different linking methods impact program execution & memory usage.

  3. Big Endian vs Little Endian
    The concept of endianness, which refers to the way multi-byte daya is stored in memory.

WEEK 05

  1. Paging
    The concept of paging’s role in memory management with its benefit, also discusses page faults.

  2. Page Table Entries in Page Table
    Detailed explanation of how page table entries (PTEs) map virtual memory to physical memory.

  3. How Computer Memory Works
    Explain how computer memory operates, cover various components like RAM, hard drives, and the degradation.

  4. Cache Memory in Computer Organization
    Explain cache memory, its importance in computer systems, and how it improves processing speed by storing frequently accessed data.

WEEK 06

  1. Fork() in C Programming Language
    A foundational understanding of the fork() function in Unix-like systems. It shows how fork() duplicates the parent process to create a child process, fundamental for handling processes in Linux.

  2. Operating System - Process Scheduling
    Process scheduling with clear illustrations to managing processes efficiently. It covers alogorithms like First-Come, First-Serve (FCFS) and Round Robin (RR), optimize CPU usage and improve multitasking.

  3. What is Inter Process Communication?
    Inter Process Communication (IPC), a key topic for managing and synchronizing multiple processes; includes diagrams and explanations on methods like message passing and shared memory, making it useful for understanding how processes can communicate and work together within an Operating Systems.

  4. Difference between Concurrency and Parallelism
    Differentiates between concurrency (multiple tasks starting and stopping) and parallelism (tasks running simultaneously), helps to studying operating system efficiency and performance management.

WEEK 07

  1. Process Synchronization
    In-depth overview of process synchronization, cover both fundamental and detailed aspects.

  2. Deadlock, Livelock and Starvation
    Three scenarios where a process may face issues while waiting for resources: deadlock, livelock, and starvation; explain which processes fail to proceed and how each scenario differs.

  3. Peterson’s Problem
    A classic synchronization solution for two-process systems, include code syntax and discuss limitations.

WEEK 08

  1. What Is Linux LFS (Linux from Scratch)
    A general overview of the Linux From Scratch (LFS) project, offering detailed insights into what LFS is, its purpose, and the main objectives behind building a custom Linux system from the ground up.

  2. Kernotex’s YouTube LFS 12.2 Playlist Guide on building Linux From Scratch (LFS), providing a detailed step-by-step tutorial that ensures users follow the correct procedures to create a fully functional Linux system.

  3. Multiple-Processor Process Scheduling in OS
    A detail explanation of how operating systems manage process scheduling when multiple processors are involved, discuss the various strategies and techniques used to efficiently allocate tasks across multiple CPU cores and optimize overall system performance.