throbber
United States Patent c191
`Gelb et al.
`
`[11] Patent Number:
`(45] Date of Patent:
`
`5,018,060
`May 21, 1991
`
`(75]
`
`(54] ALLOCATING DATA STORAGE SPACE OF
`PERIPHERAL DATA STORAGE DEVICES
`USING IMPLIED ALLOCATION BASED ON
`USER PARAMETERS
`Inventors: Jack P. Gelb; John C. Tyrrell, both of
`San Jose, Calif.
`IBM Corporation, Armonk, N.Y.
`(73] Assignee:
`(21] Appl. No.: 301,970
`(22] Filed:
`Jan. 26, 1989
`(51]
`Int. Cl.5 ••••••••••••••••••••••• G06F 13/00; G06F 12/00
`(52] U.S. Cl ..................................... 364/200; 364/970;
`364/970.2; 364/968; 364/967; 364/967.2;
`364/964.6; 364/253; 364/253.2; 364/253.l;
`364/243; 364/245.8; 364/245.5
`(58} Field of Search ... 364/200 MS File, 900 MS File
`References Cited
`[56]
`U.S. PATENT DOCUMENTS
`4,024,507 5/1977 Berkling .............................. 364/200
`4,121,286 10/1978 Venton ................................ 364/200
`4,310,883 1/1982 Clifton ................................ 364/200
`4,313,161 1/1982 Hardin ................................ 364/200
`4,429,363 1/1984 Duke ................................... 364/200
`4,463,424 7/1984 Mattson ............................... 364/200
`4,466,059 8/1984 Bastian ................................ 364/200
`4,574,346 3/1986 Hartung .............................. 364/200
`4,653,021 3/1987 Takagi ................................. 364/900
`4,660,130 4/1987 Bartley ................................ 364/200
`4,727,487 2/1988 Masui et al .......................... 364/300
`4,769,782 9/1988 Iwanaga .............................. 364/900
`4,771,375 9/1988 Belgin ................................. 364/200
`4,805,093 2/1989 Ward ................................... 364/200
`
`OTHER PUBLICATIONS
`Garbage Collection in a Large Lisp System, David A.
`Moon 1984, ACM. pp. 235-246.
`
`Garbage Collection in a Very Large Address Space, by
`Peter B. Bishop, MIT, Cambridge, Mass. 1975.
`Generation Scavenging: A Non-Disruptive High Per(cid:173)
`formance Storage Reclamation Algorithm, 1984 ACM,
`by David Ungar, pp. 157-167.
`Primary Examiner-Thomas C. Lee
`Assistant Examiner-Eric Coleman
`Attorney, Agent, or Firm-Herb Somermeyer
`ABSTRACT
`(57]
`Units of data (data sets, data bases, etc.) are allocated
`data storage space in a data storage system based on
`implicit analysis of the unit of data. A plurality of data
`classes, each defining predetermined characterisitics of
`diverse units of data, are established for the data storage
`system. A plurality of storage classes, each defining
`predetermined sets of storage performance and avail(cid:173)
`ability requirements are established for the data storage
`system. A plurality of management classes, each defin(cid:173)
`ing respective diverse sets of life cycle attributes for
`units of data are established for the data storage system.
`A plurality of storage groups, each defining diverse
`predetermined performance device and management
`available in the data storage system but independently
`of the individual storage devices of the data storage
`system are established. The devices are selectively as(cid:173)
`signed to different ones of the established storage
`groups. Each received spaced allocation requested has
`its parameters (source, type of data, etc.) matched with
`the data, storage and management classes for assign(cid:173)
`ment of one each of those classes to the unit of data
`related to the allocation request. A storage group is also
`assigned. The matching of the different classes and
`group are independent of one another. Allocation is
`based upon the resulting class and group selection.
`
`10 Claims, 3 Drawing Sheets
`
`(15
`
`DEFINE
`DATA CLASSES
`
`(/6
`
`DEFINE
`STORAGE
`CLASSES
`
`19
`
`(17
`
`DEFINE
`MANAGEMENT
`CLASSES
`
`(18
`
`DEFINE
`STORAGE
`GROUPS
`
`Microsoft Ex. 1005, p. 1
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`U.S. Patent
`
`May 21, 1991
`
`Sheet 1 of 3
`
`5,018,060
`
`/0
`
`-..
`
`•
`•
`•
`
`HOST
`PROCESSOR
`
`~I <12
`PERPHERAL
`DATA STORAGE
`
`,13
`
`~
`
`TERMINAL
`
`F:cGc:1
`
`(15
`
`DEFINE
`DATA CLASSES
`
`(16
`
`DEFINE
`STORAGE
`CLASSES
`
`19
`
`(17
`
`DEFINE
`MANAGEMENT
`CLASSES
`
`DEFINE
`STORAGE
`GROUPS
`
`'[/'25
`
`(26
`INPUT PARMS
`
`NAME CLASS
`
`COMPILE
`NAMED
`MODULE
`
`(27
`
`(28
`
`STORE
`MODULE
`AS "NAME•
`
`F:cGce
`
`F:cGc3
`
`Microsoft Ex. 1005, p. 2
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`U.S. Patent
`
`May 21, 1991
`
`Sheet 2 of 3
`
`5,018,060
`
`r·
`
`11
`
`I ,· ·--~-11~
`I . . I
`I i ..
`I i
`i
`I Ll45 _ _j
`l
`L;;r-·-·-.FrGc_S_ -
`
`I
`I
`I
`I
`'47 I
`I
`I
`L __ L=-=-
`I
`L ___ _ _ _ ___ _
`
`I
`
`AUTOMATIC
`LIBRARY
`55
`50
`
`SHELF
`STORAGE
`
`-
`
`____ _j
`
`Microsoft Ex. 1005, p. 3
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`U.S. Patent
`
`May 21, 1991
`
`Sheet 3 of 3
`
`5,018,060
`
`• •
`7.0
`•
`,, ' OSN 1 'LOC 1 ' STORCLAS 1 ' MGMTCLAS 1 '
`• C75
`i71
`C72
`C74
`• •
`DATACLAS I 1TYPE I ~F I kL I SPACE I j EXP I j RETENT I j VSAM ~ •••
`ts, <82 • <83
`BO_J
`,84
`ls7
`ls.,
`(86
`• •
`iJ . . .
`STORCLAS I ~EAD I ~RITE I I AVAIL
`•
`t~
`90_/
`(91
`t92
`• •
`MGMTCLAS EXPIRE RETENT MIGRATE BU
`Ii I
`/04
`IOOJ
`IQ
`/03
`
`•••
`
`VERSIONS
`/05
`sro:,g~f TYPE I 8
`ALLOC (vro I MIGRATEI buMP I I
`BU ~ • • •
`(116
`?111
`?112
`tit3
`?114
`<115
`'----------F:rsaB---------'
`NEW DATA SET
`140
`14/
`SELECT
`DATA CLASS
`142
`
`l5Dj
`
`I
`RECEIVE
`STORAGE
`ALLOCATION
`REQUEST
`
`SELECT
`STORAGE· CLASS
`.__..._~_..,..
`143
`144
`
`EXIT TO
`OTHER
`PRO<IIAMMING
`
`SELECT
`MANAGEMENT
`CLASS
`
`145
`
`SELECT
`STORAGE GROUP
`
`STORE IN A
`CONTROL
`RECORD
`
`F:rsa7
`
`15')
`
`1
`READ
`CONTROL RECORD
`FOR DATA SET
`
`152;
`
`'
`ACCESS
`STORAGE
`
`I
`F:cGaB
`
`Microsoft Ex. 1005, p. 4
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`ALLOCATING DATA STORAGE SPACE OF
`PERIPHERAL DATA STORAGE DEVICES USING
`IMPLIED ALLOCATION BASED ON USER
`PARAMETERS
`
`FIELD OF THE INVENTION
`This invention relates to computer-controlled periph(cid:173)
`eral data storage and more particularly to the global
`management of data storage for provided transparent
`isolation of the peripheral data storage characteristics
`from application programs using the peripheral data
`storage.
`
`BACKGROUND OF THE INVENTION
`Storing computerized data (coded or uncoded-un(cid:173)
`coded is also termed image, graphics or raster data) in
`peripheral devices and subsystems has become an im(cid:173)
`portant cost consideration in modem day information 20
`processing systems. Further, the immensity of the stor(cid:173)
`age capacity available in information processing sys(cid:173)
`tems has reached staggering levels. The current way of
`managing the peripheral storage of data is fast becom(cid:173)
`ing unsatisfactory because of the costs involved and 25
`difficulty in managing the data storage space, providing
`performance (rapid access to data storage spaces or
`areas) as well as placing the burden on application pro(cid:173)
`grammers to effectively utilize such immense peripheral
`data ~orag« ~city. lt is desired to insulate the appli- 30
`cation programmers from the current requirement that
`tht'ir respective programs must have some information
`about the physical parameters of the peripheral data
`storage. It is desired to provide a completely logical
`control wherein the application programmers need only 35
`concern their programming with data sets, data bases,
`and the like as such items best serve the application
`program. Such (i)ia.ta. set considerations can include a
`brl!Jlld in<licatio11 a£~ performance, indications of
`size, need for availability and reliability levels, and the 40
`like. All factors concerning space management, perfor(cid:173)
`mance management, availability management and de(cid:173)
`vice install management of the peripheral subsystems
`should not be noticeable to the user programmer in(cid:173)
`volved with application programs. To date, this has not 45
`been the situation.
`DISCUSSION OF THE PRIOR ART
`Initially job control language (JCL) required the
`computer user to specify many parameters of program 50
`execution including specifications of peripheral data
`storage. Then each time the peripheral data storage was
`dlanged, a con:~ing change was required in the
`JCL statements for the programs to be executed. An
`example of JCL control of a data processor is shown by 55
`Poublan et al in U.S. Pat. No. 4,104,718. It is this inter(cid:173)
`action between operation of the peripheral data storage
`and the user application programs that is to be mini(cid:173)
`mized, if not eliminated.
`It is desired to let the user or application programmer 60
`issue specifications, preferably implicitly, of program
`execution and data storage requirements which are at a
`relatively high or logical level. The term "logical"
`herein refers to the specifications for desired program
`execution, particularly for peripheral data storage. It is 65
`desired that all allocation and controls of the peripheral
`data storage be removed from direct intervention by the
`applicuion programmer.
`
`1
`
`5,018,060
`
`2
`The term "logical" has been used for years to de(cid:173)
`scribe program denominated units, such as "logical
`devices". Such logical descriptions did not remove the
`interaction of the application programmer with periph-
`5 eral data storage. An example of such logical device
`specifications is found in the Christian et al patent U.S.
`Pat. No. 4,403,288 wherein one physical device (DAS(cid:173)
`O-direct access storage device) was addressable as
`four logical devices. The proliferation of DASO in
`10 peripheral data storage subsystems resulted in a central(cid:173)
`ized DASO storage space allocation program called
`DADSM (direct access device space management).
`Still the application programmer had to request space in
`terms of device parameters and types. See the article by
`15 Duvall et al, "Asynchronous Allocation Requests",
`IBM TECHNICAL DISCLOSURE BULLETIN,
`Vol. 25 No. 8; January 1983, pp 4148-4150. It is desired
`to remove device parameter specifications from the
`application programmer; let the application program(cid:173)
`mer only be concerned with high or logical levels of
`specification independent of device parameters. This
`desire requires implicit translation of the logical param(cid:173)
`eter specification into data storage device selections and
`space allocation on selected devices.
`March in the article "Data Base Control and Process(cid:173)
`ing System", IBM TECHNICAL DISCLOSURE
`BULLETIN, Vol. 25, No. 7A, December 1982, pp
`357814 3582 illustrates some of the complexity involved
`with data base management. It is desired to remove the
`complexity from adversely affecting application pro(cid:173)
`grammer efforts.
`White in U.S. Pat. No. 4,467,421 describes a virtual
`data storage system which employs a memory control
`processor external to a host processor which divides
`user-defined data sets into blocks of a size convenient
`for storage in peripheral data storage devices. The
`memory processor assigns such blocks to storage loca(cid:173)
`tions on peripheral data storage devices. This memory
`processor intercepts the device oriented input-output
`commands from the host processor and adjusts opera(cid:173)
`tion of the peripheral data storage subsystem to make it
`more efficient. From this brief description, it is readily
`seen that the application programmer still is required to
`have JCL statements that are device dependent even if
`an external memory processor interprets the device
`dependencies differently than intended by the applica-
`tion programming. While this arrangement may ease
`the effects of changing device types and the like, it still
`seems to saddle the application programmer with de(cid:173)
`vice parameter considerations. It is desired to avoid the
`continuance of such a requirement.
`Hartung in U.S. Pat. No. 4,638,425 shows a cached-
`DASO data storage subsystem in which the application
`programmer may insert a storage parameter indication
`of whether certain data records can be stored primarily
`in volatile (cache) peripheral storage or is primarily
`retentively stored (DASO) in the peripheral subsystem.
`When primarily stored in the cache, performance is
`enhanced but the application program is responsible for
`any lost data due to power problems or equipment fail(cid:173)
`ures. The selection is based on "use" status, i.e. is the use
`interactive with terminals (to be cached for perfor(cid:173)
`mance) or is the use post-terminal activity (to be primar(cid:173)
`ily retentively stored). While the use indication appears
`logical, it is seen that the application programmer has to
`understand important operational characteristics of the
`peripheral data storage subsystem. It is desired to make
`such determinations implicit rather than explicit.
`
`Microsoft Ex. 1005, p. 5
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`5,018,060
`
`3
`Hill in U.S. Pat. No. 4,607,346 shows an implicit
`control of a peripheral DASO based upon the user or
`application programmer specifying "access densities"
`for a given program. Based upon such specified access
`densities, the data to be stored is directed to different 5
`portions of a DASO. From this description, it is seen
`that the application programmer is still involved with
`device parameters, but that the device parameter desig(cid:173)
`nations are complicated with desired access parameters
`of the application program. It is desired to avoid such 10
`additional complexities.
`Beglin et al in U.S. Pat. No. 4,638,424 describes a
`machine implemented management of peripheral data
`storage. The patent refers to the IBM product Hierar(cid:173)
`chical Storage Manager, now termed Data Facility 15
`Hierarchical Storage Manager. The patent teaches ma(cid:173)
`chine managed priority of access and allocation to a
`large plurality of peripheral data storage devices for the
`purposes of migration, recall, backup, recovery and
`defragmentation of the data sets stored in peripheral 20
`data storage. The patent is concerned with resolution of
`contentions for devices by attached host processors.
`The machine effected activities described in this patent
`occur after it has been determined to migrate or backup
`operating data sets which have already been stored in 25
`peripheral data storage devices, such as DASO. There(cid:173)
`fore, this patent does not address the problems of isolat(cid:173)
`ing the application programmer from peripheral data
`storage complexities.
`Kitajima et al in U.S. Pat. No. 4,542,458 teach allocat- 30
`ing data to devices based upon failure rates of the de(cid:173)
`vices. Such allocation certainly seems to continue the
`interaction of the application programmer with device
`parameters.
`Kamionka et al in U.S. Pat. No. 4,528,624 teach se- 35
`lecting peripheral devices for allocations preparatory to
`peripheral data storage based upon maximal free storage
`space in the devices. This selection is independent of the
`actual storage capacity of the various devices. This
`simple but effective selection process is machine exe- 40
`cuted after the application programmer has completed
`the device related JCL statements; i.e. the machine
`operations for data space allocations do not alleviate all
`of the interactions between the application programmer
`and device characteristics.
`Crabtree et al in U.S. Pat. No. 4,604,690 disclose an
`on-line method of reconfiguring a data processing sys(cid:173)
`tem for added 1/0 or peripheral devices. This patent
`teaches that a control block defining a newly added
`peripheral device can be added and stored in main mem- 50
`ory of a host processor so its use can start while the host
`processor is operating (no system generation is re(cid:173)
`quired).
`Setting up and attaching devices in real time does
`nothing to ease the above described interaction require- 55
`ments previously found in data processing environ(cid:173)
`ments.
`Kimura et al in U.S. Pat. No. 4,704,695 show an infer(cid:173)
`ence system wherein attributive information is supple(cid:173)
`mented to a knowledge unit for the purpose of smooth 60
`execution of the inference. While this patent shows
`adjusting operations based on later inputs (learning
`engine), it does not suggest how to resolve the problems
`set forth above.
`Clifton et al in U.S. Pat. No. 4,310,883 teach an allo- 65
`cation scheme for a tape library system, such as for the
`IBM 3850 Mass Storage System. This allocation process
`reqaires that the application programmer have an
`
`45
`
`4
`awareness of the tape library system-therefore does
`not eliminate the above referred to interaction that is to
`be eliminated. The patent does teach the concept of a
`group of storage volumes (virtual volumes in the tape
`library) which are scanned for finding a best suitable
`storage volume for storing a data set to be stored. Risk
`factors of the allocation succeeding or failing are a
`prime aspect of this teaching. Therefore, storage groups
`can be employed while still keeping the undesired inter(cid:173)
`action between application programmer and the periph(cid:173)
`eral data storage systems.
`
`SUMMARY OF THE INVENTION
`In accordance with the present invention, a plurality
`of data related classes are defined. Such classes are
`defined independent of each other. The classes are set
`up so as to enable a host processor to respond to data set
`parameters to implicitly select data storage units which
`can achieve the desired system operations for satisfying
`the data set parameters. The data set parameters are
`preferably implicitly derived from data set naming
`which arc governed by data set naming conventions
`and standards explicitly unrelated to peripheral data
`storage parameters.
`In a machine-effected method of the invention, the
`data related classes include data classes which are based
`upon predetermined data set parameters for diverse
`types of data sets to be stored and retrieved from pe(cid:173)
`ripheral data storage, storage classes which include
`classification by predetermined performance and avail(cid:173)
`ability parameters for data sets which are to be members
`of various ones of the storage classes, storage group(s),
`which define the collections of peripheral data storage
`devices as to status, capacity, connectability etc, and
`management classes which respectively define the life
`cycle characteristics of the various data sets. The infor(cid:173)
`mation from a storage class is used for selecting data
`storing volumes within one of the storage group(s)
`independently of any application program JCL state(cid:173)
`ments. Also, the available free space in the data storing
`volumes and their respective current levels of activity
`are factors in the selection of the storage group vol(cid:173)
`umes.
`The class selections for a given data set are preferably
`determined based upon a data set naming convention,
`such as a convention which includes identification of
`the business function which generated the data set, its
`size, allocation attributes, security criteria, and other
`related job information and needs. A data storing vol(cid:173)
`ume is directly or indirectly associable with a physical
`device; the selection of a data storing volume implies a
`selection of a device. Each physical device may have
`one or more data storing volumes, one data storing
`volume may be dispersed over a plurality of devices,
`logical devices may be used in addressing the physical
`device, and the like.
`The classes and groups are first defined using interac(cid:173)
`tive means by a so-called Storage Administrator. The
`defined classes and groups are assembled into control
`tables used to implicitly select data devices based on
`logical level specifications about the data set to receive
`an allocation of peripheral data storage space. In a pre(cid:173)
`ferred sequence of machine effected device selection,
`the data class is first selected, then a storage class is
`selected followed by selection of a management class.
`The selection of the three classes are then combined to
`select a storage group which best fits the parameters set
`forth in the three selected classes. The selection of
`
`Microsoft Ex. 1005, p. 6
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`5,018,060
`
`6
`program enables interactive steps 15-18 to generate
`data structures for insulating the application program(cid:173)
`mers from the characteristics of data storage system 12.
`The steps 15-18 can be an on-going time spaced interac(cid:173)
`tive operation, as schematically indicated by bracket 19,
`to keep tuning the operation of the data processing
`system.
`The interactive relationship between a host processor
`10 and an operator (Storage Administrator) includes
`terminal 13 and a terminal support program in such host
`processor 10. A preferred interactive system in setting
`up the classes and groups is the IBM Interactive System
`Management Facility (ISMF) which is a part of the
`IBM Data Facility Product (DFP). ISMF enables the
`steps illustrated in FIGS. 2 and 3 to be easily performed.
`In view of the plethora of interactive programs readily
`available, the internal details of such programs are not
`repeated here. The description herein discloses to one
`of ordinary skill how to implement the present inven(cid:173)
`tion. ISMF is menu driven having the following menu
`set up for establishing, inter alia, the classes, storage
`groups and ACS routines of the illustrated embodiment.
`
`5
`classes for any data set or data base depends not only on
`the class definitions, but also on the logic used in the
`automatic class selection processing. In all cases, the
`Storage Administrator (usually a person) has total con(cid:173)
`trol over the volume and class selection criteria; the s
`application programmer need not be concerned with
`such definitions. Once a storage group has been se(cid:173)
`lected, allocation of data storing space of a volume
`which is a member of the storage group may proceed
`asynchronously with respect to automatic class selec- 10
`tion.
`The foregoing and other objects, features, and advan(cid:173)
`tages of the invention will be apparent from the foUow(cid:173)
`ing more particular description of the preferred embodi(cid:173)
`ments of the invention, as illustrated in the accompany- I 5
`ing drawings.
`
`DESCRIPTION OF THE DRAWING
`FIG. 1 shows a plurality of host processors sharing a
`peripheral data storage system in which the present 20
`invention is advantageously practiced.
`FIG. 2 shows a simplified random executing set of
`machine operations involving interaction with a human
`being for establishing classes and groups usable for
`practicing the present invention in the FIG. 1 illustrated 25
`system.
`FIG. 3 is a simplified flowchart of machine effected
`operations which compile automatic class selection
`the classes and groups. defiaal by the FIG.
`roUitillilCS b
`2 illustrated machine operations.
`FIG. 4 is a simplified block diagram showing the
`relationships of application programs to peripheral data
`storage when practicing the present invention in the
`FIG. 1 illustrated system.
`FIG. 5 is a simplified block diagram of a peripheral 35
`data storage system for which the present invention is
`advantageously applied.
`FIG • i& a simplified sho,Ji,,ing of data structures us(cid:173)
`able with die FIG. 4 illustrated system.
`FIG. 7 is a simplified flow chart of machine opera- 40
`tions for selecting classes for a data set when practicing
`the present invention.
`FIG. 8 is a simplified flow chart of machine opera(cid:173)
`tions for allocating data storage space in one or more
`peripheral data storage devices after the class selections 45
`for data sets as shown in FIG. 7.
`
`30
`
`DETAILED DESCRIPTION
`Referring now more particularly to the appended
`drawings, like numerals indicate like features and opera- 50
`tions in the various figures. FIG. 1 shows a data pro(cid:173)
`cessing system having a plurality of host processors 10
`sharing a periphenl data storage system 12 via a plural-
`ity of input-output connections (such as 1/0 channels)
`11. The present invention makes the data processing 55
`system easier to use by application programmers.
`FIG. 2 illustrates the preparatory steps for imple(cid:173)
`menting the present invention in the FIG. I illustrated
`data processing system. A machine-human interactive
`
`ISMF PROFILE
`0
`1 DATA SET APPLICATION
`2 VOLUME APPLICATION
`3 MANAGEMENT CLASS
`
`4 DATACLASS
`5 STORAGE CLASS
`6 STORAGE GROUP
`7 ACS APPLICATION
`
`8 CDS
`S DFSORT
`X EXIT
`
`ISMF MENU
`change profile
`data set functions
`volume functions
`set up/alter management
`classes
`set up/alter data classes
`set up/alter storage classes
`set up/alter storage groups
`automatic class selection
`functions
`control data set functions
`sort/copy /merge functions
`
`The words selected above differ slightly from that
`used in ISMF.
`Step 15 provides for interactive definition of data
`classes. Such interactive definition is achieved by using
`ISMF selection number 4. A data class specifies data set
`logical attributes, such as data set type, record length,
`data storage space requirements in terms of logical
`bytes not in terms of physical storage space require(cid:173)
`ments, expiration and retention dates for the data set
`and any Virtual Storage Access Method (VSAM) data
`set options. Just the data class by itself will simplify data
`set allocation (eg JCL DD statements are simplified),
`help introduce allocations standards and can be used
`with later defined classes in accordance with the pres(cid:173)
`ent invention or can be used independently with in(cid:173)
`creased isolation of the application programmer from
`the peripheral data storage system, as will become ap(cid:173)
`parent.
`A suitable set of data classes, defined using ISMF, for
`first installing an embodiment of the invention is shown
`in the table below:
`
`TABLE OF DAT A CLASSES
`
`CLASS
`
`DATAF
`
`DATAV
`
`VB
`
`SRCFLIB FB
`
`DIR
`RECFM LRECL AVGREC AVGVAL PSPACE SSPACE
`u
`0
`FB
`SK
`80
`80
`5K
`u
`5K
`5K
`u
`SK
`
`255
`
`80
`
`255
`
`80
`
`0
`
`62
`
`Microsoft Ex. 1005, p. 7
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`7
`-continued
`TABLE OF DA TA CLASSES
`
`5,018,060
`
`8
`
`CLASS
`
`SRCVLIB VB
`LOADLIB u
`
`LISTING VBA
`
`ENTRY
`
`KEYED
`
`DIRECT
`
`LINEAR
`
`ES
`
`KS
`
`RR
`
`LS
`
`RECFM LRECL AVGREC AVGVAL PSPACE
`SK
`SK
`SK
`50
`50
`20K
`20K
`100
`100
`100
`100
`100
`100
`100
`100
`
`255
`
`NA
`
`137
`
`NA
`
`0
`
`u
`u
`u
`u
`u
`u
`u
`
`255
`
`23476
`
`137
`
`4K
`
`4K
`
`4K
`
`4K
`
`35
`
`In the table above the acronyms are:
`Data class names; DAT AF-sequential fixed length 20
`record; DAT AV -sequential variable length records;
`SRCFLIB-partitioned fixed length record source;
`SRCVLIB-partitioned variable length record source;
`LOADLIB-partitioned load module library; LISTIN(cid:173)
`G-sequential SYSOUT listing (SYSOUT is system 25
`output); ENTRY-VSAM entry sequenced; KEYE(cid:173)
`D-VSAM key sequenced; DIRECT-VSAM relative
`record and LINEAR-VSAM linear data set.
`The column headings; RECFM-record format;
`LRECL-logical record length; A VGREC-scale fac- 30
`tor for data storing space (i.e. megabyte (MB), kilobyte
`(KB) or other units of spaGe); A VG Value -average
`value of the record length; PSPACE-primary space
`required; SP ACE-secondary space required and
`DIR-size of a directory for the data set.
`Acronyms
`in
`the columns; FB-fixed block;
`VB-variably sized block; U-undefined records (mul(cid:173)
`tiply by 1); VBA-variable blocked with ASA charac(cid:173)
`ters; ES-entry sequenced; KS-key sequenced:
`RR-relative record; and LS-linear record.
`From inspection of the table above, it is seen that data
`set parameters are defined in the data classes for charac(cid:173)
`terizing the data of the various data sets to be stored. In
`other words, a data class sets forth how a data set looks
`to a data processor.
`A defined data class applies to data sets being stored
`on both system managed and non-system managed data
`storing volumes. The term non-system managed vol(cid:173)
`umes indicates those volumes not selected or otherwise
`controlled via the system in which the present invention 50
`may be incorporated. Data sets assigned to any data
`class are storable in data storage system 12 either as
`system managed or non-system managed data sets.
`Step 16, invoked by selecting 5 on the above ISMF
`menu, interactively defmes storage classes using the 55
`facilities and procedures referred to for step 15. Each
`storage class sets forth its own set of storage services in
`device independent terms. Such services include ran(cid:173)
`dom access specifications, sequential access specifica(cid:173)
`tions, guaranteed space (i.e. pre-allocation of data stor- 60
`age space before any attempted storage of data in the
`peripheral data storage system), etc. From the above
`listed terms, it is seen that the requirements are separate
`from device capabilities. Once a data set is assigned to a
`storage class, then the present invention is used in man- 65
`aging the data set; for convenience such a data set is
`termed a "system managed data set". The format of the
`class definition is arbitrary and not shown here. The
`
`40
`
`45
`
`DIR
`SSPACE
`
`62
`
`62
`
`0
`
`0
`
`0
`
`0
`
`0
`
`paragraph below lists a series of storage classes suitable
`for practicing the present invention.
`A brief description of some exemplary storage classes
`and their service attributes follows. Storage class
`DBLOG is for data base logs. It has direct access speci(cid:173)
`fication of a bias to reading with a response time of five
`milliseconds. Sequential specifications are a bias to re(cid:173)
`cording or writing data sets to the data storage system
`12 with a response time of three milliseconds. Guaran(cid:173)
`teed space is required for data sets in this class. The
`storage class DBBASE is for so-called standard or usual
`performance data bases. The only specification here is
`guaranteed space. The storage class DBENHANC for
`enhanced performance data bases have data sets with a
`direct access specification of reading in ten milliseconds
`and a sequential access read access time of ten millisec(cid:173)
`onds. Guaranteed space is provided for data sets in this
`storage class. The storage class DBCRIT for high avail(cid:173)
`ability data bases has a direct access read specification
`for ten milliseconds, a sequential read access specifica(cid:173)
`tion of ten milliseconds, continuous availability of the
`data to the host processors 10 and an entitlement to
`guaranteed space. The storage class DBF AST for high
`performance data bases has direct access read response
`time of five milliseconds, a sequential read response
`time of five milliseconds and guaranteed space for mem(cid:173)
`ber data sets. The storage class BASE includes standard
`performance services as may be provided by data stor(cid:173)
`age system 12. The storage class ENHANCED is a set
`of enhance performance storage services. A direct and
`sequential access response time of ten milliseconds is
`provided for all accesses (read and write). The storage
`class CRITICAL has the services of continuous avail(cid:173)
`ability with direct and sequential access responses of ten
`milliseconds for all types of accesses. The storage class
`F ASTREAD describes storage services for high read
`performance. The specifications are for an access re(cid:173)
`sponse time of five milliseconds for all read accesses in
`both the direct and sequential modes. The last described
`storage class is FASTWRIT for high write perfor(cid:173)
`mance services. A write or recording storage access of
`five milliseconds is provided in the direct access mode
`and three milliseconds in the sequential mode.
`Executing step 17, invoked by selecting 3 on the
`ISMF menu above, generates definitions for manage(cid:173)
`ment classes. Each management class relates to life
`cycle controls for a data set. Each specifies space, avail(cid:173)
`ability and retention management requirements. These
`specifications include migration from a high or rapid
`
`Microsoft Ex. 1005, p. 8
`Microsoft v. Daedalus Blue
`IPR2021-00831
`
`

`

`5,018,060
`
`9
`access level of a data storage hierarchy to lower levels
`or slower accesses, expiration and retention dates and
`limits, backup frequency (zero means no backup), reten(cid:173)
`tion of backup copies, generation data group (GOG)
`and set processing options (each GOG is a version of S
`data, each time a data set is updated it is a candidate to
`become a new version of that data-i.e. a next genera(cid:173)
`tion of the data) and partial release options. Partial
`release means an unused portion of the data storage may
`be released, i.e. returned to a free or available space list 10
`for the volume. The description below describes a set of
`management classes defined via ISMF and which are
`suitable for practicing the present invention.
`All management classes

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket