View on GitHub

os202

OS202

HOME


Top 10 List of Week 03

  1. File Access Methods
    There are three ways to access a file into a computer system: Sequential-Access, Direct Access, Index sequential Method. In Sequential Access, Information in the file is processed in order, one record after the other. The direct access is based on the disk model of a file since disk allows random access to any file block. For direct access, the file is viewed as a numbered sequence of block or record. The Indexed Access method is built on the top of the direct access method. These methods construct an index for the file.

  2. File System Structure
    File System provide efficient access to the disk by allowing data to be stored, located and retrieved in a convenient way. A file System must be able to store the file, locate the file and retrieve the file. Most of the Operating Systems use layering approach for every task including file systems. Every layer of the file system is responsible for some activities.

  3. File System Implementation
    We can implement file system by using two types data structures :
    • On-disk Structures : Generally they contain information about total number of disk blocks, free disk blocks, location of them and etc
    • In-Memory Structure : They are maintained in main-memory and these are helpful for file system management for caching.
  4. Virtual File System
    Virtual File Systems, provide a common interface to multiple different filesystem types. In addition, it provides for a unique identifier ( vnode ) for files across the entire space, including across all filesystems of different types.

  5. Directory Implementation
    The directory implementation algorithms are classified according to the data structure they are using. There are mainly two algorithms which are used in these days, there are linear list and hash table. In linear list, all the files in a directory are maintained as singly lined list. Each file contains the pointers to the data blocks which are assigned to it and the next file in the directory and to overcome the drawbacks of singly linked list implementation of directories, there is an alternative approach that is hash table.

  6. Allocation methods
    The allocation methods define how the files are stored in the disk blocks. There are three main disk space or file allocation methods.
    • Contiguous Allocation, this location requires that each files occupy a set of contignous blocks on the disk.
    • Linked Allocation, this solves all problems of contignous allocation. Each file is a linked list of disk blocks; this blocks may be scattered anywhere n the disk
    • Indexed Allocation, in this scheme, a special block known as the Index block contains the pointers to all the blocks occupied by a file. Each file has its own index block.
  7. What is FUSE?
    Filesystem in Userspace (FUSE) is a software interface for Unix and Unix-like computer operating systems that lets non-privileged users create their own file systems without editing kernel code. FUSE is available for Linux, FreeBSD, OpenBSD, NetBSD (as puffs), OpenSolaris, Minix 3, Android and macOS

  8. Consistency Semantic
    Consistency Semantics is concept which is used by users to check file systems which are supporting file sharing in their systems. Basically, it is specification to check that how in a single system multiple users are getting access to same file and at same time. They are used to check various things in files, like when will modification by some user in some file is noticeable to others

  9. Free Space Management
    A file system is responsible to allocate the free blocks to the file therefore it has to keep track of all the free blocks present in the disk. There are mainly four approaches by using which, the free blocks in the disk are managed. There are Bitmap or Bit vector, Linked List, Grouping and Counting.

  10. Remote File System
    Remote file systems are implemented by a collection of software components. The number and complexity of the software components required varies based on the design and complexity of the remote file system.