TSO
TSO是Time Sharing Option的缩写,是MVS的命令输入处理器。
TSO是在操作系统的管理下,用来支持ISPF菜单式会话系统和资源管理设备(RMF)的,而应用程序及系统提供的各种工具则是在ISPF的支持下,完成各自的任务的。
RMF
RMF是用于性能分析,容量规划和问题诊断的IBM产品。
数据集
DATASET(就是PC的文件)。名称全长不超过44个字符,每个小数点间的字符最多8个,不能以数字开头。
分配数据集时,必须指定数据格式,最通用的是定长和变长记录格式。
无论是定长还是变长记录都是分块的,因此所需的存储空间和所需的输入输出操作要少于非分块的记录。
分块是指,在单个块中对多个数据记录的存储处理,任何时候发生输入输出操作时,传送的是整个块,而不是单个记录。
数据集组织和文件格式这两个词紧密对应。一般来说数据集只包含业务数据集合(姓名、薪资、销售额等),而文件则可以包含多种类型的数据(图像、音频数据、视频数据等)。
对于商业数据,相比数据集和文件来说,数据库是一个比较新的选择方案。
传统的z/OS数据集是面向记录的。 正常使用下,它没有PC系统和UNIX系统中所有的字节流文件。
在 z/OS 中,没有新的行(NL)或回车以及行填充字符来指示记录的结束。
顺序数据集(PS)
按进入的先后顺序排列,EOF表示文件结束。记录不能被删除,只能在文件尾部插入。必须按顺序读取记录,想要获取记录5,系统必须先读取前4个记录。
顺序数据集也被认为是物理顺序集(PS)。
可以直接查看和修改,可以存放数据或者源码,可将其简单理解为PC上的根目录下的“ 文本文件” 。
分区数据集( PDS)
PDS就是分区数据集,在他里面可以存放多个MEMBER,常用来作为程序,JCL, LOAD库。
将数据集分为按顺序组织的成员(Member),每个数据集可以有一个或多个成员,每个成员有唯一的名字,作为数据集的一部分存储在地址目录中。
设在数据集开始部位的地址目录包含了每个成员的入口部分,每个地址目录的入口包含成员名和成员在数据集的起始位置,地址目录入口按成员名的字母顺序排列。
分区数据集打开以后,不需要查询整个数据集,用户就可以获取任何一个Member的记录,根据需要可以增加或删除任何一个Member记录。
但只是删除了地址目录中的Member名,在利用系统功能重新分配数据集之前,删除记录的空间是不能被重修使用的。
扩展分区数据集(PDSE:Partitioned Data Set Extended)
与PDS数据集类似,也是由多个Member组成,唯一区别是,PDSE的地址目录的大小是动态的,在创建时不需指定目录块数量。
因此在增加或删除Member时,系统会自动分配或回收存储空间。
VSAM
虚拟存储访问方法(VSAM)是一种能比其他磁盘访问方法提供更多复杂函数(功能)的访问方法。VSAM 以一种唯一的,而其他访问方法不理解的格式来保存磁盘记录的。
VSAM文件不能按常规用 ISPF显示或编辑。AMS 是用来定义 VSAM 的结构的,例如文件和索引。
VSAM 能够以多种方法组织其数据:
<ESDS>
进入顺序数据集(ESDS-Entry Sequence Data Set),这种形式的VSAM现在很少使用。它按记录的写入顺序保存记录(对于这种类型的数据,QSAM比ESDS更常用)。
<KSDS>
索引顺序数据集(KSDS-Key Sequence Data Set),这是VSAM最常见的应用格式。每个记录有一个或多个索引,记录可以通过索引值读取(或插入)。
KSDS提供对数据的随机访问。记录可是定长也可以是变长的。索引设定后不能更改,但整条记录可以删除。
<LDS>
线性数据集(LDS-Linear Data Set),实际上,这是一个字节流的数据集,它是传统MVS中唯一的字节流数据集格式。许多z/OS的系统函数使用这种格式,但是它很少被应用程序使用。
<RRDS>
相对记录数据集(RRDS-Relative Record Data Set ),这种文件格式与Relative File相类似,它将整个存储体分成许多固定长度的Slot,并分别加以编号,
即所谓的相对资料记录编号RRN(Relative Record Number),通过RRN来读取数据记录,提供随机读取和顺序读取。
CATALOG
主机的文件系统是通过CATALOG来管理的。
如果你定义一个dataset, 会最终分配在某个磁盘卷.,在这个磁盘卷的VTOC会增加这个dataset的信息,在没有catalog管理的时候,我们都需要访问这个dataset需要指定这个卷的信息。
这一点类试现在的windows系统。但对于主机存放大量数据, 没有管理很容易数据很混乱,不知道data到底在哪个卷,就引入catalog。
通过catalog, 系统直接通过dataset的hlq在catalog就知道是会分配在哪几个卷上,再到那几个卷去查找相应的dataset就可以了。
Catalog有两种,一种是master catalog, 存放系统dataset信息和user catalog, 所有sys1.**都存放在master catalog, 这样查找就会直接找到, 系统启动的时候也会在loadxx参数制定master catalog。
一种是user catalog, 可以用户自己定义,管理, 一般用于管理用户自己数据集。对于某个dataset要了解它在哪个catalog可以使用listcat。
Eg: listcat entries(‘ibmuser.jcllib‘).
VTOC
VTOC也是一个数据集,里面储存了所在卷的数据集的信息,比如位置、大小等。卷上第一个TRACK上有一个记录。这个纪录指向该卷的VTOC位置。
VTOC的位置在cylinder 0, track 0之后,结束在track 65,535之前。
但是 VTOC 只能管理本磁盘卷,不能管理整个磁盘数据,在 z/OS系统中,系统使用目录机制来管理整个系统中的数据集。
目录是根据数据集名来存储信息的,这意味着数据集名必须是唯一的。磁盘和磁带的数据集都可以被编目录。
数据集的存储方式
z/OS系统中的磁盘数据集被组织在磁盘卷上,称为直接访问存储设备(DASD)。在同一 个卷上数据集的名字必须是唯一的。
数据集可以根据设备类型(?)、卷序列号和数据集名来定位。这与UNIX系统的文件树是不一样的,基本的z/OS系统的文件结构是不分等级的,z/OS的数据集没有与路径名类似的等价物。
(1)直接访问存储设备(DASD),是磁盘驱动器的另外一个名字。
(2)磁盘驱动器也称为磁盘卷,磁盘包, 或一个头磁盘集合(HDA)。一般使用 卷(VOLUME)。
(3)磁盘驱动器包含柱面(cylinders)。
(4)柱面包含轨道(Tracks)。
(5)轨道包含数据记录,为CKD(Count Key Data)格式。
(6)数据块是磁盘上记录的组织单位。
数据集记录格式
常用的是FB固定长度BLOCKED。VB变长blocked。U不定长,用于LOAD库。
首先我们说明“块”和“记录”之间的区别。块是逻辑记录的组合,是读取的单位;而记录则是一个逻辑实体。
数据集记录格式说明如下:
(1)定长不组块记录格式(F–Fixed),是指磁盘上的一个物理块就是一个逻辑记录,并且所有的块/记录的大小相同。
(2)定长组块记录格式(FB - Fixed Blocked)是指一些逻辑记录被组合成一个物理块。这能提供有效的空间利用和操作。该格式通常适用于定长记录。
(3)变长不组块记录格式(V- Variable)是指一个逻辑记录就作为一个物理块,因为记录 是变长的,要求应用程序在记录的开始插入一个4字节的记录描述字(RDW)。物理块的长度包含记录的长度和4字节的RDW,该格式很少被使用。
(4)变长组块记录格式(VB –Variable Blocked),是指一个物理块由若干条逻辑记录组成,每条记录都有RDW描述,物理块中还有BDW描述为4个字节。
(5)无定义格式(U – Undefined)该格式是由没有预定义结构的、变长的物理记录/块组成的。虽然这种格式可能对许多特殊的应用程序来说很有吸引力,但是它通常只被用于可执行的模块。
BLKSIZE
块大小 (BLKSIZE-Block Size) 是针对F和FB记录的写在磁盘上的物理块大小。 对于V,VB和U记录格式,数据集可以使用最大物理块大小。
LRECL
逻辑记录大小 (LRECL-Logical Record Length) 是逻辑记录的大小(F,FB) 或允许的最大的逻辑记录大小(V,VB)。 格式U记录没有LRECL。
RECFM
记录格式(RECFM-Record Format)有F,FB,V,VB或U,正如前面介绍的
-- END --