E N D
T111 File Systems
File Systems • “In computing, a file system (often also written as filesystem) is a method for storing and organizing computer files and the data they contain to make it easy to find and access them…”“…More formally, a file system is a special-purpose database for the storage, organization, manipulation, and retrieval of data.”Wikipedia
File Storage • Files can be stored on: • HDD • Optical media • Flash media (USB drives / SSDs) • Tape • Floppy • Which of these require a file system?
File Systems • Why have them? • To have a consistent way to access data in storage regardless of the storage media • So that the programmer does not need know how to access various different types of storage
File Systems • File Systems may provide: • Allow files to be organised into logical directories • Access control • Procedures for copying moving and deleting • Encryption • Compression
Encryption • Encrypts files so that they are unreadable by unauthorised users • Uses an algorithm (Cypher) to encrypt plain text and make it unreadable • Advantage • Files are protected and only accessible by authorised users • Disadvantage • Requires more processing time than files that are not encrypted to read / write
Encryption • When would you use encryption? • When would you not use encryption?
Compression • Compresses files so they take up less storage space • Works better on some files than others • Advantage • Files take up less space • Disadvantage • The files have to be decompressed before they are read and then compressed before they are written
Compression • When would you use compression? • When would you not…?
HDD Terminology B A C A D C (Sector is usually the same as block) Geometrical Sector Cylinder Block Track Cluster Track Sector
HDD Terminology • Block • The smallest accessible part of a HDD • Cluster • A defined group (cluster) of blocks • Cluster size can be configured when the partition is formatted
File Systems • The file system allocates files to clusters rather than blocks • Therefore, a 1 byte file will take up 1 cluster even if the block size is 512bytes • Does this seem like a waste?
File Systems • Small files or files that only use a small part of a cluster waste storage space • Why not make the cluster size one block? • As the cluster size increases, file fragmentation decreases • Less file fragmentation means faster file access and vice versa • The more clusters there are, the more there are to manage • The file system structure is cached into RAM so that it can be read quickly • The smaller the cluster size, the larger the file system structure that has to reside in RAM • HDD space is always cheaper than RAM
File Allocation Table (FAT) • A simple file system • Supported by mp3 players, digital cameras etc • Not implemented for PCs any more • FAT16 • Supports 2GB partition size • FAT32 • 2TB disk size (in theory) • 4GB maximum file size
FAT • The good: • Simple and widely supported • Suitable for smaller drives • The bad: • Has limiting file size restrictions • Becomes very inefficient and slow when used on large partitions / drives • Windows won’t even let you create a partition over 32GB • The ugly: • Easily becomes fragmented • Everyone now thinks that they need to defrag their NTFS drives every month
NTFS • New Technology File System… next week