Mainframe上存储容量的换算

Mainframe上存储容量的换算

想必用过大机的人都接触过Block, Track, Cylinder的概念。Mainframe的存储管理一般就是基于这几个单位。

那么,Mainframe上1个Cylinder是多少个Track?1个Track是多少个KB?1个Track包含多少个Block?

 

对于第一个问题,多数人都知道答案是15,基于一般的磁盘设备,15这个答案没有错,但是对于磁带,应该是没有柱面这个概念的。(这个有待探讨,毕竟大家真用过磁带的不多,而做备份是不需要手动分配存储的)

 

第二个问题,1个Track是多少个KB?

经过查阅相关IBM官方文档,可以得知,不同类型的设备,1个Track包含的KB数不等。

对于最常见的3390设备,1 Track = 56,664 Bytes;对于3380设备,1 Track = 47,476Bytes。

(参考文献:IBM System Storage DS8000 Information Center,章节LUN calculation)

 

第三个问题,1个Track包含多少个Block?

首先,Block的大小是自定义的,能够定义的最大的Block Size是32760(bytes)。如果定义一个Block为32760 bytes,那么无论对于3390还是3380,一个Track只能包含1个block。无疑这是很大的浪费,因为这个track上剩下的Bytes是无法取用的。(1个Track只能隶属于1个文件,而且block不可以span track)

所以,空间最优化的block size方案是1个track放2个block。因为block之间有inter block gap,1个track上剩下的可用byte数为55,996个,所以,最优的block size数值为最接近但不超过27,998的那个record size的整数倍的数值。

你可能感兴趣的:(Mainframe上存储容量的换算)