Some highlights of the 7.1 release are:
- Support for Raspberry Pi Zero.
- Initial DRM/KMS support for NVIDIA graphics cards via nouveau (Disabled by default. Uncomment nouveau and nouveaufb in your kernel config to test).
- The addition of vioscsi, a driver for the Google Compute Engine disk.
- Linux compatibility improvements, allowing, e.g., the use of Adobe Flash Player 24.
- wm(4):
- C2000 KX and 2.5G support.
- Wake On Lan support.
- 82575 and newer SERDES based systems now work.
- ODROID-C1 Ethernet now works.
- Numerous bug fixes and stability improvements.
Respect for moving forward.
Now then for an operating system reputed to run on anything north of a toaster …. it won’t run on an actual 386.
Irritating if you have an actual 386 (80386DX since you ask) but that is life. I guess it also permits the dropping of all the X11 support for ISA graphics cards, sound cards and network cards. All of which is a monster tidy up and probably a good thing.
I very much agree.
It likely doesn’t have anything to do with ISA, since the 486 is still supported, and ISA slots were still widely used then.
Beyond that, it still supports a ton of ISA add-in cards, including video cards not supported by X11. NetBSD’s driver architecture makes drivers bus-independent, so the only ISA-related coded is specifically for supporting the ISA bus
(for example, the SB16 driver works with PCI and ISA models, and doesn’t need any special code to support one or the other. If somebody manufactured an SB16 card on another, newer bus, the only change needed to the driver is just to update it with the necessary device IDs so the kernel can recognize it)
NetBSD won’t easily install on systems with less than 32MB of RAM anyways (Manual installation only), which means the 386SX is right out (16MB ram limitation)
It probably has something to do with supported instructions – the 486 has a couple of extra instructions that NetBSD might rely on, or at least prefer to use for performance reasons.
**EDIT**
Immediately after posting this, I found the release notes from when they dropped 80386 support, back in version 4.0:
2007-11-15: 80386 support removed
Support for the 80386 processor has been removed as this processor doesn’t have the necessary instructions for efficient operation of a modern Operating System. Also, there are going to be very few systems of this age that still function and the ones that do would have a very hard time with a modern version of NetBSD.
Edited 2017-03-20 05:32 UTC
Thanks for sharing your digging. AFAIR the 386SX lacked an FPU so understandable that support was dropped for that.
Netbsd will still work on 486 systems with an external FPU.
According to Wikipedia, there are two additional instructions that 486 has, that the 386 lacks (not related to the FPU) based on what I was reading on the Netbsd mailing list regarding the 386, the lack of one or both of these instructions is the issue – their absence can be worked around, but performance is garbage.
I can’t be more specific now, since I’m on my phone, but the Wikipedia article for the 486 details the two instructions.
I love how the OS is designed consciously as a whole, rather than hacking together bits n pieces ..
.. and the correctness objective really helps portability .. and aiming to work on different platforms and architectures also aids correctness by throwing up issues and bugs that would remain hidden if targeting only a small set of platforms.
keep the flame !