Announcement

Collapse
No announcement yet.

Rustboot: A 32-Bit Kernel Written In Rust

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Rustboot: A 32-Bit Kernel Written In Rust

    Phoronix: Rustboot: A 32-Bit Kernel Written In Rust

    Rust, the general purpose programming language developed by Mozilla for being a safe, concurrent, and practical language, can even be used to write a system kernel...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Developer from Mozilla considered to write Heka - a server software to collect data - in Rust. But they decided that this language was not ready yet, so developed it in Go instead

    https://blog.mozilla.org/services/20...roducing-heka/

    quote from a developer comment:
    @Mateusz: Yes, in fact, we did take a look at Rust. And, were Rust farther along, we might have ended up using it, it would be a good choice. But Rust is still evolving a bit too rapidly for production software, and the tools aren’t as developed. I think Rust is an exciting project with a lot to offer, but it’s not quite ready for most uses.
    I heard that Rust is quite complex already. For example it has four different types of pointers!

    other Rust programs:
    https://github.com/Jeaye/q3 - a Quake III clone in development
    https://github.com/pcwalton/sprocketnes - NES emulator
    Last edited by Fenrin; 27 May 2013, 01:42 PM.

    Comment


    • #3
      Think if someone made something like Emscripten for Rust.
      Or a source-to-source compiler that transcode from C to Rust.

      Then ported the Linux kernel to Rust...

      Comment


      • #4
        Originally posted by Fenrin View Post
        I heard that Rust is quite complex already. For example it has four different types of pointers!
        It doesn't have any more pointer types than C or C++, it just enforces memory safety so the different uses of a pointer are separated in the type system: ~ for an owned memory allocation, @ for a garbage collected allocation, & for references.

        Comment


        • #5
          Originally posted by uid313 View Post
          Then ported the Linux kernel to Rust...
          I would rather them port it to Intercal, PLEASE.

          Comment


          • #6
            Originally posted by Fenrin View Post
            I heard that Rust is quite complex already. For example it has four different types of pointers!

            other Rust programs:
            https://github.com/Jeaye/q3 - a Quake III clone in development
            https://github.com/pcwalton/sprocketnes - NES emulator
            Also worth nothing is angolmois-rust, which is a direct port of a C program.

            Anyway, it does have four pointer types, raw pointers, and 3 types of safe/smart pointers. They correspond to unique_ptr, shared_ptr, and (I think) auto_ptr from the STL, but without any runtime overhead (except for @-ptrs). Having these pointer types baked into the language enables rust's main feature: safety at a low cost. That cost is effectively

            It's possible to write code that looks (and performs) much like C just using raw pointers and unsafe code. In some cases it's actually better because Rust does some aliasing analysis, which lets LLVM generate better code.

            Comment


            • #7
              Originally posted by TheBlackCat View Post
              I would rather them port it to Intercal, PLEASE.
              +1. Why didn't Intercal ever take off is beyond me.

              Comment


              • #8
                Rust has been around for a few years now
                Not in any usable form, if I understand correctly. It's now at 0.6 but 0.4 was only released last October.

                Comment

                Working...
                X