genode
brutal
Our great sponsors
genode | brutal | |
---|---|---|
14 | 10 | |
8 | 1,032 | |
- | 0.6% | |
0.0 | 5.2 | |
7 days ago | 8 months ago | |
C | C | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
genode
-
Design, Implementation and Evaluation of the SeL4 Device Driver Framework [pdf]
seL4 foundation members[0] are using it.
There's Genode[1], which supports it among other kernels, offering a fancy desktop environment.
However, efforts like this driver framework do help. There's also Makatea[2], an effort to implement a stronger Qubes-like system based on seL4.
0. https://sel4.systems/Foundation/Membership/
1. https://genode.org/
2. https://trustworthy.systems/projects/makatea/
-
eBPF Documentary
> While this is true from a certain perspective, machine code creates a system which must grand access to many things to become usable. A shared file system is a good example of this. Some software could easily echo a line into you .profile that tries to launch a key-logger, and this works in many cases.
That's common, but it's certainly not a requirement to run native code. For example, we've done a pretty good job at retroactively fixing that while preserving backwards compatibility with containers (I can, and have run normal official Firefox binaries inside a docker container with zero access to my real home directory) or sandboxes like flatpak (bubblewrap). If you want to run real native binaries but don't have to preserve backwards compatibility, then it gets easy; genode ( https://genode.org/ ) does a lovely job of truly practicing only giving programs what access you want to give them.
> The expectation of software existing as opaque files creates a huge amount of work for the OS in verifying the exact behaviour of the software as it runs (and in ways which can often be circumvented), rather than a source-based approach in which malware is never allowed to touch the processor.
I think you're overoptimistic regarding what you can do with the source code short of manual (human) auditing. I mean, sure there are things you can scan for to try and catch bad behavior, but in the case of actual malice I wouldn't trust automatic code analysis to protect me.
>> I'm typing this on a nice comfy GNU/Linux box where the only blobs are some firmware
> So you suffer the worst of both worlds then. You've had to download and compile the source yourself, but as the software is designed around being distributed as blobs, so you enjoy none of the benefits that might come from source distribution.
I have no idea why you think either of those things? Depending on the distro I certainly can compile from source on my own box (ex. Gentoo, NixOS), but I can also use precompiled binaries (ex. Debian, NixOS) while still having it be trivial to go find the exact source that went in to the binary package I downloaded (this has gotten even stronger with Reproducibility efforts meaning that I can even verify the exact source and build config that created a specific binary). The actual application software and OS are available as Open Source code that can be audited, with binaries available as a convenience, and the only remaining blobs (unwelcome but impractical to fix so far) are firmware blobs with relatively constrained roles (and on machines with an IOMMU we can even enforce what access they have, which is a nice mitigation).
-
Showstopper: Nobody is writing new operating systems any more
Genode[1] is slowly approaching the point at which I can use it as a daily driver. I hope it makes it before Windows 10 goes away. It will be nice to never have to work about viruses, or spyware, etc., any more. It'll be like a trip back to the free spirited days of DOS and write protected floppy boot disks.
[1] https://genode.org/
- GNU/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way
-
Ask HN: How to get into OS/systems programming in 2023?
I'd dig into genode[1], which is a capability based operating system. You'll likely see an upsurge in interest in capability based systems in the next decade.
[1] https://genode.org/
-
Linux Kernel Ksmbd Use-After-Free Remote Code Execution Vulnerability
Yet another exploit that just wouldn't work on a well-designed system, such as Genode[0].
0. https://genode.org/
-
the maddening truth of using Qubes
Have you looked at Genode? I don't think it's usable day-to-day yet but the concepts seem interesting.
- The Helios Microkernel: Written in Hare
- We've started a RISC-V64 Microkernel OS Project called "Generisc". We're gonna redo eveything an OS is with the "end" goal of a fully fledged running web-browser. Anybody wanna come aboard. Support and ideas is enough. No need for coding if you don't have time, just interest and feedback is good
-
Anyone wanna join me in changing out the Linux kernel with seL4? Not running LFS inside a seL4 hypervisor, but actually a native seL4 OS.
Maybe you should go into details a bit more what you are planning and why. There are (and have been) several approaches here. The most prominent might be Genode (https://www.reddit.com/r/genode, https://genode.org) and joining forces there might be a better approach than starting another project that will get lost in the details and complexity eventually.
brutal
-
GNU/Hurd strikes back: How to use the legendary OS in a (somewhat) practical way
Even in the noncommercial world, Hurd's gone precisely nowhere. RedoxOS is a toy and had a GUI within a year or so. Brutal got in within two. SerenityOS not only built a GUI but the beginnings of the first greenfield web browser to gain any semblance of modern standards support in the past several decades. Honestly, what's Hurd doing wrong to flounder so hard?
[0] https://github.com/redox-os/redox/releases/tag/0.0.3
[1] https://github.com/brutal-org/brutal/releases
[2] https://serenityos.org/happy/1st/
- Brutal, an OS built on top of a capability based micro-kernel
- good and simple examples of microkernwl userspace drivers?
-
With the port to GTK 4 that will bring better performance, and extensions, Epiphany takes a big leap forward and becomes a viable option for many others.
Really glad you're so enthusiastic about Haiku, but I gotta let you know that you are vastly overestimating its scope. Either that or you're vastly underestimating a browser's, it could go either way. Anyone can make their own OS. Even one with a GUI. Now there's a project that can withstand infinite amounts of personal experimentation. There's Brutal, there's Serenity...
-
looking for a minimal os that has a minimal gui system just for learning purpose.
https://skiftos.org https://brutal.smnx.sh https://serenityos.org
-
Brutal OS reached milestone 4
Working on it https://github.com/brutal-org/brutal/tree/main/sources/libs/...
-
Beginner to OSDev looking for some advice
For file organization, my advice is to shuffle stuff around until it feels great to you. But if you need an example you can check out our OS source tree https://github.com/brutal-org/brutal/tree/main/sources Also, you can use any other build system for OSDEV there are no reasons to limit yourself to make. Cmake, Bazel, gn, meason, etc does work pretty well for OSDEV
-
Some black magic in Rust
Almost ! I convert Stivale2 structures to Handover's one (a protocol from https://github.com/brutal-org/brutal )
- What project can I do in the C programming language to get better at using pointers?
- For the past 5 days, u/TheMonax, u/ov3rl0w and I have been working on a new micro-kernel based operating system called BRUTAL. We already have implemented: PMM, VMM, SIMD, SMP, and much more !
What are some alternatives?
madaidans-insecurities.github.io
dom - DOM Standard
omnios-build - Build system for OmniOS
opuntiaOS - opuntiaOS - an operating system targeting x86, ARM and RISC-V.
Helios-NG - Breathing new live in Helios, an OS from the 90's
skift - 🥑 The delightful operating system.
systemd-for-administrators - A systemd-Handbook written by Lennart Poettering
emerald - A 2D rust game engine focused on portability.
qubes-app-linux-usb-proxy - USBIP over qrexec proxy
raspberry-pi-os - Learning operating system development using Linux kernel and Raspberry Pi
manjarno - Why you shouldn't use Manjaro
Odin - A simple CLI based Operating System