摘要:
Method and apparatus for implementing S2D functions using a dedicated S2D partition of a fixed, minimum size, in combination with an extended partition of adjustable size are disclosed. In a preferred embodiment, a hierarchy of pointers is constructed for indicating the location of the blocks of disk space comprising the extended partition, which may be located in a native OS partition of the hard disk, some other available space on the hard disk, or both, and may or may not comprise contiguous hard disk space. A root block stored in the S2D partition comprises a plurality of pointers, each of which indicate the location of a pointer block. Each pointer block comprises a plurality of pointers, each of which point to a data block. When an S2D operation is initiated, an S2D utility continuously locates a next available data block in the S2D partition or extended partition, using the entries in the root block and pointer blocks, and writes a portion of RAM to the located block until the entire RAM is saved to the hard disk. Upon returning from the S2D operation, the process is performed in reverse. In one aspect of the invention, an MKS2D utility fills in the root and pointer blocks and reserves the data blocks for use by the S2D utility. In another aspect of the invention, an RMS2D utility deletes the extended partition and returns the data blocks previously allocated thereto to the native OS and/or other partition(s).
摘要:
A system which builds an operating system-independent environment for executing utility programs is created by establishing a virtual drive that resides on a physical disk drive within the native file system of a native operating system. A virtual drive is a set of files on a physical disk drive that is configured to emulate a physical disk drive. The virtual drive can be deleted by a computer user and similarly can be re-established by the computer user. The virtual drive is bootable and activates an operating system that makes all system resources accessible to the utility programs and also allows the computer user to use the disk space that is allocated for the virtual drive, if desired.
摘要:
A computer system having a central processing unit ("CPU"), a main memory divisible into allocable units, a secondary storage unit and an operating system for allocating the allocable units to tasks for use thereby is provided with a suspend circuit for creating an optimized compressed image of data in the main memory. In a first embodiment, the suspend circuit comprises: (1) a circuit for initiating execution of a reducing task on the CPU, the reducing task requesting the operating system to allocate unallocated ones of the allocable units to the reducing task, (2) a circuit for storing a bit pattern in the allocable units allocated to the reducing task, the bit pattern chosen to optimize performance of a data compression process and (3) a circuit for executing the data compression process to store a compressed image of the main memory in the secondary storage unit, the bit pattern allowing a size of the compressed image to be reduced and a time required to compress and store the compressed image to be minimized. In a second embodiment, the unallocated allocable units are neither compression-optimized, compressed nor stored. Rather, the reducing task creates a record of all allocated units and the data compression process acts on only those allocated units identified in the record.
摘要:
An emulation methodology utilizes increasing microprocessor performance characteristics and System Management Mode ("SMM") to emulate peripheral device functions in a computer system. The emulation methodology traps addresses associated with I/O between a CPU and one or more peripheral devices. After trapping the I/O instruction address, a system management interrupt issues, and the computer system enters the operating system independent SMM. The CPU executes SMM code which proceeds to pass instructions to the CPU which result in the complete or partial emulation of a peripheral device. When the peripheral device is completely emulated, it can be replaced, for example, with a less expensive, less functional component or possibly even eliminated without substitution. The emulation methodology also responds to asynchronous peripheral device user activity by again trapping an I/O instruction to the peripheral device, and using SMM code to emulate the peripheral device.
摘要:
A method of securing CD-ROM data for exclusive retrieval by a specified computer system includes the steps of ordering a computer system designating a selected hardware configuration and selected software components and procuring the selected hardware. A hardware identifier is then associated to the selected hardware. The method further includes the step of producing a compact disc read only memory (CD-ROM) containing software program files corresponding to the selected software components. This step includes the substeps of encrypting the software program files using the hardware identifier as an encryption key and writing the encrypted software program files to the CD-ROM. The CD-ROM securing method also includes the step of installing the software programs on the selected hardware including the sub steps of retrieving the hardware identifier associated to the selected hardware, decrypting the software program files using the hardware identifier as a decryption key and installing the decrypted software program files on the hardware.
摘要:
Method and apparatus for optimizing the location of machine-dependent code is disclosed. In a departure from the art, code for implementing an applications program interface (API) or other machine dependent program is divided into a system management mode (SMM) portion and a non-SMM portion, depending on whether the code needs to be implemented in a secure environment or not, respectively. In a preferred embodiment, the non-SMM portion of the API maintains a BIOS jump table comprising an indexed array of function addresses, and the SMM portion of the API maintains a parallel, but nonidentical, SMM jump table. For each API function that is to be executed in SMM, that is, for each function that must be executed in a secure environment, the indexed BIOS jump table entry calls an SMM interface (SMI) function, which initiates SMM by generating a system management interrupt and accesses the parallel SMM jump table. The indexed SNM jump table entry is used to call the designated function, which is then executed in SMM.
摘要:
A portable computer including a chargeable battery and an AC line adapter controls the battery and adapter to emulate a full UPS-class device. A controller of the portable computer with the chargeable battery and the AC line adapter emulates the conventional operation of an uninterruptable power supply (UPS) and a serial cable connecting the UPS to the portable computer. The controller includes a software driver and Basic Input/Output System (BIOS) program code to emulate signals to and from the internal battery and the AC charger.
摘要:
Communication interface PCCards are commonly attached, both physically and electrically, to a notebook computer whether the communication interface PCCards are connected to a communication channel or disconnected from the communication channel. It has further been discovered that communication interface PCCards consume power when attached to the notebook computer and that power consumption is advantageously reduced and battery life extended by detecting when the communication channel is disconnected from the communication interface PCCard and terminating power supplied to the communication interface PCCard when the communication channel is disconnected. A power management method in a computer system having a PCCard connected to a communication channel includes detecting a disconnection of the communication channel from the PCCard and terminating power supplied to the PCCard in response to the detection of the disconnection of the communication channel.
摘要:
An essential utility routine accesses a protected computer system component by making a call to a coprocessor that performs a desired function to avoid security measures imposed by an operating system. Various suitable coprocessors include an additional coprocessor connected to a host processor running the operating system imposing the security measures such as a coprocessor on a add-in card to a computer system, a microcontroller, or a system management mode (SMM) program running on the host processor. The essential utility operates on a computer system having a processor operating under an operating system and a storage. The operating system includes software which limits access to the storage. The utility includes a coprocessor, a software interface and a utility routine. The coprocessor is connected to the storage and operative independent of the operating system for accessing the storage. The software interface is connected to the coprocessor and executes on the processor to control input and output operations on the processor. The utility routine executes on the processor and includes a program code operative via the software interface for activating the coprocessor to access the storage and receiving a response from the coprocessor.
摘要:
System management mode (SMM) is utilized, despite operating system security measures, by furnishing a polled interface for SMM. When an application program is to make an XBIOS call, the application program posts an XBIOS request in a storage. SMM is activated periodically by a timer and, during activation, checks the storage for XBIOS requests. When an XBIOS request is posted, SMM processes the request XBIOS command and leaves a response from the XBIOS call in the storage. The application program, which continually loops, monitors the storage and detects replacement of the XBIOS request by the XBIOS result to realize completion of an XBIOS call.