Hi,

I tried to boot gnumach (the microkernel used by the GNU/Hurd OS)
on plex86. It is a multiboot compliant kernel. I don't know what
the stack= argument means, so I copied the value that was used for all
other lines. The conf file I used and the output generated are attached.

It doesn't work yet, but maybe you can see something from the
output error. If you want a copy of the kernel to play with, let
me know and I will put it online (including source code).

GNUMach needs a module to hand control over to (as the Hurd
is a multiserver OS). Is module loading implemented?

Can't load-kernel find out which address to load a multiboot compliant
kernel to? I am sorry if this is a stupuid question, I am not that
familiar with the multiboot standard (I should probably read this up).

What is the correct conf file to attempt to boot a linux kernel?
I would like to try it out (for comparison).

BTW, I used the version from CVS today.

Thanks,
Marcus

-- 
`Rhubarb is no Egyptian god.' Debian http://www.debian.org Check Key server 
Marcus Brinkmann              GNU    http://www.gnu.org    for public PGP Key 
[EMAIL PROTECTED],     [EMAIL PROTECTED]    PGP Key ID 36E7CD09
http://homepage.ruhr-uni-bochum.de/Marcus.Brinkmann/       [EMAIL PROTECTED]
####################################################################
# This is an example plex86 configuration file
####################################################################



####################################################################
# Plugins
####################################################################

plugin = ./plugins/bochs/plugin-bochs.so
#plugin = ./plugins/ice/plugin-ice.so 3141


# Replay IO events from a previous run.  For now this let's us
# program the VGA adapter, without booting via the BIOS.
plugin = ./plugins/misc/replay_io.so file=../misc/vga_io.log

# The system BIOS doesn't have anything in it yet.
plugin = ./plugins/bios/load-rom.so \
    file=../bios/nullbios address=0xf0000

# The guest kernels
#plugin = ./plugins/bios/load-kernel.so \
#    file=../guest/test/kernel address=0x100000 stack=36864
#plugin = ./plugins/bios/load-kernel.so \
#    file=../guest/virtcode/virtcode address=0x100000 stack=36864
#plugin = ./plugins/bios/load-kernel.so \
#    file=../guest/preemptive/kernel address=0x100000 stack=36864
#plugin = ./plugins/bios/load-kernel.so \
#    file=../guest/cooperative/kernel address=0x100000 stack=36864
#plugin = ./plugins/bios/load-kernel.so \
#    file=../guest/paging/kernel address=0x100000 stack=36864

plugin = ./plugins/bios/load-kernel.so \
    file=/gnu/boot/gnumach address=0x100000 stack=36864


####################################################################
# Memory settings
####################################################################

# number of megabytes for vm
memory = 4


####################################################################
# Debugging settings
####################################################################

# syntax for disassembly
db_syntax = at&t


####################################################################
# VM tweaks            
####################################################################
  
# Maximum depth that the scan-before-execute code will try
# to recursively prescan code in the current code page, by
# following intra-page branches.
prescan_depth = 3


####################################################################
# end of config file
####################################################################

Processing command-line options
Processing configuration script plex86.conf
Opening VM (/dev/plex86)
Allocating 4MB of physical memory in VM
Setting prescan depth to 3
Mapping virtualized physical memory into monitor
Zeroing virtualized physical memory
Initializing plugins
bochs: ips = 1000000
bochs: font_width = 8
bochs: font_height = 16
bochs: default_depth = 16
bochs: waiting for MapNotify
bochs: MapNotify found.
bochs: vga: interval=10000
replaying IO events from log file '../misc/vga_io.log'.
bochs: vga: io write: 3cf: reg 05: value = 10h
bochs: vga: io write: 3da: ignoring: feature ctrl & vert sync
bochs: *** io read 3c5 case 1: sequencer clocking mode
bochs: vga: io write 3c0: address mode reg=16
bochs: vga: io write 3c0: address mode reg=17
bochs: vga: io write 3c0: address mode reg=18
bochs: vga: io write 3c0: address mode reg=19
bochs: vga: io write 3c0: address mode reg=20
bochs: *** io read 3c5 case 1: sequencer clocking mode
bochs: vga: io write: 3cf: reg 05: value = 10h
bochs: *** io read 3c5 case 1: sequencer clocking mode
load-kernel: loading guest code: /gnu/boot/gnumach (0x195524 bytes) (ELF)
load-kernel: This is a multiboot compliant kernel.
Running VM
Fatal monitor error caused Panic

Abort due to exception 13 at 0008:00150606

Register dump:
 CS:0008 SS:0010 DS:0010 ES:0010 FS:0010 GS:0010
 EAX:00000000 EBX:00000000 ECX:00000000 EDX:00000000
 ESI:00000000 EDI:002b8550 EBP:002a2e94 ESP:002a2e90 EFLAGS:00000006

Stack dump:
 002a2e90:  002a2ea4 002a2e9c 0014d3e8 002a2ea4
 002a2ea0:  0014d4b8 00000000 00100030 00000000
 002a2eb0:  00000000 00000000 00000000 00000000
 002a2ec0:  00000000 00000000 00000000 00000000

Current instruction:
 0008.00150606  FA                       cli    

Shutting down plugins
bochs: Note: X11: bx_gui_c::exit() not implemented yet.
Unmapping guest physical memory
Tearing down VM
Closing VM

Reply via email to