Перейти к содержимому

Four Hours to Rebuild an OS for Six Files — FreeBSD 5.4 buildworld, 2005 · 1080p Electronic

Busy Work Labs

0:00 / 0:00

Four Hours to Rebuild an OS for Six Files — FreeBSD 5.4 buildworld, 2005 · 1080p Electronic

13 просмотров · 20 часов назад
Busy Work Labs
11 подписчиков
13 просмотров · 20 часов назад
An xterm on a single-processor Athlon running FreeBSD 5.4-RELEASE, one Saturday night in July 2005. Nothing is written here. This is a source upgrade of an entire operating system, which is the purest version of that idea in the whole series. csup pulls the RELENG_5_4 branch and six files have changed — tcp_input.c, getaddrinfo.c, kern_descrip.c and three others, all security fixes rather than features. UPDATING says a world and kernel rebuild is required, and the procedure it gives is not a suggestion: buildworld, buildkernel, installkernel, reboot single user, mergemaster -p, installworld, mergemaster, reboot. Get the order wrong and the machine does not come back. buildworld runs in numbered stages and each one prints a banner. Stage 1.2 rebuilds make itself, because the first thing a source upgrade does is rebuild its own tools. Stage 3 builds binutils and gcc — a complete toolchain that did not exist an hour earlier — and everything after it uses the new compiler. Stage 4.2 is libc, a thousand C files. Stage 4.4 walks alphabetically through five hundred and fifty directories. Three hours and twenty-two minutes later: World build completed, and nothing on the machine has changed yet. Then the careful part. installkernel keeps the old kernel under another name in case the new one will not boot. installworld replaces libc while the running shell is using it, which works only because the old inode stays alive until nothing has it open — and that is why it happens in single user. mergemaster finds two files: a new rc script, and the message of the day. An hour of slow-building instrumental — music only, no typing sounds. 1 hour, 1920×1080, with sound. Music from #Uppbeat (free for Creators!): https://uppbeat.io/music/tracks/moire... License code: ER54ZXQSKEQ77QY6 #freebsd #bsd #buildworld #unix #compiling #sysadmin #2005 #mergemaster #csup #kernel #gcc #retrocomputing #busyworklabs #musiconly #focus #deepwork #programming