Content deleted Content added
mNo edit summary |
mNo edit summary |
||
(24 intermediate revisions by 11 users not shown) | |||
Line 1:
{{Short description|File system of the IBM VM/CMS}}
The '''CMS file system''' is the native [[file system]] of [[IBM]]'s [[Conversational Monitor System]] (CMS), a component of [[VM
==Minidisks {{anchor|minidisk}}==
[[CP-67]] and [[VM (operating system)|VM]] allow an installation to divide a disk volume into virtual disks called [[Minidisk (VM)|minidisks]]. A minidisk may be a CMS minidisk, initialized with the CMS file system. Other minidisks might be formatted for use by, e.g., [[OS/360]], but these are not CMS minidisks even if they are assigned to a CMS virtual machine.{{efn|Minidisks have virtual channel and unit addresses (CUU) or subchannel numbers, which appear to the virtual machine to be real disk addresses. At the time IBM developed CP-67 and VM, real hardware devices were conventionally installed at specific addresses, for example address 190 would normally be a disk device '90'x on channel 1, and minidisks are still usually defined to CP following this convention. With VM/XA SP2.1 IBM shipped the bimodal CMS 5.5, which could run in an XA virtual machine, and with z/VM V4 stopped allowing an installation to define an S/370 mode virtual machine; due to these changes, the cuu address form is no longer relevant.}}
A CMS virtual machine can have up to ten minidisks ''accessed''
The <code>ACCESS</code> command is used to access a minidisk. For example: <code>ACCESS 191 A</code> would access the virtual disk assigned to this user as unit "191" (virtual channel and unit address) as minidisk "A".
A CMS minidisk in early versions of CMS is formatted into 800-byte [[block (data storage)|blocks]]. Later versions of CMS allow minidisks formatted as 1024-, 2048-, or 4096-byte blocks, which increased the limits described here
The first two blocks on a minidisk are reserved for [[Booting#IPL|IPL]]. The third block contains the [[Volume (computing)#Volume label|label]] identifying the minidisk. The fourth block, called the ''Master File Directory'' or MFD, is the [[Directory (computing)|directory]] header for the minidisk. The MFD also contains a [[bitmap]] called ''QMSK'' indicating the status of each 800-byte block on disk, used for allocation. Following the MFD all record types may be scattered and intermixed on a disk.
==File system structure==
CMS uses a [[flat file system]]. The MFD contains an array of disk addresses of blocks containing ''File Status Table'' (FST) (directory) entries. Each FST block contains twenty 40-byte FST entries, each describing a file. The contents of one FST entry are:<ref name="DataAreas">{{cite book|last1=IBM Corporation|title=IBM Virtual Machine Facility/370: Data Areas and Control Block Logic|date=February 1976|page=179|url=http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/370/VM_370/plm/SY20-0884-0_VM370_Rel_3_Data_Areas_and_Control_Block_Logic_Feb76.pdf}}</ref><ref name="FSTD">{{cite web |title=FSTD |url=https://www.ibm.com/docs/en/zvm/7.1?topic=instructions-fstd |website=www.ibm.com |publisher=IBM |access-date=11 May 2021}}</ref>
{| class="wikitable"
|-
Line 28 ⟶ 29:
| 20 || 2 || FSTWRPNT || Write pointer [item number] (binary)
|-
| 22 ||
|-
| 24 || 2 || FSTFMODE || {{not a typo|Filemode}}
|-
| 26 || 2 || FSTRECCT || Record [item] count
Line 51 ⟶ 52:
Records are usually called ''items'' in CMS terminology. CMS files can have either ''fixed'' or ''variable'' record format; record types may not be mixed in a file. For fixed-length records the length is defined by FSTLRECL, and the ___location of any fixed-length record can be computed by (item_number-1) * record_length/800. The quotient will be the block number and the remainder will be the offset of the item in the block. Variable-length records have a maximum length of FSTLRECL bytes, and are preceded by a two-byte record length field indicating the actual length.
In 1979, Virtual Machine/System Extensions (VM/SE or SEPP) Release 2 and Virtual Machine/Basic System Extensions (VM/BSE or BSEPP) Release 2 provided an enhancement<ref>{{cite conference
An enhancement to the original CMS file system in [[z/VM]], called ''Enhanced Disk Format'' (EDF), allows larger files by expanding the FST and introducing multiple levels of chain link blocks.<ref>{{cite web|title=The CMS EDF file system|url=http://dforeman.cs.binghamton.edu/~foreman./550pages/VM/CMS-File-System-1.doc|website=binghamton.edu|accessdate=August 5, 2016}}</ref><ref>{{cite web|last1=IBM Corporation|title=FSTD|url=http://www.vm.ibm.com/pubs/cms530/FSTD.HTML|website=ibm.com|accessdate=August 5, 2016}}</ref>▼
| conference = SHARE 89
| title = VM and the VM Community: Past, Present, and Future
| at = Sessions 9059-9061, M. After the Doubtful Decade
| quote = 1979 brought us VM/370 Release 6 and Release 2 of BSEPP and SEPP, with logical device support, the EDF file system,
| author = Melinda Varian
| date = August 1977
| url = http://www.leeandmelindavarian.com/Melinda/25paper.pdf
}}
▲
==See also==
* [[IBM System/360 architecture]]
* [[IBM ESA/390|ESA/390]]
* [[z/Architecture]]
==Notes==
{{Notelist}}
==References==
{{Reflist}}
[[Category:Disk file systems]]
[[Category:IBM file systems]]
[[Category:IBM mainframe operating systems]]
[[Category:
|