IP Library Granted Patent US 8,595,195
Granted Patent B2
US 8,595,195 · App. 12/246,688 · Granted Nov 26, 2013

Creating a self-contained portable output file

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,595,195
App. No.
12/246,688
Granted
Nov 26, 2013
Kind
B2
Abstract

Various embodiments provide for creating a self-contained portable output file that includes a de-duplicated version of data. According to one embodiment, data, which includes a selected group of files, is partitioned into subblocks. A de-duplicated version of the data is created by eliminating a second subblock from the data and using a first subblock to represent the second subblock, if the second subblock is a duplicate of the first subblock. A self-contained portable output file, which includes the de-duplicated version of the data, is created.

Claims (29)

1. A method of creating a self-contained portable output file, comprising:

accessing a selected group of files associated with a first computer, where the selected group of files are formatted in an original format;

accessing a pool of unique subblocks associated with the selected group of files, where the pool of unique subblocks is the product of a data de-duplication process and where the pool of unique subblocks contains sufficient data to recreate the selected group of files in the original format;

accessing a first data structure associated with the pool of unique subblock, where the first data structure stores a mapping that relates a subblock in the pool of unique subblocks to a member of the selected group of files;

accessing a second data structure associated with the pool of unique sub-blocks, where the second data structure stores a mapping that relates a hash value to a subblock in the pool of unique subblocks;

instantiating an output file;

adding file identification data to the output file, where the file identification data identifies one or more members of the selected group of files;

adding one or more subblocks to the output file, where the one or more subblocks are copied from the pool of unique subblocks and where the one or more subblocks are sufficient to recreate the one or more members of the selected group of files identified by the file identification data;

adding a first derived data structure to the output file, where the first derived data structure includes one or more members of the first data structure; and

adding a second derived data structure to the output file, where the second derived data structure includes one or more members of the second data structure;

where the output file contains sufficient data related to the files identified by the file identification data to facilitate a second computer different from the computer to recreate the files identified by the file identification data without accessing the selected group of files in their original format when the computer communicates the output file to the second computer.

2. The method of claim 1 , where the file identification data includes a namespace for the selected group of files.

3. The method of claim 1 , comprising adding a utility to the output file, where the utility facilitates viewing the group of selected files without accessing the selected group of files in their original format.

4. The method of claim 1 , comprising adding a utility to the output file, where the utility facilitates the output file self-extracting the file identification data, one or more subblocks, the first derived data structure, and the second derived data structure.

5. The method of claim 1 , comprising selectively updating the output file when a file is added to the selected group of files and when a file is removed from the selected group of files.

6. The method of claim 5 , where selectively updating the output file includes adding a subblock to the output file when a file is added to the selected group of files.

7. The method of claim 5 , where selectively updating the output file includes removing a subblock from the output file when a file is removed from the selected group of files.

8. The method of claim 1 , comprising controlling a first computer that performs the method to communicate the output file to a second computer that did not perform the method data.

9. A non-transitory computer-readable medium storing computer executable instructions that when executed by a computer cause the computer to perform a method, the method comprising:

accessing a selected group of files available to the computer;

accessing a pool of unique subblocks associated with the selected group of files, where the pool of unique subblocks is the product of a data de-duplication performed by the computer;

accessing a first data structure associated with the pool of unique subblocks, where the first data structure stores a mapping that relates a subblock in the pool of unique subblocks to a member of the selected group of files;

accessing a second data structure associated with the pool of unique sub-blocks, where the second data structure stores a mapping that relates a hash value to a subblock in the pool of unique subblocks, where the hash value was produced as part of the data de-duplication performed by the computer;

creating an empty output file;

adding file identification data to the output file, where the file identification data identifies one or more members of the selected group of files;

adding one or more subblocks to the output file, where the one or more subblocks are copied from the pool of unique subblocks and where the one or more subblocks are sufficient to recreate the members of the selected group of files identified by the file identification data;

adding a first derived data structure to the output file, where the first derived data structure includes one or more members of the first data structure; and

adding a second derived data structure to the output file, where the second derived data structure includes one or more members of the second data structure;

where the output file contains sufficient data related to the files identified by the file identification data to facilitate a second computer different from the computer to recreate the files identified by the file identification data without accessing the selected group of files in their original format when the computer communicates the output file to the second computer.

Assignments (14)
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 18, 2025
From: QUANTUM CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 074024/0084 →
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT AT REEL/FRAME NO. 40473/0378 Recorded Oct 8, 2025
From: PNC BANK, NATIONAL ASSOCIATION, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 073061/0454 →
TERMINATION AND RELEASE OF AMENDED AND RESTATED INTELLECTUAL PROPERTY SECURITY AGREEMENT AT REEL/FRAME NO. 48029/0525 Recorded Aug 19, 2025
From: PNC BANK, NATIONAL ASSOCIATION, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 072542/0594 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2025
From: BLUE TORCH FINANCE LLC, AS AGENT FOR THE SECURED PARTIES
To: ALTER DOMUS (US) LLC, AS AGENT FOR THE SECURED PARTIES
Reel/Frame 071019/0850 →
RELEASE OF SECURITY INTEREST Recorded Aug 10, 2021
From: U.S. BANK NATIONAL ASSOCIATION
To: QUANTUM CORPORATION; QUANTUM LTO HOLDINGS, LLC
Reel/Frame 057142/0252 →
SECURITY INTEREST Recorded Aug 5, 2021
From: QUANTUM CORPORATION; QUANTUM LTO HOLDINGS, LLC
To: BLUE TORCH FINANCE LLC, AS AGENT
Reel/Frame 057107/0001 →
SECURITY INTEREST Recorded Jan 8, 2019
From: QUANTUM CORPORATION
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 048029/0525 →
SECURITY INTEREST Recorded Dec 27, 2018
From: QUANTUM CORPORATION, AS GRANTOR; QUANTUM LTO HOLDINGS, LLC, AS GRANTOR
To: U.S. BANK NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 049153/0518 →
RELEASE OF SECURITY INTEREST Recorded Dec 27, 2018
From: TCW ASSET MANAGEMENT COMPANY LLC, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 047988/0642 →
RELEASE OF SECURITY INTEREST Recorded Oct 25, 2016
From: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
To: QUANTUM CORPORATION
Reel/Frame 040474/0079 →
SECURITY INTEREST Recorded Oct 25, 2016
From: QUANTUM CORPORATION
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 040473/0378 →
SECURITY INTEREST Recorded Oct 21, 2016
From: QUANTUM CORPORATION
To: TCW ASSET MANAGEMENT COMPANY LLC, AS AGENT
Reel/Frame 040451/0183 →
SECURITY AGREEMENT Recorded Mar 31, 2012
From: QUANTUM CORPORATION
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 027967/0914 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2008
From: WIDEMAN, RODERICK B.
To: QUANTUM CORPORATION
Reel/Frame 021643/0438 →