Organizing
[repair.git] / Repair / RepairCompiler / MCC / specs / oldfilesystem / test.space
diff --git a/Repair/RepairCompiler/MCC/specs/oldfilesystem/test.space b/Repair/RepairCompiler/MCC/specs/oldfilesystem/test.space
new file mode 100755 (executable)
index 0000000..bd84734
--- /dev/null
@@ -0,0 +1,73 @@
+// sEXT2 - Simple File System Example
+// Space Definition Language File
+
+set Block(int) : partition 
+    UsedBlock | 
+    FreeBlock;
+
+set FreeBlock(int);
+
+set Inode(int) : partition 
+    UsedInode | 
+    FreeInode;
+
+set FreeInode(int);
+
+set UsedInode(int) : partition 
+    FileInode | 
+    DirectoryInode ;
+
+set FileInode(int);
+
+set DirectoryInode(int) : RootDirectoryInode;
+
+set RootDirectoryInode(int);
+
+set UsedBlock(int) : partition 
+    SuperBlock | 
+    GroupBlock | 
+    FileDirectoryBlock | 
+    InodeTableBlock | 
+    InodeBitmapBlock | 
+    BlockBitmapBlock;
+
+set FileDirectoryBlock(int) : 
+    DirectoryBlock | 
+    FileBlock;
+
+set SuperBlock(int);
+
+set GroupBlock(int);
+
+set FileBlock(int);
+
+set DirectoryBlock(int);
+
+set InodeTableBlock(int);
+
+set InodeBitmapBlock(int);
+
+set BlockBitmapBlock(int);
+
+set DirectoryEntry(DirectoryEntry);
+
+// relations xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
+
+inodeof: DirectoryEntry -> UsedInode (many->1);
+
+contents: UsedInode -> FileDirectoryBlock (1->many);
+
+inodestatus: Inode -> token (many->1);
+
+blockstatus: Block -> token (many->1);
+
+referencecount: Inode -> int (many->1);
+
+filesize: Inode -> int (many->1);
+
+
+
+
+
+
+