git-svn-id: https://profuse.googlecode.com/svn/branches/v2@69 aa027e90-d47c-11dd-86d7-074df07e0730

This commit is contained in:
ksherlock 2009-11-21 01:46:19 +00:00
parent a3cc7627b8
commit 23cf78b5ab
1 changed files with 32 additions and 0 deletions

32
version2.txt Normal file
View File

@ -0,0 +1,32 @@
Version 2 Goals
Version 2 is a more or less complete rewrite with the following goals:
- better code modularity (disk image code should be usable for dos, pascal, cpm, stand alone utlities, etc)
- better c++ coding
- sdk (shrinkit) support
- nibblized disk image support
- raw device support
- write support.
Other utilites:
- fsck - verify and fix image integrity
- newfs - create a new disk image
inodes:
Unix (and fuse) expect every file to have an inode, a unique integer file identifier. ProDOS does not use inodes (or anything like them).
v1 used the file entry address as an inode, reloading the file entry every time.
Since file entries are stored in the parent directory, moving a file changes the address, so this won't work with write support.
(A file may be moved or deleted while it's open without affecting open references to it.)
To handle inodes, perhaps I should use the key pointer (which would require a hash to convert it back to the entry) or generate one on the fly and maintain it until necessary