The File Manager is responsible for providing access to files and their resources. Its efficiency is determined by creating, deleting, modifying, and controlling access to files. It keeps track of directories containing file names, physical location in secondary storage, and file information.
To fulfill its responsibilities, the File Manager performs four tasks: tracking file locations, determining storage policies for efficient use of space and access, allocating files when granted access, and deleting files when returned to storage.
As an essential component of the file system, the File Manager determines where each file is stored and enables user access through independent commands that do not rely on device details. It utilizes shared files, distributed access, and public directories as basic information pieces to keep track of its files.
The allocation of a file follo
...ws the policies defined by the File Manager. This involves activating the appropriate secondary storage device, loading it into memory while updating records on who is using which file. The process of updating file tables and rewriting files to secondary storage devices if they have been revised involves notifying any processes waiting to access the filed of its availability.
File Definitions:
- A field is a group of related bytes that can be identified by the user with a name,type,and size.
- A record is a group of related fields.A file is a collection of related records that contains information for specific application programs. This type of file, also known as a flat file because it lacks connections to other files, holds data. A database appears as a file to the file manager but is actually a complex grouping of interconnected files that provide users with flexible access to
stored data. Program files contain instructions, while data files hold data. However, both types are treated the same way in terms of storage by the file manager.
Directories list filenames and their attributes. The File Manager allows users to interact with it using commands like copy, delete, rename, open, create, and new. Each program must include the precise physical location on the disk pack.
Active files are typically stored on secondary storage units within computer systems. Examples of removable storage units that store information include CDCs (compact disc cartridges), DVDs (digital versatile discs), floppy disks, USB devices etc. Every storage unit whether removable or fixed is referred to as a volume.
The File Manager writes the name and relevant information of each volume onto different types of units. This enables the operating system to communicate with the unit effectively. Specifically this information is written at different parts depending on the unit type: innermost part for CDs; beginning for tapes;The first sector of the outermost track is used for other media formats like disks and USB devices. Immediately following the volume descriptor, you can find the Master File Directory (MFC). If supported by the file manager, subdirectory names can be stored in the MFC. The remaining space on the volume is utilized for storing files. In older operating systems, only one directory per volume was supported. However, modern file managers create an MFC for each volume that contains entries for both files and subdirectories.
When a user creates an account on a computer system, the File Manager creates a subdirectory for them. Today's File Managers also encourage users to create their own subdirectories or folders. When it comes to file
requests, the point of entry is determined by examining the volume descriptor provided by the File Manager. Upon receiving a filename from a user, it searches through the MFC (Master File Table) to locate that user's directory. It then searches for both requested files and their locations within that directory and any associated subdirectories.
Every directory includes file entries containing information such as filename, file type, and file size. The displayed filename might be shorter than its actual length and usually consists of a relative filename with an extension. An absolute filename or complete filename includes all path information.Relative filenames are a way to distinguish files within the same directory. Path information is used to indicate the location of a file in directories and folders. The rules for relative filenames differ depending on the operating system, with some requiring an extension to be added. This extension, denoted by a dot (.), appears after the filename and helps determine how the file should be interpreted or handled by the operating system.
File extensions typically consist of two or three characters separated from the relative name by a period. In graphical user interface systems such as Windows or Macintosh, users can create subdirectories known as folders. Creating a "folder" is equivalent to creating a subdirectory.
The current/working directory exists within the Home/Base directory hierarchy. When accessing a file, users input its relative name and the File Manager adds the necessary prefix. Commands that modify file contents refer to accessing records within that specific file.
All files are composed of records, which can have fixed or variable lengths. Fixed-length records allow for direct access and are more commonly used, while variable-length records
do not leave empty storage space or truncate characters like fixed-length records do.
Data files mostly utilize fixed-length records, whereas sequential, direct, or indexed sequential files often employ variable-length records.Magnetic disks offer different options for organizing files, including indexed sequential records, direct records, and sequential records. Among these choices, sequential record organization is the easiest to implement as it stores and retrieves records in sequence. Direct record organization uses random access files and is specifically designed for direct access storage devices. Files using direct record organization are also called random access files. Sequential record organization is commonly used for dynamic files where records are frequently added, deleted, or changed. This type of organization allows the File Manager to handle files as a collection of records with consistent format but varying lengths.
When discussing file storage, we actually mean record storage since a file consists of records. In earlier operating systems, continuous storage was used to store consecutive records. However, non-contiguous storage allocation now allows files to utilize any available space on the disk when there isn't enough empty space.
Indexed storage allocation provides direct access control and enables efficient file sharing among users in modern operating systems. Previously, initial operating systems did not allow file sharing among users. Nowadays though, all types of files - data files, program files, and system files - can be shared among multiple users.
It's important to note that while file sharing has its benefits, it also poses a major drawback: it can compromise file integrityThere are different actions that can be performed on a file, such as reading, writing, executing, deleting, or a combination of these. Not all file management systems use the
same methods for controlling file access.
An Access Control Matrix contains information about file access control and consists of columns representing attributes. Each row in the matrix corresponds to specific entities or users defined for access control purposes. The intersection between a row and column indicates the permissions granted or denied for a user/entity and resource.
A modified version of this matrix is called the Access Control List (ACL), which may have condensed or differently organized content depending on the system. The ACL describes responsibilities associated with each category. Default access types are assigned by the File Manager when files are created.
Another perspective on organizing access control information is provided by the Capability List; however, its specific organization method remains unspecified in this text. It is not specified which of these three schemes is most commonly used as an access control form.
Furthermore, there is another list gaining popularity without mentioning its name and reason behind its rise in this text.
Please note: Refer to page 275 of your textbook for introductory paragraphs related to this topic.