The Year 2038 Problem: This Is the Third Deadline
Load-Bearing History
0:00 / 0:00
The Year 2038 Problem: This Is the Third Deadline
90 просмотров · 1 месяц назад
Load-Bearing History
43 подписчика
90 просмотров · 1 месяц назад
The year 2038 problem, in one line: the signed 32-bit clock that computers count seconds on runs out on January 19, 2038 - and that is the third deadline it has had.
Every computer descended from Unix counts whole seconds since midnight on January 1, 1970. A signed 32-bit integer holds about 2.1 billion of them - roughly 68 years - so unix time reaches its last value at 03:14:07 UTC on Tuesday, January 19, 2038. One tick later it flips to the most negative number it can hold: December 13, 1901. A Friday.
Your phone and your laptop were sorted out years ago; the things that sit in one place for a decade often were not. Google's own Android documentation says 32-bit Android's time_t "will overflow in 2038", and the 64-bit requirement the phone met in 2019 only reaches Google TV and Android TV in August 2026 and Wear OS in September 2026. In October 2025 a US federal advisory described an automatic tank gauge - the console watching a filling station's fuel tanks - whose clock resets to 1901 at the rollover, locking staff out and stopping leak detection.
But 2038 is the third deadline, not the first. The First Edition Unix manual of November 1971 describes the clock under a heading of BUGS: on a PDP-11 it counted the mains flicker sixty times a second, filling 32 bits in about two and a quarter years. In March 1972 the fix was not a wider counter but a new beginning of time, moved forward a year - the same crisis, rescheduled, under a note reading "The time is stored in 32 bits. This guarantees a crisis every 2.26 years." The real fix, in 1973, was to count whole seconds and put the zero at 1970. The BUGS section was not fixed. It was removed.
So why does computer time start in 1970? It was the third try. Dennis Ritchie told Wired in September 2001: "we kept changing the origin of time. So finally we said, let's pick one thing that's not going to overflow for a while."
It was never the processor - the count that runs out is a storage format, and anything looking far enough ahead crosses 2038 early: AOLserver's servers hung in May 2006, a billion seconds ahead. Arnd Bergmann closed the Linux kernel's 64-bit time work with kernel 5.6 in 2020; Steve Langasek started Debian's transition in 2024 and died before Debian 13 shipped it in 2025. MySQL still documents TIMESTAMP as ending on January 19, 2038; MariaDB reread the same 32 bits as unsigned and bought itself until 2106.
Widening the counter only reschedules the ending. The while is not over. It got longer.
Watch next | Y2K: The Apocalypse That Got Cancelled: • Y2K Explained: The Apocalypse That Got Can...
All episodes | • Technology History Explained: The Hidden D...
Chapters:
0:00 What happens on January 19, 2038 - the year 2038 problem
0:40 Whose devices: Android TV, Wear OS and a fuel tank gauge
1:43 The 1971 Unix manual page with its own death notice
2:12 A clock made of grid flicker: the PDP-11 and 60ths of a second
2:59 Moving the unix epoch - rescheduling the crisis
3:35 Why computer time starts in 1970 - the third zero
4:33 Friday the 13th, 1901: a signed 32 bit integer overflow
5:35 The billionth second, and Dennis Ritchie on the epoch
6:35 The 2006 AOLserver bug - y2k38 thirty-two years early
7:53 Never the processor: 32-bit time_t is a storage format
8:26 Rewriting time: Linux kernel 5.6, Bergmann and Debian
9:57 Set the clock past 2038 and see what breaks: openSUSE
11:05 Where it is now: MySQL, MariaDB and the year 2106
Sources: Unix Programmer's Manual, First (Nov 1971), Third (Mar 1972) and Fourth (Nov 1973) Editions - the time/ctime pages and BUGS notes (cat-v, TUHS, bitsavers); Ritchie, "The Evolution of the Unix Time-sharing System" (1984); Manjoo, Wired, September 8, 2001 (Internet Archive); AOLserver list archive, May 2006 (Scheffers, Rogers); Bergmann, LKML pull request, January 29, 2020; Langasek, debian-devel-announce, February 2, 2024, and Debian trixie news 2025; Android Open Source Project bionic 32-bit-abi.md and Android Developers Blog (2019, 2025, 2026); CISA ICSA-25-296-03 / CVE-2025-55067 (Veeder-Root TLS4B tank gauge, 2025); the Epochalypse Project (Trey Darley, Pedro Umbelino); openSUSE News, January 2026; MySQL 8.4 manual; MariaDB MDEV-32188.
Load-Bearing History - the small decisions holding up the modern world. New deep dive every week. Subscribe.
#year2038problem #unixtime #computerhistory
Imagery & footage: PEXELS, PAGE: ANDROID OPEN SOURCE PROJECT, SCAN: UNIX PROGRAMMER'S MANUAL, PHOTOS: RETRO-COMPUTING SOCIETY OF RI (CC BY-SA 3.0), GOTTSCHO-SCHLEISNER COLLECTION, SCAN: UNIX PROGRAMMER'S MANUAL 3RD ED. (BITSAVERS), DENISE PANYIK-DALE (CC BY 2.0), PAGE: WIRED.COM (2001) VIA INTERNET ARCHIVE, PAGE: THE MAIL ARCHIVE, PAGE: LWN.NET LINUX-KERNEL ARCHIVE, PAGE: LISTS.DEBIAN.ORG, PAGE: DEBIAN.ORG NEWS, PAGE: OPENSUSE NEWS, PAGE: MYSQL 8.4 REFERENCE MANUAL (DEV.MYSQL.COM), DENISE PANYIK-DALE. Public-domain and Creative Commons sources; see each work's page for its license.