The 486 CPU is somewhat of a relic these days, but its legacy in the Linux kernel has lived on. The i486 has been the de facto minimum for decades. Even Linux, that long-term supporter of outdated architectures, is considering giving up on the chip and removing support for the 486 processors, just like it did for the 386 back in 2012.
The news comes via a post on the Linux Kernel Mailing List from Linus Torvalds himself. Recently keen on adding things like the Rust programming language and support for Intel Arc GPUs and Loongson CPUs to the Linux kernel, Torvalds is now considering removing the venerable 486, writing: “We got rid of i386 support back in 2012. Maybe it's time to get rid of i486 support in 2022?”
The idea, which seems so obvious in these days of Raptor Lake and Ryzen 7000, received a certain amount of pushback, with the claim from some users that new hardware based on the superannuated silicon was still being shipped. When the same plan was raised a year ago, one user said they were still using a 486, and wanted to continue doing so.
The 486, which dates back to 1989, is currently the minimum possible spec for running Linux, and works best with lightweight distros such as Tiny Core Linux.
It all comes down to cmpxchg8b, an instruction that compares then exchanges eight bytes (or 64 bits) of information in the computer’s memory. Mailing list member Peter Zijlstra suggested Linux should only support processors capable of carrying this out, leaving the 32-bit 486 behind and meaning new Linux kernels would run on P5-class hardware or newer. The cmpxchg8b instruction is the culprit behind the original Pentium’s ‘F00F’ bug, which saw an affected CPU without operating system mitigations in place cease to function until it was rebooted when asked to execute the instruction.
Kernel 6.1, out this year, will be a Long Term Support kernel, but with Torvalds’ backing to the idea it could be the last one that will run on the 486, with 6.2 removing the ability to run Linux on ancient beige 486 towers.