Chinaunix首页 | 论坛 | 博客
  • 博客访问: 357279
  • 博文数量: 53
  • 博客积分: 25
  • 博客等级: 民兵
  • 技术积分: 1548
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-27 07:54
个人简介

IT民工一枚,为学弟学妹造福是我一直写博文的动力!为媳妇提供技术支持是我学习新技术的动力!为自己脱离贫困线,买到心仪的摩托车,有饭吃,有床睡,有妹把,笔耕不辍~~

文章分类

全部博文(53)

文章存档

2013年(54)

分类: 其他UNIX

2013-04-12 14:40:10

1 Nachos 项目的策略和机制

本课程中,我们每两周时间会有一个Nachos的实验项目,第一次实验开始于第二个教学周。    由于实验六是课后三周才发布的,所以它是一个特例。本节定义了课程进度、Nachos项目以及分数分配。请认真读本节。

每一个任务的详细规定都在第3小节中(查看Nachos实验分配)。你会从第二小节中找到大量有用的任务信息(查看使用Nachos)系统调用的定义放在第4小节,这些定义对于实验4和实验5 会非常重要。学期末的时候,你将会读完此文档。

1.1项目组

本项目将会由二人组完成。第一次任务开始之前,请自行组队。经双方同意,本学期内,你可以随时重新组织你的队伍。

一个理想的团队,是将技能互补的两个人匹配到一起:认为自己擅长理论知识的可以跟擅长技术实现的组队。如此,我们期望在学期末 ,大家能够有较平衡的理论水平和实现技术。注意,尽管项目在团队基础上打分,但是评估过程(见下文)为我们提供了充足的机会去观察正在发生的事情,所有的队伍会在最后的评分中一见分晓。

1.2汇报演示

我们对你项目的大多数评估过程会发生在你的演示、访谈会话期间,时间上跟项目上交时间相当。通常,你需要将你演示的计划与讲师或助教(如果本课程安排了助教)商议。汇报计划的审批结果将会发布到课上和教学网上。

我们期望每个组内的成员都能公平的参与到汇报中。作为一般性的规则,每次汇报两个人必须都上,除非有特殊理由告诉我,你为啥不能调你的时间表。每次汇报之前,讲师或助教将会在组内指定一个人作为汇报的“主讲人”。主讲人需要坐在工作台(或者站在黑板边上)向观众解释你的项目。另一个成员应该在演示的同时随时添加评论,同时准随时被叫起来回答问题。

很多学生在学期伊始比较紧张,似乎振振有词。但是我会回顾你写的代码,要求你展示你的代码工作,试图发现出来的Bugs,一般情况下还会关于这一点问你做了什么,为什么这么做。大多数学生发现,一旦开口便滔滔不绝,我们很乐意奖励那些勤学的学生,如果你作业做的好,汇报将会是一个愉快的过程。

1.3作业上交

请通过电子邮件的方式将对每个项目简短的笔记(1-2页)在截至日前之前发送给导师。信件的主题是Nachos项目笔记第N次,其中N是项目编号,本邮件同时需要抄送给助教(如果有助教)和你的队友。邮件的第一行应该是你们组源码的完整目录。你也应该努力在截止日期之前好好计划的汇报,请把你的汇报计划及日期写在第二行的位置。剩下的内容涉及你对任务解决方案的简要描述,以及对当前任务的总结。比如,你做了啥,你没做啥。

笔记应该简要,不要浪费太多时间在写笔记上。本课程还是很耗时间的,让你写笔记的目的是给你个机会陈述你项目中遇到的问题,同时提供些我们可以给你加分的信息。如果你遇到了特殊的问题,未能解决问题的方案或者未能完全实现的概念。你可以在笔记中做出陈述,,那会帮助我们给你加分,当然你的代码运行良好,你的汇报特别顺利,我们几乎不看你的笔记。

希望你的源码能在截至日期前自动归档。这样才能让我们查看你的代码情况,然后给各个学期的项目做个记录。你不能指望我给你的源码做备份。推荐你使用版本控制软件,比如CVS或者RCS。但是请把你上交的.c和.h罗列清楚,便于我们查看和打分。
**************************************************************************************************
1.4是如何评分,1.5是晚交作业怎么办,1.6是组队指导。看上去是给本科生看的,一句话总结一下,就不详译了。
别不写作业,不写没分;别指望你队友,都不靠谱。
**************************************************************************************************

1.7Nachos的那些部分我们可以修改

一些学生发现读Nachos原来的项目有些晕,因为大量的代码已经写完,并不是所有的地方都很清楚如何改,改哪里。Nachos设计的非常好,因此每个任务需要修改的地方都非常清晰。我们会告诉你每个任务需要修改哪个部分。大多出情况下,你需要在已经存在的框架下添加自己的代码,大多数是在你自己定义的类和过程中添加。极少数情况中,你需要向原代码中已经定义的类和方法中拓展和添加代码。删除和重写已经存在的代码的情况更少了(第四次实验中可能需要),或者在我们指定的位置之外添加代码的情况也很少。

一般,我们不会阻止你修改Nachos源码的任何部分。但是,我会告诉你,每个实验需要的解决方案所涉及的最简单和直接的方式都不会修改太多代码。而且,修改定义在machine文件夹(查看Nachos MIPS模拟器)下定义好的关于硬件的模拟实现的代码的情况微乎其微。修改#define宏定义的机器和系统参数(比如物理内存大小或者栈的大小),但是实现机器运行的代码要求都比较严格,如果你不清楚怎么改,就问。


**************************************************************************************************
这个小节基本讲一些课程相关的内容,如果老师让你读这块儿,你可以参照一下,当然读英文原文的话,也没有太大问题。

阅读(2358) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~