view tools/misc/mbootpack/README @ 8740:3d7ea7972b39

Update patches for linux 2.6.15.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
author cl349@firebug.cl.cam.ac.uk
date Thu Feb 02 17:16:00 2006 +0000 (2006-02-02)
parents 445b12a7221a
line source
2 mbootpack
3 ---------
5 This is a utility to take a multiboot kernel and modules and repackage
6 them in a form that a standard linux bootloader will be able to load them.
7 It statically allocates memory addresses based on a 'standard' PC memory
8 layout, and then saves the image of the loaded system, along with an
9 almost-standard linux bzImage header which takes care of the start-of-day
10 requirements of a multiboot kernel (setting up 32-bit protected mode, etc.)
12 Example invocation, to package a xen VMM and xenlinux guest and initrd:
14 mbootpack -o bzImage -m ./xenlinux -m ./initrd.img ./xen-image
16 You can now boot the 'bzImage' file using your favourite linux bootloader.
18 The kernel command line will be provided at boot time by the bootloader
19 (you can specify a kernel command-line using the '-c' flag, but it will
20 be overridden at boot time unledd the bootloder provides an entirely
21 empty command line). If you wan to override the command line for the
22 first module (i.e. domain 0 kernel in Xen) at boot time, append ' -- '
23 and the module commadn line to the bootloader command line, e.g.:
25 boot: bzImage com1=9600,8n1 console=com1 dom0_mem=49152 -- root=/dev/sda3 ro console=ttyS0,9600n8
27 Everything before the '--' is passed to the kernel (xen) as its command
28 line; everything after is passed to the first module (xenlinux).
30 This is ALPHA code: there are execution paths which have *not* been
31 tested, though it works for loading the Xen hypervisor using GrUB, LILO
32 or SYSLINUX. Bug reports and patches are very welcome.
34 Possible features for future versions (all look possible, if there's any
35 demand for them):
37 - support for kernels that load below 1MB
38 - zImage-style compressed images
39 - sane error messgaes for insane load addresses
40 - support for the MULTIBOOT_VIDEO_MODE bit
41 - proper support for passing E820h memory-maps from bzImage
44 Tim Deegan <tjd21@cl.cam.ac.uk>, March 2005
48 License and attributions
49 ------------------------
51 The bzImage header block was originally taken from the Linux kernel.
52 http://www.kernel.org/
54 Some parts of the Multiboot loader code are based on GNU GRUB.
55 mb_info.h and mb_header.h are taken from GNU GRUB.
56 http://www.gnu.org/software/grub/
58 Bin2C was written by Nicolas Doualot; I tidied it a bit for a clean compile.
59 http://slubman.celeonet.fr/program.php?style=Default&project=bin2c
61 All other code is copyright (C) 2003-2005 Tim Deegan (tjd21@cl.cam.ac.uk)
63 mbootpack is distributed under the GNU General Public License: see "GPL"
65 This program is free software; you can redistribute it and/or modify
66 it under the terms of the GNU General Public License as published by
67 the Free Software Foundation; either version 2 of the License, or
68 (at your option) any later version.
70 This program is distributed in the hope that it will be useful,
71 but WITHOUT ANY WARRANTY; without even the implied warranty of
73 GNU General Public License for more details.
75 You should have received a copy of the GNU General Public License
76 along with this program; if not, write to the Free Software
77 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA