Welcome 微信登录

首页 / 操作系统 / Linux / 学习Linux源码及实践

接下来要看的是一段Linux代码:这个代码将是一个操作系统的开始。BOOTSEG =0x07c0entry start
start:
jmpi go,BOOTSEG
go: mov ax ,cs
mov ds,ax
mov es ,ax
mov [msg1+17],ah
mov cx,#20
mov dx,#0x1004
mov bx,#0x00c
mov bp,#msg1
mov ax,#0x1301
int 0x10
loop0: jmp loop0
msg1: .ascii "Loading system..."
.byte 13,10
org 510
.word 0xAA55尽管有点短小,不过先做点有成就的事情出来,那么学起来的时候才更加感兴趣。下面进行编译:(我所使用的操作系统是Ubuntu:突然发现Linux真的是为程序员设计的一个操作系统,用起来真的方便。)as86 -0 -a -o boot.o boot.s
ld86 -0 -a -o boot boot.o
dd bs=32 if=boot of=bootseg skip=1
dd if=bootseg of=boot.img bs=512 count=2880可以看到文件下面有一个boot.img文件了,下面再在系统上装上virtualbox,然后用管理员sudo virtualbox运行起来,建立一个系统后,把软驱加载一下,然后启动OS。