Live data from Hacker News

Maestro: A Linux-compatible kernel in Rust

blog.lenot.re

311–320 of 380 posts

Re: Maestro: A Linux-compatible kernel in Rust

#311

Earlier quoted context omitted.

Are you proposing a kernel that would only run on risc-v hardware, or expecting that people would run some kind of emulator? ....or do you think that because RISC-V is "standard", assembly for RISC-V would run on any hardware?

The "right way" would be CPU vendors to support that standard. But I have thought about running a 64bits RISC-V interpreter on x86_64 (Mr Bellard, ffmpeg, tinycc, etc, wrote a risc-v emulator which could be as a based for that), and that in the kernel. Basically, you would have RISC-V assembly for x86_64 arch: at least, RISC-V here would be stellar more robust and stable that all the features creeps we have in the li…

So the "right way" is to replace all hardware with new hardware, and the second-best solution is for CISC systems to emulate a specific RISC architecture? And you think this will be more maintainable, performant, etc? Do you have even a shred of evidence that this makes any sense at all, beyond "RISC is a good standard"?

Re: Maestro: A Linux-compatible kernel in Rust

#312
post #266
post #235

Earlier quoted context omitted.

It already exists: SELinux or AppArmor. They build on infrastructure that allows implementing other solutions to that effect. However, on a typical system there is so much going on that this is unlikely to be of much use to anybody not willing to just spend their time reviewing arcane internals of their applications. The above does not how I'd want to spend my day at the computer. Android and iOS presents a middle gr…

Thanks for your comment. SELinux and AppArmour don't do exactly what I commenting, those tools are more or less homologous to create users with different permissions for each application. RSBAC kernel extension would get closer, but not enough. I really consider a need the system I commented, remarking process injections active supervision and internet access control, so I've been searching along one year or so for i…

SELinux precisely allows things like restricting applications to specific ports or specific files though. Pretty sure that it would also be possible to restrict internet access and things like that. What it needs is better UIs.

The potential for process injections is severely reduced by design on systems such as Android or when containerizing applications, for example with Flatpak. Modulo kernel bugs or being root, it's simply not possible to mess with the processes of another user.

Advanced desktop users have better things to do than reviewing security warnings all day long. I get paid to write code instead of investigating what my applications are doing.

Re: Maestro: A Linux-compatible kernel in Rust

#313

Earlier quoted context omitted.

It's not possible for me to say. Clearly you can only do worse in Rust than you'd have with perfect C. But what's that? The question is: what is the expected loss (time, bugs, exploits that lead to crashes or injury or death or financial catastrophe) with Rust vs other languages. Unfortunately that's not the conversation we have. We instead have absolutism re managed memory, which does account for about half of known…

> Clearly you can only do worse in Rust than you'd have with perfect C. Is this clear? Why would the best Rust be worse than the best C?

I assume parent probably meant that the worse you can do in rust (e.g use of unsafe... etc) would just put you back at C level of memory safety.

Re: Maestro: A Linux-compatible kernel in Rust

#315
post #310

Earlier quoted context omitted.

Weird to think there are now people so young in these types of discussions that wouldn't know about Slashdot.

I was only vaguely aware of Slashdot (and never had heard this effect referred to by that name), and at 30, I'm probably more than a decade older than at least someone in this thread. If you want "weird", think of the fact that a baby named after Hurricane Katrina would be old enough to vote in this year's US presidential election.

https://xkcd.com/1995/

Re: Maestro: A Linux-compatible kernel in Rust

#316

Earlier quoted context omitted.

For those who are wondering WTF is a Slashdot, and how does it effect websites. https://tech.slashdot.org/story/24/01/03/0017242/25-years-si... https://en.wikipedia.org/wiki/Slashdot_effect

Weird to think there are now people so young in these types of discussions that wouldn't know about Slashdot.

I get that all the time, as most of my collegues don't get jokes related to TV series that predate them.

I have learned to avoid such remarks, unless surrounded by 40y+ folks.

Re: Maestro: A Linux-compatible kernel in Rust

#317
post #82

Some words of encouragement in the sea of pessimism on HN which brought down the previous attempt at this [0]. Keep going, ignore the FUD and continue where others have left off. We need alternative and safer kernels, and attempts like this should be encouraged. Rust is suitable for that guarantee. Keep going. [0] https://news.ycombinator.com/item?id=28986377

It's great to see optimism on here, especially about people's personal open source projects! Cynicism is appropriate when talking about commercial and larger projects and news, but for people doing things for fun and in the open, I'd always choose the most charitable and uplifting thing to say.

About the content of your comment : IMO a true Linux replacement would also need to be gpl or otherwise strongly copyleft licensed. The fact that gpl has forced some corporations into co-operation who otherwise wouldn't have is worth a lot!

Re: Maestro: A Linux-compatible kernel in Rust

#318
post #269

What a cool little project. It's astonishing how far this can boot with less than a third of the syscalls of Linux implemented. However, my guess is that the ones that are missing are the more complicated ones. The TTY layer, for example, looks rather basic at the moment. Getting this right will probably be a lot of work. So don't hold your breath for Maestro running your Linux applications in the next 3 years or so…

> What a cool little project. It's astonishing how far this can boot with less than a third of the syscalls of Linux implemented. My hobby OS is more or less a FreeBSD compatible kernel for one specific language VM[1]; it looks like I support 61 syscalls out of 424, and it's been a while since I ran across one I missed (sometimes syscalls are only called in some code paths, or when I target a newer kernel, there may…

Got a github?

Re: Maestro: A Linux-compatible kernel in Rust

#319

Earlier quoted context omitted.

> There's no issue here Tell that to Microsoft. GPL protected Linux when Linux started to become a threat to the most powerful tech company on Earth of the time, famous for their "embrace and extend" tactic. Rust had no such problem, it was started by a company that every year takes hundreds of millions (81% of their revenues in 2022) from one of the most powerful tech companies on Earth.

I genuinely have no idea what your point is.

If I am contributing to a community project, made by the people for the people, GPL protects my work from being stolen by corporations that pack it up and sell it for a price.

GPL means you work on something and in return you get something from someone else that improved on your work, you can't keep any published change private.

GPL also means that if someone forks the original source code and makes substantial changes, the subsequent work must be licensed under the GPL (what MS called the "viral nature"), nobody can re-license it, unless all the other contributors agree to it.

GPL software cannot be acquired to kill it, like Google or Apple do all the time, or severely cripple it after the acquisition.

It's a form of social contact that guarantees that no one gets screwed or exploited.

It grows on users' needs not on VC growth needs.

That's how Linux got big.

BSD was already 20 years old when Linux started and yet BSD is nowhere near the popularity of Linux.

Re: Maestro: A Linux-compatible kernel in Rust

#320
Wow, i didn't think someone would be crazy enough to take on the ft_penguin project (is it still its name?). Really good job to be honest, when i was still at school (7 years ago now) i thought this was probably one of the project with the worse reward compared to the time needed.

Did you start the project with a friend at first (before the rust rewrite)? Did you work on other projects at the same time?

Looking up at your code, remembering how fun it was, i now kinda want to stop working in devops and start doing embedded or any low-level work like i intended to at first.

Post reply on HN