Структуры размещения файлов Логический том Аллокирование свободного места Учет плохих блоков Расположение контейнера на диске Физический том
Логический том - это монтируемая сущность Физический том - сущность которая занимает место на диске, может содержать логические тома которые имеют единую структуру распределения места внутри физического тома. Case-sensitivity:
Case-preserved:
Организация inode:
API для томов файловой системы Операции с томами Получить информацию о томе Имя файловой системы Серийный номер тома Метка тома Свойства файловой системы case-sensitive support ACL support compressed files support encrypted files support named data streams support sparse files support quotas support reparse points Установить информацию о томе Установить метку тома Получить размер свободного места на томе Получить тип тома Removable Fixed Remote CD/DVD Ramdisk Квоты на всех пользователей (кроме root) на конкретного пользователя мягкая квота жесткая квота Для систем с некорневыми файловыми подсистемами получить список томов Монтировать том Дизмонтировать том UNIX API:
int statvfs(const char* path, struct statvfs* buf) int fstatvds(int fd, struct statvfs* buf) struct statvfs { unsigned long f_bsize; unsigned long f_frsize; unsigned long f_blocks; usnigned long f_bfree; unsigned long f_avail; unsigned long f_files; unsigned long f_ffree; unsigned long f_favail; unsigned long f_fsid; unsigned long f_flag; ST_NOATIME ST_MANDLOCK ST_NODEV ST_NODIRATIME ST_NOEXEC ST_NOSUID ST_RDONLY ST_SYNCHRONOUS unsigned long f_namemax; } |
long int pathconf(const char* pathname, int name) // by path long int fpathconf(int fd, int name) // by handle _PC_PATH_MAX max number of links _PC_NAME_MAX max name len _PC_PATH_MAX max path len |
BOOL GetVolumeInformation( LPCTSTR lpRootPathName, LPTSTR lpVolumeNameBuffer, DWORD nVolumeNameSize, LPDWORD lpVolumeSerialNumber, LPDWORD lpMaximumComponentLength, LPDWORD lpFileSystemFlags, LPTSTR lpFileSystemNameBuffer, DWORD nFileSystemNameSize ); FILE_NAMED_STREAMS FILE_READ_ONLY_VOLUME FILE_SUPPORTS_OBJECT_IDS FILE_SUPPORTS_REPARSE_POINTS FILE_SUPPORTS_SPARSE_FILES FILE_VOLUME_QUOTAS FS_CASE_IS_PRESERVED FS_CASE_SENSITIVE FS_FILE_COMPRESSION FS_FILE_ENCRYPTION FS_PERSISTENT_ACLS FS_UNICODE_STORED_ON_DISK FS_VOL_IS_COMPRESSED |