01 / UNIX
Philosophy
UNIX was designed around a small set of powerful ideas: keep programs simple, make each program do one thing well, and provide standard interfaces that allow those programs to work together. Files, processes, streams and devices are exposed through consistent interfaces, allowing administrators and developers to compose complex operations from relatively small tools. This philosophy is one of the foundations of modern Unix-like operating systems, including Linux, FreeBSD and macOS.
02 / UNIX
History
UNIX has a rich history that spans several decades. It was originally developed in the late 1960s and early 1970s at Bell Labs by Ken Thompson and Dennis Ritchie. The system was designed to be portable, efficient, and easy to use, which made it popular among researchers and developers.
03 / UNIX
Processes
A process is a running instance of a program together with its own execution state, memory mappings, file descriptors and associated resources. Unix-like systems create processes through mechanisms such as `fork()` and `exec()`, allowing one process to create another and then load a different executable. Processes have unique process IDs (PIDs), parent-child relationships and defined states, and administrators can inspect and control them using tools such as `ps`, `top`, `kill` and `wait`.
04 / UNIX
Filesystems
Unix-like operating systems present storage through a hierarchical filesystem beginning at the root directory, /. Directories contain names that reference files, directories and other filesystem objects, while devices and other resources can also be exposed through the filesystem namespace. Filesystems can be mounted at arbitrary directory locations, allowing separate disks, partitions, network filesystems and virtual filesystems to appear as part of one unified directory tree.
05 / UNIX
Permissions
Unix filesystem permissions control access to objects through three primary classes: the owner, the group and everyone else. Each class can have read, write and execute permissions, traditionally represented by the familiar rwx notation. Ownership and permissions can be managed with commands such as chown, chgrp and chmod, while mechanisms including setuid, setgid and the sticky bit provide additional control over how files and directories are accessed and executed.
06 / UNIX
Shell
The shell is both a command interpreter and a programming environment through which users interact with a Unix-like operating system. It locates and executes programs, expands variables and wildcards, redirects input and output, connects commands with pipelines and provides scripting capabilities. Common shells include sh, bash, ksh, zsh and fish, with POSIX shell conventions forming the foundation for many portable Unix administration scripts.
07 / UNIX
Pipes & Filters
Unix pipelines allow the standard output of one program to become the standard input of another. This simple mechanism makes it possible to combine small utilities into larger processing workflows without requiring every tool to understand the others. Commands such as grep, sort, awk, sed, cut, head and tail act as filters, transforming or selecting data as it passes through a pipeline. This compositional model remains one of the defining characteristics of Unix administration.
08 / UNIX
cron
cron is a Unix scheduling mechanism used to execute commands and scripts automatically at specified times or intervals. Scheduled jobs are defined using crontab entries containing five time fields representing minute, hour, day of month, month and day of week, followed by the command to execute. Cron is commonly used for recurring maintenance tasks such as backups, log processing, report generation and system housekeeping, while modern Linux distributions may also use systemd timers for scheduled workloads.