NICOLÁS BOTTARINI
Back to the path

Computing foundations

Operating Systems

260 pages of reading · 21 min of video

Processes, threads, memory, file systems and the basics of Linux. It is what sits under every program you write and every server you deploy it to.

Topics

  • Basic Concepts

    Processes, Process Table, Threads, Address Spaces, Files, I/O, Protection, Shell, Kernel, Booting, Terminal vs Console vs Shell, System Calls

  • Virtual Machines

    Hypervisor, JVM

  • Processes and Threads

    Process Creation, Process Termination, Process Hierarchy, Process States, User Space, Kernel Space, IPC, Scheduling

  • Memory Management

    Address Spaces, Virtual Memory, Paging, Page Table, Segmentation

  • File Systems

    File Structure, Records, File Types, File Naming, File Access, File Attributes, File Operations, Directory Hierarchy, Directory Operations, Absolute Paths, Relative Paths, File System Layout, MBR, Partitions, I-Nodes

  • I/O

    Block vs Character Devices, Device Controllers, I/O Ports, Memory-Mapped I/O, DMA, Device Independence, Mounting, Buffering, Drivers

  • Terminal vs Console vs Shell

  • Linux Basics

    Kernel, Process Management, Memory Management, Device Management, System Calls, Using Shell, stdin, stdout, stderr, Environment Variables, PATH, File Modes & Permissions, Linux Directory Hierarchy (root directories and their usage), Device Files (/dev/null)

  • Linux Basic Commands

    ls, cp, mv, cat, touch, rm, echo, cd, mkdir, rmdir, Shell Globbing, grep, less, pwd, diff, file, find, locate, head, tail, sort, Shell Input & Output Redirection, ps, kill, Background Processes (&), chmod, chown, Symbolic Links, Archiving & Compressing (gzip, tar), sudo, sudoers

  • Linux Cron

    Crontab

  • Linux Bash Scripting Basics

    Comments, Quoting and Literals, Special Variables, Exit Codes, Conditionals, Loops, Command Substitution, Temporary Files, Subshells

  • Linux User Environments

    Shell Startup Files, Aliases, Prompt

Resources