Implement a proper block layer with partition support.
[pintos-anon] / src / filesys / filesys.h
index bbde398c51f3adad35629e045bbd7a7c4aec92fd..c1cda84ecc324fbe70b4e9e3e729ed9ade89c24b 100644 (file)
@@ -1,13 +1,20 @@
-#ifndef HEADER_FILESYS_H
-#define HEADER_FILESYS_H 1
+#ifndef FILESYS_FILESYS_H
+#define FILESYS_FILESYS_H
 
 #include <stdbool.h>
+#include "filesys/off_t.h"
 
-void filesys_init (bool reformat);
-bool filesys_create (const char *name);
+/* Sectors of system file inodes. */
+#define FREE_MAP_SECTOR 0       /* Free map file inode sector. */
+#define ROOT_DIR_SECTOR 1       /* Root directory file inode sector. */
+
+/* Block device that contains the file system. */
+struct block *fs_device;
+
+void filesys_init (bool format);
+void filesys_done (void);
+bool filesys_create (const char *name, off_t initial_size);
 struct file *filesys_open (const char *name);
 bool filesys_remove (const char *name);
 
-void filesys_self_test (void);
-
-#endif /* filesys.h */
+#endif /* filesys/filesys.h */