mirror of
https://github.com/reactos/reactos.git
synced 2024-12-29 02:25:17 +00:00
Forgot this file
svn path=/trunk/; revision=13463
This commit is contained in:
parent
518763e600
commit
e2de4723c6
1 changed files with 31 additions and 0 deletions
31
reactos/ntoskrnl/ke/i386/main.S
Normal file
31
reactos/ntoskrnl/ke/i386/main.S
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
#include <roscfg.h>
|
||||||
|
#include <internal/ntoskrnl.h>
|
||||||
|
#include <internal/i386/ke.h>
|
||||||
|
#include <internal/i386/segment.h>
|
||||||
|
#include <internal/ps.h>
|
||||||
|
#include <internal/i386/mm.h>
|
||||||
|
#include <internal/i386/fpu.h>
|
||||||
|
|
||||||
|
.globl _NtProcessStartup
|
||||||
|
|
||||||
|
_NtProcessStartup:
|
||||||
|
|
||||||
|
/* FIXME: Application processors should have their own GDT/IDT */
|
||||||
|
lgdt _KiGdtDescriptor
|
||||||
|
lidt _KiIdtDescriptor
|
||||||
|
|
||||||
|
/* Load the PCR selector */
|
||||||
|
movl $PCR_SELECTOR, %eax
|
||||||
|
movl %eax, %fs
|
||||||
|
|
||||||
|
/* Load the initial kernel stack */
|
||||||
|
lea _kernel_stack, %eax
|
||||||
|
add $0x1000, %eax
|
||||||
|
and $0xFFFFE000, %eax
|
||||||
|
add $(0x3000 - SIZEOF_FX_SAVE_AREA), %eax
|
||||||
|
movl %eax, %esp
|
||||||
|
|
||||||
|
/* Call the main kernel initialization */
|
||||||
|
pushl %edx
|
||||||
|
pushl %ecx
|
||||||
|
call __main
|
Loading…
Reference in a new issue