Maestro is a Unix-like kernel and operating system written from scratch in Rust
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.
This sounds cool, but troubling because of its license. Trying to write a linux compatible kernel and licensing as MIT is basically asking to get railroaded by gigantic organizations. I hope they reconsider in the future.
MIT is basically "do anything you want with it, I don't care". I means some company can reuse it in its closed source projects freely and without notice or royalty.
There are plenty of other licenses that require you to also go open source if you include and/or modify it. Basically "you can use ot however you want, but if you modify it, it has to be open source as well"
Ok, I'm out of the loop and I've seen this often enough that I have to ask; why do people always bring up "written in rust"? No one points out that a given project is written in C++/C#/python/ruby etc, yet we keep seeing it for rust.
If you want a real answer, it's mostly advocacy, the same reason Linux enthusiasts show up to every negative-sounding Windows thread to tell you to install Linux instead. And if it is less obnoxious, it's only because there's fewer Rust enthusiasts.
There are, also, advantages to a Rust implementation that you can claim simply by virtue of something being implemented in Rust, as entire categories of problem that cause C projects to hemorrhage security vulnerabilities simply don't exist for Rust.
But mostly it's people wanting you to be excited about and interested in Rust.
Programmers are hyped about Rust. It’s a programming language that has a legitimate chance to replace C and C++ for performance critical applications. So any new project in Rust increases the possibility of a future where C and C++ are programming languages of the past.
I've never used rust but as you say it really does seem like a good successor to c/c++. It's a modern, more memory safe programming language shat allows you to dig into the weeds if you need it.
Because rust is the modern low level systems language, which means it gotta go fast without all the freaking problems of the only other real alternative so far that was C. The languages you list don't even play in the same ballpark.
Honest question from someone using C++, though not for systems- or embedded stuff, just for object oriented models that gotta go fast: Why is C++ not in the same ballpark, and not an alternative?
Mentioning it's written in rust should imply this code base will have secure concurrency, better memory handling, be easier to extend, while maintaining near C++ performance. None of these are guarantees, but considering so many rust projects are "C/C++ programs, rewritten" it seems worth calling out as a differential. The language's advantages extending to the kernel make it an interesting project.
Yes they do? All the time? To the point where github has a bar on every project page showing what percentages of every project is written in which languages?
50MB for a sub POSIX kernel and a shell prompt for a 50MB ISO image that has less functionality than a 4KB kernel (L4SEC) which has actual formal proofs of correctness.
Well, I guess it has Rust as a selling point but that isn't something that should matter if the goal is real security.
I wouldn't take it so seriously, it's a passion project from a person learning about Rust and OS structure. Don't compare this project against industry professionals.
Whats the need for it? Another great operating systems engineer emerging from it even though the project itself might not be 'useful'. You only truly learn stuff when actively doing it.
One day he might be a significant contributor to Linux!
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)
You should’ve read the article, ”You should run the ISO with sufficient RAM (1GB should be more than enough). Such an amount of memory is required because packages to be installed are stored in RAM (on the initramsfs) instead of the disk. This is currently the best method since the OS is not yet able to read on a USB stick or CD-ROM by itself, so it relies on the bootloader for this.
”
I guess you could run on lower ram, but package installs require more.