It has been April since my last post. I have been coding up the structures to handle the basic FAT filesystem. I am at the point where all I have left is complex kernel code to figure out. These issues are as follows.
- Bringing an inode by number into memory from disk, or accessing it already there. Up till now I had a file struct pointer.
- Identifying what that inode is (regular file, directory, irregular file,...:)
- Determining if slack space exists
- Getting to the last logical block to read or write
- Writing the inode in cache back down to disk (aka The Cache Incoherency Problem)
I have a few other issues that are minor and are not worth mentioning unless they really start to cause problems. More later.