解压.gz文件指令:
gunzip filename.gz。
Makefile在第九章的e文件夹需要进行一些修改:
ASMBFLAGS = -I boot/include/
ASMKFLAGS = -I include/ -I include/sys/ -f elf
CFLAGS = -I include/ -I include/sys/ -m32 -fno-stack-protector -c -fno-builtin -Wall
#CFLAGS = -I include/ -c -fno-builtin -fno-stack-protector -fpack-struct -Wall
LDFLAGS = -m elf_i386 -Ttext $(ENTRYPOINT) -Map krnl.map
增加对sconst.inc的目录记录---I include/sys/,注意最后要加上/。
运行完g后,关闭虚拟机,安装gthumb:sudo apt-get install gthumb,安装graphviz:sudo apt-get install graphviz。
linux ./执行文件时权限不够:
可以用"chmod a+x 文件名"来添加执行权限。
或者用chmod 777 文件名对所有人添加读、写、执行权限。
chmod命令
格式1:chmod [ugoa] [+-=] [rwx] 文件或目录...
格式2:chmod nnn 文件或目录...
添加执行权限后便可以执行了。
cat filedesc.dot | chmod a+x ./splitgraphs:在genlog文件,第25行修改。
./genlog:根据硬盘也就是80m.img生成llsyslog文件和filedesc.dot文件。
dot -Tsvg filedesc.dot -o filedesc.svg:生成svg图片文件。双击便可查看图片。
参考文档:
1 安装graphviz sudo apt-get install graphviz
2 编辑dot文件,例如test.dot, 产生图片:dot -Tsvg test.dot -o test.svg
Graphviz - Graph Visualization Software
执行文件路径:
/usr/bin/dot
运行g以后程序时,在fs文件夹的disklog.c的最后两行,将注释代码恢复,将main.c的99行的注释代码恢复。
虚拟机运行玩程序以后,硬盘中已经存好log内容,讲80m.img放入scripts中,运行,即可查看图片。