top | item 38852616

(no title)

dottedmag | 2 years ago

Syscalls are easy. Drivers will be tough.

discuss

order

_flux|2 years ago

Great number of Linux hosts run in virtual machines, reducing the number of different devices drivers for that purpose.

For running on bare iron.. I suppose there's no short-term solution for that.

alkonaut|2 years ago

Drivers are difficult if you need to support lots of them. If you pick just one or a few pieces of hardware then it should be fairly straightforward. Target VMs only for example and you probably cut away 99% of the driver complexity.

weinzierl|2 years ago

Drivers are the tough part and the lack of a stable interface in Linux makes them hard to reuse.

llenotre|2 years ago

There have been attempts to create kernel-agnostic interfaces for drivers such as: https://en.wikipedia.org/wiki/Uniform_Driver_Interface

For my case, I am planning to re-implement them. I like doing this.

I sure am not going to be able to re-implement everything myself though. I will concentrate on what I need, and I will consider implementing others if anyone else other than me is willing to use the OS (which would be incredible if it happened)

yjftsjthsd-h|2 years ago

Doesn't FreeBSD borrow graphics drivers from Linux? If I'm remembering that right, it can't be quite that bad.

rhabarba|2 years ago

People who want stable interfaces should not touch anything Linux with a ten-foot pole.

notfed|2 years ago

Aren't most drivers kernel modules? In theory, the goal to aim for is that Maestro is able to compatibly load C Linux kernel modules. Then, whether or not the driver module is written in C or Rust is orthogonal to which kernel is used.

(Just bs'ing here, haven't written drivers in over a decade. What other complexity am I missing?)