一个操作系统的实现--文件系统调试的一些细节


解压.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中,运行,即可查看图片。



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值