Page 1 of 1

MSVC LibC

Posted: Tue Apr 20, 2010 9:44 pm
by clwillingham
Hello, i'm the annoying guy who goes around asking newb questions while starting enormous project thats way to big for him to manage. so heres another newb question:

i am trying to make an OS using MSVC 2010. i succeeded in building a working kernel that can print text and stuff but, thats just about it right now. so i got a few questions on where to go now. my first question is: what next?, i have enough code to print about 500 chars on the screen but thats it. no input system or VGA system. so my next goal is to be able to implement a LibC so that i can actually write some usefull code for the system, but what Libc will compile in MSVC? is there anyway to make newlib compile in MSVC?

my final goal for the OS is to have a working system with a console which i can navigate through a file system. what would be really nice would be if i could also implement some sort of scripting engine as well and finish off the OS in something like python.

Re: MSVC LibC

Posted: Tue Apr 20, 2010 10:36 pm
by lemonyii
i succeeded in building a working kernel that can print text and stuff but, thats just about it right now.
what does this mean? even a boot loader can do this, and even my kernel with nearly 10,000 lines of code can do not much more.
i think the next step is to build some models like system,process and memory management and design standard interface for them.then can you impliment the file system and add more drivers for it. of course, you should take long time to come over the sti step. i think these are enough to keep you busy for nearly half a year, unless you do nothing else.
as to the libc, consider it later. only when you have a comlete can you write it without change it frenquently.

Cheers!

Re: MSVC LibC

Posted: Wed Apr 21, 2010 4:51 am
by NickJohnson
Well, if you don't have paging or multitasking working yet, you need to do that first before you can make anything interesting work.

Beyond that, it depends on the architecture of your OS. If you're building a monolithic kernel, you probably want to write a disk and filesystem driver, as well as an executable loader, so you can start loading programs. If you're building a microkernel, you want to get a good IPC method working and then do the disk/filesystem stuff in userspace. Then you can port a libc and python and other stuff.