<br><br><div class="gmail_quote">On Thu, Aug 6, 2009 at 6:16 PM, Aruna Medhekar <span dir="ltr"><<a href="mailto:sparx2010@gmail.com">sparx2010@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Sir,<br>We are extremely sorry for the error in the previous message.We wish to do a project in tux3 filesystem.Please let us know something that you think is within our scope.<br>Thank you !<div><div></div><div class="h5">
<br></div></div></blockquote><div><br>FYI, Recent mail from Daniel:<br><br>
Anyway, let me offer two beginner projects:<br>
<br>
1) Add success checks to unit tests<br>
2) add a "check" command to the tux3 command<br>
<br>
Unit test success:<br>
<br>
- Unit tests are compiled as main programs in tux/user, that include<br>
kernel files and sometimes other userspace files as source text,<br>
for example: #include "kernel/filemap.c"<br>
<br>
- Currently, unit tests just run and produce output. If something is<br>
wrong an assertion may trigger, or it may segfault, or the tracing<br>
output may be unreasonable.<br>
<br>
- It would be better if the test concluded with a test to see that<br>
then final result is as expected, according to the operations that<br>
were performed. The main program should return 0 with no warning<br>
if results are correct, otherwise print a warning and return 1, a<br>
failure code for a shell script we may add later.<br>
<br>
Tux3 check:<br>
<br>
- Command form should be:<br>
<br>
tux3 check <volume> [<file>]<br>
<br>
- As a first approximation, should just walk the filesystem tree from<br>
the root as Hirofumi's tux3graph program does, checking that<br>
physical block pointers lie within the volume and that leaf nodes<br>
of the inode table and file data subtrees pass the leaf checks<br>
already implemented.<br>
<br>
- Later, this walk will build a bitmap map of used blocks so that we<br>
can check that there is no lost space in the volume and that actual<br>
used/free matches the allocation bitmaps. When building the bitmap<br>
we can also check for multiple pointers to the same block, which<br>
are not allowed in tux3.<br><br></div></div><br>