30.07.2013 Views

Development and Implementation of a File System for Gannet Virtual ...

Development and Implementation of a File System for Gannet Virtual ...

Development and Implementation of a File System for Gannet Virtual ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

partition <strong>for</strong> directory structure to 32 byte <strong>and</strong> file names to 24 characters. The use<br />

<strong>of</strong> fixed-length <strong>of</strong> directory entries, in this case 32 bytes, is a trade <strong>of</strong>f involving<br />

speed <strong>and</strong> storage. <strong>Gannet</strong>FS directory is very simple <strong>and</strong> space efficient <strong>for</strong> looking<br />

up <strong>and</strong> storing entries. However, there is wasted on storage, if the name <strong>of</strong> file is less<br />

than 20 characters.<br />

It is different with directory entry on other UNIX which breaks data blocks into<br />

variable-length directory entry in order to allow name <strong>of</strong> files to be <strong>of</strong> nearly<br />

arbitrary length. Thus, the size <strong>of</strong> directory entry structure varies depending on the<br />

filename length. There<strong>for</strong>e, there is no space wasted <strong>for</strong> small file name. However, as<br />

an entry is deleted, the entry’s space from deleted entry cannot be reused <strong>for</strong> new<br />

entries if the length <strong>of</strong> file name longer than the deleted one. Hence, the size <strong>of</strong><br />

directory tends to grow despite there are number <strong>of</strong> entries deleted.<br />

However, the usage <strong>of</strong> fixed length on <strong>Gannet</strong>FS overcomes that problem. Since the<br />

size is fixed, the entry’s space from deleted entry can be used <strong>for</strong> new entry.<br />

Moreover, to minimize the wasted space, the maximum limit <strong>for</strong> entry’s file name is<br />

designed to accommodate the mean file name length. There<strong>for</strong>e, this approach<br />

provides more space efficiency.<br />

3.2.2.3 Translator Data Structure Design<br />

A common request on file system is to look up a file name in a directory. This<br />

request commonly stated using name path. However, the system cannot underst<strong>and</strong><br />

the path name as system accessing files <strong>and</strong> directories by accessing their inodes.<br />

Moreover, <strong>Gannet</strong>FS does not support relative address. As the user <strong>of</strong> <strong>Gannet</strong>FS is<br />

service cores on <strong>Gannet</strong> system which is not human, there is no need to establish a<br />

relative address. Hence, a mechanism to resolve an absolute path name into an<br />

inode is required. <strong>Gannet</strong>FS uses translator structure to resolve the path name<br />

required.<br />

31

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!