booting up (simple)

From: Brian Witt <bwitt_at_nospam.org>
Date: Fri Apr 30 1999 - 21:51:12 PDT

((Sorry this isn't VSTa specific, but I want to use VSTa code
  as a reference.))

I've been studying your 386 VSTa boot code, both 1.5.1 and 1.6.2 source.
I'm building a toy operating system to be used as the loader for an
undergrad OS course. (They currently use M68010 machines, the AT&T 3B1.
But they've broken down so many times, the techs refused to fix them.)
I want to develop completely under UNIX (HP-UX 10 and Solaris).

For the students I was thinking of writing a loader that would run
from MS-DOS. It would also provide ring 0 nano-kernel functions to
manage the descriptor tables. It would load the student's program
into memory starting at 1M (plus COFF header). Loader/nano-kernel
uses MS-DOS to read the OS file, and ROM BIOS to copy it into
>= 1Meg RAM (doesn't need to be fast). Later use FTP.

The main OS would run ring 1 with full I/O access. Requests for CR3
is nano-kernel territory. The nano-kernel and page tables stay
below 640K. Create a special segment just for video RAM.

Couple of questions....

(1) Do you really have to copy things down to location 0? For
 students using 16M RAM machines, they won't miss the lower 1M.

(2) Are there conventions for kernel segments. Otherwise I'll follow
 the FreeBSD processor-depend stuff.

(3) Next week I build my target '486 machine. I believe boot loaders
 and LILO are much work to interface with. Is this justified?

thanks for your time.

============
 brian witt (SJ2C6) bwitt@arch.sel.sony.com
 Sony US Research, Distributed Systems Lab, USA 408-955-3021
      "Capitalism has taken over at the expense of democracy."
Received on Fri Apr 30 20:48:22 1999

This archive was generated by hypermail 2.1.8 : Thu Sep 22 2005 - 15:12:56 PDT