亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? x86_32.s

?? xen 3.2.2 源碼
?? S
字號:
#include <os.h>#include <xen/arch-x86_32.h>.section __xen_guest	.ascii	"GUEST_OS=Mini-OS"	.ascii	",XEN_VER=xen-3.0"	.ascii	",VIRT_BASE=0x0" /* &_text from minios_x86_32.lds */	.ascii	",ELF_PADDR_OFFSET=0x0"	.ascii	",HYPERCALL_PAGE=0x2"#ifdef CONFIG_X86_PAE	.ascii	",PAE=yes"#else	.ascii	",PAE=no"#endif	.ascii	",LOADER=generic"	.byte	0.text.globl _start, shared_info, hypercall_page                        _start:        cld        lss stack_start,%esp        andl $(~(8192-1)), %esp        push %esi         call start_kernelstack_start:	.long stack+(2*8192), __KERNEL_SS        /* Unpleasant -- the PTE that maps this page is actually overwritten */        /* to map the real shared-info page! :-)                             */        .org 0x1000shared_info:        .org 0x2000hypercall_page:        .org 0x3000ES		= 0x20ORIG_EAX	= 0x24EIP		= 0x28CS		= 0x2C#define ENTRY(X) .globl X ; X :#define SAVE_ALL \	cld; \	pushl %es; \	pushl %ds; \	pushl %eax; \	pushl %ebp; \	pushl %edi; \	pushl %esi; \	pushl %edx; \	pushl %ecx; \	pushl %ebx; \	movl $(__KERNEL_DS),%edx; \	movl %edx,%ds; \	movl %edx,%es;#define RESTORE_ALL	\	popl %ebx;	\	popl %ecx;	\	popl %edx;	\	popl %esi;	\	popl %edi;	\	popl %ebp;	\	popl %eax;	\	popl %ds;	\	popl %es;	\	addl $4,%esp;	\	iret;		ENTRY(divide_error)	pushl $0		# no error code	pushl $do_divide_errordo_exception:    pushl %ds	pushl %eax	xorl %eax, %eax	pushl %ebp	pushl %edi	pushl %esi	pushl %edx	decl %eax			# eax = -1	pushl %ecx	pushl %ebx	cld	movl %es, %ecx	movl ES(%esp), %edi		# get the function address	movl ORIG_EAX(%esp), %edx	# get the error code	movl %eax, ORIG_EAX(%esp)	movl %ecx, ES(%esp)	movl $(__KERNEL_DS), %ecx	movl %ecx, %ds	movl %ecx, %es	movl %esp,%eax			# pt_regs pointer    pushl %edx    pushl %eax	call *%edi    jmp ret_from_exception    ret_from_exception:    movb CS(%esp),%cl    addl $8,%esp    RESTORE_ALL# A note on the "critical region" in our callback handler.# We want to avoid stacking callback handlers due to events occurring# during handling of the last event. To do this, we keep events disabled# until weve done all processing. HOWEVER, we must enable events before# popping the stack frame (cant be done atomically) and so it would still# be possible to get enough handler activations to overflow the stack.# Although unlikely, bugs of that kind are hard to track down, so wed# like to avoid the possibility.# So, on entry to the handler we detect whether we interrupted an# existing activation in its critical region -- if so, we pop the current# activation and restart the handler using the previous one.ENTRY(hypervisor_callback)        pushl %eax        SAVE_ALL        movl EIP(%esp),%eax        cmpl $scrit,%eax        jb   11f        cmpl $ecrit,%eax        jb   critical_region_fixup11:     push %esp        xorl %ebp,%ebp        call do_hypervisor_callback        add  $4,%esp        movl HYPERVISOR_shared_info,%esi        xorl %eax,%eax        movb CS(%esp),%cl    	test $2,%cl          # slow return to ring 2 or 3        jne  safestisafesti:movb $0,1(%esi)     # reenable event callbacksscrit:  /**** START OF CRITICAL REGION ****/        testb $0xFF,(%esi)        jnz  14f              # process more events if necessary...        RESTORE_ALL14:     movb $1,1(%esi)        jmp  11becrit:  /**** END OF CRITICAL REGION ****/# [How we do the fixup]. We want to merge the current stack frame with the# just-interrupted frame. How we do this depends on where in the critical# region the interrupted handler was executing, and so how many saved# registers are in each frame. We do this quickly using the lookup table# 'critical_fixup_table'. For each byte offset in the critical region, it# provides the number of bytes which have already been popped from the# interrupted stack frame. critical_region_fixup:        addl $critical_fixup_table-scrit,%eax        movzbl (%eax),%eax    # %eax contains num bytes popped        mov  %esp,%esi        add  %eax,%esi        # %esi points at end of src region        mov  %esp,%edi        add  $0x34,%edi       # %edi points at end of dst region        mov  %eax,%ecx        shr  $2,%ecx          # convert words to bytes        je   16f              # skip loop if nothing to copy15:     subl $4,%esi          # pre-decrementing copy loop        subl $4,%edi        movl (%esi),%eax        movl %eax,(%edi)        loop 15b16:     movl %edi,%esp        # final %edi is top of merged stack        jmp  11b         critical_fixup_table:                .byte 0x00,0x00,0x00                  # testb $0xff,(%esi)        .byte 0x00,0x00                       # jne  14f        .byte 0x00                            # pop  %ebx        .byte 0x04                            # pop  %ecx        .byte 0x08                            # pop  %edx        .byte 0x0c                            # pop  %esi        .byte 0x10                            # pop  %edi        .byte 0x14                            # pop  %ebp        .byte 0x18                            # pop  %eax        .byte 0x1c                            # pop  %ds        .byte 0x20                            # pop  %es        .byte 0x24,0x24,0x24                  # add  $4,%esp        .byte 0x28                            # iret        .byte 0x00,0x00,0x00,0x00             # movb $1,1(%esi)        .byte 0x00,0x00                       # jmp  11b       # Hypervisor uses this for application faults while it executes.ENTRY(failsafe_callback)      pop  %ds      pop  %es      pop  %fs      pop  %gs      iret                ENTRY(coprocessor_error)	pushl $0	pushl $do_coprocessor_error	jmp do_exceptionENTRY(simd_coprocessor_error)	pushl $0	pushl $do_simd_coprocessor_error	jmp do_exceptionENTRY(device_not_available)        iretENTRY(debug)	pushl $0	pushl $do_debug	jmp do_exceptionENTRY(int3)	pushl $0	pushl $do_int3	jmp do_exceptionENTRY(overflow)	pushl $0	pushl $do_overflow	jmp do_exceptionENTRY(bounds)	pushl $0	pushl $do_bounds	jmp do_exceptionENTRY(invalid_op)	pushl $0	pushl $do_invalid_op	jmp do_exceptionENTRY(coprocessor_segment_overrun)	pushl $0	pushl $do_coprocessor_segment_overrun	jmp do_exceptionENTRY(invalid_TSS)	pushl $do_invalid_TSS	jmp do_exceptionENTRY(segment_not_present)	pushl $do_segment_not_present	jmp do_exceptionENTRY(stack_segment)	pushl $do_stack_segment	jmp do_exceptionENTRY(general_protection)	pushl $do_general_protection	jmp do_exceptionENTRY(alignment_check)	pushl $do_alignment_check	jmp do_exceptionENTRY(page_fault)    pushl $do_page_fault    jmp do_exception    ENTRY(machine_check)	pushl $0	pushl $do_machine_check	jmp do_exceptionENTRY(spurious_interrupt_bug)	pushl $0	pushl $do_spurious_interrupt_bug	jmp do_exceptionENTRY(thread_starter)    popl %eax    popl %ebx    pushl $0    xorl %ebp,%ebp    pushl %eax    call *%ebx    call exit_thread     ENTRY(__arch_switch_threads)    movl 4(%esp), %ecx		/* prev */    movl 8(%esp), %edx		/* next */    pushl %ebp    pushl %ebx    pushl %esi    pushl %edi    movl %esp, (%ecx)		/* save ESP */    movl (%edx), %esp		/* restore ESP */    movl $1f, 4(%ecx)		/* save EIP */    pushl 4(%edx)		/* restore EIP */    ret1:    popl %edi    popl %esi    popl %ebx    popl %ebp    ret

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩久久一区二区| 综合欧美亚洲日本| 亚洲色欲色欲www在线观看| 精品日韩一区二区| 日韩欧美国产精品一区| 91精品蜜臀在线一区尤物| 欧美性猛交xxxxxx富婆| 精品视频一区二区三区免费| 欧美日韩国产电影| 日韩视频国产视频| 久久精品在线观看| 中文字幕久久午夜不卡| 亚洲欧美aⅴ...| 亚洲欧美日韩国产综合在线 | 三级久久三级久久| 午夜影视日本亚洲欧洲精品| 日韩电影在线观看一区| 国内精品写真在线观看| 欧美精品久久一区二区三区| 欧美一级欧美三级在线观看| 欧美成人一区二区三区| 26uuu成人网一区二区三区| 久久久电影一区二区三区| 国产精品久久久久久一区二区三区| 中文字幕亚洲不卡| 亚洲va天堂va国产va久| 国产一区二区三区免费看| 色综合久久久久综合99| 欧美一二三在线| 中文字幕中文乱码欧美一区二区| 亚洲另类春色校园小说| 首页综合国产亚洲丝袜| 国产美女视频一区| 精品视频一区三区九区| 久久久久久综合| 亚洲一区二区三区中文字幕 | 一本大道久久精品懂色aⅴ| 在线观看视频一区二区欧美日韩| 日韩你懂的在线播放| 日韩伦理av电影| 久久国产人妖系列| 91传媒视频在线播放| 国产视频一区在线观看| 亚洲成a人片在线不卡一二三区| 六月丁香婷婷久久| 欧美日韩一区在线| 国产精品视频在线看| 首页国产欧美日韩丝袜| 色综合天天综合网国产成人综合天| 日韩欧美国产午夜精品| 亚洲图片一区二区| 成人激情免费视频| 日韩一级黄色片| 亚洲一区二区三区视频在线播放| 成人涩涩免费视频| 欧美精品一区二区在线播放| 亚洲国产精品久久久久婷婷884 | 亚洲欧美日韩成人高清在线一区| 美女一区二区在线观看| 欧美精品日韩一本| 亚洲自拍偷拍综合| 91久久精品一区二区| 综合久久久久久| 99久久99久久精品免费观看| 国产欧美精品一区二区色综合朱莉| 日日摸夜夜添夜夜添国产精品| 在线观看视频一区二区欧美日韩| 国产精品五月天| 成人午夜精品在线| 国产精品乱码一区二区三区软件 | 欧美麻豆精品久久久久久| 亚洲欧美一区二区三区久本道91| 国产精品亚洲а∨天堂免在线| 26uuu精品一区二区在线观看| 久久精品国产99国产精品| 欧美一级精品大片| 精品综合免费视频观看| 久久这里只精品最新地址| 久久国产精品99久久人人澡| 日韩免费一区二区三区在线播放| 肉肉av福利一精品导航| 欧美一级精品在线| 国内精品自线一区二区三区视频| 久久久午夜电影| 国产ts人妖一区二区| 国产精品久久免费看| 色婷婷综合久久久中文字幕| 樱桃视频在线观看一区| 欧美视频中文字幕| 奇米影视一区二区三区| 精品奇米国产一区二区三区| 国产麻豆视频精品| 中文字幕永久在线不卡| 欧美午夜精品电影| 麻豆一区二区三区| 欧美韩国日本综合| 日本韩国视频一区二区| 强制捆绑调教一区二区| 欧美激情一区二区三区全黄| 91九色最新地址| 蜜桃久久久久久| 国产欧美精品区一区二区三区 | 欧美久久一二区| 激情综合色丁香一区二区| 国产精品视频yy9299一区| 色欧美乱欧美15图片| 免费在线视频一区| 中文字幕不卡在线| 欧美在线播放高清精品| 国产一区二区三区av电影| 亚洲精品日韩专区silk| 精品日韩成人av| 日本道色综合久久| 国产黄色精品网站| 亚洲6080在线| 久久你懂得1024| 欧美日韩国产美女| 国产不卡一区视频| 免播放器亚洲一区| 日韩理论片网站| 国产午夜精品久久久久久久| 欧美精品久久天天躁| 99久久精品国产导航| 国模套图日韩精品一区二区| 亚洲国产一区二区三区| 国产精品女人毛片| 久久亚洲精品国产精品紫薇| 欧美性色黄大片| 色综合一个色综合亚洲| 大胆亚洲人体视频| 国产一区二区不卡老阿姨| 日韩精品久久理论片| 一区二区三区四区五区视频在线观看| 久久精品一区二区三区不卡| 欧美一卡在线观看| 8v天堂国产在线一区二区| 一本大道av伊人久久综合| 高清国产一区二区| 国产一区欧美一区| 麻豆国产欧美一区二区三区| 午夜欧美电影在线观看| 亚洲午夜在线电影| 亚洲欧美日韩国产成人精品影院 | 中文字幕av一区二区三区| 欧美精品一区二区三区一线天视频| 欧美群妇大交群中文字幕| 一本色道久久综合精品竹菊| 97精品国产97久久久久久久久久久久| 国产不卡在线播放| 成人美女在线视频| 成人av免费网站| 成人综合在线观看| 99综合电影在线视频| 99这里只有久久精品视频| 99久久精品国产精品久久| 91在线视频网址| 色又黄又爽网站www久久| 色猫猫国产区一区二在线视频| 99久久精品国产网站| 欧洲av一区二区嗯嗯嗯啊| 欧美亚洲动漫精品| 欧美一卡二卡在线| 久久理论电影网| 中文字幕亚洲不卡| 性欧美疯狂xxxxbbbb| 免费成人小视频| 极品尤物av久久免费看| 成人激情动漫在线观看| 91极品美女在线| 6080yy午夜一二三区久久| 欧美成人福利视频| 国产精品卡一卡二卡三| 亚洲精品视频一区| 日本亚洲天堂网| 国产大陆a不卡| 一本大道久久a久久综合| 91精品国产综合久久久久久漫画 | 99国产欧美另类久久久精品| 在线观看免费一区| 欧美大黄免费观看| 亚洲国产高清aⅴ视频| 亚洲一二三四在线观看| 六月婷婷色综合| 91亚洲精品久久久蜜桃| 欧美精品一级二级| 国产精品毛片a∨一区二区三区| 亚洲综合男人的天堂| 久久99精品国产麻豆不卡| 91视频国产观看| 日韩欧美一级二级三级| 中文字幕视频一区二区三区久| 同产精品九九九| 成人夜色视频网站在线观看| 欧美老女人在线| 中文字幕第一区| 精品在线亚洲视频| 91久久一区二区| 国产欧美精品一区二区三区四区| 日韩中文字幕区一区有砖一区 | 日韩精品电影一区亚洲|