mlibc
kush-os
mlibc | kush-os | |
---|---|---|
4 | 2 | |
763 | 14 | |
2.5% | - | |
9.6 | 0.0 | |
12 days ago | over 1 year ago | |
C | C | |
GNU General Public License v3.0 or later | ISC 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.
mlibc
- Mlibc: A portable C standard library
-
RTOS vs Standard Kernel for a first Hobby OS
A compiler and libc are entire projects in their own rights. For libc I can recommend mlibc (https://github.com/managarm/mlibc), its designed to be portable for hobby operating systems.
- Mlibc: Portable C Standard Library
-
It Can Happen to You (another case of O(n^2) sscanf parsing)
You don't, here is a (not entirely complete) scanf implementation that doesn't use strlen. Other libc implementations seem to use strlen to feed the input data to a FILE struct so they can reuse their fscanf.
kush-os
-
could I write an entire operating system in assembly and C++?
It’s very much doable; I did exactly this with an OS I worked on last year. This takes advantage of many modern C++20 features, most of which work just fine in a bare metal environment. As others have said, you’ll have to disable runtime features like exceptions and RTTI in your kernel. A lot of it is really hacky, but this was just meant to be a proof of concept project that got a little out of hand :)
-
Why is my AHCI PI register set to eight 1s if I only have two devices on the AHCI?
I’ve written an AHCI driver for my OS which I’ve tested works on a few VM platforms and real hardware. I’m not actively working on this project anymore due to my current job, but maybe it can be a useful reference for you.
What are some alternatives?
asmjit - Low-latency machine code generation
website - The Haiku website. (Pull requests are accepted; please file issues at https://dev.haiku-os.org).
managarm - Pragmatic microkernel-based OS with fully asynchronous I/O
waifuos - Enhance your computing experience with some waifus
uClibc - uClibc
emerald - An operating system written in C
libtcod - A collection of tools and algorithms for developing traditional roguelikes. Such as field-of-view, pathfinding, and a tile-based terminal emulator.
brutal - 🏢 An operating system inspired by brutalist design that combines the ideals of UNIX from the 1970s with modern technology and engineering
ChakraCore - ChakraCore is an open source Javascript engine with a C API.
toaruos - A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.