本文将使用虚拟软盘运行最小操作系统代码。
运行本章示例代码
1、windows下打开Ubuntu 18.04 LTS,使用cd
命令切换到第一章示例代码目录,x 选择a或者b。
cd chapter1/x
2、创建一个大小为1M的文件TINIX.IMG,内容全为0。
dd if=/dev/zero of=TINIX.IMG bs=512 count=2880
命令解释:dd:用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
if=FILE 从FILE中读取数据,而不是默认的标准输入。
of=FILE 往FILE中写入数据,而不是默认的标准输出。
ibs=BYTES 读取数据时,一次性读出BYTES大小的块,如果不指定,默认512字节。
obs=BYTES 写入数据时,一次性写入BYTES大小的块,如果不指定,默认512字节。
bs=BYTES 统一ibs和obs的值(如果指定了ibs或者obs,则bs会将ibs和obs覆盖掉)。
count=N 总共读取N*ibs字节数的数据,当然写入的数据也是这个大小
3、将TINIX.IMG格式化为vfat(FAT32)格式的盘符。
sudo mkfs.vfat TINIX.IMG
4、将编译生成的boot.bin写入虚拟盘中。写入大小为512字节。
dd conv=notrunc