Subversion Repositories HelenOS

Rev

Rev 1810 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1810 Rev 1813
Line 32... Line 32...
32
#include <arch/pm.h>
32
#include <arch/pm.h>
33
 
33
 
34
.section __xen_guest
34
.section __xen_guest
35
	.ascii  "GUEST_OS=HelenOS,"
35
	.ascii  "GUEST_OS=HelenOS,"
36
	.ascii  "XEN_VER=xen-3.0,"
36
	.ascii  "XEN_VER=xen-3.0,"
37
	.ascii  "HYPERCALL_PAGE=0x2,"
37
	.ascii  "HYPERCALL_PAGE=0x0002,"
38
	.ascii  "LOADER=generic,"
38
	.ascii  "LOADER=generic,"
39
	.ascii  "PT_MODE_WRITABLE"
39
	.ascii  "PT_MODE_WRITABLE"
40
	.byte   0
40
	.byte   0
41
 
41
 
42
.text
42
.text
Line 45... Line 45...
45
.align 4
45
.align 4
46
.global kernel_image_start
46
.global kernel_image_start
47
	
47
	
48
kernel_image_start:
48
kernel_image_start:
49
	cld
49
	cld
50
	movl $kernel_stack, %esp         # initialize stack pointer
-
 
51
	
50
	
-
 
51
	# copy start_info (esi initialized by Xen)
-
 
52
	
-
 
53
	movl $start_info, %edi
-
 
54
	movl $START_INFO_SIZE >> 2, %ecx
-
 
55
	cld
-
 
56
	rep movsb
-
 
57
 
52
	call main_bsp								# never returns
58
	call main_bsp								# never returns
53
 
59
 
54
	cli
60
	cli
55
	hlt
61
	hlt
56
 
62
 
57
.data
63
.global hypercall_page
58
 
64
 
59
.align 4096
-
 
60
page_directory:
-
 
61
	.space 4096, 0
65
.org (0x0002 * PAGE_SIZE)
62
 
-
 
63
kernel_stack_bottom:
66
hypercall_page:
64
	.space TEMP_STACK_SIZE
67
	.space PAGE_SIZE
65
kernel_stack:
-