/haiku/src/system/boot/platform/bios_ia32/ |
H A D | long.h | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | mmu.h | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | long_asm.S | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | start.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | long.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | Jamfile | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | mmu.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | smp.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
/haiku/headers/private/kernel/arch/x86/ |
H A D | arch_kernel_args.h | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
/haiku/src/system/kernel/arch/x86/paging/32bit/ |
H A D | X86PagingMethod32Bit.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
/haiku/src/system/kernel/arch/x86/paging/pae/ |
H A D | X86PagingMethodPAE.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
/haiku/src/system/boot/platform/pxe_ia32/ |
H A D | Jamfile | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
/haiku/src/system/kernel/ |
H A D | main.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
/haiku/src/system/kernel/arch/x86/ |
H A D | arch_int.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|
H A D | arch_cpu.cpp | e5fc2bfcab8c15a3ff7d33c358f9aa82ed73c823 Tue Jun 26 10:01:23 UTC 2012 Alex Smith <alex@alex-smith.me.uk> Implemented long mode setup/switch code, the bootloader can now start the 64-bit kernel!
The setup procedure is fairly simple: create a 64-bit GDT and 64-bit page tables that include all kernel mappings from the 32-bit address space, but at the correct 64-bit address, then go through kernel_args and changes all virtual addresses to 64-bit addresses, and finally switch to long mode and jump to the kernel.
|