Page 1 of 1

nanOS (My Introduction)

Posted: Thu Aug 21, 2008 1:54 pm
by Shroomster
Not sure where one makes introductions around here, but I guess this is as good a place as any (just move this if I am mistaken). I am a second year CS student who is interested in Operating Systems and has a hobbie OS. It is named nanOS, which stands for "needs a name Operating System". It is currently at version 0.0.4 and is not much, with only a kernel. Here is a summary of what it is so far:

drivers:
  • console
    keyboard
    shell
    -- rudimentary, at best
    timer
kernel components:
  • global descriptor table
    interrupt descriptor table
    interrupt requests
    interrupt service requests
Image

I am currently working on a simple memory manager and a floppy driver. When it reaches 0.0.5, I will post a floppy image and probably the source (haven't decided). Any input would be helpful, as I am probably in way over my head :wink:. Which is to say if anyone wants to help out, that'd be cool too.

P.S. The drivers are part of the kernel right now, but eventually (after I have a memory manager and a file system driver) the rest of the drivers will be loaded by the kernel.

Re: An introduction...?

Posted: Thu Aug 21, 2008 2:46 pm
by 01000101
welcome!
You seem to have some of the basics down. Do you have a working memory manager yet?

Nice ASCII-art btw.

Re: An introduction...?

Posted: Thu Aug 21, 2008 6:10 pm
by Shroomster
Nope, not yet. That and a floppy device driver are next on my to-do list. Does anyone have any opinions about the easiest and simplest (yet solid) memory management scheme?

Re: An introduction...?

Posted: Thu Aug 21, 2008 6:59 pm
by Alboin
easiest and simplest (yet solid) memory management scheme?
mallocesque: dlmalloc, slab allocation
regional: linked list
physical: stack

Re: An introduction...?

Posted: Fri Aug 22, 2008 11:11 am
by Dex
01000101 wrote:Nice ASCII-art btw.
Its simple, you type your string in the box and click http://www.network-science.de/ascii/

And welcome to the forum, i have written a pmode floppy driver demo, let me know if you want to see it.

Re: An introduction...?

Posted: Fri Aug 22, 2008 6:43 pm
by Shroomster
@dex: Yea I would definitely like to see that. And yup, that was generated, I would never have the patience to do ascii art like that 8)

Re: An introduction...?

Posted: Fri Aug 22, 2008 8:07 pm
by Dex
Here you go http://www.dex4u.com/demos/FddDemo.zip
It boots, sets up basic GDT, IDT, A20, goes to pmode and than using the pmode floppy driver, loads the boot sector to screen. It includes full fasm code.

If you want just the driver here it is http://www.dex4u.com/demos/FloppyDriver.zip

Re: An introduction...?

Posted: Fri Aug 22, 2008 9:29 pm
by 01000101
Shroomster wrote:@dex: Yea I would definitely like to see that. And yup, that was generated, I would never have the patience to do ascii art like that 8)
lol, well it is cool anyway.

Re: An introduction...?

Posted: Sat Aug 23, 2008 12:16 am
by AndrewAPrice
Everyone likes ASCII art. I'm not very talented at it, but it's fun when you have some time.

You've inspired me to add some to my OS, but where could I actually display it? My window manager is initialised pretty early in the boot process. I guess as soon as it turns on, you have a 1 to 2 second wait as my MM initialised itself, followed by the drivers/servers loading, so I could place it there.

Re: An introduction...?

Posted: Sat Aug 23, 2008 6:38 am
by Dex

Re: An introduction...?

Posted: Sat Aug 23, 2008 10:14 am
by Shroomster
@MessiahAndrw: Yeah, that's where I put mine, but since there's no real wait (as I don't have anything big to load like a MM yet), I just have the timer wait for a second... Otherwise you'd never see the splash screen :P. Once there is one, I'll definitely get rid of the wait.

@Dex: Hmm.. That's food for thought.... I think I'll have to try that.

Re: nanOS (My Introduction)

Posted: Sun Aug 24, 2008 3:03 am
by AndrewAPrice
The problem with a splash screen is that in your debug build (yes, I'm using Visual Studio terminology here - in contrast with your release build which you publish) you'd usually want your startup to be as verbose as possible, so you can take note of any strange goings because you're guaranteed to have things in your bootup sequence which don't perform as they're suppose to.

Re: nanOS (My Introduction)

Posted: Sun Aug 24, 2008 9:04 am
by xyzzy
MessiahAndrw wrote:The problem with a splash screen is that in your debug build (yes, I'm using Visual Studio terminology here - in contrast with your release build which you publish) you'd usually want your startup to be as verbose as possible, so you can take note of any strange goings because you're guaranteed to have things in your bootup sequence which don't perform as they're suppose to.
Output verbose startup messages on a serial port?