git地址:https://github.com/l2y3n2/my-jos
LAB7居然是个大Project、要求自己弄个课题自己完善jos。。没有明确目标实在是不好弄,就不做了………………
把LAB 7开头的三个小Exercise完成了,就是实现个shell。
值得注意的是fs里面的serv.c中文件写入部分的代码居然还有BUG、害我测试一直过不去。
serve_write函数中:
return file_write(o->o_file, req->req_buf, req->req_n,
o->o_fd->fd_offset);
改成
r = file_write(o->o_file, req->req_buf, req->req_n,
o->o_fd->fd_offset);
if (r >= 0)
o->o_fd->fd_offset += r;
return r;
否则写入文件后文件的当前offset没有变化,后写入的内容会直接覆盖掉之前写入的内容。
之前LAB 5文件系统居然都能正常测试通过…………实在是…………