this post was submitted on 03 Jan 2024
354 points (96.8% liked)

Technology

59340 readers
5096 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each another!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, to ask if your bot can be added please contact us.
  9. Check for duplicates before posting, duplicates may be removed

Approved Bots


founded 1 year ago
MODERATORS
 

Enter Maestro, a unix-like monolithic kernel that aims to be compatible with Linux in order to ensure wide compatibility. Interestingly, it is written in Rust. It includes Solfége, a boot system and daemon manager, maestro-utils, which is a collection of system utility commands, and blimp, a package manager. According to Luc, it’s creator, the following third-party software has been tested and is working on the OS: musl (C standard library), bash, Some GNU coreutils commands such as ls, cat, mkdir, rm, rmdir, uname, whoami, etc… neofetch (a patched version, since the original neofetch does not know about the OS). If you want to test it out, fire up a VM with at least 1 GB of ram.

you are viewing a single comment's thread
view the rest of the comments
[–] just_another_person@lemmy.world -3 points 10 months ago (3 children)
[–] Contort3860@links.hackliberty.org 39 points 10 months ago* (last edited 10 months ago) (2 children)

Because someone decided to do it.

You don't always need a good reason other than it might be cool/fun. Sometimes it's just because you can.

You're not forced to use it, so if it's not your cup of tea, that's fine.

[–] Im_old@lemmy.world 22 points 10 months ago

When my wife asks me "why are you doing [insert weird thing of the moment in my homelab]?" most of the times I answer "because I can!".

[–] Im_old@lemmy.world 3 points 10 months ago (1 children)

When my wife asks me "why are you doing [insert weird thing of the moment in my homelab]?" most of the times I answer "because I can!".

[–] VicentAdultman@lemmy.world 16 points 10 months ago

He answers that in the project page. Just because there are kernels available, he can't build his own and learn about kernel and computers in general (the answer for your question)

[–] Limitless_screaming@kbin.social 5 points 10 months ago* (last edited 10 months ago) (1 children)
[–] just_another_person@lemmy.world 1 points 10 months ago (2 children)
[–] asdfasdfasdf@lemmy.world 4 points 10 months ago (1 children)

Contributing to Linux can be extremely daunting. Refactoring can be as well. Rust makes both of those a LOT easier. If a project is written in Rust instead of C there will be many more potential contributors and flexibility.

[–] Adanisi@lemmy.zip 1 points 10 months ago* (last edited 10 months ago)

And Rust has a restrictive trademark policy which could theoretically cause problems. Especially because of how full the source code of Rust is of the trademarks.

Just, why, Mozilla?

[–] leanleft@lemmy.ml 1 points 3 months ago* (last edited 3 months ago)

"In kernel development, debugging is very hard for several reasons:

  • Documentation is often hard to find, and BIOS implementations may be flawed (more often than you would think)
  • On boot, the kernel has full access to the memory and is allowed to write where it should not (its own code, for example)
  • Troubleshooting memory leaks is not easy. Tools such as valgrind cannot be used
  • gdb can be used with QEMU and VMWare, but the kernel may have a different behaviour when running on a different emulator or virtual machine. Also, those emulators may not support gdb (example VirtualBox)
  • Some features in the support for gdb in QEMU or VMWare are missing and gdb might even crash sometimes

All those issues are reasons for using a memory-safe language, to avoid them as much as possible.

Overall, the use of Rust in the kernel allowed for the implementation of a lot of safeguards. And I believe that it is, to this day, the best decision I have made for this project."