hi i am working on a project which deals with simulating the unix file system or any other file system .i can invent my own as well.i am developing a unix like shell which will provide all the file handling commands similar to unix.Basically I want to allocate a large file on the actual file system, and treat it as a virtual disk for the file system simulation. In order to implement the file system, I would create and manipulate various data structures on the virtual disk to create and manage the file system. For manipulating the file system's data on the virtual disk, i can use C file functions such as fopen, fread, fwrite etc and implement a unix like shell which will act on this disk. but my problem is how do i store the tree like unix file system in a file(virtual disk) ??or how do i create data structures like superblock, boot block,inode list, within this virtual disk ??is simulating the unix file system tougher ?if yes then what other options should i look for ?