《Orange'S:一个操作系统的实现》学习笔记(一)
2013-03-16 11:52
555 查看
我使用的操作系统是ubuntu 12.10。
1.首先下载nasm:http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D
我下载的是2.10.07版本的nasm-2.10.07.tar.bz2文件。解压后到目录:~/nasm-2.10.07
终端命令行进入目录nasm-2.10.07,依次执行:
$./configure
$make
$sudo make install
安装nasm到本机。
2.编译代码,首先下载代码光盘镜像,本书作者有提供:http://osfromscratch.org/downloadcn
下载到本地后解压为:cdimage.iso
然后将光盘镜像加载:/article/9913042.html
终端命令行执行:
#建立装载目录
$sudo mkdir /mnt/cdrom
#装载镜像
$sudo mount -t iso9660 -o loop ~/cdimage.iso /mnt/cdrom
#然后就可以打开光盘使用光盘中的代码了
#复制第一个代码文件到本地
$cp /mnt/cdrom/chapter1/a/boot.asm ~
#编译代码
$nasm boot.asm -o boot.bin
最终生成了512字节的文件boot.bin
3.我的机器没有软驱,因此使用了虚拟软驱来制作启动软盘镜像(/article/9955554.html)。
#建立虚拟软盘镜像文件
$ dd if=/dev/zero of=floppy.img bs=1474560 count=1
#在虚拟软盘上建立文件系统
$mkfs.vfat floppy.img
#关联镜像文件到环回设备
$ sudo losetup /dev/loop1 floppy.img
#写入512字节文件boot.bin到虚拟软盘镜像第一扇区
$
sudo dd if=boot.bin of=/dev/loop1 bs=512 count=1
#解除镜像文件与环回设备的关联
$
sudo losetup -d /dev/loop1
这样启动软盘镜像就做好了
4.测试启动软盘
安装vmware9,启动并新建虚拟机MyVM,虚拟机为空,不安装操作系统。虚拟机里添加软驱,设置如下:
勾选上 connect
at power on,选择use a floppy image并选择自己的启动软驱镜像。
然后启动虚拟机MyVM,效果如下:
ok,第一个demo实验成功,虽然简单,但还是有些成就感
1.首先下载nasm:http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D
我下载的是2.10.07版本的nasm-2.10.07.tar.bz2文件。解压后到目录:~/nasm-2.10.07
终端命令行进入目录nasm-2.10.07,依次执行:
$./configure
$make
$sudo make install
安装nasm到本机。
2.编译代码,首先下载代码光盘镜像,本书作者有提供:http://osfromscratch.org/downloadcn
下载到本地后解压为:cdimage.iso
然后将光盘镜像加载:/article/9913042.html
终端命令行执行:
#建立装载目录
$sudo mkdir /mnt/cdrom
#装载镜像
$sudo mount -t iso9660 -o loop ~/cdimage.iso /mnt/cdrom
#然后就可以打开光盘使用光盘中的代码了
#复制第一个代码文件到本地
$cp /mnt/cdrom/chapter1/a/boot.asm ~
#编译代码
$nasm boot.asm -o boot.bin
最终生成了512字节的文件boot.bin
3.我的机器没有软驱,因此使用了虚拟软驱来制作启动软盘镜像(/article/9955554.html)。
#建立虚拟软盘镜像文件
$ dd if=/dev/zero of=floppy.img bs=1474560 count=1
#在虚拟软盘上建立文件系统
$mkfs.vfat floppy.img
#关联镜像文件到环回设备
$ sudo losetup /dev/loop1 floppy.img
#写入512字节文件boot.bin到虚拟软盘镜像第一扇区
$
sudo dd if=boot.bin of=/dev/loop1 bs=512 count=1
#解除镜像文件与环回设备的关联
$
sudo losetup -d /dev/loop1
这样启动软盘镜像就做好了
4.测试启动软盘
安装vmware9,启动并新建虚拟机MyVM,虚拟机为空,不安装操作系统。虚拟机里添加软驱,设置如下:
勾选上 connect
at power on,选择use a floppy image并选择自己的启动软驱镜像。
然后启动虚拟机MyVM,效果如下:
ok,第一个demo实验成功,虽然简单,但还是有些成就感
相关文章推荐
- 《Orange's 一个操作系统的实现》学习笔记(一) 实验环境搭建
- 《Orange's 一个操作系统的实现》学习笔记--特权级代码段之间的转移(三)
- 《Orange's 一个操作系统的实现》学习笔记--特权级代码段之间的转移(四)
- 《Orange's 一个操作系统的实现》学习笔记--分页机制
- 《Orange's 一个操作系统的实现》学习笔记--一个简单的引导扇区
- 《Orange's 一个操作系统的实现》学习笔记--保护模式理论初步(二)
- 《Orange's 一个操作系统的实现》学习笔记--特权级代码段之间的转移(一)
- 《Orange's 一个操作系统的实现》学习笔记--LDT
- 《Orange'S:一个操作系统的实现》学习笔记(三)--bochs
- 《Orange's 一个操作系统的实现》学习笔记--实践认识保护模式
- 《Orange'S:一个操作系统的实现》学习笔记(四)
- 《Orange's 一个操作系统的实现》学习笔记--特权级代码段之间的转移(五)
- 《Orange's 一个操作系统的实现》学习笔记--保护模式理论初步(一)
- 《Orange's 一个操作系统的实现》学习笔记--保护模式进阶
- 《Orange's 一个操作系统的实现》学习笔记--特权级代码段之间的转移(二)
- 《Orange'S:一个操作系统的实现》学习笔记(四)
- 《Orange'S:一个操作系统的实现》学习笔记(二)
- 学习《orange's 一个操作系统的实现》准备
- Orange's 一个操作系统的实现之笔记1
- 《orange'S一个操作系统的实现》 笔记