- Timestamp:
- 2005-08-29T11:57:26Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- c245372b
- Parents:
- 229d5fc1
- Location:
- arch/ia32
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/ia32/include/asm.h
r229d5fc1 rb52da8d7 32 32 #include <arch/types.h> 33 33 #include <typedefs.h> 34 #include < mm/page.h>34 #include <config.h> 35 35 #include <synch/spinlock.h> 36 36 #include <arch/boot/memmap.h> -
arch/ia32/include/barrier.h
r229d5fc1 rb52da8d7 44 44 #define CS_LEAVE_BARRIER() __asm__ volatile ("" ::: "memory") 45 45 46 #define memory_barrier() __asm__ volatile ("mfence\n" ::: "memory") 47 #define read_barrier() __asm__ volatile ("sfence\n" ::: "memory") 48 #define write_barrier() __asm__ volatile ("lfence\n" ::: "memory") 49 46 50 #endif -
arch/ia32/src/boot/boot.S
r229d5fc1 rb52da8d7 48 48 call memmap_arch_init 49 49 50 lgdt gdtr 50 lgdt gdtr # initialize Global Descriptor Table register 51 lidt idtr # initialize Interrupt Descriptor Table register 52 51 53 movl %cr0,%eax 52 54 orl $0x1,%eax 53 movl %eax,%cr0 55 movl %eax,%cr0 # switch to protected mode 54 56 jmpl $8,$meeting_point 55 57 meeting_point: … … 63 65 movw %ax,%ss 64 66 65 lidt idtr 66 67 call map_kernel 67 call map_kernel # map kernel and turn paging on 68 68 69 69 movl $_hardcoded_ktext_size, hardcoded_ktext_size … … 95 95 movl %eax, %cr3 96 96 97 # turn on paging97 # turn paging on 98 98 movl %cr0, %ebx 99 99 orl $(1<<31), %ebx -
arch/ia32/src/mm/frame.c
r229d5fc1 rb52da8d7 35 35 #include <print.h> 36 36 37 /*38 * TODO: use the memory map obtained from BIOS39 */40 37 void frame_arch_init(void) 41 38 { -
arch/ia32/src/smp/ap.S
r229d5fc1 rb52da8d7 51 51 movw %ax,%ds 52 52 53 lgdt gdtr 53 lgdt gdtr # initialize Global Descriptor Table register 54 lidt idtr # initialize Interrupt Descriptor Table register 55 54 56 movl %cr0,%eax 55 57 orl $1,%eax 56 movl %eax,%cr0 58 movl %eax,%cr0 # switch to protected mode 57 59 jmpl $KTEXT,$jump_to_kernel 58 60 jump_to_kernel: … … 66 68 subl $0x80000000,%esp # KA2PA(ctx.sp) 67 69 68 lidt idtr 69 70 call map_kernel 70 call map_kernel # map kernel and turn paging on 71 71 72 72 jmpl $KTEXT,$main_ap
Note:
See TracChangeset
for help on using the changeset viewer.