xen,bproc and grub

Adam Sulmicki adam at cfar.umd.edu
Mon Nov 1 16:09:00 CET 2004

	I have recently ported bproc [1] which part of clustermatic [2]
suite to xen-2.0 [3] to run on domain0. It was pretty straightforward,
that it required few trival hacks to the kernel, few sym-links and
remembering to use "ARCH=xen" whenever appropriate.

However, clustermatic does use linuxbios on its nodes for booting and does
not use traditional bios at all. This means that the grub (with its
multiboot support) with its heavy dependencies on PC-BIOS Is out of

Thus I'm trying to figure out how I could boot xen/linux- duo
on nodes. Are there any other options to boot it besides using grub[4][5]?
and preferably does not rquire multiboot [6].

I figure out I that maybe could load xen.gz [7] using FILO, Kexec, or
maybe etherboot but it still would not load linux kernel in turn (because
of the dependency on multiboot).

Anyone knows what are my options here? Ideas?

[1] http://bproc.sourceforge.net/
[2] http://www.clustermatic.org/
[3] http://www.cl.cam.ac.uk/Research/SRG/netos/xen/
[4] grub configuration file entry for xen

	title Xen 2.0 / XenLinux
	    kernel (hd0,0)/boot/xen.gz dom0_mem=65536
	    module (hd0,0)/boot/vmlinuz- root=/dev/hda1

[5] grub-multiboot, from info page

 - Command: module file ...
     Load a boot module FILE for a Multiboot format boot image (no
     interpretation of the file contents are made, so the user of this
     command must know what the kernel in question expects). The rest
     of the line is passed as the "module command-line", like the
     `kernel' command. You must load a Multiboot kernel image before
     loading any module. See also *Note modulenounzip::.

[6] http://www.gnu.org/software/grub/manual/multiboot/multiboot.html
    does anyone knows better references to multiboot specs?

[7] /boot/xen.gz

redbull:/etc/clustermatic # file /boot/xen.gz
/boot/xen.gz: gzip compressed data, from Unix, max compression

redbull:/etc/clustermatic # file /tmp/xen
/tmp/xen: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, stripped

redbull:/etc/clustermatic # readelf -a /tmp/xen
ELF Header:
  Magic:   7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF32
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Intel 80386
  Version:                           0x1
  Entry point address:               0x100000
  Start of program headers:          52 (bytes into file)
  Start of section headers:          266608 (bytes into file)
  Flags:                             0x0
  Size of this header:               52 (bytes)
  Size of program headers:           32 (bytes)
  Number of program headers:         1
  Size of section headers:           40 (bytes)
  Number of section headers:         3
  Section header string table index: 2

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
  [ 0]                   NULL            00000000 000000 000000 00      0 0  0
  [ 1] .text             PROGBITS        00100000 000080 0410f0 00 WAX  0 0 64
  [ 2] .shstrtab         STRTAB          00000000 0411e8 000011 00      0 0  1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings)
  I (info), L (link order), G (group), x (unknown)
  O (extra OS processing required) o (OS specific), p (processor specific)

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000080 0x00100000 0x00100000 0x410f0 0x764c0 RWE 0x40

 Section to Segment mapping:
  Segment Sections...
   00     .text

There is no dynamic segment in this file.

There are no relocations in this file.

There are no unwind sections in this file.

No version information found in this file.
redbull:/etc/clustermatic #

More information about the coreboot mailing list