[UPDATE: It looks as though the name JayOS is already taken. Now time to find a new name =P]
Okay, I just did some chatting with Blogus Maximus and I've gotten back into the mood to write on this blog (for the time being at least). I've been too much of a lazy bastard lately. Of course, I'm just the kind of person who likes to go in his cave and not interact with the rest of the world. So having me blog in the first place is its own sort of Christmas-day Miracle (except for the fact that it's neither Christmas or a real Miracle).
So, what have I been up to? Well, I'm finally starting to settle into my new position at work. It's a bit daunting at times to be in charge of a team. I know it's helped me identify some problems I have and some short comings I need to make up for as a leader. Other than that, my personal projects have largely been World of Warcraft and my current "baby" project.
Before I talk about my new baby, I should confess (as if you don't already know) that I don't exactly follow through on private projects. Following through at work isn't a problem, but I get passionate about something at home and then when the passion goes away, I move on to my "next thing." Instead of getting down on myself for that, I'm just going to say screw it and do it. I don't care what any of you think (of course, I'm just kidding there because I love every single one of you (except maybe *one* person out there (yeah, you know who you are (or perhaps you don't since I'm just making that up in the first place)))).
So, my new baby is JayOS. I've been wanting to get into low-level programming for quite a while. Some may think I'm simply torturing myself (especially those who *had* to do it for work in the past) but I find it is something that I enjoy. I enjoy knowing how something works and why. In that sense, I have gotten into Operating System development lately. It's certainly forced me to learn about how the BIOS works and to learn pedal-to-the-metal assembly programming. So far I have my own bootloader that actually loads the kernel I wrote in C. Of course, the kernel just prints "Welcome to JayOS" to the screen, but it's certainly a start. You don't realize how much you don't know until you start trying to do these kinds of things, that's for sure.
I think the first time I realized what I got myself into when starting JayOS was when I started writing the Kernel. Since the kernel was in C, I went to write "malloc" and then I realized there IS NO malloc. Since malloc is part of the runtime library, and since I'm writing my own OS, there is no malloc :). So, I had to write my own routine to allocate memory. Of course this has lead me down the road to investigate all sorts of memory management schemes. Oh boy, was that a never-ending rabbit hole. And that was simply one rabbit-hole of many when it comes to OS development. I've enjoyed it though :).
Anyways, that's what I, your most favorite and endearing slacker, have been up to lately. Ciao!