Page 1 of 2
Small OS plan, need some guide lines
Posted: Thu Jun 30, 2005 3:10 pm
by Supermonkey
Hi all,
I'm new to OS programming and have managed to put together a simple boot loader and kernel, which is booted from a floppy. The kernel currently takes 3 commands off the user via the keyboard, which are cls (clear screen), help and exit. I need to know really where to go now? I realise this must have been asked 20,000 times, I attempted to perform a search, read FAQ's etc but I'd like just a simple straight up list of what I can do next.
I'm not a stupid newbie(well I am sorta), and I'm not attempting tocreate the next windows. I'm just playing around and trying to expand my knowledge and really I would just like a simple command driven OS which can execute some kind of programs created by the user(me).
Any advice/help is much appreciated,
Jonny
Re:Small OS plan, need some guide lines
Posted: Thu Jun 30, 2005 3:31 pm
by kerim
If you haven't written video and keyboard drivers, then you should do it next. Then, you should choose a file system to support, and make a driver for it, and then think about what kind of memory management you're going to use, and then implement it.
Re:Small OS plan, need some guide lines
Posted: Thu Jun 30, 2005 4:58 pm
by Supermonkey
Cheers for the help, I'm about to redo the kernel in C and have found a few bits on keyboard drivers, so I should be sorted there! I'll report back when I have that done.
cheers again
Jonny
Re:Small OS plan, need some guide lines
Posted: Thu Jun 30, 2005 5:04 pm
by GLneo
are you in pmode or realmode?
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 3:31 am
by Pype.Clicker
maybe the
FAQ could help you ...
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 9:12 am
by Tora OS
OS Dev is very difficult and quite frustrating at times.
My Guidelines are:
-Have fun with it
-Dont expect to make something as great as MS-DOS 6.22 (if you are building a command line os) in just a few weeks.
errr...i had a list of these someplace..
My Design Guidelines are:
-PMODE, REAL MODE, or unReal Mode
-What kind of kernel (monolithic, etc.)
-Kind of media supported (FD, CD, HD, USB Drives, etc.)
-Kind of drivers you want (KBD, Mouse, VGA, etc.)
-GUI or Command Line or both
-Vitural Consoles if command line (or maybe a vitural console with GUI too...that would be cool)
-Fault Protection (just kill the app? kill the whole system?)
-Memory Management (stick to the 640 conventional ram or go beyond, and how to organize the ram)
-Console size (80x25, 80x50, etc.)
-Screen Size (if gui...640x480, 800x600, etc)
-C or ASM or both
-FAT12 support? Other FS support?
-command line part of kernel or is it an app?
what am i missing....i know im missing something......pretty good for just making it up on the fly though.
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 9:25 am
by Pype.Clicker
So you seem to be more the
Lino Commando type of guy.
If i can afford a suggestion :
- forget about realmode
- let applications access as much memory as you can. There's no point in making systems limited to 640KB on machines having 256MB of ram ...
- try to propose programming interfaces that make the application ignorant of the actual size of the screen, fonts, etc. (really)
That should avoid you further frustration (you might like to do realmode OS, and you might later thing that "really, pmode is what you need". But i don't think you'll ever think that "really, i should have stuck to realmode. pmode is definitely just crap")
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 10:22 am
by Supermonkey
I'm definatly doing it just to have fun, and I will be definatly taking it slow because I have another much more important project in development.
The C kernel I'm writing will be in protected mode and my first step is to just get to keyboard interrupts, I'll then sit back and take it from there......After all wheres the need to rush! ;D
Cheers for the advice
Jonny
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 11:04 am
by Tora OS
Supermonkey wrote:
I'm definatly doing it just to have fun, and I will be definatly taking it slow because I have another much more important project in development.
The C kernel I'm writing will be in protected mode and my first step is to just get to keyboard interrupts, I'll then sit back and take it from there......After all wheres the need to rush! ;D
Cheers for the advice
Jonny
dont forget to remap the IRQ's first, like I did. Otherwise you will get a Double Fault Protection everytime the timer irq fires (IRQ0)
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 12:46 pm
by Supermonkey
dont forget to remap the IRQ's first, like I did. Otherwise you will get a Double Fault Protection everytime the timer irq fires (IRQ0)
Yeh I read some where about that. I was wondering, what C compiler is suitable? is lcc any good? I have never used C before, only C++ but most seem to use C for OS design so i thought I would aswell.
cheers
Jonny
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 12:48 pm
by Tora OS
I use GCC in DJGPP for Windows. It works nicely.
For ASM I use NASM
For linking i use LD.
I have never tried any other compilers out before so I really do not know if there are better ones out there.
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 1:21 pm
by Supermonkey
Ok cheers, well while doing a bit of research I've come accross some C++ based kernel code and a few functions for C++ so I may have a go at a C++ kernel, especially since I'm used to C++.
We'll see how it goes
Jonny
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 1:29 pm
by mar-rih
I advise you to use Linux Os and its GCC compiler.
djgpp is not enouph for making OS and as example look at this artical for begginer devolopers OSs, its nice and good artical for beginner but it does't work on cygwin.
the artical
http://www.osdever.net/bkerndev/index.php?the_id=90
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 1:38 pm
by Supermonkey
That site looks excellent, cheers! I hadn't come across this. I have major reading to do.
cheers
Jonny
Re:Small OS plan, need some guide lines
Posted: Fri Jul 01, 2005 2:28 pm
by Tora OS
mar-rih wrote:
I advise you to use Linux Os and its GCC compiler.
dgjpp is not enouph for making OS
any reason why?
that article says for compilers: - DJGPP (GCC for DOS/Windoows)