Kernel Development Guide
mkvol -- make new CapROS volume
mkvol [-b bootstrap_image] [-k kernel_image] volmap volume
The mkvol creates a new CapROS volume and formats the divisions on that volume. It optionally places a bootstrap image and kernel image on that volume at format time. Either can be altered with the setvol utility at a later time.
The volume can be, for example, a partition on a hard disk, a floppy disk, or a normal file that is later copied to a partition or disk.
Most of the input to mkvol comes from the volmap file, which describes the layout of the volume to be created. Entries in the volmap file appear one per line. All characters on a line following a '#' character are treated as comments.
Each line in the volmap file describes a division to be added to the volume, or an attribute to be set in the volume header. A single volume may contain up to 64 divisions.
Spare divisions are not used by CapROS, because both (E)IDE and SCSI drive technologies provide automatic sector remapping.
There is no provision for explicitly adding a boot division. Because the volume header resides in the boot division, the presence of a boot division is not optional. The first division is always the boot division.
The second division is always the DivisionTable division.
There is no provision for specifying the name of the bootstrap image file within the volmap file, because the approprite binary for the bootstrap image is media-dependent.
A random, hopefully unique, iplSysId is written. There is no provision for specifying the iplSysId. If you want to format a disk to add to an existing system, use lsvol on the existing boot volume to determine the desired iplSysId, use mkvol to format the new disk, and then use setvol to set the iplSysId of the new disk.
|Copyright 1998 by Jonathan Shapiro, 2005, 2008 by Strawberry Development Group. All rights reserved. For terms of redistribution, see the GNU General Public License This material is based upon work supported by the US Defense Advanced Research Projects Agency under Contract No. W31P4Q-07-C-0070. Approved for public release, distribution unlimited.|