Changes between Version 1 and Version 2 of file_system
- Timestamp:
- May 26, 2015, 8:13:15 PM (10 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
file_system
v1 v2 14 14 15 15 The FAT region on the block device is an array of 32 bits words defining the linked list of clusters allocated to given file in the DATA region of the block device. 16 Each slot in this array contains a cluster_ptr, that is the index of cluster on the block device. The cluster_ptr value cannot be larger than 0x0FFFFFFF (i.e. 256 M). The max addressable storage capacityon the block device is therefore (256 M * 4 Kbytes) = 1 Tbytes.16 Each slot in this array contains a cluster_ptr, that is the index of the cluster on the block device. The cluster_ptr value cannot be larger than 0x0FFFFFFF (i.e. 256 M). The max addressable storage capacity in the DATA region on the block device is therefore (256 M * 4 Kbytes) = 1 Tbytes. 17 17 18 18 This implementation uses memory caches implemented in the distributed kernel heap. 19 19 There is actually one cache per file (called '''file_cache'''), and one cache for the FAT itself (called '''fat_cache'''). 20 The cache size is not fixed: it is dynamically increased from the kernel heap as required by the read / write access to the files or to the FAT itself. The memory allocated to a given cache_file is only released when the file is closed. 21 22 In the present implementation, there is no rescue mechanism in case of heap overflow: The system crash 23 with a nice error message on the kernel terminal... 20 24 21 25 == Cache Structure ==