IE980560A1 - System and Method for Preparing a Computer Memory - Google Patents

System and Method for Preparing a Computer Memory

Info

Publication number
IE980560A1
IE980560A1 IE980560A IE980560A IE980560A1 IE 980560 A1 IE980560 A1 IE 980560A1 IE 980560 A IE980560 A IE 980560A IE 980560 A IE980560 A IE 980560A IE 980560 A1 IE980560 A1 IE 980560A1
Authority
IE
Ireland
Prior art keywords
directive
directives
computer
configuration
received
Prior art date
Application number
IE980560A
Inventor
Alan E Beelitz
Original Assignee
Dell Usa Corp
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 Dell Usa Corp filed Critical Dell Usa Corp
Publication of IE980560A1 publication Critical patent/IE980560A1/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
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

A computer (10 Figure 1) includes a processor (12) and the computer memory (16), which may be a hard disk. The processor is capable of running operating system code, receiving external directives, and accessing the hard disk. In operation, the processor runs a set of operating code for preparing the hard disk, which set includes; instructions for receiving an external directive, 110, from a directive file 110a, or as command line parameters 110b; instructions for determining 116 the characteristics, or configuration, of the hard disk; instructions for creating 120 a partition descriptor from the external directive and/or configuration; and instructions for preparing 122 the hard disk according to the partition descriptor. The characteristics of the disk may include the numbers of disks, heads, and tracks.

Description

SYSTEM AND METHOD FOR PREPARING A COMPUTER MEMORY Background The present disclosure relates generally to computers, and more specifically, to a system and method for partitioning and formatting one or more memory devices in the computer.
When one or more memory devices such as a hard disk are added to a computer system, the memory devices often require specific preparation. Such preparation may include, for example, simultaneously partitioning the hard disk into logical regions so that certain data or programs can be separately stored and formatting the hard disk to make it suitable for a particular operating system. One common situation occurs when a new computer that utilizes a Microsoft DOS or WINDOWS operating system, available from Microsoft Corporation of Redmond, WA, is being manufactured. During the manufacture, one or more hard disks must first be partitioned into one or more partitions, such as a primary partition, in which the computer’s operating system and other application programs are stored, a utility partition, in which utility or maintenance-type programs, and extended partitions. Similar situations occur when a new hard disk is being added to a computer system or an existing hard disk is being reformatted. For the remaining discussion, the term “preparation” includes both partitioning and appropriate formatting procedures.
INT CL Preparing one or more hard disks has many variables associated therewith, allowing a large number of potential configurations of the hard disk(s). These variables may be disk-determined, such as the size and number of hard disks, system-determined, such as supporting “suspend-todisk” operations with pre-reserved spaces or separated storage areas with utility partitions, and/or user-determined, such as a choice of operating systems or multiple partitions. The wide variety of possible configurations can be problematic for computer makers, especially for those who customize each computer for a particular user.
Typically, a person must oversee the process of preparing the one or more hard disks, making many choices based on the above-described variables to produce an optimum configuration. However, it is desired to simplify and/or automate this function to better streamline this process.
Summary In response thereto, provided is a system and method for preparing a computer memory. In one embodiment, the computer includes a processor and the computer memory, which may be a hard disk. The processor is capable of running operating system code, receiving extemai directives, and accessing the hard disk. In operation, the processor runs a set of operating code for preparing the hard disk. The code set includes instructions for receiving an external directive, instructions for determining a configuration of the hard disk, instructions for creating a partition descriptor from the extemai directive and/or configuration, and instructions for preparing the hard disk according to the partition descriptor.
In one embodiment, the extemai directive is received from a directive file, thereby providing instruction for directing the preparing process. . 9 .
In another embodiment, the external directive is provided at a command line, thereby providing instruction for directing the preparing process.
A technical advantage achieved is that preparing the computer memory is simplified and/or automated, thus streamlining this process.
Another technical advantage achieved is that the directives can be modified to accommodate the specific configuration of the computer memory.
Another technical advantage achieved is that long series of directives can be placed in a single directive file, thereby simplifying the input thereof.
Brief Description of the Drawings Fig. 1 is a block diagram of a computer for implementing one embodiment.
Fig. 2 is a layout diagram of a hard disk of the computer of Fig. 1.
Fig. 3 is a flow chart of a routine to be run by the computer of Fig. 1 for preparing the hard disk of Fig. 2.
Detailed Description of the Preferred Embodiment The following disclosure incorporates by reference U.S. Patent Application Ser. No. (Atty. Docket No. DC-1313), entitled “System and Method for Changing Partition Mappings to Logical Drives in a Computer Memory” filed December 3, 1997 and commonly assigned.
Referring to Fig. 1, the reference numeral 10 designates a computer having several components, including a processor 12, a bank of random access memories (RAM) 14a and read only memories (ROM) 14b, one or more hard disks represented by hard disk 16, and a network interface 18. Each component is capable of communication with the processor 12, as graphically represented by a general bus 20. In the present example, the computer 10 is a personal computer running Microsoft DOS and/or - 3 IE 980560 WINDOWS. It is understood, however, that the computer 10 and its illustrated components are merely representative of many different types of computers and components well known and understood by those of ordinary skill in the art.
Referring to Fig. 2, the hard disk 16 includes a master boot record 30, having boot strap code 32 and a master partition table 34. It is understood that the master boot record 30 includes conventional code, such as for booting up the computer 10, which is well known in the art. Associated with the hard disk 16 is a beginning 36 and an end 38, together representing the total memory capacity of each hard disk. Also associated with the hard disk 16 is a capability (not shown), such as whether the hard disk supports BIOS extensions or a particular required bus interface. There may also be additional hard disks (not shown) that have similar or different physical configurations.
Referring to Fig. 3, a method 100 is used to prepare the hard disk 16 of the computer 10. For the sake of example, the method 100 is performed by the processor 12 but may, in the alternative, be performed by another device, such as one connected through the network interface 18. Specific operation examples of the method 100 are also provided below.
At step 110, the processor 12 receives one or more directives. A directive provides guidance and instructions to the method 100 as to how the hard disk 16 should be prepared. The processor 12 may receive the directives by reading a directive file 110a. The directive file 110 a is an ASCII text file that contains instructions for the method 100 in the form of a specialized scripting language. The directive file 110a may be provided, for example, through the network interface 18 or through the hard disk 16. Alternatively, the processor 12 may receive the directives as command line parameters 110b. Command line parameters are commands supplied to the method 100 when the method 100 is invoked. - 4 IE 980560 • These directives allow a user to specify essentially all aspects of hard disk preparation, including boot record filespecs (e.g., a name of a file that will contain the master boot record 30, a 16-bit file allocation table (“FAT16”) partition boot record, and/or a FAT32 partition boot record), file system types (e.g., FAT16 and/or FAT32), partition sizes (e.g. number of megabytes), and so forth. Once the directives are prepared, no further user input is required.
At step 112, the processor 12 checks the received directives to determine if they are consistent. That is, the processor 12 checks the syntax of the directives and makes sure that no two directives are conflicting. If the directives are not consistent, at step 114 the processor 12 generates an error message.
At step 116, the processor 12 determines the characteristics of the hard disk 16. Continuing with the DOS/WINDOWS operating system exaronle, the processor 12 may use BIOS calls and extensions to determine the characteristics of the hard disk 16, including such things as the number of actual disks (hard disk 16 represents one or more hard disks), the parameter of each disk, and the capability of each disk. The parameters of each disk may include a number of cylinders, number of heads, and number of tracks. The capability of each disk may include a level of BIOS support. The processor 12 stores the physical configuration in the RAM 14a.
The method 100 operates sequentially through each disk represented by the hard disk 16. At step 118, the processor 12 determines if a “next” disk is to be prepared. If so, at step 120 the processor 12 analyzes the characteristics of the disk and the received directives relating to the disk, to create one or more partition descriptors. The analysis can have default, or fall-back descriptors to accommodate preparation details not provided in the received descriptors or not possible with the received descriptors. Other impossibilities may be considered as an error and a user is so notified. - 5 IE 980560 At step 122, the processor 12 prepares the hard disk 16 by processing the previously created partition descriptors. In particular, the processor 12 writes the master boot record 30 by providing the boot strap code 32 and preparing the master partition table 34 according to the partition descriptors created in step 120. The processor 12 also creates one or more partition boot records (not shown) with the appropriate file allocation tables.
Upon completion of step 122, or upon a negative determination at step 118, execution proceeds to step 124 where the processor 12 determines if another disk needs to be prepared. If so, execution returns to step 118 and the next disk is prepared. Otherwise, execution proceeds to step 126 and the processor 12 reports the final logical configuration of the hard disk 16.
For the sake of clarification, described below are several example operations that may be performed by the method 100. It is understood, however, that many different operations are anticipated, and therefore these examples are not intended to limit the claims in any manner.
Example 1 steps 110-112: steps 116-118: step 120: A directive “prepare hard disk and reserve 32 megabytes” is received.
There exists only one hard disk 16 having a capacity of 10 gigabytes.
The capacity in the hard disk is sufficiently greater that the desired amount to reserve. A partition descriptor is created to accommodate the received directive.
The master boot record 30 and partition boot record are written, reserving the 32 megabytes near the end 38 of the hard disk 16. step 122: - 6 IE 980560 Example 2 steps 110-112 steps 116-118 step 120: step 122: step 118: step 120: step 122: A directive “prepare hard disk and create a utility partition of ten megabytes on the second hard disk” is received.
There exists two hard disks. The first hard disk has a capacity of 2 gigabytes.
The capacity in the first hard disk is above a predefined maximum limit for a primary partition. A partition descriptor is created to accommodate the received directive.
The master boot record 30 and a boot record for the primary partition are created in the first hard disk. A boot record for an extended partition is also created, the extended partition using the remaining available capacity. A check is performed that the capacity of each partition is greater than a predefined minimum limit. The second hard disk has a capacity of 6 gigabytes.
The capacity in the second hard disk is sufficiently greater that the desired amount needed for the utility partition. A partition descriptor is created to accommodate the received directive.
The master boot record 30, a primary partition boot record, and a utility partition boot record are written to the second hard disk.
Example 3 steps 110-112: A directive “prepare hard disk using defaults” is received. steps 116-118: step 120: step 122: Example 4 step 110-112: steps 116-118: step 120: step 122: There exists only one hard disk 16 having a capacity of 10 gigabytes.
The capacity in the hard disk is above a predefined maximum limit for a primary partition. A partition descriptor is created to accommodate the received directive.
The master boot record 30 and a boot record for the primary partition are created. A boot record for an extended partition is also created, the extended partition using the remaining available capacity. A check is performed that the capacity of each partition is greater than a predefined minimum limit.
A directive “prepare hard disk and don’t create an extended partition” is received.
There exists one hard disk 16 with a capacity of 2.1 gigabytes.
Since no additional partition is requested, a single 2.0 gigabyte primary partition will be created. A partition descriptor is created to accommodate the received directive.
The master boot record 30 and a boot record for the primary partition are created. The remaining 100 megabytes is left unformatted.
-S IE 980560 Example 5 steps 110-112: A directive “prepare hard disk and create an extended partition” is received. steps 116-118: There exists one hard disk 16 with a capacity of 2.1 gigabytes. step 120: Since an extended partition is requested, and a minimum partition size is 500 megabytes, a 1.6 gigabyte primary partition will be created and a 500 megabyte extended partition will be created. A partition descriptor is created to accommodate the received directive. step 122: The master boot record 30 and two additional boot records are created: one for the primary partition and one for the extended partition.
Example 6 steps 110-112: Two directives: “setup disk as a network server” and “create a 1.6 gigabyte primary partition” are received. steps 116-118: There exists one hard disk 16 with a capacity of 2.0 gigabytes. step 120: Since a network server needs at least one 500 megabyte extended partition, there is not enough disk space to accommodate both directives. The 1.6 gigabyte primary partition is reduced to 1.5 gigabytes. A partition descriptor is created to accommodate the received directive. step 122: The master boot record 30 and two additional boot records are created: one for the primary partition and one for the extended partition. The modification is reported. - 9 - Example 7 steps 110-112 steps 116-118: step 120: step 122: A directive “prepare hard disk with a FAT32 partition” is received.
There exists one hard disk 16 with a capacity of 1.8 gigabytes.
Since a FAT32 partition needs at least 2.0 gigabytes, there is not enough, disk space to accommodate both directives. The primaiy partition is reduced to a 1.8 gigabyte FAT16 partition. A partition descriptor is created to accommodate the received directive.
The master boot record 30 and a boot record for the FAT 16 primary partition are created.
Although illustrative embodiments have been shown and described, a latitude of modification, change and substitution is intended in the foregoing disclosure, and in certain instances, some features will be employed without a corresponding use of other features. Furthermore, additional features, such as error handling routines, may be added to the illustrative embodiment without altering the scope of the embodiment. Accordingly, it is appropriate that the appended claims be construed broadly.

Claims (21)

Claims WHAT IS CLAIMED IS:
1. A computer comprising: at least one processor capable of running operating code and receiving extemai directives; at least one storage accessible by the processor; a set of operating code for preparing the at least one storage; wherein the set includes instructions for determining a configuration of the at least one storage, for receiving at least one extemai directive, and for preparing the at least one storage in response to the directive.
2. The computer of claim 1 wherein the at least one directive is received from, a file including an additional directive.
3. The computer of claim 1 wherein the processor receives the at least one directive through a command line.
4. The computer of claim 1 further comprising a network connection and wherein the at least one directive is received through the network connection.
5. The computer of claim 1 further comprising a floppy disk and wherein the at least one directive is received through the floppy disk.
6. The computer of claim 1 wherein the at least one directive defines a partitioning configuration of the at least one storage. - 11 IE 980560 Ί. A method for preparing a storage device in a.computer, the method comprising the steps of: receiving a plurality of directives; determining a configuration of the storage device; comparing the directive with the configuration; and if the comparison of the configuration and directives so allows, creating partition descriptors in response to the directives; and preparing the storage device according to the partition descriptors.
7. 8. The method of claim 7 further comprising: if the comparison of the configuration and directives does not allow, creating the partition descriptors in response to the configuration.
8. 9. The method of claim 7 wherein the directives are received from a file.
9. 10. The method of claim 7 wherein the directives are received from an operating system command line.
10. 11. The method of claim 7 wherein the computer includes a network connection and wherein the directives are received through the network connection.
11. 12. The method of claim 7 wherein the computer includes a floppy disk and wherein the directives are received through the floppy disk.
12. 13. The method of claim 7 wherein the directives define a partitioning configuration of the storage device. - 12 IE 980560
13. 14. A method for preparing two or more storage devices in a computer, the method comprising the steps of: receiving a first directive directed to a first storage device; determining a first configuration of the first storage device; comparing the first directive with the first configuration; and if the comparison of the first configuration and first directive so allows, creating a partition descriptor in response to the first directive; if the comparison of the first configuration and first directive does not allow, creating the partition descriptor in response to the configuration; preparing the first storage device according to the partition descriptor, and repeating the above steps for a second directive and a second storage device. . A5. The method of claim 14 wherein the directives are received from a file.
14. 16. The method of claim 14 wherein the directives are received from an operating system command line.
15. 17. The method of claim 14 wherein the computer includes a network connection and wherein the directives are received through the network connection.
16. 18. The method of claim 14 wherein the computer includes a floppy disk and wherein the directives are received through the floppy disk.
17. 19. A program product for preparing one or more hard disks in a computer, the program product comprising: - 13 IE 980560 a computer-readable storage medium; instructions recorded on the medium for determining a configuration a first hard disk; instructions recorded on the medium for receiving a first directive; instructions recorded on the medium for creating a partition descriptor according to the configuration and the directive; and instructions recorded on the medium responsive for preparing the first hard disk using the partition descriptor.
18. 20. The program product of claim 19 further comprising: instructions recorded on the medium for reading the first directive from a file.
19. 21. The program product of claim 20 wherein the computer includes a second hard disk and wherein the file includes a second directive for preparing the second hard disk.
20. 22. The program product of claim 19 further comprising: instructions recorded on the medium for reading the first directive from a command line.
21. 23. The program product of claim 19 further comprising: instructions recorded on the medium for reading the first directive from a network connection.
IE980560A 1998-01-23 1998-07-13 System and Method for Preparing a Computer Memory IE980560A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US1219698A 1998-01-23 1998-01-23

Publications (1)

Publication Number Publication Date
IE980560A1 true IE980560A1 (en) 1999-07-28

Family

ID=21753810

Family Applications (1)

Application Number Title Priority Date Filing Date
IE980560A IE980560A1 (en) 1998-01-23 1998-07-13 System and Method for Preparing a Computer Memory

Country Status (11)

Country Link
JP (1) JPH11212839A (en)
KR (1) KR19990066738A (en)
AU (1) AU8089998A (en)
BR (1) BR9803211A (en)
DE (1) DE19900668A1 (en)
FR (1) FR2774786A1 (en)
GB (1) GB2336009A (en)
IE (1) IE980560A1 (en)
IT (1) ITTO990025A1 (en)
SG (1) SG77645A1 (en)
TW (1) TW386200B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8352697B2 (en) * 2004-05-17 2013-01-08 Sandisk Il Ltd. Method of managing files for optimal performance

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0215422A (en) * 1988-07-04 1990-01-19 Nikon Corp Optical disk and disk driving device
US5136711A (en) * 1990-10-17 1992-08-04 Ast Research System for multiple access hard disk partitioning
US5537540A (en) * 1994-09-30 1996-07-16 Compaq Computer Corporation Transparent, secure computer virus detection method and apparatus
EP0794484A3 (en) * 1996-03-04 1999-05-06 Nec Corporation Partitioned hard disk drives and partitioning scheme for hard disk drives

Also Published As

Publication number Publication date
ITTO990025A1 (en) 1999-07-15
KR19990066738A (en) 1999-08-16
JPH11212839A (en) 1999-08-06
BR9803211A (en) 1999-10-19
DE19900668A1 (en) 1999-07-29
AU8089998A (en) 1999-08-12
SG77645A1 (en) 2001-01-16
FR2774786A1 (en) 1999-08-13
TW386200B (en) 2000-04-01
GB2336009A (en) 1999-10-06

Similar Documents

Publication Publication Date Title
US5247683A (en) System and method for installing software and updating configuration files
DE69534867T2 (en) Method and system for providing protected device drivers
US5740431A (en) Configuration file management
JP2718423B2 (en) Data processing system with operating system definition file
US6032239A (en) System and method for updating partition mappings to logical drives in a computer memory device
US5815731A (en) Method and system for providing device driver configurations on demand
US5136711A (en) System for multiple access hard disk partitioning
US6088764A (en) Method and apparatus for reducing space allocation failures in storage management systems
US6304965B1 (en) Method and device for booting a CD-ROM from a single disk image having multiple emulations
AU734920B2 (en) Modifiable partition boot record for a computer memory device
EP0760500B1 (en) Partitioning within a partition in a disk file storage system
CN103853665B (en) Memory allocation method and apparatus
US6591356B2 (en) Cluster buster
US6032223A (en) System and method for determining a RAM disk logical drive designation
US6748511B2 (en) Resizing a protected area on a hard disk
US5291600A (en) Recovery of in-core disk data
US20040068645A1 (en) Operating system selector and data storage drive
US20080040572A1 (en) Method, system, and article of manufacture for reserving memory
US5349661A (en) Installation of an expanded memory manager
IE980560A1 (en) System and Method for Preparing a Computer Memory
CN1224194A (en) System and method for preparing computer memory
JPS5856887B2 (en) Multiplexer channel method
JP3087274B2 (en) File exclusion control system
JPH1116248A (en) Cd-r/rw drive write-in system
JPH0245842A (en) Data file control system

Legal Events

Date Code Title Description
MM9A Patent lapsed through non-payment of renewal fee