Of Instruction Patents (Class 703/26)
-
Patent number: 7461116Abstract: A computer is programmed to emulate a fixed-point operation that is normally performed on fixed-point operands, by use of a floating-point operation that is normally performed on floating-point operands. Several embodiments of the just-described computer emulate a fixed-point operation by: expanding at least one fixed-point operand into a floating-point representation (also called “floating-point equivalent”), performing, on the floating-point equivalent, a floating-point operation that corresponds to the fixed-point operation, and reducing a floating-point result into a fixed-point result. The just-described fixed-point result may have the same representation as the fixed-point operand(s) and/or any user-specified fixed-point representation, depending on the embodiment. Also depending on the embodiment, the operands and the result may be either real or complex, and may be either scalar or vector.Type: GrantFiled: September 17, 2003Date of Patent: December 2, 2008Assignee: Agility Design Solutions Inc.Inventor: John R Allen
-
Patent number: 7457739Abstract: A method of scheduling trace packets in an integrated circuit generating trace packets of plural types stores trace data in respective first-in-first-out buffers. If a timing trace data first-in-first-out buffer is empty, timing trace data packet is transmitted. If a program counter overall data first-in-first-out buffer is not empty and the processor is at a data interruptible boundary, a program counter data packet is transmitted. If data first-in-first-out buffer is not empty, a data packet is transmitted. The program counter data packets include program counter sync data, program counter exception data, program counter relative branch data and program counter absolute branch data.Type: GrantFiled: August 28, 2006Date of Patent: November 25, 2008Assignee: Texas Instruments IncorporatedInventors: Manisha Agarwala, Maria B. H. Gill
-
Patent number: 7451350Abstract: The present invention provides for a test system having a test executive software system for performing tests on units under test. The test executive software system includes a test kernel component that provides control through a generic interface to the test executive software. Test components, instrument components, support objects and a test system interface component are communicatively coupled to the test kernel component. The instrument components can be written as a dynamically linked library (DLL) file so that the instrument component can be broken into basic functional modules associated with the particular instrument type. Each instrument component supports operation in both live mode and virtual mode, so that testing can be performed in both normal mode and simulation mode. Virtual mode allows instruments to be inserted and removed without impacting test applications that do not utilize them, thereby reducing tester downtime.Type: GrantFiled: February 23, 2004Date of Patent: November 11, 2008Assignee: Rockwell Automation Technologies, Inc.Inventors: Jeffrey G. Cherny, David A. Gehring, Robert L. Lupica, James A. Wojcik
-
Publication number: 20080270508Abstract: Detection of whether a result of a floating point operation is safe. Characteristics of the result are examined to determine whether the result is safe or potentially unsafe, as defined by the user. An instruction is provided to facilitate detection of safe or potentially unsafe results.Type: ApplicationFiled: April 25, 2007Publication date: October 30, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Shawn D. Lundvall, Ronald M. Smith, Phil C. Yeh
-
Patent number: 7434210Abstract: A method for checking page size dependency including generating an interposing library comprising a first modified interface, wherein the first modified interface is dependent on a native page size, intercepting a call into a kernel by the interposing library, wherein the call is dependent on a non-native page size, modifying the call using the first modified interface to obtain a modified call, and generating a response to the modified call by the kernel using the native page size.Type: GrantFiled: March 2, 2004Date of Patent: October 7, 2008Assignee: Sun Microsystems, Inc.Inventor: Andrew G. Tucker
-
Publication number: 20080243468Abstract: Memory consistency is provided in an emulated processing environment. A processor architected with a weak memory consistency emulates an architecture having a firm memory consistency. This memory consistency is provided without requiring serialization instructions or special hardware.Type: ApplicationFiled: March 30, 2007Publication date: October 2, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Theodore J. Bohizic, Mark H. Decker, Viktor S. Gyuris
-
Publication number: 20080243469Abstract: An emulation system emulates a sound IC having a built-in ROM and reproducing sound data stored in the built-in ROM or received sound data. The emulation system includes: a sound data storage section storing sound data to be stored in the built-in ROM; a command reception section; a command conversion section that performs a command conversion process that converts a built-in ROM data reproduction command into a data-attached reproduction command having a format interpretable by the sound IC when the command conversion section has received the built-in ROM data reproduction command; and a converted command transmission section. The command conversion section reads sound data from the sound data storage section based on the received built-in ROM data reproduction command, and generates the data-attached reproduction command to which the read sound data is attached.Type: ApplicationFiled: March 26, 2008Publication date: October 2, 2008Inventor: Fumihito Baisho
-
Publication number: 20080235000Abstract: A system, method, computer program product, and carrier are described for obtaining an indication of an emulation of a service in a first environment with a first security control practice or obtaining one or more gradational norms of software performance in an emulation environment; and signaling a decision whether to allow a software object to execute in another environment at least partly as a result of whether the software object apparently performed in conformity with the one or more gradational norms of software performance in the emulation environment or signaling a decision whether to use a second environment without the first security control practice in performing at least a portion of the service as a result of the indication of the emulation of the service in the first environment with the first security control practice.Type: ApplicationFiled: March 22, 2007Publication date: September 25, 2008Inventors: Alexander J. Cohen, Edward K.Y. Jung, Royce A. Levien, Robert W. Lord, Mark A. Malamud, John D. Rinaldo, Lowell L. Wood
-
Publication number: 20080235001Abstract: A system, method, computer program product, and carrier are described for to obtaining a decision whether to host an instruction sequence natively in a physical environment in response to an operational history of software apparently containing the instruction sequence or obtaining a decision whether to host an instruction sequence in an emulation environment at least in response to an evaluation of software containing the instruction sequence; and causing another environment to host the instruction sequence in response to the decision whether to host the instruction sequence in the emulation environment or signaling a decision whether to cause an emulation environment to host the instruction sequence in response to the decision whether to host the instruction sequence natively in the physical environment.Type: ApplicationFiled: March 22, 2007Publication date: September 25, 2008Inventors: Alexander J. Cohen, Edward K.Y. Jung, Royce A. Levien, Robert W. Lord, Mark A. Malamud, John D. Rinaldo, Lowell L. Wood
-
Publication number: 20080235756Abstract: A system, method, computer program product, and carrier are described for obtaining a resource authorization dependent upon apparent compliance with a policy of causing an emulation environment to isolate a first software object type from a second software object type; and signaling a decision whether to comply with the policy of causing the emulation environment to isolate the first software object type from the second software object type.Type: ApplicationFiled: June 28, 2007Publication date: September 25, 2008Inventors: Alexander J. Cohen, Edward K.Y. Jung, Royce A. Levien, Robert W. Lord, Mark A. Malamud, John D. Rinaldo, Lowell L. Wood
-
Publication number: 20080234999Abstract: A system, method, computer program product, and carrier are described for obtaining data from a first emulator and from a first emulation environment hosting software and signaling a decision whether to transfer any of the data to a second emulator at least partly as a result of the first emulation environment hosting the software.Type: ApplicationFiled: March 22, 2007Publication date: September 25, 2008Inventors: Alexander J. Cohen, Edward K.Y. Jung, Royce A. Levien, Robert W. Lord, Mark A. Malamud, John D. Rinaldo, Lowell L. Wood
-
Publication number: 20080235002Abstract: A system, method, computer program product, and carrier are described for obtaining data from a first emulator and from a first emulation environment hosting software; and signaling a decision whether to transfer any of the data to a second emulator at least partly as a result of the first emulation environment hosting the software.Type: ApplicationFiled: June 28, 2007Publication date: September 25, 2008Inventors: Alexander J. Cohen, Edward K.Y. Jung, Royce A. Levien, Robert W. Lord, Mark A. Malamud, John D. Rinaldo, Lowell L. Wood
-
Publication number: 20080234998Abstract: A system, method, computer program product, and carrier are described for indicating a virtually-instantiable service via a data flow between a user interface and an operating system, the virtually-instantiable service including at least a first instance; and accessing a second instance of the virtually-instantiable service at least partly in response to the user interface after indicating the virtually-instantiable service via the data flow between the user interface and the operating system.Type: ApplicationFiled: June 28, 2007Publication date: September 25, 2008Inventors: Alexander J. Cohen, Edward K.Y. Jung, Royce A. Levien, Robert W. Lord, Mark A. Malamud, John D. Rinaldo, Lowell L. Wood
-
Publication number: 20080221861Abstract: When performing a process in an object to be authenticated, there is a case that an execution result depends on the reference data value to be referenced and remains undefined. When the execution result is undefined and a process after that references the execution result, the execution results may have different values. As a result, the execution results cannot be compared and authentication cannot be continued. There is provided an authentication device for giving the same test pattern to an object to be authenticated and an expectation value generation device, performing simulation, and comparing the execution results. Data being simulated is extracted. According to the analysis result of the extracted data, the simulation is controlled. Alternatively, simulation after the undefined result is obtained is controlled. Thus, it is possible to prevent execution of a process which becomes an undefined result.Type: ApplicationFiled: January 18, 2005Publication date: September 11, 2008Inventors: Kei Yoneda, Yoichiro Mae, Hisato Yoshida
-
Publication number: 20080215306Abstract: A method and device for managing retransmit operations. The device, includes a FIFO memory unit, a read pointer, a retry pointer and a write pointer. The device is characterized by including a gray code stat e machine connected to an emulated read pointer logic; whereas the gray code state machine is adapted to provide a gray code word representative of a state of a read logic that comprises the read pointer; whereas the emulated read pointer logic is adapted to process at least one gray code word and to provide an emulated read pointer that tracks a FIFO memory unit entry that stores data that was not accepted; whereas the emulated read pointer logic is connected to a write control logic adapted to control writing operations to the FIFO memory unit in response to the emulated read pointer logic; and whereas the read logic receives a read clock that differs from a write clock provided to the emulated read pointer logic and to the write control logic.Type: ApplicationFiled: February 2, 2006Publication date: September 4, 2008Applicant: Freescale Semiconductor, IncInventors: Gil Lidji, Dan Ilan
-
Patent number: 7415323Abstract: A vehicle control apparatus comprises: a computer operable to execute a control program, a first memory storing the control program, and a second memory storing the produced data. The control program includes: a platform program for inputting data from a hardware device and storing inputted data as first data in a first section of the second memory, an application program for processing for a vehicle control in accordance with an AP interface, and a coupling processing program. The coupling processing program performs mediation in the processing using the application program by converting the first data provided from the processing using the platform program to second data in accordance with the PF interface so that the second data is adapted to the AP interface. The application program executes vehicle control by using the second data. The platform program performs an operation at different predetermined intervals than the coupling program.Type: GrantFiled: December 15, 2003Date of Patent: August 19, 2008Assignee: DENSO CorporationInventors: Seiji Miyamoto, Hiroyuki Ihara
-
Patent number: 7406406Abstract: Two unique instructions for the instruction set of a target 36-bit machine which is emulated on a host 64-bit machine are provided in order to achieve visibility, to an emulated application program, of a “containing” word stored in the memory of the host machine. A “LOAD64” instruction loads the emulator memory location representing an emulated “Q” (supplementary accumulator) register with the “normal” 36-bits of the containing word. At the same time, the “upper” 28 bits of the 64-bit containing word is copied into the emulator memory location representing an emulated “A” (accumulator) register. Thus, the emulated 36-bit machine “sees” and can examine the 64-bit word in its entirety. A “Store64” instruction stores the emulated “Q” register contents into the lower 36-bits of the 64-bit containing word, and at the same time stores the lower 28 bits of the emulated “A” register contents into the upper 28 bits of the 64-bit containing word.Type: GrantFiled: December 7, 2004Date of Patent: July 29, 2008Assignee: Bull HN Information Systems Inc.Inventors: Russell W. Guenthner, Sidney L. Andress, John E. Heath
-
Publication number: 20080177527Abstract: Disclosed is a simulation system including an instruction processor, a simultaneous execution condition determination unit and an execution machine cycle correction unit. The instruction processor executes each of instructions included in an analysis target program. The simultaneous execution condition determination unit divides the instructions into execution instruction sets, at least one of the execution instruction sets including a plurality of the instructions which are executable simultaneously. The execution machine cycle correction unit corrects the number of execution machine cycles of the instructions included in the at least one of the execution instruction sets to produce corrected information. In response to the corrected information, a simulation result including a processing time for execution of the analysis target program is outputted.Type: ApplicationFiled: January 10, 2008Publication date: July 24, 2008Applicant: NEC ELECTRONICS CORPORATIONInventor: Megumi Yoshinaga
-
Patent number: 7403887Abstract: A first software program executing on a computing device emulates a second computing device executing a software program using emulated memory. The first software program permits the second software program to perform an operation on a contiguous portion of the emulated memory only when a pointer and a table entry both contain the same identifier, thus protecting against common types of memory usage errors in the second software program. The pointer has an address to the contiguous portion. The table entry maps to the contiguous portion. A plurality of table entries map to a respective plurality of contiguous portions of the emulated memory. A plurality of the pointers each contain the address to a respective contiguous portion of the emulated memory as well as containing an identifier corresponding to the respective contiguous portion of the emulated memory. The second computing device can be high or low in resources.Type: GrantFiled: January 14, 2004Date of Patent: July 22, 2008Assignee: Microsoft CorporationInventors: Alan G. Bishop, Landon Dyer, Martin Taillefer
-
Patent number: 7394409Abstract: Emulation methods are provided for two PACK instructions, one for Unicode data and the other for ASCII coded data in which processing is carried out in a block-by-block fashion as opposed to a byte-by-byte fashion as a way to provide superior performance in the face of the usual challenges facing the execution of emulated data processing machine instructions as opposed to native instructions.Type: GrantFiled: February 20, 2007Date of Patent: July 1, 2008Assignee: International Business Machines CorporationInventors: Antonisamy A. Rajendran, Muruganandam Somasundaram
-
Publication number: 20080154574Abstract: A method, system and computer-readable medium for emulating an application in a non-production computer system are presented. In a preferred embodiment, the method includes the steps of: receiving a first input that selects an application from all applications on a production computer system; receiving a second input that selects specific control files and data files that are to be utilized in an emulated version of a selected application on a non-production computer system; migrating a copy of instructions file from the selected application from the production computer system to the non-production computer system; migrating a copy of the specific control files and data files from the production computer system to the non-production computer system; and executing the copy of instructions files, while using the copy of the specific control files and data files, in the non-production computer system.Type: ApplicationFiled: December 21, 2006Publication date: June 26, 2008Inventors: JODI A. BUECHLER, Harold Steven Huber, David C. Reed, Max D. Smith
-
Patent number: 7392527Abstract: The kernel is a shared environment. Accordingly, many different kernel-mode drivers utilize services provided by the kernel. Furthermore, when shimming of drivers is necessary, it is desirable to support shim reuse amongst drivers with similar problems or issues, rather than generating a customized shim for each driver. To facilitate kernel-mode shimming and shim reuse, context information needs to be retrieved and maintained so that shims can identify particular driver calls and preserve driver specific linkage information. The present invention accomplishes the forgoing by employing an intermediate structure, a content component, between a client or driver call and a common shared shim to provide the shim with contextual information.Type: GrantFiled: December 10, 2003Date of Patent: June 24, 2008Assignee: Microsoft CorporationInventor: Robin Lynn Callender
-
Patent number: 7392172Abstract: Hardware access is provided for an operating system by allocating a portion of firmware address space of a data processing arrangement for use as a virtualized data interface that emulates a first hardware device. The virtualized data interface is presented to the operating system. The operating system accesses the virtualized data interface using a standardized kernel component of the operating system adapted to interface with the first hardware device. Data is exchanged between the virtualized interface and a second hardware device based on accesses of the virtualized data interface by the operating system via the standardized kernel component.Type: GrantFiled: April 28, 2005Date of Patent: June 24, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventor: Arad Rostampour
-
Publication number: 20080147376Abstract: A data processing method for processing a sequence of platform independent instructions on a data processing apparatus comprising a CPU and at least one further processor is disclosed.Type: ApplicationFiled: December 19, 2006Publication date: June 19, 2008Applicant: ARM LimitedInventor: Graham Peter Wilkinson
-
Publication number: 20080140380Abstract: The conversion of Mobile Display information used in a wide variety of Mobile Devices into Unified Image Formats is disclosed to enable viewing on a desktop computer system in addition to manual and automated testing of Mobile Content. In order to support the variety of Mobile Displays available, and to process the Mobile Display information in real-time, a configurable emulation system may be employed to model the Image Commands being used for each type of available Mobile Display. This emulation system can then provide a representative view of the image as it would be displayed on the Mobile Display, but in a format that can be utilized by other manual or automated systems.Type: ApplicationFiled: December 7, 2006Publication date: June 12, 2008Inventors: David John Marsyla, Faraz Ali Syed
-
Publication number: 20080133214Abstract: A method for emulating a system call includes making the system call by a first process in a first operating system (OS) for interacting with a second process, wherein the first OS is emulated in a second OS, spawning an agent process, wherein the agent process is a child process of the first process, implementing a functionality of the system call using a general mechanism in the second OS between the agent process and the second process, passing a result associated with the system call from the second process to the agent process using the general mechanism, and relaying the result from the agent process to the first process using a system call in the second OS, wherein the result is stored by the first process.Type: ApplicationFiled: November 30, 2006Publication date: June 5, 2008Applicant: Sun Microsystems, Inc.Inventors: Adam H. Leventhal, Michael W. Shapiro
-
Patent number: 7376546Abstract: Disclosed is a SCSI target device simulator consisting of a personal computer, a SCSI host adapter board, and simulator software. The SCSI target device simulator is employed to test SCSI host adapter systems by simulating multiple SCSI target devices for test purposes. The simulated SCSI target devices may be configured to imitate a wide variety of different SCSI target device types, with an equally wide variety of configuration settings within a single SCSI target device type. A user may quickly create and change simulated SCSI target devices for a test system. The SCSI target device simulator may also be configured so that the simulated SCSI target devices respond in a specified manner to SCSI commands and SCSI task management commands. Controlling the simulated SCSI target device responses to SCSI commands and SCSI task management commands allows a user to easily configure and test a SCSI host adapter device for specific operational scenarios.Type: GrantFiled: November 8, 2004Date of Patent: May 20, 2008Assignee: LSI CorporationInventors: Scott W. Dominguez, Mike W. Bieker
-
Patent number: 7366650Abstract: A verification environment is provided that co-verifies a software component 8 and a hardware component 10. Within the same environment using a common test controller 18 both hardware stimuli and software stimuli may be applied to their respective simulators. The response of both the software and the hardware to the simulation conducted can be monitored to check for proper operation.Type: GrantFiled: February 22, 2002Date of Patent: April 29, 2008Assignee: ARM LimitedInventors: Andrew Mark Nightingale, Alistair Crone Bruce
-
Patent number: 7356455Abstract: An optimized interface for simulation and visualization data transfer between an emulation system and simulator is disclosed. In one embodiment, a method of transferring data between a simulator to an emulator across an interface, comprises updating a simulator buffer of the simulator to contain a desired input state for an emulation cycle. A target write to the interface is performed to indicate that the emulation cycle can proceed. The emulation cycle is completed using an instruction sequencer within the interface independent of the simulator.Type: GrantFiled: October 28, 2004Date of Patent: April 8, 2008Assignee: Quickturn Design Systems, Inc.Inventors: Barton Quayle, Mitchell G. Poplack
-
Patent number: 7346478Abstract: A method is provided of embedding tooling control data within a mechanical fixture design to enable programmable logic control verification simulation. The method includes the steps of constructing at least one of a mechanical fixture design, a workcell design, and a controls design. The method also includes the steps of executing a virtual programmable logic control (VPLC) simulation with a VPLC verification simulator to verify the at least one of the mechanical fixture design, the workcell design, and the controls design.Type: GrantFiled: September 21, 2004Date of Patent: March 18, 2008Assignee: Ford Motor CompanyInventors: Joe Walacavage, Alan Baumgartner, Scott Kennedy, Shanker Ganti, Eric Newman
-
Patent number: 7328145Abstract: A method and apparatus for emulation of IOS in a feasible and efficient manner are provided. The method includes defining a data structure to hold a data set; opening a socket connection to the device; sending instructions to return the command data for an index value; storing the returned command data in the data structure; incrementing the index value, repeating the sending, the storing and the incrementing till the index value exceeds the depth of command data to be captured; and writing the command data captured in the data structure to a file. The depth of command data to be captured or stored can be defined by specifying an index value in the data structure.Type: GrantFiled: April 5, 2005Date of Patent: February 5, 2008Assignee: Cisco Technology, Inc.Inventors: Rod Jackson, Tarun Raisoni
-
Patent number: 7302683Abstract: Disclosed is a device arranged to process messages for communications, comprising a virtual machine means including a message processor means which is arranged to process messages communicated to and/or to be communicated from the device, and message processor instruction means, arranged to provide directions for operation of the message processor means. Also disclosed is a method for operating a device arranged to process messages for communications and a method of programming a device arranged to process messages for communications.Type: GrantFiled: August 22, 2005Date of Patent: November 27, 2007Assignee: CardSoft International Pty LimitedInventor: Ian Charles Ogilvy
-
Publication number: 20070271084Abstract: The computer system of the present invention emulates target instructions. The computer system includes a processing unit for branching to collective emulation coding for emulating plural of target instructions created beforehand collectively, thereby processing those instructions collectively according to the coding when those target instructions are combined so as to be processed collectively and a memory for storing the collective emulation coding.Type: ApplicationFiled: May 11, 2007Publication date: November 22, 2007Applicant: NEC COMPUTERTECHNO, LTD.Inventor: Tsutomu Fujihara
-
Patent number: 7299170Abstract: A high precision floating point emulator and associated method for emulating subject program code on a target machine where the subject machine base operands possess a different precision than the target machine. The high precision floating point emulator is provided for the emulation of subject program code instructions having a higher precision than that supported by the target machine architecture by utilizing intermediate calculations having values with a higher precision than that supported by the target machine.Type: GrantFiled: December 2, 2003Date of Patent: November 20, 2007Assignee: Transitive LimitedInventor: Paul Walker
-
Patent number: 7296120Abstract: Disclosed is an apparatus, method, and program product that provides atomic, multi-word load support without incurring additional memory utilization. A double-word is atomically loaded without the use of one or more additional fields and without a lock. An invalidity marker is used in connection with a cache miss time to ascertain whether a loaded double-word has been stored and loaded atomically, and is thus, valid.Type: GrantFiled: November 18, 2004Date of Patent: November 13, 2007Assignee: International Business Machines CorporationInventors: Michael Joseph Corrigan, Timothy Joseph Torzewski
-
Patent number: 7290174Abstract: Methods and apparatus are provided for automatically generating instruction sequences for verifying the operation of a processor, such as a central processing unit, a processor core, a graphics accelerator, or a digital signal processor. The instruction sequences can also be used to verify the operation of tools associated with implementing a processor. Test parameters are used to combine test fragments to generate test instructions. Check instructions are also provided to immediately identify faults encountered during operation.Type: GrantFiled: December 3, 2003Date of Patent: October 30, 2007Assignee: Altera CorporationInventors: Nigel Gray, Steven Perry
-
Publication number: 20070233453Abstract: Disclosed is a scenario generation program that is used to generate a scenario given to a plurality of virtual web clients each of which applies access load to a web server device of a test target. According to the program, a computer stores some first request messages transmitted to a web server device and some second request messages transmitted to the web server device based on the same operation. The computer extracts the differences between the request parameters in the first and second request messages in the same order of the same operation. If page data of a response message includes the extracted request parameters, rewriting-item information is generated corresponding to the request parameter and is incorporated into the scenario. The computer replace the parameter shown by the rewriting-item information whenever the computer executes the scenario.Type: ApplicationFiled: August 30, 2006Publication date: October 4, 2007Applicant: FUJITSU LIMITEDInventors: Masayuki Ito, Tooru Higeta
-
Publication number: 20070233454Abstract: The web load test method makes a computer function as virtual web client generation means for generating a plurality of virtual web clients each of which transmits a request message to the web server device and receives a response message according to a scenario; memory means for storing synchronous point information that specifies an order in the scenario of the response message, which should be a synchronous point among the response messages, into storage; waiting means for interrupting the accesses by the clients until the time when all the clients receive the response messages whose orders are indicated by the synchronous point information; resumption means for resuming the accesses when all the clients receive the response messages whose orders are indicated by the synchronous point information; and rewrite means for replacing the synchronous point information stored in the storage with synchronous point information that specifies another response message.Type: ApplicationFiled: August 30, 2006Publication date: October 4, 2007Applicant: FUJITSU LIMITEDInventors: Masayuki Ito, Tooru Higeta, Koutarou Matsuo
-
Patent number: 7275028Abstract: In an emulated computing environment, a method is provided for logically decoupling the host operating system from the processor of the computer system with respect to certain processor settings of the processor. A hypervisor of the emulation program replaces some of the processor settings of the processor with processor settings associated with software routines or data structures provided by the guest operating system. The replaced processor settings are written to memory. During this period, when the processor calls a software routine or accesses a data structure associated with the replaced processor setting, the processor will call or access a software routine or access a data structure associated with the guest operating system, bypassing the host operating system and communicating directly with the guest operating system. When the host operating system is to be recoupled to the processor, the processor settings that have been saved to memory are rewritten to the appropriate registers of the processor.Type: GrantFiled: July 16, 2001Date of Patent: September 25, 2007Assignee: Microsoft CorporationInventor: Eric P. Traut
-
Patent number: 7251594Abstract: To improve computer performance, problems of emulation such as WAR hazard, uneven utilization of machine resources, unnecessary dependencies, wasted hardware resources and data buffer pollution, are alleviated by responding to dynamic execution information, such as branch prediction, register usage, overflow, a history of branch predictions of groups of branches combined, and a history of register usage for: dynamically modifying instruction parameters of an emulation sequence of instructions; reordering emulated instructions; and adding or changing the dynamic execution information.Type: GrantFiled: December 21, 2001Date of Patent: July 31, 2007Assignee: Hitachi, Ltd.Inventor: Sivaram Krishnan
-
Patent number: 7234009Abstract: A removable magnetic storage device uses an optical drive interface to appear to the operating system as an optical drive. Thus, a removable magnetic drive appears to the operating system as a large optical device similar to DVD/CD, and receives similar functionality. By appearing as an optical device, the removable magnetic storage device can use many features not currently available to magnetic storage devices, such as autorun, multiple volume sets, larger capacity, and efficient space allocation.Type: GrantFiled: March 22, 2004Date of Patent: June 19, 2007Assignee: Iomega CorporationInventors: Robert Sandman, Troy Davidson
-
Patent number: 7234167Abstract: Virus fingerprint data is automatically generated for use in detecting computer viruses and virus removal data for use in removing computer viruses from infected files. The fingerprint generation technique serves to identify the infected virus carrying portions of a computer file and then search within those portions for matching blocks of bytes in excess of a certain size that are consistently located at a predetermined position within the infected computer file such that they may be used to reliably detect that computer virus when it is infecting different host computer files. The removal data generation mechanism serves to search the infected computer file against a clean version of that computer file to identify matching blocks. Critical data missing within the infected computer file may be found within the virus carrying portions by the application of various decryption techniques. Cutting points to remove the virus carrying portions are identified.Type: GrantFiled: September 6, 2001Date of Patent: June 19, 2007Assignee: McAfee, Inc.Inventors: Ivan Alexandrovich Teblyashkin, Viatcheslav Nikolaevich Peternev, Dmitry Olegovich Gryaznov
-
Patent number: 7228543Abstract: A data processing system is arranged to execute multiple program threads, with each program thread comprising program thread instructions. An interpreter is operable, during execution of each program thread, to employ a table pointer to reference a table to determine for a current program thread instruction a sequence of native instructions to be executed by the processor core to effect execution of that current program thread instruction. A consistency module is provided which is responsive to occurrence of a predetermined event to cause the table pointer to be manipulated, such that for a predetermined number of the program threads, the interpreter will be operable to associate a subsequent program thread instruction with a predetermined routine to be executed by the processor core, the predetermined routine being operable to cause the state of the corresponding program thread to be made available for subsequent reference.Type: GrantFiled: January 24, 2003Date of Patent: June 5, 2007Assignee: ARM LimitedInventor: Charles G Baylis
-
Patent number: 7228266Abstract: Techniques are described for emulating an instruction processor for use during the development of a computer system. Specifically, the techniques describe an emulated instruction processor that accurately and efficiently emulates an instruction processor having separate interfaces to fetch op-codes and operands. Further, the emulated instruction processor may provide detection of errors associated with the separate interfaces. By making use of the techniques described herein, detailed information relating to errors associated with the memory architecture may be gathered for use in verifying components within the memory architecture, such as first and second-level caches.Type: GrantFiled: December 5, 2003Date of Patent: June 5, 2007Assignee: Unisys CorporationInventors: Jason D. Sollom, James A. Williams
-
Patent number: 7222064Abstract: Techniques are described for emulating inter-processor communications between multiple instruction processors. The techniques provide inter-processor message accounting and error detection. A system, for example, includes software executing within an emulation environment provided by a computing system. The emulation software emulates an instruction processor having an interface to receive inter-processor messages. During emulation the emulated instruction processor calculates an actual count of the inter-processor messages received during emulation. A compiler executing on the computing system compiles test software to output an instruction stream for execution by the emulated instruction processor. The compiler calculates an expected count of inter-processor messages that the emulated instruction processor is expected to receive during emulation.Type: GrantFiled: October 10, 2003Date of Patent: May 22, 2007Assignee: Unisys CorporationInventors: Jason D. Sollom, James A. Williams, Christopher M. Cischke
-
Patent number: 7210144Abstract: A method for monitoring and emulating privileged instructions of a program that is being executed at a privilege level in a virtual machine is disclosed. A privilege level associated with a received instruction is determined. The instruction privilege level is compared to the program execution privilege level. If the instruction privilege level is valid with respect to the program execution privilege level, the instruction is executed. If the instruction privilege level is invalid with respect to the program execution privilege level: the instruction result is emulated; the number of times the instruction has been received from the program is checked; and if the instruction has been received more than a specified number of times, the instruction is overwritten with one or more instructions with a valid privilege level with respect to the program execution privilege level.Type: GrantFiled: August 2, 2002Date of Patent: April 24, 2007Assignee: Microsoft CorporationInventor: Eric P. Traut
-
Patent number: 7206734Abstract: Emulation information including emulation control information and emulation data is exported from a data processor by arranging the emulation information into information blocks, and outputting a sequence of the information blocks from the data processor. Some of the information blocks of the sequence have relative proportions of emulation control information and emulation data that differ from the relative proportions of emulation control information and emulation data in other blocks of the sequence.Type: GrantFiled: August 30, 2001Date of Patent: April 17, 2007Assignee: Texas Instruments IncorporatedInventor: Gary L. Swoboda
-
Patent number: 7203636Abstract: A method for emulating a processor of a first endian type on a processor of a second endian type, wherein each memory access address B of string length L is transformed to the address A?B?L+S, wherein A is the total number of bytes allocated to a program, and S is the start address of the program.Type: GrantFiled: April 6, 2001Date of Patent: April 10, 2007Assignee: Transitive LimitedInventor: John H. Sandham
-
Patent number: 7200547Abstract: A device and method for processing binary program files includes transferring a binary program file in the form of binary data packets over a communication network between a transmission device of a server platform and a reception device of a target platform. The reception device reorders the packets suitable for forming reordered-packet groups. A processor successively analyzes the reordered-packet groups so as to identify portions of code and processes the analyzed packets as soon as a portion of code has been identified.Type: GrantFiled: January 24, 2003Date of Patent: April 3, 2007Assignee: Koninklijke Philips Electronics N.V.Inventors: Thierry Lafage, Geraud Plagne
-
Patent number: 7194607Abstract: An adaptive arrangement including a command translation/ordering unit arranged to recognize and convert a first predetermined command unrecognizable/unsupported by an external recipient into a second predetermined command recognizable/supported by the external recipient. Such arrangement is further arranged to control a predetermined ordering of the converted second predetermined command with respect to other commands. The command translation/ordering unit may be arranged to control ordering such that all commands handled prior to the first predetermined command are completed prior to completion of the converted second predetermined command. Further, the command translation/ordering unit may be arranged to control ordering such that all commands handled after the first predetermined command are completed after completion of the converted second predetermined command.Type: GrantFiled: March 31, 2003Date of Patent: March 20, 2007Assignee: Intel CorporationInventors: Eric J. Dahlen, Susan S. Meredith