File indexing question
Hi
I’m going to develop an application for university and I would really appreciate some advice. I’m creating a file managing system, like tar, that creates a ‘file’ which manages a collection of files. You can add files to the ‘file’, create directories (a directory would be a file with pointers to inodes), delete them, etc. It’s like creating a small file system. I have to develop it in Linux, in C++, it’ll be an Object Oriented Program. I was thinking of dividing the ‘file’ in three parts, the main or first section, the ‘inodes’ section and the files section. The inodes are small pieces of data that contains information of the files inside the ‘file’, its name, where it starts and the size in bytes among other things. I was thinking that all of them could have the same size, but that’s not good, as space will be wasted for file names. Then, for indexing the files inside the big ‘file’, I was thinking in giving them numbers, and searching sequentially, but I need something more efficient. I heard that the best solution to that are trees. Which is the easier solution to implement, one which is also fast? Any other ideas of how could I index files inside the big ‘files’? Any links or recommended books on the subject? I’m quite new in this area of programming and I didn’t find anything useful on the net.
Thank you very much for your time!
|