COMP 325 — UNIX
Live in the shell — 85 lessons across the user's and the programmer's view
A full UNIX course built the way the Athabasca syllabus is split: the User's View first — how the system is put together, how the shell parses a command line, files and inodes and the two kinds of link, globbing and quoting, file security with permissions, `umask` and the special bits, the file-processing toolkit, regular expressions with grep, sed and awk, redirection, pipes and FIFOs, and processes, job control and signals — then the System Administrator's and Programmer's View: Bourne shell programming from variables to traps and descriptor rewiring, the C shell and where it differs, Python 3 as a scripting replacement, then system programming proper — the kernel boundary and the real POSIX signatures, the descriptor table, fork, exec, wait and zombies, reliable signal handling with sigaction, pipes and IPC, and sockets, concurrent servers and the socket arithmetic the assignments ask you to justify. Commands and C are typed for muscle memory; the fiddly deterministic semantics — umask arithmetic, glob expansion, the wait status word — you compute in runnable Python and watch come out right. Every one of the three assignments' questions is reachable from a lesson, and the questions the papers want in prose are rehearsed as written answers you commit, then grade against the marking scheme.
0 / 85 lessonsThe System, the Shell, and the Command Line
57 cards- What an operating system does ◈ 5
- The UNIX software architecture: API and AUI ◈ 6
- Three branches, one root, and why POSIX exists ◈ 5
- Anatomy of a UNIX command ◈ 7
- Shells: which one you are in, and how to leave it ◈ 7
- Why you do not log in as root ◈ 7
- Reading the manual, and asking the machine what it is ◈ 10
- Two editors, one buffer ◈ 10