
Originally Posted by
ɑrtemis
Right now I'm working on the monitor part of the kernel in 32 bit C. I made a bad habit by being so dependent on bios and dos interrupts for everything, but I guess it's time to break old habits.
That probably isn't a great idea. Graphics are _literally_ the last part of your OS, and depending on the kernel architecture you're going for, it probably isn't even going to be apart of your kernel. (I.e, it will probably be a driver). It is possible to start with the graphics etc, but you will probably be reinventing the wheel about a dozen times if you work your way from the top to the bottom.
A kernel dev. team I know went straight to FS development and they have tons of redundancies in their code because of it (i.e, they didn't have a memory manager or suballocator that did x, so the reimplemented 'x' in their display driver)
The order of focus for you IMO should be:
Setup your Interrupt Service Routines (at least a template) for devices such as the keyboard & Programmable Interrupts Controller (You'll use it in the near future)
Memory Manager (Virtual Memory, either paged or segmented [I would go with paged])
Multi-threading
Virtual File-System
Executable image format and an executable image loader.
Some filesystem driver that can be mounted on your VFS
Finish up memory paging by implementing the ability to cache memory pages onto disk.
I probably missed a couple of steps, but once you get that done, you have a kernel that is ready for things like graphics drivers and GUI management.