• ferric_carcinization@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 day ago

    I remember there being a bit of talk around a Linux driver compatibility layer for Redox in the future, but I can’t find anything about it, so I could be misremembering.

    What do you mean by “C interoperability and a linux-like API”, exactly?

    1. C is pretty much the standard for FFI, you can use C libraries with Rust and Redox even has their own C standard library implementation.
    2. Linux does not have a stable kernel API as far as I know, only userspace API & ABI compatibility is guaranteed.
    • patatahooligan@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      1 day ago

      C is pretty much the standard for FFI, you can use C libraries with Rust and Redox even has their own C standard library implementation.

      Right, but I’m talking specifically about a kernel which supports building parts of it in C. Rust as a language supports this but you also have to set up all your processes (building, testing, doc generation) to work with a mixed code base. To be clear, I don’t image that this part is that hard. When I called this a “more ambitious” approach, I was mostly referring to the effort of maintaining forks of linux drivers and API compatibility.

      Linux does not have a stable kernel API as far as I know, only userspace API & ABI compatibility is guaranteed.

      Ugh, I forgot about that. I wonder how much effort it would be to keep up with the linux API changes. I guess it depends on how many linux drivers you would use, since you don’t need 100% API compatibility. You only need whatever is used by the drivers you care about.