-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
I've been trying to explore programming bootloaders a bit. I've got an unorganized collection of resources and a bunch of test bootloader programs that are not documented.
I haven't figured out how to get gdb hooked so I'm just debugging with a print integer routine. That's annoying.
And writing to and reading from the bios video service (int 10h) in my text editor bootloader is pretty buggy. Randomly characters get overridden and it could be my code or register state I haven't reset but it's pretty hard to get right and understand the bios APIs.
I'm getting ready to give up than write anything about my bootloaders since their behavior is not always deterministic in more complex programs (boot4.asm is the complex text editor and sometimes when hitting backspace on the last column in a line the cursor sometimes freaks out trying to find the end of the previous line.)
https://github.com/eatonphil/bootloaders
My favourite way to add numbers, in assembly, was this project:
https://github.com/skx/math-compiler
I had far too much fun writing it, even though it is completely pointless!
I wasn't ready to share it yet, but here it goes[1]. It's at a very early stage, but should give you an idea of how to get things up and running under Nim.
I didn't avoid malloc. I provided a simple bump pointer based heap to get things going. Later I'll have to separate things into a UEFI bootloader and a proper kernel image, each with its own allocator (the bootloader will use UEFI memory allocation services, and the kernel will have its own heap).
[1] https://github.com/khaledh/axiom