File Systems
ITCMSY1
Outline
- File systems
- Attributes
- Logical and physical file system
- Storage Space Organization
- User Accounts and Access Control
- Backup and recovery
File Systems
- Provides a standard method of sharing the mass (secondary) storage
device.
- Applications need to observe the regulations of the file system to avoid
Resource Contention (access conflict) which leads to data corruption and
loss.
- Local File systems are typically implemented as a part of the operating
system. Examples: NTFS, FAT, EXT4
- Distributed File systems are implemented as network protocols. Example:
FTP, SAMBA
- File Manager software provides an interface to view the organization of and
manipulates files and folders. Examples: File Explorer, Nemo, PCManFM
File Systems
Storage Device
- A storage device typically has a single file system
- Storage devices can be logically divided into partitions wherein each partition
has different File Systems
Example File Systems
- Windows has FAT, NTFS
- Linux has EXT, ZFS, and others
Attributes
Filename
- String of characters that are used as an Identifier of a file
Directories
- Also called folders
- Used for organizing files into hierarchical groups
(folder within a folder and files within a folder)
Metadata
- Contains additional information (apart from the data itself) regarding the file such as:
name, date created, date last accessed, account access permissions, type
(executable, read only, read write), and others
Logical and Physical File System
Logical File System
- Provides operations such as file or folder:
- Read - read the data content
- Write - modifies the data content
- Data are referenced through files within a folder, and folders within a folder
Physical File System
- Data is actually stored on physical storage locations such as: buffers, caches,
sector within a track within a platter within a disk within a drive
Storage Space Organization
Allocation and Deallocation
- File system tracks areas of the physical storage devices that
are occupied by a particular file or date or unoccupied by any
file
- Creating a file allocates space for its data
- Some file system allows incremental allocation as the data
increases.
- Deleting a file deallocates a space in order to be used for
other files in the future
Fragmentation
- Occurs when data of a file are stored in non contiguous
spaces
User Accounts
- Regular User
- Allowed to use the system such as run softwares and manipulate files
- Restricted to use a set of software and manipulates files that the particular account owns
- Root User
- Also called the administrator account
- Allowed to use all software and manipulate all files within the system
Access Control
- Provides a manner of granting access
to files and directories
- Permissions can be set on a per user
basis
- By default, only a particular user
account can access and manipulate its
files but access control to a file / folder
can be configured
- Configuring access control of a file /
folder can only be performed by its
owner account or the root account
Backup
- Copies files to a secondary location for the purpose of preservation in the
case of a failure
File Recovery
- In most modern operating systems, when file or folder is deleted its
logical location is simply moved to a temporary folder called the
trash bin or recycle bin
- Files within the trash bin is recovered by restoring the file to its
original logical location
- When a file is to be permanently deleted,
- its reference is removed from the file system
- but the actual data still resides on the device, its just that there is no way to
reference its location
- Magnetic polarities of the data persists within a drive until new data is stored on to
the same space
- Advanced data recovery can be performed by recovering a data
based on the magnetic polarities within the drive
References
https://en.wikipedia.org/wiki/File_system
https://www.techtarget.com/searchdatabackup/definition/backup
https://www.techtarget.com/searchstorage/definition/partition
https://www.geeksforgeeks.org/what-is-a-storage-device-definition-types-examples/
https://www.serverkaka.com/2018/01/key-locations-in-linux-file-system_21.html
https://remy.parkland.edu/~smauney/csc128/permissions_and_links.html