The present invention is directed to a peripheral device that integrally provides a program relating to the peripheral device, and may be connected to a computer system. The peripheral device includes a peripheral function subsystem for providing a peripheral device functionality. The peripheral device further includes a solid-state memory device storing a program relating to the peripheral device in a format used by disk drives. When the peripheral device is connected to a computer system, the program stored in the solid-state memory device is immediately available, and can be read by the computer system as though it was stored on a disk drive connected to the computer system. |
Citations|
| US4787026 | Jan 17, 1986 | Nov 22, 1988 | International Business Machines Corporation | Method to manage coprocessor in a virtual memory virtual machine data processing system | | US4984149 | Mar 28, 1988 | Jan 8, 1991 | Kabushiki Kaisha Toshiba | Memory access control apparatus | | US5131089 | Sep 28, 1989 | Jul 14, 1992 | GRiD Systems Corporation | Solid state disk drive emulation | | US5291584 | Jul 23, 1991 | Mar 1, 1994 | Nexcom Technology, Inc. | Methods and apparatus for hard disk emulation | | US5339432 | Oct 13, 1992 | Aug 16, 1994 | Microsoft Corporation | Method and system for providing user control of device driver configuration | | US5371885 | Aug 29, 1989 | Dec 6, 1994 | Microsoft Corporation | High performance file system | | US5446855 | Feb 7, 1994 | Aug 29, 1995 | BusLogic, Inc. | System and method for disk array data transfer | | US5454098 | Sep 28, 1992 | Sep 26, 1995 | Conner Peripherals, Inc. | Method of emulating access to a sequential access data storage device while actually using a random access storage device | | US5457784 | Mar 5, 1992 | Oct 10, 1995 | Metacomp, Inc. | Interfacing system using an auto-adapting multi-ported control module between an i/o port and a plurality of peripheral adaptors via bus extending cables | | US5459850 | Feb 19, 1993 | Oct 17, 1995 | Conner Peripherals, Inc. | Flash solid state drive that emulates a disk drive and stores variable length and fixed lenth data blocks | | US5465364 | Mar 18, 1994 | Nov 7, 1995 | International Business Machines, Inc. | Method and system for providing device driver support which is independent of changeable characteristics of devices and operating systems | | US5473765 | Jan 24, 1994 | Dec 5, 1995 | 3COM Corporation | Apparatus for using flash memory as a floppy disk emulator in a computer system | | US5491813 | Nov 18, 1994 | Feb 13, 1996 | International Business Machines Corporation | Display subsystem architecture for binding device independent drivers together into a bound driver for controlling a particular display device | | US5499378 | Jun 21, 1994 | Mar 12, 1996 | International Business Machines Corporation | Small computer system emulator for non-local SCSI devices | | US5546585 | Apr 6, 1993 | Aug 13, 1996 | Olympus Optical Co., Ltd. | Personal computer system with start-up capability from an external mass storage device | | US5548783 | Oct 28, 1993 | Aug 20, 1996 | Dell USA, L.P. | Composite drive controller including composite disk driver for supporting composite drive accesses and a pass-through driver for supporting accesses to stand-alone SCSI peripherals | | US5694583 | Mar 4, 1997 | Dec 2, 1997 | International Business Machines Corporation | BIOS emulation parameter preservation across computer bootstrapping | | US5717903 | May 15, 1995 | Feb 10, 1998 | Compaq Computer Corporation | Method and appartus for emulating a peripheral device to allow device driver development before availability of the peripheral device | | US5751975 | Dec 28, 1995 | May 12, 1998 | Intel Corporation | Method and apparatus for interfacing a device compliant to a first bus protocol to an external bus having a second bus protocol and for providing virtual functions through a multi-function intelligent bridge | | US5784581 | May 3, 1996 | Jul 21, 1998 | Intel Corporation | Apparatus and method for operating a peripheral device as either a master device or a slave device | | US5809331 | Apr 1, 1996 | Sep 15, 1998 | Apple Computer, Inc. | System for retrieving configuration information from node configuration memory identified by key field used as search criterion during retrieval | | US5815678 | Jul 14, 1995 | Sep 29, 1998 | Adaptec, Inc. | Method and apparatus for implementing an application programming interface for a communications bus | | US5890014 | Aug 5, 1996 | Mar 30, 1999 | MicroNet Technology, Inc. | System for transparently identifying and matching an input/output profile to optimal input/output device parameters | | US5909559 | Apr 4, 1997 | Jun 1, 1999 | Texas Instruments Incorporated | Bus bridge device including data bus of first width for a first processor, memory controller, arbiter circuit and second processor having a different second data width | | US5915106 | Mar 20, 1997 | Jun 22, 1999 | Ricoh Company, Ltd. Ricoh Corporation | Method and system for operating a scanner which emulates a disk drive | | US5946469 | Nov 15, 1995 | Aug 31, 1999 | Dell Computer Corporation | Computer system having a controller which emulates a peripheral device during initialization | | US5953516 | Jun 24, 1997 | Sep 14, 1999 | Compaq Computer Corporation | Method and apparatus for emulating a peripheral device to allow device driver development before availability of the peripheral device | | US5958020 | Oct 29, 1997 | Sep 28, 1999 | VLSI Technology, Inc. | Real time event determination in a universal serial bus system | | US5968152 | Apr 4, 1997 | Oct 19, 1999 | Apple Computer, Inc. | Method and apparatus for extending key space in a plug and play ROM | | US5991777 | Sep 19, 1997 | Nov 23, 1999 | Microsoft Corporation | System and method for performing defined actions when grafting the name space of one storage medium into the name space of another storage medium | | US6006029 | Sep 28, 1993 | Dec 21, 1999 | Bull HN Information Systems Inc. | Emulating disk drives of a first system on a second system | | US6009480 | Sep 12, 1997 | Dec 28, 1999 | Telxon Corporation | Integrated device driver wherein the peripheral downloads the device driver via an I/O device after it is determined that the I/O device has the resources to support the peripheral device | | US6012103 | Jul 2, 1997 | Jan 4, 2000 | Cypress Semiconductor Corp. | Bus interface system and method | | US6016402 | May 21, 1996 | Jan 18, 2000 | Iomega Corporation | Method for integrating removable media disk drive into operating system recognized as fixed disk type and modifying operating system to recognize as floppy disk type | | US6064566 | Sep 18, 1998 | May 16, 2000 | International Business Machines Corp. | Peripheral device for use in a computer as an internal and external device | | US6073188 | Jul 25, 1997 | Jun 6, 2000 | Compaq Computer Corporation | Electronic switchbox for selection and sharing of internal peripheral devices among different computers, the internal peripheral devices located in slots of a chassis | | US6073205 | Jul 10, 1997 | Jun 6, 2000 | National Instruments Corporation | System and method of write posting in a universal serial bus system | | US6223267 | Feb 26, 1998 | Apr 24, 2001 | Hewlett-Packard Company | Dynamically allocable RAM disk |
Referenced by|
| US8009502 | Dec 7, 2009 | Aug 30, 2011 | Seagate Technology LLC | Systems, methods and devices for power control in mass storage devices | | US8031551 | Jun 26, 2009 | Oct 4, 2011 | Seagate Technology LLC | Systems, methods and devices for monitoring capacitive elements in devices storing sensitive data | | US8065562 | Dec 7, 2009 | Nov 22, 2011 | Seagate Technology LLC | Systems, methods and devices for backup power control in data storage devices | | US8230257 | Dec 7, 2009 | Jul 24, 2012 | Seagate Technology LLC | Systems, methods and devices for controlling backup power provided to memory devices and used for storing of sensitive data |
Claims1. A device that provides information and is connectable to a data processing system, comprising: - a device function subsystem that provides device functionality;
- a persistent memory device containing device information that, when installed by an operating system of the data processing system, enables the data processing system to interact with the device to utilize device functionality provided by the device function subsystem; and
- a known storage device emulation subsystem that emulates a storage device of a type usable by the operating system without further modification and enables the operating system to install the device information contained by the persistent memory device to utilize device functionality provided by the device function subsystem.
2. The device of claim 1, wherein the persistent memory device is provided in a solid state read-only memory device, and wherein the known storage device emulation subsystem is provided in an application-specific integrated circuit connected to the solid state read-only memory device. 3. The device of claim 1, wherein the persistent memory device comprises a first storage device that provides a first rate of data transfer; and - wherein the device function subsystem comprises a second storage device providing a second rate of data transfer slower than the first rate of data transfer.
4. The device of claim 3, further comprising a single case that contains both the first and second storage devices during operation of the storage devices, such that data that must be transferred at a relatively high rate may be stored in the first storage device and data that can be transferred at a slower rate may be stored in the second storage device. 5. The device of claim 4, wherein the first storage device comprises a solid-state memory device, and wherein the second storage device comprises an optical media drive. 6. A method in a data processing system for recognizing an unknown device, comprising the steps of: - an operating system of the data processing system misidentifying a nonvolatile memory in an unknown device as a known storage device;
- searching the nonvolatile memory for device information usable with the operating system;
- retrieving the device information from the nonvolatile memory; and
- the operating system installing the device information in the data processing system to enable the operating system to interact with a functional subsystem of the device.
7. A computer-readable medium whose contents cause a data processing system to perform the steps of: - an operating system of the data processing system misidentifying a nonvolatile memory in an unknown device as a known storage device;
- searching the nonvolatile memory for device information usable with the operating system;
- retrieving the device information from the nonvolatile memory; and
- the operating system installing the device information in the data processing system to enable the operating system to interact with a functional subsystem of the device.
8. A memory device adapted for connection to a computer system via a serial connection, comprising: - a solid-state read-only memory device having contents; and
- a storage device emulation subsystem that emulates a storage device of a type known by an operating of the computer system without further modification to enable the operating system to read the contents of the solid-state read-only memory device using only functionality of the operating system provided for reading from storage devices of the known type.
9. The memory device of claim 8 wherein the contents of the solid-state read-only memory device comprise a game program and associated data. 10. The memory device of claim 8, wherein the storage device emulation subsystem comprises a disk file data structure stored on the solid-state read-only memory device, said data structure comprising a plurality of files organized in the same manner that they would be organized if stored on a storage device of a type known to the operating system, such that any of the files may be read in the same manner as reading files from the storage device of the known type. 11. A method in a data processing system for reading data, comprising: - determining that a read-only solid-state memory device is connected to the data processing system; an operating system of the data processing system misidentifying the read-only solid-state memory device as a disk drive of a type previously known to the operating system; and
- reading data from the read-only solid-state memory device using only functionality of the operating system used to read data from a disk drive of the type previously known to the operating system.
12. The method of claim 11, wherein the reading step reads data from the read-only solid-state memory device using only commands of the operating system used to read data from a disk drive of the type previously known to the operating system. 13. The method of claim 11 wherein the reading step reads data from the read-only solid-state memory device using a driver used by the operating system to read data from a disk drive of the type previously known to the operating system. 14. A device connectable to a data processing system, comprising: - a device function subsystem comprising a first storage device providing a first rate of data transfer;
- a persistent memory device comprising a second storage device providing a second rate of data transfer different than said first rate of data transfer, said persistent memory device storing device information that, when installed by an operating system of the data processing system enables the operating system to interact with the device connected to the data processing system to utilize the first storage device provided by the device function subsystem; and
- a known storage device emulation subsystem that upon connection of the device to the data processing system, emulates a storage device of a type usable by the operating system without further modification and enables the operating system to install the device information contained by the persistent memory device to utilize the first storage device provided by the device function subsystem.
15. The device of claim 14, wherein said first rate of data transfer is slower than said second rate of data transfer. 16. The device of claim 14, wherein said second storage device comprises a solid-state memory. |