[HN Gopher] SkiftOS: Simple, handmade operating system for the x...
___________________________________________________________________
SkiftOS: Simple, handmade operating system for the x86 platform
Author : ingve
Score : 28 points
Date : 2021-01-23 08:03 UTC (1 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| kowsheek wrote:
| This is the approach Windows 10 should have taken.
| spicybright wrote:
| I honestly love how more people are rolling their own OS's. But
| it stinks how difficult hardware support is.
|
| I wish there was a nice wrapper dedicated to abstracting hardware
| support better so developers can focus on the interesting parts
| instead of arguing with wi-fi cards.
| cjdell wrote:
| Completely agree. Something like Project Treble, but for PC
| hardware.
|
| Thinking about it, this is what the BIOS was originally for: to
| provide a bare minimum abstraction to the hardware. I hoped
| that UEFI would extend this abstraction in a meaningful way,
| making OS development easier. Instead it has made it even more
| complex.
| hapless wrote:
| The original EFI spec very much did extend that abstraction.
| You can do a lot in an EFI environment if the hardware plays
| ball: network, disk, video etc
|
| UEFI, sadly, added support for raw x86 option ROMs, to some
| extent casting us back into the "old" world.
| userbinator wrote:
| In the earlier days of the x86 PC, the hardware was far more
| documented, but now a lot of manufacturers are notoriously
| secretive about it. Nonetheless, standards still exist
| (HDA,ATA/ATAPI/SATA,OHCI/UHCI/EHCI/XHCI,etc.) and much of the
| backwards compatibility is still there.
|
| You bring up wi-fi cards and that is definitely one category of
| hardware with little standardisation/documentation (I suspect
| due to FCC regulations and such.) Wired ethernet is a bit
| better --- Realtek and Intel NICs are both quite well-
| documented, with the latter being more complex. The other
| difficult one is GPU acceleration (but a VESA framebuffer is
| usually available, which gets you at least a GUI if not a fast
| one.)
| Koshkin wrote:
| > _a nice wrapper_
|
| Are Linux device drivers not nice enough? Hell, why couldn't
| one think, for that matter, of a minimal Linux kernel as some
| kind of BIOS. Incidentally, we already use it as a hypervisor,
| so you could probably even include support for the devices you
| want in the hypervisor itself.
| juancampa wrote:
| That's the approach urbit has taken
| skissane wrote:
| > I wish there was a nice wrapper dedicated to abstracting
| hardware support better so developers can focus on the
| interesting parts
|
| The University of Utah had a research project back in the late
| 1990s which offered exactly that - the OSKit project [0]. A set
| of libraries for common (at the time) x86 hardware so OS
| developers and researchers could focus on what was original
| about their OS instead of writing yet another hard disk or
| Ethernet driver
|
| Unfortunately, the research project ended circa 2000 and it is
| dead now. No support for contemporary devices like Wifi and
| USB. But, if you just want something to run in a VM (QEMU or
| VirtualBox or whatever) it probably still works.
|
| [0] https://www.cs.utah.edu/flux/oskit/
___________________________________________________________________
(page generated 2021-01-24 23:00 UTC)