7/12/2011

File management and debugging

 After a little discussion about the cache system of the ISO9660 filesystem layer, my mentor (Chris Johns) and I decided that the cache wasn't the thing to primarily focus on for now. The last week was therefore dedicated to the implementation of basic file management and access routines.

 The first step taken (i.e: directory structure management), my work time was dedicated to the implementation of file related file-system handlers. Like the directory handlers, the core of this functionality reside in a few POSIX call handlers : open / read / close / stat. The write call is not implemented since iso9660 volumes are read-only.

 Additionally, I wrote down a few helper routines in order to let me debug the code during the next steps of the development. All the "function error break" have been documented, the functions now silently fails in production mode and becomes verbose when DEBUG is defined (when RTEMS is compiled with debug support), which will become very, very useful.. :-)

 I begun a shell function dedicated to the debugging of a mounted ISO9660 volume (just like Chris Johns did for the RFS file-system) : the debugiso9660 is able to call various subroutines aimed to perform debug operations on the file-system, it's cleaner than writing hard-debugging code within the function and it could be more efficient than tracing with GDB. Currently the only existing subroutine is "volume", which prints volume-related information in the shell console.

No comments:

Post a Comment