• patatahooligan@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    22 hours 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.