最近一直在做实验室的一个项目,改Linux操作系统。今天向BOSS和师兄们汇报项目的进展,师兄给我提出了一个很好的建议。
是这样的,我在项目中的工作是设计一个调度器,用来调度完成项目中的代理进程。代理进程所做的工作是在其被创建时加载进内存其所代理的硬件任务的bit流。然后阻塞起来,等待硬件任务的运行完成。在等待的过程中,代理进程的task_struct会担任硬件任务通信过程中用到得通信地址的任务。
我出的问题是代理进程阻塞后就唤不醒了。但是这个周一的时候,我加了几行代码,编译完内核运行就唤醒了。但是,当时的我真的不知道是我添加的几行代码起的作用,所以我汇报的时候就说不知道问题到底出在什么地方。
师兄给我的第一个问题是:你的内核(或项目)的版本是怎么管理的?你能够想起昨天你做的修改吗?你能够记起一周前的修改吗?
我呆了!从来就没想过版本管理的问题呢。师兄又给我他的其他的建议。所有的问题都是自己造成的,面对问题要有解决问题的责任感,同时要认真思考,确定问题的规模。理清楚自然很容易找到问题的答案!
这些真的是我做项目过程中需要注意的地方,以后的项目忽然明朗了点。有一种指引的感觉!
阅读(1426) | 评论(0) | 转发(0) |