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