axiom-zig
littleosbook
axiom-zig | littleosbook | |
---|---|---|
3 | 20 | |
5 | 2,165 | |
- | 0.0% | |
1.8 | 0.0 | |
over 2 years ago | about 1 year ago | |
Zig | CSS | |
- | - |
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.
axiom-zig
-
Zig, Rust, and Other Languages
Nim is also a strong player as a systems programming language. In terms of memory management, it's configurable, and by default you get ARC (no GC). I've written a hobby kernel (if you can call it that) in Nim[1] as well as Zig[2], and I found Nim to be much more ergonomic and approachable. The fact that Zig requires weaving an allocator through most calls that may allocate gets in the way of what I'm trying to do. I'd rather focus on core logic and have ref counting take care of dropping memory when appropriate.
One thing I wish Nim had though is true sum types with payloads. I think there's an RFC for that, but it's a shame it's not in the language yet.
[1] https://github.com/khaledh/axiom
[2] https://github.com/khaledh/axiom-zig
- Nim v2.0 Released
-
Writing a Simple Operating System – From Scratch [pdf]
If anyone is interested, I have a couple of implementations of booting under UEFI and getting a bunch of info about the system (don't expect a functioning system, they just boot and dump some info):
Nim: https://github.com/khaledh/axiom
Zig: https://github.com/khaledh/axiom-zig (this one goes into depth in disassembling ACPI DSDT bytecode)
littleosbook
-
Ask HN: Where can I find a primer on how computers boot?
Can't remember if it covers more practical stuff like GRUB but I really like https://littleosbook.github.io/
-
why if python is turing complete that means that everything can be created in it, but nobody decides to create things like OS, game engines and compilers and even if they do they use dozens of libraries and frameworks that are writen in languages like C, C++ or maybe Rust, why it is so?
A good place to start learning about OS programming is https://littleosbook.github.io/
- Ask HN: Where to start writing a toy OS?
- The little book about OS development
-
Hacker News top posts: Jul 20, 2022
Little book about OS development\ (15 comments)
-
Issues with interrupts that push error codes
using combination of https://littleosbook.github.io/ and https://github.com/cfenollosa/os-tutorial
-
Writing a Simple Operating System – From Scratch [pdf]
I also found "The little book about OS development" useful.
https://littleosbook.github.io/
-
What should I know for this task? (OS+TCP) + questions after googling
So a non 9p disk is more work than getting TCP? (UDP is my first goal but before that I'll read https://littleosbook.github.io/)
-
Interested in OS Dev + Systems Programming; Don't want to get overwhelmed
Knowing all this, you are ready to follow this operating system development tutorial: https://littleosbook.github.io/
What are some alternatives?
axiom - A 64-bit kernel implemented in Nim
os-tutorial - How to create an OS from scratch
linux - Linux kernel source tree
guide - The official guide for discord.js, created and maintained by core members of its community.
builder-hex0 - Builder-Hex0 is a minimal build system which includes a bootloader, kernel, shell, and a hex0 compiler
uefi-rs - Rust wrapper for UEFI.
Crafting Interpreters - Repository for the book "Crafting Interpreters"
v - Write Nim only with 'v'
the-super-tiny-interpreter - Let's explain what a closure is by writing a JavaScript interpreter in JavaScript.
nimbus-eth2 - Nim implementation of the Ethereum Beacon Chain
the-super-tiny-compiler - :snowman: Possibly the smallest compiler ever