[Prev][Next][Index][Thread]

Re: more newbie questions...



Lo and Behold, Groman said:
> Hi...sorry for bothering you...but I have several more questions:
> 1) Since floppy driver is not implemented,  how would I go about
> doing this stuff myself, I need to be able to write/read ext2fs
> from the floppy. Of course, I can just read the whole floppy directly
> into memory, but then I won't be able to use OSkit's file system
> libraries, right?

  Right.  You'd need to write or port a floppy driver to the OSkit
framework.  Some suitable candidates would (obviously) be the FreeBSD,
NetBSD, or Linux floppy drivers.  Be warned - it could be a pretty
messy thing to do.

> 2) When any initilization is called there is whole bunch of stuff
> displayed on stdout, about probing etc. is there a way to buffer that in
> a pointer, but not display it, cause I am really unable to read what had
> scrolled upwards.

  All output is eventually pushed through the 'putchar' interface, so
if you wanted to modify it to buffer instead, you could do so there.
There isn't a flag or anything you can set, however.

  The easiest solution to this, however, is to use the serial console
if possible.  Then you can have as big a scrollback buffer as you want 
(we log the serial output to a file as well, so we can peruse it at
leisure).

> 3) Why OSkit's kernels are so huge? the linux fs read sample kernel is
> like almost a meg in size, even after stripping it. If I want to be able
> to make full featured bootable floppies for my system. it's just if I
> add
> scheduling, shell, network drivers, and file system it would take 3
> floppies, that is really not good for me. A ny suggestions?

   If you're doing things like initializing the network, you can
oftentimes strip out many of the network drivers you don't need.
Ditto that for things like scsi drives, etc.  Don't compile with
--enable-debug, though you're probably avoiding this already.

   You may have seen how we provide a number of bootloader programs
off of our webpage, where you can pick the one with the right ethernet 
driver for your system.  Helps keep the size way down, and also speeds 
up booting by eliminating many of the probes.

> 4) Where can I find information on how exec loader libary loads the
> executables,  with what stack? where does it grow?
> etc.

   The basic answer is to look at the source, though I realize that's
not a particularly good answer. :)  Peek at exec/elf.c and
exec/x86/aout.c.  OSkit programs use the stack defined in
kern/x86/base_stack.S, and it never grows.  (Moral of the story:
Don't overflow your stack).

   I may have missed part of your question.  Let me know.

> 5) not a question but a suggestion, I think OS-Kit documentation should
> have more numbers, less theory...

   Er, could you elaborate on what you mean?  Do you mean more of a
cookbook style, explaining how to build things?

   -Dave

-- 
work: danderse@cs.utah.edu                     me:  angio@pobox.com
      University of Utah CS Department         http://www.angio.net/
   "If you haul a geek up a crack, you will bloody their fingers for a day...
    If you teach a geek to climb, you will bloody their fingers for life."

Follow-Ups: References: