CFS Resources Nov84

Order Number: XX-5E01D-0F

This document, "CFS Resources" by David Lomartire (November 7, 1984), outlines the resource management mechanisms within the CFS (presumably a distributed file system) environment. It details how various "tokens," which are fundamental CFS resources, are acquired, managed, and released to control access and maintain consistency across multiple processors.

The document is structured into sections covering different types of resources:

  1. Files:

    • File Open Token: Manages concurrent access to files (e.g., shared read, exclusive write). Routines like CFSGFA (Acquire) and CFSFFL (Release) handle these. Acquisition involves checking for existing tokens, upgrading access, or creating new resource blocks and initiating a "voting" process.
    • Frozen Writer Token: An exclusive token granted for "frozen write" operations, ensuring a single writer. Managed by CFSGWL (Get) and CFSFWL (Free).
    • File Access Token (OFN access token): Each active Open File Number (OFN) has an access token, supporting modes like full sharing or exclusive. CFSAWT/CFSAWP (Acquire/Reserve) and CFSUWT (Release) are key routines. This section details "callback" routines for write token revocation (CFSDWT), sharing approval (CFSOVT), and optional data handling (CFSDAR), as well as interaction with the Disk Dump/Management Process (DDMP) for page management when tokens are released or revoked.
  2. Directory Locks: Exclusive tokens are used to lock directories (CFSLDR, CFSRDR), with the requesting process being scheduled ("CSKED") during the lock's duration.

  3. Directory Allocation: Tokens manage cached directory allocation information, which is critical for processing page faults and creating file pages. A dispatcher routine (CFSDAU) handles various functions for getting, storing, unlocking, and removing allocation entries, and also supports optional data exchange through "callbacks."

  4. Structures (Mount Resources): To "mount" a structure, both a Structure Name Token and a Drive Serial Number Token must be acquired (CFSSMT, CFMNAM, CFMDSN). These ensure consistent naming and access types across CFS processors and facilitate handling "reduced" CFS systems.

  5. BAT Blocks: An exclusive BAT Block Lock Token (CFGBBS, CFFBBS) controls access to BAT (Block Allocation Table) blocks on a structure.

  6. ENQ/DEQ: A temporary, exclusive ENQ Token (CFSENQ, CFSDEQ) is used to represent file-level enqueues within the CFS environment.

Common mechanisms highlighted across these resource types include the use of short or long resource blocks, hash tables for lookup, distributed voting for resource acquisition, and various status flags and transaction numbers to maintain consistency and resolve conflicts.

XX-5E01D-0F
November 1984
30 pages
Quality

Original
1.5MB

Site structure and layout ©2025 Majenko Technologies