frittitta1@virgilio.it
2006-Aug-08  16:48 UTC
[Xen-devel] RE: RE: Problem with config file (Petersson, Mats)
I would do a simple thing: to write 
xm create -c <config file>
and 
to load a simple program which print a simple message ("Thi is the 
hello world program") on the screen!
I created a simple assembler 
program which print the 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 example is at the URL www.o3one.org/xen.
html, but the config file run on Xen 1.2.
I would make something but 
for Xen 3.X.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel