Hi Peter,

Your method is great.
But I meet some problems.
The bootable usb works very well on laptop. But when I move to a large machine which has two sockets, and each socket has six cores(my laptop only has 2 cores), 
syslinux can only print out something like "loading kernel is ok", and after some seconds, the machine reboot.
It just keeps rebooting again and again.
I do not know why it is.
Is it possible for syslinyx to reboot the machine if I have some incorrect configuration of it?
Is it possible for the sel4 kernel to reboot the machine if it detects some error or I do not config sel4 correctly?
Does it need some special configuration for sel4 with a machine which has mult-sockets multi-cores? If so, how to do it?
Could anyone give me some hints?

Thank you very much.
Yuixn

On Thu, Sep 4, 2014 at 3:40 PM, Peter Chubb <peter.chubb@nicta.com.au> wrote:
>>>>> "Matthew" == Matthew Scaperoth <mscapero@gwu.edu> writes:


Matthew> I am at the George Washington University working on
Matthew> benchmarking the seL4 system. I am new to systems, and I am
Matthew> having a hard time building a bootable USB image On Ubuntu
Matthew> 14.04 x86. I understand that there is a Grub2 stanza on the
Matthew> Downloads page <https://sel4.systems/Download/> on the SeL4
Matthew> website, but I cannot find the sel4kernel and sel4rootserver
Matthew> files in the system to build into a boot image.

If you have built a seL4-based systemaccording to the instructions, the
kernel and root server are in .../images/  They have different names
according to what you've built.

For example, sel4test names the root server
sel4test-driver-image-ia32-pc99 and the kernel kernel-ia32-pc99

I generally use syslinux to create a bootable USB stick, as the grub
on my system wants to use EFI.

Like this, assuming your flash drive is at /dev/sdb with a FAT
partition at /dev/sdb1:

  install-mbr /dev/sdb
  syslinux --install /dev/sdb1
  mount /dev/sdb1 /mnt
  cp images/sel4test-driver-image-ia32-pc99 /mnt/rootserver
  cp images/kernel-ia32-pc99 /mnt/sel4kernel
  cat > /mnt/syslinux.cfg <<EOF
  SERIAL 0 115200
  DEFAULT seL4test
  LABEL seL4test
    kernel mboot.c32
    append sel4kernel --- rootserver
  EOF
  cp /usr/lib/syslinux/modules/bios/mboot.c32 /mnt
  cp /usr/lib/syslinux/modules/bios/libcom32.c32 /mnt
  umount /mnt

  use fdisk to make sure the first partition is bootable.

And you're done.  Output will come on the serial port


Hope this helps.
--
Dr Peter Chubb                                  peter.chubb AT nicta.com.au
http://www.ssrg.nicta.com.au          Software Systems Research Group/NICTA

_______________________________________________
Devel mailing list
Devel@sel4.systems
https://sel4.systems/lists/listinfo/devel