[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] Printing a helloworld message on the screen
Hi, I would write a simple program for Xen which print I simple message on the screen. I wrote an assembler procedure to print an helloworld message: .text .globl _start _start: cld # from include/asm-xeno/hypervisor.h movl $2,%eax #__HYPERVISOR_console_write (include/asm-xeno/hypervisor- ifs/hypervisor- if.h) movl $hello_message,%ebx # arg1 = buffer virtual address movl $hello_message_len,%ecx # arg2 = buffer length int $0x82 # from include/asm-xeno/hypervisor.h movl $8,%eax # __HYPERVISOR_sched_op movl $1,%ebx # SCHEDOP_exit int $0x82 hang: jmp hang # shouldn't get here hello_message: .ascii "This is the hello world program\n" hello_message_len = . - hello_message The Xen loader also wants a 12-byte header on the image file. So I wrote a little assembler module (xenoguestheader.s) to handle that: .text .globl _start _start: .ascii "XenoGues" # read_kernel_header (tools/xc/lib/xc_linux_build.c) .long _start # - the kernel's load address The final image has to consist of the 12- bytes object code from xenoguestheader.s followed the object code from helloworld.s. Here is my makefile to accomplish that: helloworld.gz: helloworld.s xenoguestheader.raw as -o helloworld.o -a=helloworld.l helloworld.s ld -Ttext 0x100000 -o helloworld.elf helloworld.o objcopy -O binary -S -g helloworld.elf helloworld.raw cat xenoguestheader.raw helloworld.raw | gzip > helloworld.gz xenoguestheader.raw: xenoguestheader.s as -o xenoguestheader.o xenoguestheader.s ld -Ttext 0x100000 -o xenoguestheader xenoguestheader.o objcopy -O binary -S -g xenoguestheader xenoguestheader.raw This makefile produce a helloworld.elf file. The problem is to write a config file which run this program. I would call th command: xm create -c <config_file> and to see the message on the screen. I wrote this option in the config file: kernel = "helloworld. elf" memory = 32 name = "HelloWorld" on_crash = 'destroy' but when I run this command, I read this message on the screen; Error: (22, 'Invalid argument') HELP ME, PLEASE! _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |