实验步骤
修改Makefile文件:将CPUS的值设为1,,并添加如下语句。目的是加快xv6创建大文件时的qemu的运行速度:
修改param.h文件,将文件系统的最大数据块数设置为20000:
下载big.c文件放入xv6的目录下,并在Makefile文件中的UPROGS列表中增加对big命令的引用:
启动xv6,输入big命令,显示“wrote 140 sectors”,说明所有的准备工作已完成:
修改fs.c中的bmap()函数如下:
打开fs.h文件,将NDIRECT的值改为11,对应的架构数据块地址的索引由加1变为加2,最后将MAXFILE修改成如下值:
保存后重新启动xv6,输入big命令,得到如下运行结果说明实验成功:
其中,16523 = 128*128(doubly-indirectblocks) + 11(singly-indirect blocks) + 128(directblocks)