boot.s进入保护模式
2012-10-01 14:16
211 查看
;kernel.s
start:
mov ah,9
mov bh,0
mov al,'o'
mov bl,0x1e
mov cx,10
int 0x10
jmp start
;boot.s
[BITS 16]
jmp start
start:
cli
mov al,1
mov ah,2
mov bx,0x1000
mov es,bx
mov bx,0
mov cx,0x0002
mov dx,0x0
int 0x13
jnc ok_load
die:
jmp die
ok_load:
mov ax,0x1000
mov ds,ax
mov si,0
mov di,0
mov es,di
mov cx,17
cpy:
movsb
dec cx
jcxz cpy_done
jmp cpy
cpy_done:
mov dx,0
mov ds,dx
lgdt [0x7c00+gdt_48]
mov edx,cr0
or edx,1
mov cr0,edx
jmp dword 0x0008:0
gdt_48:
DW 16
DW gdt+0x7c00,0
gdt:
DW 0,0,0,0
DW 0Xffff
DW 0X0000
DW 0X9e00
DW 0X0000
TIMES 510-($-$$) DB 0
DW 0XAA55
/*a.bxrc*/
floppya:1_44=c.img,status=inserted
boot:floppy
/*makefile*/
all:
nasm -o boot.bin boot.s
nasm -o kernel.bin kernel.s
dd if=/dev/zero of=c.img count=1
dd if=boot.bin of=c.img count=1
cat kernel.bin >> c.img
bochs -q -f a.bxrc
clean:
rm -rf boot.bin
start:
mov ah,9
mov bh,0
mov al,'o'
mov bl,0x1e
mov cx,10
int 0x10
jmp start
;boot.s
[BITS 16]
jmp start
start:
cli
mov al,1
mov ah,2
mov bx,0x1000
mov es,bx
mov bx,0
mov cx,0x0002
mov dx,0x0
int 0x13
jnc ok_load
die:
jmp die
ok_load:
mov ax,0x1000
mov ds,ax
mov si,0
mov di,0
mov es,di
mov cx,17
cpy:
movsb
dec cx
jcxz cpy_done
jmp cpy
cpy_done:
mov dx,0
mov ds,dx
lgdt [0x7c00+gdt_48]
mov edx,cr0
or edx,1
mov cr0,edx
jmp dword 0x0008:0
gdt_48:
DW 16
DW gdt+0x7c00,0
gdt:
DW 0,0,0,0
DW 0Xffff
DW 0X0000
DW 0X9e00
DW 0X0000
TIMES 510-($-$$) DB 0
DW 0XAA55
/*a.bxrc*/
floppya:1_44=c.img,status=inserted
boot:floppy
/*makefile*/
all:
nasm -o boot.bin boot.s
nasm -o kernel.bin kernel.s
dd if=/dev/zero of=c.img count=1
dd if=boot.bin of=c.img count=1
cat kernel.bin >> c.img
bochs -q -f a.bxrc
clean:
rm -rf boot.bin
相关文章推荐
- 专注于操作系统29之从loader进入保护模式并分页
- linux-0.11调试教程,显示strat minix后不能进入保护模式的原因,看bochsout.txt
- setup.bin进入保护模式
- 自制操作系统Antz day05——深入理解保护模式与进入方法
- 3 实模式进入保护模式
- java开发操作系统内核:由实模式进入保护模式之32位寻址
- 3.保护模式7-特权级转移(通过调用门转移目标段-有特权级转换-进入ring3)
- NASM 纯汇编打造简单中文操作系统(2 init.asm初始化操作系统内存。进入32位保护模式)
- WriteOS: 关于操作系统进入保护模式的总结
- 进入保护模式的第一个程序
- NASM 纯汇编打造简单中文操作系统(2 init.asm初始化操作系统内存。进入32位保护模式)
- 写操作系统(七)执着 进入保护模式的准备
- 3.保护模式7-特权级转移(通过调用门转移目标段-有特权级转换-进入ring3-b)
- 进入保护模式(一)——《x86汇编语言:从实模式到保护模式》读书笔记12
- 操作系统开发系列—2.进入32位保护模式
- [Intel汇编-NASM]进入保护模式全过程
- 进入保护模式(一)——《x86汇编语言:从实模式到保护模式》读书笔记12
- 修改pmtest1.asm,直接作为bootloader启动并进入保护模式
- 《Orange’s 一个操作系统的实现》3.保护模式7-特权级转移(通过调用门转移目标段-有特权级转换-进入ring3)
- 【PM复习】进入保护模式改进