Added CLib and Cross-Compiling
Changes
Either way, from the surface, lunux looks exactly the same, but its litterally anything but. Since the version of C we were using was freestanding, I had accsess to no libraries whatsoever, meaning that I couldnt even use printf(), So I had to create all of stdlib that was important FROM SCRATCH. Its embarrassing to think that up to this point, i actually wasn’t using a cross compiler until I literally had to. This thing was a marathon and I’m honestly amazed that I finished it. It taught me a lot about low level programming, alongside learning to be much more resourceful with no libraries, making me realize just how powerful C actually is.
Admission
Honestly, my motivation of the project was really going low around halfway into this. Although C is my “main language”, i dont consider myself a programmer, and I ran into so many troubles not having any tools by my side, but to be an engineer is to persevere, so I did that.
Next Steps
We need to get hardware interrupts back. As nice as it is to have Clib inside of lunux, we objectively cannot interact with the operating system at all. With hardware interrupts, we will be able to read data from the keyboard, mouse, and any other USB device. Overall, im feeling really optimistic!