System and method for enabling a target computer to use storage resources of a host computer
First Claim
1. A computer system, comprising:
- a target computer comprising a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein said second software program is stored in said memory;
a host computer operably coupled to said target computer comprising a central processing unit (CPU), memory and a disk drive, wherein said disk drive includes a file system; and
a file included in said file system on said host disk drive, wherein said file is useable by said target computer for data storage;
wherein said first software program executed in said target computer is configured to generate a disk request for data, wherein said disk request includes a sector address;
wherein said second software program executed in said target computer is configured to receive said disk request and provide said sector address to said host computer;
wherein said host computer is configured to receive said sector address and convert said sector address into an offset into said file, wherein said data is located at said offset in said file; and
wherein said host computer is configured to read said data from said file at said offset and provide said data to said target computer.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for a target computer to use a storage device of its host computer and in particular for bootstrapping an operating system from the storage device onto the target computer. The computer system comprises a host computer coupled to a target computer via an I/O bus. In one embodiment the target computer is an embedded system comprising an intelligent data acquisition device. The host computer includes a disk drive with a file system and a file which serves as a virtual disk drive for the target computer, i.e., the file is essentially an image of a disk drive which would otherwise be coupled to the target computer. The target computer may be a BIOS level IBM-compatible personal computer. The target computer includes an option ROM with an int13H handler which hooks the disk service routine software interrupt vector of the target computer and forwards INT 13H requests to a device driver executing on the host computer via a shared memory on the target computer. The device driver converts the sector address specified in the INT 13H request input parameters into an offset into the virtual disk file and reads the data from the file to the shared memory. The int13H handler copies the data from the shared memory to its local memory, in the case of a read request, or from its local memory to the shared memory, in the case of a write request. The operating system booted onto the target computer may be different from the operating system executing on the host computer.
81 Citations
46 Claims
-
1. A computer system, comprising:
-
a target computer comprising a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein said second software program is stored in said memory; a host computer operably coupled to said target computer comprising a central processing unit (CPU), memory and a disk drive, wherein said disk drive includes a file system; and a file included in said file system on said host disk drive, wherein said file is useable by said target computer for data storage; wherein said first software program executed in said target computer is configured to generate a disk request for data, wherein said disk request includes a sector address; wherein said second software program executed in said target computer is configured to receive said disk request and provide said sector address to said host computer; wherein said host computer is configured to receive said sector address and convert said sector address into an offset into said file, wherein said data is located at said offset in said file; and wherein said host computer is configured to read said data from said file at said offset and provide said data to said target computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A computer system, comprising:
-
a host computer comprising a central processing unit (CPU), memory and a disk drive, wherein said disk drive includes a file system; a target computer comprised in said host computer, wherein said target computer comprises a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein said second software program is stored in said memory; and a file included in said file system on said host disk drive, wherein said file is useable by said target computer for data storage; wherein said first software program executed in said target computer is configured to generate a disk request for data, wherein said disk request includes a sector address; wherein said second software program executed in said target computer is configured to receive said disk request and provide said sector address to said host computer; wherein said host computer is configured to receive said sector address and convert said sector address into an offset into said file, wherein said data is located at said offset in said file; and wherein said host computer is configured to read said data from said file at said offset and provide said data to said target computer.
-
-
25. A computer system, comprising:
-
a target computer comprising a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein said second software program is stored in said memory; a host computer operably coupled to said target computer comprising a central processing unit (CPU), memory and a disk drive, wherein said disk drive includes a file system; and a file included in said file system on said host disk drive, wherein said file is useable by said target computer for data storage; wherein said first software program executed in said target computer is configured to generate a disk request to write data, wherein said disk request includes a sector address; wherein said second software program executed in said target computer is configured to receive said disk request, to provide said data to said host computer, and to provide said sector address to said host computer; wherein said host computer is configured to receive said data and said sector address and to convert said sector address into an offset into said file; and wherein said host computer is configured to receive said data from said target computer and write said data to said file at said offset.
-
-
26. A computer system, comprising:
-
a target computer comprising a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein said second software program is stored in said memory; a host computer operably coupled to said target computer comprising a central processing unit (CPU), memory and a non-volatile storage memory, wherein said non-volatile storage memory includes a file system; and a file included in said file system on said host non-volatile storage memory, wherein said file is useable by said target computer for data storage; wherein said first software program executed in said target computer is configured to generate a non-volatile storage memory request for data, wherein said non-volatile storage memory request includes a non-volatile storage memory address; wherein said second software program executed in said target computer is configured to receive said non-volatile storage memory request and provide said non-volatile storage memory address to said host computer; wherein said host computer is configured to receive said non-volatile storage memory address and convert said non-volatile storage memory address into an offset into said file, wherein said data is located at said offset in said file; and wherein said host computer is configured to read said data from said file at said offset and provide said data to said target computer. - View Dependent Claims (27)
-
-
28. A method for enabling a target computer to use storage resources of its host computer comprised in a computer system, wherein the target computer comprises a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein said second software program is stored in said memory, wherein the host computer is operably coupled to said target computer and comprises a central processing unit, memory and a disk drive, wherein said disk drive includes a file system, wherein a file is included in said file system on said host disk drive, wherein said file is useable by said target computer for data storage, the method comprising:
-
said first software program executing in said target computer generating a disk request for data, wherein said disk request includes a sector address; said second software program executing in said target computer receiving said disk request and providing said sector address to said host computer; said host computer receiving said sector address and converting said sector address into an offset into said file, wherein said data is located at said offset in said file; and said host computer reading said data from said file at said offset and providing said data to said target computer. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40)
-
-
41. A method for enabling a target computer to use storage resources of its host computer comprised in a computer system, wherein the target computer comprises a target processor and a memory coupled to said target processor, wherein said target processor is configured to execute one or more first software programs and a second software program, wherein the host computer is operably coupled to said target computer and comprises a central processing unit (CPU), memory and a disk drive, wherein said disk drive includes a file system, wherein a file is included in said file system on said host disk drive, wherein said file is useable by said target computer for data storage, the method comprising:
-
said first software program executing in said target computer generating a disk request to write data, wherein said disk request includes a sector address; said second software program executing in said target computer receiving said disk request and providing said data to said host computer; said second software program providing said sector address to said host computer; said host computer receiving said sector address and converting said sector address into an offset into said file; and said host computer receiving said data from said target computer and writing said data to said file at said offset.
-
-
42. A method for installing an operating system onto a computer system comprising a first host computer comprising a processor, memory and a disk drive, wherein said disk drive includes a file system, wherein said file system includes a file, wherein said file is usable by a target computer for data storage, the method comprising:
-
installing a first target computer into said first host computer, wherein said installing said first target computer includes connecting said first target computer into an expansion slot of said first host computer adapted to receive said first target computer, wherein said first target computer includes a processor configured to execute a disk service routine for servicing disk requests from said first target computer processor; connecting a software installation device to said first target computer including a first software installation medium, wherein said first software installation medium includes an operating system and a software installation program for executing on said first target computer processor to install said operating system; installing a device driver program to execute on said first host computer, wherein said device driver is operable to receive data from said first target computer and write said data to said first host computer disk drive; and executing said software installation program on said first target computer processor after said installing said first target computer, said connecting said software installation device and said installing said device driver, wherein said executing said software installation program comprises; said software installation program reading a portion of said operating system from said first software installation medium and issuing a disk request to said disk service routine to write said portion of said operating system, wherein said disk request includes a parameter specifying a sector address; said disk service routine providing said sector address to said device driver; said device driver receiving said sector address and converting said sector address to an offset into said file in said file system of said first host computer disk drive; and said device driver receiving said portion of said operating system from said first target computer and writing said portion of said operating system to said file at said converted offset into said file. - View Dependent Claims (43, 44, 45, 46)
-
Specification