WO1991008537A1 - Data record copy apparatus for a virtual memory system - Google Patents

Data record copy apparatus for a virtual memory system Download PDF

Info

Publication number
WO1991008537A1
WO1991008537A1 PCT/US1990/006498 US9006498W WO9108537A1 WO 1991008537 A1 WO1991008537 A1 WO 1991008537A1 US 9006498 W US9006498 W US 9006498W WO 9108537 A1 WO9108537 A1 WO 9108537A1
Authority
WO
WIPO (PCT)
Prior art keywords
data record
copy
pointer
data
memory location
Prior art date
Application number
PCT/US1990/006498
Other languages
French (fr)
Inventor
John Frederick Kitchen
Original Assignee
Storage Technology Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Storage Technology Corporation filed Critical Storage Technology Corporation
Publication of WO1991008537A1 publication Critical patent/WO1991008537A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers

Definitions

  • This apparatus relates to virtual memory systems and, in particular, to a data record copy apparatus that instantly makes a copy of an existing data record without having to read the data record from memory.
  • the typical data record copy process entails the processor locating a data record then retrieving the file from memory. Once the data record has been retrieved from memory and the integrity of the data record contents verified, the processor must then write this data record to a new memory location and again verify the integrity of the data record contents. Upon completion of this operation, the memory system now contains two identical copies of the original data record: (1) in the original memory location, (2) in an alternate location. It is obvious that such an operation consumes a significant amount of processor time. In the case where the memory system is a rotating media, such as a magnetic disk drive system, disk head positioning and data channel availability become constraints that can have a negative impact on the time it takes to retrieve the data record from memory.
  • a processor is typically connected by a channel interface unit to a plurality of data channels.
  • Each data channel is connected to one or more direct access storage device (DASD) units which function to store large quantities of data.
  • Each DASD unit includes a control unit for interfacing with the data channel that typically carries eight bit parallel data in a byte serial decoded input/output record format.
  • the control unit performs a data management function to maintain records of the physical memory location of all the data stored in the DASD unit.
  • the DASD unit includes rotating data storage media consisting of a plurality of disks, each of which has associated therewith one or more oveable read/write heads.
  • the data is stored on the rotating media in a track format that consists of a plurality of concentric rings of data.
  • a control module is also included at the head of a string of disk drive units and connected to the control unit to convert between the eight bit parallel data format of the data channel and the bit serial data format of the rotating media.
  • a data record copy process requires the processor to perform a data record read operation.
  • the processor transmits a seek request, through the channel interface unit and an available data channel, to the DASD control unit associated with the rotating media on which the requested data record is stored. The processor returns to processing other tasks upon completion of the transmission of the seek request.
  • the DASD control unit responds to the seek request by determining the physical location of the requested data record on the plurality of disks.
  • the control unit transmits information to the associated control module identifying the physical location and size of the data record in order to retrieve the requested data record from one of the disks of the rotating media. Since the data record is stored in a track format on a rotating media, the actuator associated with the identified disk of the rotating media on which the requested data record is stored must wait until the rotating media rotates a sufficient distance to present the beginning of the requested data record underneath the read/write head associated with the actuator.
  • the control module requests the control unit to obtain a data communication path to the processor in order to transmit the retrieved data record from the rotating media directly to the processor over this data communication path. If a data communication path to the processor is not available, the control module must wait for one entire revolution of the rotating media before the media is again in the position where the requested data record is a sufficient distance away from the read/write head to establish a data communication path to the processor. This process is repeated until a data communication path to the processor is available and the data, as read by the read/write head, can be transmitted directly via the control module and control unit and an available data channel to the processor.
  • the processor must write the data record to a new physical memory location to make a copy of the data record. This is accomplished by the processor establishing a data communication path via an available data channel to the control unit associated with the physical memory location that is selected to receive the retrieved data record. The processor then transmits the retrieved data record to this control unit for storage on the rotating media.
  • This data record copy process is time consuming and requires a significant expenditure of processor resources. In systems that require a large number of data record copy operations, a significant amount of processor time is consumed in this data record retrieval process.
  • the above described problems are solved and a technical advance achieved in the field by the data record copy apparatus for a virtual memory system of the present invention.
  • the data record copy apparatus instantaneously makes a copy of a selected data record by simply generating a new set of pointers to reference the same physical memory location as the original set of reference pointers. In this fashion, by simply generating a second set of pointers referencing the same physical memory space, this apparatus effectively makes a copy of the data record. Two different programs can thereby each access identical copies of the data record since the data record is a single physical entity.
  • This apparatus instantaneously makes available a copy of the original data record without the time penalty of having to download the data record to the processor and write a copy of the data record to a new physical memory location.
  • a physical copy of the original data record can later be written as a background process to a second memory location so that two physical copies of the data record are present on the memory system, if so desired.
  • this modified copy of the original data record can be written to a new memory location and the corresponding address pointers changed to reflect the new location of this rewritten data record.
  • a data record can be instantaneously copied by simply creating a duplicate set of memory pointers and the actual physical copying of the data record can take place either as a background process or as necessary when the data record is rewritten by one of the programs that accesses the data record.
  • This provides a more efficient use of processor time and defers making an actual physical copy of the data record until absolutely necessary.
  • Figure 1 illustrates in block diagram form the architecture of the subject computer system
  • Figure 2 illustrates in schematic form a typical virtual memory arrangement
  • Figure 3 illustrates in schematic diagram form the virtual memory arrangement of the present invention.
  • the data record copy apparatus for a virtual memory system instantaneously makes a copy of a selected data record by simply generating a new set of pointers to reference the same physical memory location as the original set of reference pointers. In this fashion, by simply generating a second set of pointers referencing the same physical memory space, this apparatus effectively makes a copy of the data record.
  • Two different programs can thereby each access identical copies of the data record since the data record is ' a single physical entity.
  • This apparatus instantaneously makes available a copy of the original data record without the time penalty of having to download the file to the processor and write a copy of the data record to a new physical memory location.
  • the use of this mechanism provides a significant time advantage.
  • a physical copy of the original data record can later be written as a background process to a second memory location so that two physical copies of the data record are present on the memory system, if so desired.
  • this modified copy of the original data record can be written to a new memory location and the corresponding address pointers changed to reflect the new location of this rewritten data record.
  • a data record can be instantaneously copied by simply creating a duplicate set of memory pointers and the actual physical copying of the data record can take place either as a background process or as necessary when the data record is rewritten by one of the programs that accesses the data record.
  • This provides a more efficient use of processor time and defers making an actual physical copy of the data record until absolutely necessary.
  • FIG 1 illustrates the overall architecture of a data processing system that is equipped with an associated data storage system that includes a plurality of memory devices, one of which is illustrated in Figure 1 in the form of a conventional 3380-type of disk drive unit 120.
  • Processor 100 is connected via bus 101 to a channel interface unit 102 that serves to interconnect processor 100 with a plurality of data channels 103-1 to 103-n, each of which is an eight bit parallel data bus. Connected to one of these data channels 103-1 is the disk drive unit 120 mentioned above.
  • Disk drive unit 120 includes a control unit 104 that functions to provide overall management of the disk drive unit 120.
  • This management function includes storing information that identifies the exact physical location of all data stored on the rotating media 111-0 to 111-15 of disk drive unit 120.
  • Processor 100 identifies a data record by volume identification and address. While this information provides a general physical location of the data, the exact storage location on the rotating media 111-0 to 111-15 requires additional specificity.
  • Control unit 104 provides this additional specific information by converting the volume and address information received from the processor into head, actuator, track and sector identification information to precisely define the physical location of the requested data record on disk drive unit 120.
  • the control module 106 responds to the control signals transmitted by control unit 104 identifying the head, actuator, track and sector for storing a data record by selecting one of the actuators 110-0 to 110-15 that are used by disk drive unit 120 to read/write data on the rotating media 111- 0 to 111-15.
  • the above-described conventional disk drive unit 120 of Figure 1 is also equipped with a plurality of read/write head buffers 108-0 to 108-15 on a one per read/write head basis. Read/write head buffer 108-0 serves to temporarily store the track image captured by the read/write head 110-0.
  • Control unit 104 stores a plurality of pointers, each of which identifies the exact physical location on the ones of rotating media 111-0 to 111-15 that contain an identified data record. For each data record stored in disk drive unit 120, there is a corresponding pointer stored in control unit 104 that identifies the physical memory location that contains this data record. This is illustrated schematically on Figure 2 wherein elements 200-0 to 200-n are pointers that are stored in control unit 104. Elements 211, 212 represents physical memory locations on rotating media 111-0 while 213, 214 and 215 represent physical memory locations on rotating media 111-1. Only two of the rotating media are shown for the purpose of illustration and memory space 211-215 on these rotating media are illustrated schematically.
  • pointer 200-1 contains data that is indicative of the physical location of data record 1. This data points to physical memory location 212 on rotating media 111-0.
  • control unit 104 scans the table of pointers to locate the entry corresponding to data record 1. This entry is addressed by control unit 104 and the data contained therein read out to obtain the identification of the physical memory location that contains data record 1.
  • the pointer entry indicates that data record 1 is located on rotating media 111-0 in the physical memory space designated on Figure 2 as 212.
  • pointer 200-4 contains the pointer entries for data record 2.
  • the data stored in pointer location 200-4 indicates that data record 2 is stored on rotating media 111-1 in physical memory location 215.
  • the data record copy apparatus of the present invention can perform a "instant copy" operation wherein a copy of a particular data record is produced in a significantly less time than in prior systems.
  • This apparatus takes advantage of the fact that the disk drive memory system 120 accessed by processor 100 is a virtual memory system in that the data record Record 2 resides at a physical memory location 215 that differs from its memory address 200-4.
  • the processor 100 addresses a data record Record 2 according to a particular address 200-4, which address is translated by the disk drive system 120 into an actual physical memory location that does not correspond to the address used by processor 100.
  • Control unit 104 maintains the information that indicates the correspondence between each particular pointer data record memory address 200-4 and the actual physical memory location 215 that contains the data record Record 2.
  • the data record copy performance improvement is accomplished by processor 100 generating a new pointer 201-2, the contents of which point to the memory location 215 of the original data record Record 2.
  • processor 100 generating a new pointer 201-2, the contents of which point to the memory location 215 of the original data record Record 2.
  • a second pointer 201-2 is simply generated to point to the same data record Record 2.
  • This operation makes two copies of the data record Record 2 available to the software resident on processor 100 without suffering the time penalty of having to actually read the data record Record 2 from the physical memory location 215 and then write a new copy of the data record Record 2 to a separate physical memory location (ex 213) .
  • Processor 100 can, as a background process, make another physical copy of the data record Record 2 if so desired.
  • a more efficient method of managing the shared data record Record 2 is to wait until one of the programs on processor 100 modifies the data record Record 2.
  • the modified data record (ex Record 5) can be written to disk drive memory 120 to a new physical memory location 213.
  • the corresponding pointer 201-2 is adjusted to indicate this new physical memory location 213 for the data record Record 5.
  • another physical copy 213 of the data record Record 5 is produced only when changes are made to the original data record Record 2 and there no longer is a shared data record that has identical contents. This eliminates duplicate data records as is commonly found in prior art systems.

Abstract

The data record copy apparatus for a virtual memory system (120) instantaneously makes a copy of a selected data record (Record 4) by simply generating a new set of pointers (201-2) to reference the same physical memory location (214) as the original reference pointer (200-n). In this fashion, by simply generating a second set of pointers (201-2) referencing the same physical memory space (214), this apparatus effectively makes a copy of the data record (Record 4). A second physical copy of the data record (Record 4) can later be created as a background process or can be delayed until a modification is made to the data record (Record 4) by one of the two programs that access the data record (Record 4).

Description

DATA RECORD COPY APPARATUS FOR A VIRTUAL MEMORY SYSTEM
FIELD OF THE INVENTION
This apparatus relates to virtual memory systems and, in particular, to a data record copy apparatus that instantly makes a copy of an existing data record without having to read the data record from memory.
PROBLEM
It is a problem in the field of memory systems to expeditiously make copies of data records stored therein. The typical data record copy process entails the processor locating a data record then retrieving the file from memory. Once the data record has been retrieved from memory and the integrity of the data record contents verified, the processor must then write this data record to a new memory location and again verify the integrity of the data record contents. Upon completion of this operation, the memory system now contains two identical copies of the original data record: (1) in the original memory location, (2) in an alternate location. It is obvious that such an operation consumes a significant amount of processor time. In the case where the memory system is a rotating media, such as a magnetic disk drive system, disk head positioning and data channel availability become constraints that can have a negative impact on the time it takes to retrieve the data record from memory.
In disk drive memory systems for example, a processor is typically connected by a channel interface unit to a plurality of data channels. Each data channel is connected to one or more direct access storage device (DASD) units which function to store large quantities of data. Each DASD unit includes a control unit for interfacing with the data channel that typically carries eight bit parallel data in a byte serial decoded input/output record format. The control unit performs a data management function to maintain records of the physical memory location of all the data stored in the DASD unit. The DASD unit includes rotating data storage media consisting of a plurality of disks, each of which has associated therewith one or more oveable read/write heads. The data is stored on the rotating media in a track format that consists of a plurality of concentric rings of data. A control module is also included at the head of a string of disk drive units and connected to the control unit to convert between the eight bit parallel data format of the data channel and the bit serial data format of the rotating media. In this disk drive memory system, a data record copy process requires the processor to perform a data record read operation. In a data record read operation, the processor transmits a seek request, through the channel interface unit and an available data channel, to the DASD control unit associated with the rotating media on which the requested data record is stored. The processor returns to processing other tasks upon completion of the transmission of the seek request. The DASD control unit responds to the seek request by determining the physical location of the requested data record on the plurality of disks. The control unit transmits information to the associated control module identifying the physical location and size of the data record in order to retrieve the requested data record from one of the disks of the rotating media. Since the data record is stored in a track format on a rotating media, the actuator associated with the identified disk of the rotating media on which the requested data record is stored must wait until the rotating media rotates a sufficient distance to present the beginning of the requested data record underneath the read/write head associated with the actuator.
A predetermined time before the beginning of the requested data record reaches the read/write head associated with the actuator, the control module requests the control unit to obtain a data communication path to the processor in order to transmit the retrieved data record from the rotating media directly to the processor over this data communication path. If a data communication path to the processor is not available, the control module must wait for one entire revolution of the rotating media before the media is again in the position where the requested data record is a sufficient distance away from the read/write head to establish a data communication path to the processor. This process is repeated until a data communication path to the processor is available and the data, as read by the read/write head, can be transmitted directly via the control module and control unit and an available data channel to the processor. It is obvious that there can be numerous delays in this data storage system while data communication paths are established. Once the data record is retrieved, the processor must write the data record to a new physical memory location to make a copy of the data record. This is accomplished by the processor establishing a data communication path via an available data channel to the control unit associated with the physical memory location that is selected to receive the retrieved data record. The processor then transmits the retrieved data record to this control unit for storage on the rotating media. This data record copy process is time consuming and requires a significant expenditure of processor resources. In systems that require a large number of data record copy operations, a significant amount of processor time is consumed in this data record retrieval process.
SOLϋTION
The above described problems are solved and a technical advance achieved in the field by the data record copy apparatus for a virtual memory system of the present invention. The data record copy apparatus instantaneously makes a copy of a selected data record by simply generating a new set of pointers to reference the same physical memory location as the original set of reference pointers. In this fashion, by simply generating a second set of pointers referencing the same physical memory space, this apparatus effectively makes a copy of the data record. Two different programs can thereby each access identical copies of the data record since the data record is a single physical entity. This apparatus instantaneously makes available a copy of the original data record without the time penalty of having to download the data record to the processor and write a copy of the data record to a new physical memory location. For the purpose of enabling a program to simply access the data record at a different memory address the use of this mechanism provides a significant time advantage. A physical copy of the original data record can later be written as a background process to a second memory location so that two physical copies of the data record are present on the memory system, if so desired. Alternatively, when one of the two programs that can simultaneously access the single shared data record via their respective memory addresses write data to or modify the shared data record in any way, this modified copy of the original data record can be written to a new memory location and the corresponding address pointers changed to reflect the new location of this rewritten data record. In this fashion, a data record can be instantaneously copied by simply creating a duplicate set of memory pointers and the actual physical copying of the data record can take place either as a background process or as necessary when the data record is rewritten by one of the programs that accesses the data record. This provides a more efficient use of processor time and defers making an actual physical copy of the data record until absolutely necessary.
BRIEF DESCRIPTION OF THE DRAWING
Figure 1 illustrates in block diagram form the architecture of the subject computer system;
Figure 2 illustrates in schematic form a typical virtual memory arrangement; and
Figure 3 illustrates in schematic diagram form the virtual memory arrangement of the present invention.
DETAILED DESCRIPTION The data record copy apparatus for a virtual memory system instantaneously makes a copy of a selected data record by simply generating a new set of pointers to reference the same physical memory location as the original set of reference pointers. In this fashion, by simply generating a second set of pointers referencing the same physical memory space, this apparatus effectively makes a copy of the data record.
Two different programs can thereby each access identical copies of the data record since the data record is'a single physical entity. This apparatus instantaneously makes available a copy of the original data record without the time penalty of having to download the file to the processor and write a copy of the data record to a new physical memory location. For the purpose of enabling a program to simply access the data record at a different memory address the use of this mechanism provides a significant time advantage. A physical copy of the original data record can later be written as a background process to a second memory location so that two physical copies of the data record are present on the memory system, if so desired. Alternatively, when one of the two programs that can simultaneously access the single shared data record via their respective memory addresses write data to or modify the shared data record in any way, this modified copy of the original data record can be written to a new memory location and the corresponding address pointers changed to reflect the new location of this rewritten data record.
In this fashion, a data record can be instantaneously copied by simply creating a duplicate set of memory pointers and the actual physical copying of the data record can take place either as a background process or as necessary when the data record is rewritten by one of the programs that accesses the data record. This provides a more efficient use of processor time and defers making an actual physical copy of the data record until absolutely necessary.
System Architecture Figure 1 illustrates the overall architecture of a data processing system that is equipped with an associated data storage system that includes a plurality of memory devices, one of which is illustrated in Figure 1 in the form of a conventional 3380-type of disk drive unit 120. Processor 100 is connected via bus 101 to a channel interface unit 102 that serves to interconnect processor 100 with a plurality of data channels 103-1 to 103-n, each of which is an eight bit parallel data bus. Connected to one of these data channels 103-1 is the disk drive unit 120 mentioned above.
Disk drive unit 120 includes a control unit 104 that functions to provide overall management of the disk drive unit 120. This management function includes storing information that identifies the exact physical location of all data stored on the rotating media 111-0 to 111-15 of disk drive unit 120. Processor 100 identifies a data record by volume identification and address. While this information provides a general physical location of the data, the exact storage location on the rotating media 111-0 to 111-15 requires additional specificity. Control unit 104 provides this additional specific information by converting the volume and address information received from the processor into head, actuator, track and sector identification information to precisely define the physical location of the requested data record on disk drive unit 120. The control module 106 responds to the control signals transmitted by control unit 104 identifying the head, actuator, track and sector for storing a data record by selecting one of the actuators 110-0 to 110-15 that are used by disk drive unit 120 to read/write data on the rotating media 111- 0 to 111-15. The above-described conventional disk drive unit 120 of Figure 1 is also equipped with a plurality of read/write head buffers 108-0 to 108-15 on a one per read/write head basis. Read/write head buffer 108-0 serves to temporarily store the track image captured by the read/write head 110-0.
Memory Pointers
Control unit 104 stores a plurality of pointers, each of which identifies the exact physical location on the ones of rotating media 111-0 to 111-15 that contain an identified data record. For each data record stored in disk drive unit 120, there is a corresponding pointer stored in control unit 104 that identifies the physical memory location that contains this data record. This is illustrated schematically on Figure 2 wherein elements 200-0 to 200-n are pointers that are stored in control unit 104. Elements 211, 212 represents physical memory locations on rotating media 111-0 while 213, 214 and 215 represent physical memory locations on rotating media 111-1. Only two of the rotating media are shown for the purpose of illustration and memory space 211-215 on these rotating media are illustrated schematically. As can be seen from Figure 2, pointer 200-1 contains data that is indicative of the physical location of data record 1. This data points to physical memory location 212 on rotating media 111-0. Thus, when the processor 100 requests access to data record 1, control unit 104 scans the table of pointers to locate the entry corresponding to data record 1. This entry is addressed by control unit 104 and the data contained therein read out to obtain the identification of the physical memory location that contains data record 1. In this case, the pointer entry indicates that data record 1 is located on rotating media 111-0 in the physical memory space designated on Figure 2 as 212.
Similarly, pointer 200-4 contains the pointer entries for data record 2. The data stored in pointer location 200-4 indicates that data record 2 is stored on rotating media 111-1 in physical memory location 215.
Instant Copy Operation
The data record copy apparatus of the present invention can perform a "instant copy" operation wherein a copy of a particular data record is produced in a significantly less time than in prior systems. This apparatus takes advantage of the fact that the disk drive memory system 120 accessed by processor 100 is a virtual memory system in that the data record Record 2 resides at a physical memory location 215 that differs from its memory address 200-4. In particular, the processor 100 addresses a data record Record 2 according to a particular address 200-4, which address is translated by the disk drive system 120 into an actual physical memory location that does not correspond to the address used by processor 100. Control unit 104 maintains the information that indicates the correspondence between each particular pointer data record memory address 200-4 and the actual physical memory location 215 that contains the data record Record 2.
The data record copy performance improvement is accomplished by processor 100 generating a new pointer 201-2, the contents of which point to the memory location 215 of the original data record Record 2. Thus, upon the conclusion of this data record copy operation, there is a single physical memory location 215 that contains the data record Record 2 and two pointers 200-4, 201-2, both of which point to that same physical memory location 215 that contains the data record Record 2. Since this is a virtual memory system, the two pointers 200-4, 201-2 represent two separate data records even though there is only a single physical memory location 215 that contains the data record Record 2. Thus, instead of making a copy of the physical data record 215 itself, a second pointer 201-2 is simply generated to point to the same data record Record 2. This operation makes two copies of the data record Record 2 available to the software resident on processor 100 without suffering the time penalty of having to actually read the data record Record 2 from the physical memory location 215 and then write a new copy of the data record Record 2 to a separate physical memory location (ex 213) .
Processor 100 can, as a background process, make another physical copy of the data record Record 2 if so desired. Alternatively, a more efficient method of managing the shared data record Record 2 is to wait until one of the programs on processor 100 modifies the data record Record 2. At this point, the modified data record (ex Record 5) can be written to disk drive memory 120 to a new physical memory location 213. The corresponding pointer 201-2 is adjusted to indicate this new physical memory location 213 for the data record Record 5. In this fashion, another physical copy 213 of the data record Record 5 is produced only when changes are made to the original data record Record 2 and there no longer is a shared data record that has identical contents. This eliminates duplicate data records as is commonly found in prior art systems.
While a specific embodiment of this invention has been disclosed, it is expected that those skilled in the art can and will design alternate embodiments of this invention that fall within the scope of the appended claims.

Claims

I CLAIM:
1. In a virtual memory system that contains one or more data records stored therein and a corresponding number of data record pointers, each of which identifies the physical memory location of the associated data record, a method of copying a data record in response to a data record copy request comprising the steps of: identifying the physical memory location of the requested data record as specified by its associated data record pointer; and generating a data record pointer that is duplicative of said associated data record pointer as the data record pointer for said copy of said requested data record.
2. The method of claim 1 further including the step of: storing said duplicate data record pointer as the data record pointer for said copy of said requested data record.
3. The method of claim 2 further comprising the steps of: writing, in response to a modification of said data record, the modified version of said data record in a new memory location that differs from its original location; and generating a data record pointer associated with said modified version of said data record to identify said new memory location.
4. In a virtual memory system that contains one or more data records stored therein and a corresponding number of data record pointers, each of which identifies the physical memory location of the associated data record, apparatus for copying a data record stored in said virtual memory system comprising: means responsive to a request to copy a designated data record for retrieving the data record pointer associated with said designated data record; means duplicating said retrieved data record pointer; and means for storing said duplicate copy of said data record pointer as the data record pointer for said copy of said designated data record.
5. The apparatus of claim 4 further comprising: means for writing, in response to a modification of said data record, the modified version of said data record in a new memory location that differs from its original memory location; and means for generating a data record pointer associated with said modified version of said data record to identify said new memory location.
6. In a virtual memory system that contains one or more data records stored therein and a corresponding number of data record pointers, each of which identifies the physical memory location of the associated data record, a method of copying a data record in response to a data record copy request comprising the steps of: identifying the physical memory location of the requested data record as specified by its associated data record pointer; generating a data record pointer that is duplicative of said associated data record pointer as the data record pointer for said copy of said requested data record; storing said duplicate data record pointer as the data record pointer for said copy of said requested data record; writing, in response to a modification of said data record, the modified version of said data record in a new memory location that differs from its original location; and generating a data record pointer associated with said modified version of said data record to identify said new memory location.
7. In a virtual memory system that contains one or more data records stored therein and a corresponding number of data record pointers, each of which identifies the physical memory location of the associated data record, apparatus for copying a data record stored in said virtual memory system comprising: means responsive to a request to copy a designated data record for retrieving the data record pointer associated with said designated data record; means for duplicating said retrieved data record pointer; means for storing said duplicate copy of said data record pointer as the data record pointer for said copy of said designated data record; means for writing, in response to a modification of said data record, the modified version of said data record in a new memory location that differs from its original location; and means for generating a data record pointer associated with said modified version of said data record to identify said new memory location.
PCT/US1990/006498 1989-11-30 1990-11-02 Data record copy apparatus for a virtual memory system WO1991008537A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US44393389A 1989-11-30 1989-11-30
US443,933 1989-11-30

Publications (1)

Publication Number Publication Date
WO1991008537A1 true WO1991008537A1 (en) 1991-06-13

Family

ID=23762774

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1990/006498 WO1991008537A1 (en) 1989-11-30 1990-11-02 Data record copy apparatus for a virtual memory system

Country Status (2)

Country Link
AU (1) AU6957191A (en)
WO (1) WO1991008537A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664144A (en) * 1990-09-24 1997-09-02 Emc Corporation System and method for FBA formatted disk mapping and variable-length CKD formatted data record retrieval
US6889288B2 (en) 2002-12-02 2005-05-03 Emc Corporation Reducing data copy operations for writing data from a network to storage of a cached data storage system by organizing cache blocks as linked lists of data fragments
US7475098B2 (en) 2002-03-19 2009-01-06 Network Appliance, Inc. System and method for managing a plurality of snapshots

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3317898A (en) * 1963-07-19 1967-05-02 Ibm Memory system
US4300192A (en) * 1974-04-18 1981-11-10 Honeywell Information Systems Inc. Method and means for storing and accessing information in a shared access multiprogrammed data processing system
US4577274A (en) * 1983-07-11 1986-03-18 At&T Bell Laboratories Demand paging scheme for a multi-ATB shared memory processing system
US4742450A (en) * 1986-01-16 1988-05-03 International Business Machines Corporation Method to share copy on write segment for mapped files
US4956771A (en) * 1988-05-24 1990-09-11 Prime Computer, Inc. Method for inter-processor data transfer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3317898A (en) * 1963-07-19 1967-05-02 Ibm Memory system
US4300192A (en) * 1974-04-18 1981-11-10 Honeywell Information Systems Inc. Method and means for storing and accessing information in a shared access multiprogrammed data processing system
US4577274A (en) * 1983-07-11 1986-03-18 At&T Bell Laboratories Demand paging scheme for a multi-ATB shared memory processing system
US4742450A (en) * 1986-01-16 1988-05-03 International Business Machines Corporation Method to share copy on write segment for mapped files
US4956771A (en) * 1988-05-24 1990-09-11 Prime Computer, Inc. Method for inter-processor data transfer

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664144A (en) * 1990-09-24 1997-09-02 Emc Corporation System and method for FBA formatted disk mapping and variable-length CKD formatted data record retrieval
US5909692A (en) * 1990-09-24 1999-06-01 Emc Corporation System and method for disk mapping and data retrieval
US6185653B1 (en) 1990-09-24 2001-02-06 Emc Corporation System and method for disk mapping and data retrieval
US6418509B1 (en) 1990-09-24 2002-07-09 Emc Corporation System and method for disk mapping and data retrieval
US6587919B2 (en) 1990-09-24 2003-07-01 Emc Corporation System and method for disk mapping and data retrieval
US7475098B2 (en) 2002-03-19 2009-01-06 Network Appliance, Inc. System and method for managing a plurality of snapshots
US9043271B2 (en) 2002-03-19 2015-05-26 Netapp, Inc. System and method for managing a plurality of snapshots
US6889288B2 (en) 2002-12-02 2005-05-03 Emc Corporation Reducing data copy operations for writing data from a network to storage of a cached data storage system by organizing cache blocks as linked lists of data fragments

Also Published As

Publication number Publication date
AU6957191A (en) 1991-06-26

Similar Documents

Publication Publication Date Title
US5155835A (en) Multilevel, hierarchical, dynamically mapped data storage subsystem
US6112277A (en) Method and means for reducing device contention by random accessing and partial track staging of records according to a first DASD format but device mapped according to a second DASD format
US4467421A (en) Virtual storage system and method
US5394532A (en) Disk drive array memory system having instant format capability
US4476526A (en) Cache buffered memory subsystem
US6772283B2 (en) Disk control device and method processing variable-block and fixed-block accesses from host devices
CA1197021A (en) Roll mode for cached data storage
EP1160654B1 (en) Method for on-line, real time, data migration
US5379391A (en) Method and apparatus to access data records in a cache memory by multiple virtual addresses
JP3273254B2 (en) Fast, high-performance, defect-tolerant, error-correctable storage system for binary computers
US5210866A (en) Incremental disk backup system for a dynamically mapped data storage subsystem
US5530829A (en) Track and record mode caching scheme for a storage system employing a scatter index table with pointer and a track directory
USRE36989E (en) Virtual storage system and method
US6338114B1 (en) Method, system, and program for using a table to determine an erase operation to perform
US20040078639A1 (en) Method and apparatus for recovery of a logical volume in a multi copy storage system
US6615327B1 (en) Method and system for backing up data of data processing devices including fixed length block format data conversion to variable length block format
US6079000A (en) XPC backup for in-process audit
US5694570A (en) Method and system of buffering data written to direct access storage devices in data processing systems
US7058692B2 (en) Computer, computer system, and data transfer method
US5862363A (en) Method of controlling a disk device by disk control unit
EP0465014A2 (en) Method and means for rule based data transfer
US5408656A (en) Method and system for non-specific address data retrieval in a data storage subsystem which includes multiple datasets stored at specific addresses
US6842843B1 (en) Digital data storage subsystem including arrangement for increasing cache memory addressability
WO1991008537A1 (en) Data record copy apparatus for a virtual memory system
WO1991008536A1 (en) Data record move apparatus for a virtual memory system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AU CA JP

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE

NENP Non-entry into the national phase

Ref country code: CA