Patent US6202121B1 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6202121B1 Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for improved program launch time

Assignee: Zhigu Holdings Ltd
•
Filing: 1998-04-15
•
Granted: 2001-03-13
•
Expires: 2018-04-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Installing files on a hard disk drive in a manner that improves program launch time. After a build of a program is completed, the program is launched and the disk activity associated with disk-intensive operations is monitored to determine the order in which file portions are read from a disk during program or command launch. This data is used to create a load sequence list, which indicates the order in which various portions of the files are read during launch. The installation disks include the files and the load sequence list. During the installation process, the installation program reads the data from the load sequence list and writes the file portions so they are stored in the order prescribed by the load sequence list in contiguous clusters on the hard disk drive. The computer can then read launch-related data from the disk in the proper order from contiguous disk clusters, which minimizes or eliminates wasted time that would result from disk accesses if the disk heads had to move between non-contiguous clusters in order to read the launch-related data.

Inventors

  • 👤 James Edward Walsh
  • 👤 Benjamin Aaron Rudiak-Gould

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-09 19:42
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/30; G06F11/34; G06F11/3466; G06F11/3485; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0604; G06F3/0607; G06F3/0628; G06F3/0629; G06F3/0632; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674; G06F3/0676; G06F8/00; G06F8/60; G06F8/61; G06F9/00; G06F9/06; G06F9/44; G06F9/445

Claims Analysis

Total Claims: 23
Claim 1
Independent Claim 181 words
A computer-readable medium storing an application program module to be installed on a disk of an end-user's computer system, comprising: the application program module, comprising a plurality of files including launch-related portions; a load sequence list indicating the order in which the launch-related portions of the plurality of files are to be read during application program launch and, based on the order that the launch-related portions of the plurality of files are to be read, indicating the order in which the files are to be installed on the disk of the end-user's computer system, the load sequence list being determined prior to installing the application program module on the disk of the end-user's computer system; and computer-executable instructions for: identifying at least one group of contiguous free clusters comprising the largest number of contiguous free clusters on the disk of the end-user's computer system, and installing the launch-related portions of the plurality of files in the at least one group of contiguous free clusters, the launch-related portions being stored on the disk in the order indicated in the load sequence list.
Claim 2
Dependent Claim 181 words
A computer-readable medium storing an application program module to be installed on a disk of an end-user's computer system, comprising: the application program module, comprising a plurality of files including launch-related portions; a load sequence list indicating the order in which the launch-related portions of the plurality of files are to be read during application program launch and, based on the order that the launch-related portions of the plurality of files are to be read, indicating the order in which the files are to be installed on the disk of the end-user's computer system, the load sequence list being determined prior to installing the application program module on the disk of the end-user's computer system; and computer-executable instructions for: identifying at least one group of contiguous free clusters comprising the largest number of contiguous free clusters on the disk of the end-user's computer system, and installing the launch-related portions of the plurality of files in the at least one group of contiguous free clusters, the launch-related portions being stored on the disk in the order indicated in the load sequence list.
Claim 3
Dependent Claim 37 words
The computer-readable medium of claim 1 , wherein the load sequence list includes a plurality of entries, each of the entries identifying one of the plurality of files and the portion of the file to be installed.
Claim 4
Dependent Claim 69 words
The computer-readable medium of claim 1 , wherein the step of installing the launch-related portions comprises the steps of: reading an entry in the load sequence list, the entry identifying one of the plurality of files and a portion of the file to be read; reading the portion of the file from the identified one of the plurality of files; writing the portion of the file to the disk.
Claim 5
Dependent Claim 53 words
The computer-readable medium of claim 1 , wherein the step of identifying at least one group of contiguous free clusters comprises the steps of: reading a list of available free clusters from data stored on the disk; and identifying the groups of contiguous free clusters having the largest numbers of contiguous free clusters.
Claim 6
Dependent Claim 36 words
The computer-readable medium of claim 1 , wherein the plurality of files include non-launch-related portions, the non-launch-related portions being stored on the disk after the step of installing the launch-related portions of the plurality of files.
Claim 7
Dependent Claim 16 words
The computer-readable medium of claim 1 , wherein the launch-related portions are read during program startup.
Claim 8
Dependent Claim 18 words
The computer-readable medium of claim 1 , wherein the launch-related portions are read when executing a program command.
Claim 9
Independent Claim 181 words
A method for installing program code from an installation disk to a disk, comprising the steps of: creating a load sequence list, which indicates the order, in which the launch-related portions of the plurality of files are to be read during application program launch and, based on the order that the launch related portions of the plurality of files are to be read, indicating the order in which the files are to be installed on a disk; reading a plurality of entries from the load sequence list, which is determined prior to installing the launch-related portions to the disk, stored on the installation disk, each entry identifying a file portion associated with the program code; for each entry read from the load sequence list, reading from the installation disk the file portion identified by the entry; and for each entry read from the load sequence list, writing the read file portion to a group of contiguous free clusters on the disk, the file portion being stored on the disk in an order corresponding to the entries in the load sequence list.
Claim 10
Independent Claim 181 words
A method for installing program code from an installation disk to a disk, comprising the steps of: creating a load sequence list, which indicates the order, in which the launch-related portions of the plurality of files are to be read during application program launch and, based on the order that the launch related portions of the plurality of files are to be read, indicating the order in which the files are to be installed on a disk; reading a plurality of entries from the load sequence list, which is determined prior to installing the launch-related portions to the disk, stored on the installation disk, each entry identifying a file portion associated with the program code; for each entry read from the load sequence list, reading from the installation disk the file portion identified by the entry; and for each entry read from the load sequence list, writing the read file portion to a group of contiguous free clusters on the disk, the file portion being stored on the disk in an order corresponding to the entries in the load sequence list.
Claim 11
Dependent Claim 31 words
The method of claim 8 , wherein each entry in the load sequence list includes a file identifier and the location of the data to be read from the identified file.
Claim 12
Dependent Claim 36 words
The method of claim 8 , wherein each entry in the load sequence list includes a file name, an offset into the named file, and an amount of data to be read from the named file.
Claim 13
Dependent Claim 36 words
The method of claim 8 , further comprising the steps of writing non-launch-related program code from the installation disk to the disk after writing the file portions associated with each entry of the load sequence list.
Claim 14
Independent Claim 216 words
A method for installing program code from an installation disk to a disk of an end-user's computer system, comprising the steps of: creating a plurality of files including launch-related portions; determining the order in which the launch-related portions are to be read; creating a load sequence list prior to installing the launch-related portions to the disk of the end-user's computer system, the load sequence list indicating the order in which the launch-related portions of the plurality of files are to be read during application program launch and, based on the order that the launch-related portions of the plurality of files are to be read, indicating the order in which the files are to be installed on the disk of the end-user's computer system; and storing the plurality of files, the load sequence list, and an installation program on an installation disk, the installation program including computer-executable instructions for: identifying at least one group of contiguous free clusters comprising the largest number of contiguous free clusters on the disk of the end-user's computer system, and installing the launch-related portions of the plurality of files in at least one group of the contiguous free clusters, the launch-related portions being stored on the disk of the end user's computer system in the order indicated in the load sequence list.
Claim 15
Independent Claim 216 words
A method for installing program code from an installation disk to a disk of an end-user's computer system, comprising the steps of: creating a plurality of files including launch-related portions; determining the order in which the launch-related portions are to be read; creating a load sequence list prior to installing the launch-related portions to the disk of the end-user's computer system, the load sequence list indicating the order in which the launch-related portions of the plurality of files are to be read during application program launch and, based on the order that the launch-related portions of the plurality of files are to be read, indicating the order in which the files are to be installed on the disk of the end-user's computer system; and storing the plurality of files, the load sequence list, and an installation program on an installation disk, the installation program including computer-executable instructions for: identifying at least one group of contiguous free clusters comprising the largest number of contiguous free clusters on the disk of the end-user's computer system, and installing the launch-related portions of the plurality of files in at least one group of the contiguous free clusters, the launch-related portions being stored on the disk of the end user's computer system in the order indicated in the load sequence list.
Claim 16
Dependent Claim 39 words
The method of claim 12 , wherein the load sequence list includes a plurality of entries, each of the entries including the name of one of the plurality of files and the portion of the file to be installed.
Claim 17
Dependent Claim 68 words
The method of claim 12 , wherein the step of installing the launch-related portions comprises the steps of: reading an entry in the load sequence list, the entry identifying one of the plurality of files and a portion of the file to be read; reading from the identified one of the plurality of files the portion of the file; writing the portion of the file to the disk.
Claim 18
Dependent Claim 35 words
The method of claim 12 , wherein the plurality of files include non-launch-related portions, the non-launch-related portions being stored on the disk after the step of installing the launch-related portions of the plurality of files.
Claim 19
Independent Claim 204 words
A method for installing and optimizing program code on a logical disk, comprising the steps of: creating a plurality of files including disk-intensive portions associated with disk-intensive operations; determining the order in which the disk-intensive portions are to be read during the disk-intensive operations; creating a load sequence list prior to installing the plurality of files to the logical disk, the load sequence list indicating the order in which the disk-intensive portions of the plurality of files are to be read during the disk-intensive operations and, based on the order that the disk-intensive portions of the plurality of files are to be read, indicating the order in which the files are to be installed on the logical disk; storing the plurality of files, the load sequence list, and an installation program on an installation disk; installing the plurality of files and the load sequence list from the installation disk to the logical disk; and after installation on the logical disk, optimizing the disk-intensive portions by performing the steps of: identifying at least one group of contiguous free clusters comparing the largest number of contiguous free clusters on the logical disk, and rearranging the disk-intensive portions in the order indicated in the load sequence list.
Claim 20
Independent Claim 204 words
A method for installing and optimizing program code on a logical disk, comprising the steps of: creating a plurality of files including disk-intensive portions associated with disk-intensive operations; determining the order in which the disk-intensive portions are to be read during the disk-intensive operations; creating a load sequence list prior to installing the plurality of files to the logical disk, the load sequence list indicating the order in which the disk-intensive portions of the plurality of files are to be read during the disk-intensive operations and, based on the order that the disk-intensive portions of the plurality of files are to be read, indicating the order in which the files are to be installed on the logical disk; storing the plurality of files, the load sequence list, and an installation program on an installation disk; installing the plurality of files and the load sequence list from the installation disk to the logical disk; and after installation on the logical disk, optimizing the disk-intensive portions by performing the steps of: identifying at least one group of contiguous free clusters comparing the largest number of contiguous free clusters on the logical disk, and rearranging the disk-intensive portions in the order indicated in the load sequence list.
Claim 21
Dependent Claim 39 words
The method of claim 16 , wherein the load sequence list includes a plurality of entries, each of the entries including the name of one of the plurality of files and the portion of the file to be rearranged.
Claim 22
Dependent Claim 29 words
The method of claim 17 , wherein the portion is identified by an offset from the beginning of the file and an amount of data read from the file.
Claim 23
Dependent Claim 69 words
The method of claim 16 , wherein the step of rearranging the disk-intensive portions comprises the steps of: reading an entry in the load sequence list, the entry identifying one of the plurality of files and a portion of the file to be read; reading from the identified one of the plurality of files the portion of the file; writing the portion of the file to the logical disk.

References Cited (Backward Citations)

US5325532A Cited
US5560001A Cited
US5432937A Cited
EP0690369A2 Cited
US5696975A Cited
US5574907A Cited
WO1997037313A1 Cited
US5857101A Cited
US5933630A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-03-12 2004-09-11 2005-03-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-03-12 2008-09-11 2009-03-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-03-12 2012-09-11 2013-03-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag