A translating software emulator designed for converting code from a legacy system to a target system and fully preserving the synchronous exception state while still allowing for full and aggressive optimization in the translation. A user application is translated to a target system using full optimization techniques. The translation may be done dynamically by an emulator emulating the legacy system on the target system, or the translation may be a static translation or a compilation, fully generating a new executable program operable on the target system. The invention recovers from the exception properly by restoring the target machine state to the machine state expected by the legacy system. This recovery is done by using an exception delivery mechanism to restore the machine state of the target system before executing the exception handling code. The restoration of the machine state is done by executing a recovery block generated by the translation that modifies the machine state to match the legacy machine state.

Un emulatore di traduzione del software ha progettato per il codice convertentesi da un sistema dell'eredità ad un sistema di obiettivi e completamente conservando l'eccezione sincrona dichiari mentre ancora tengono conto l'ottimizzazione completa ed aggressiva nella traduzione. Un'applicazione dell'utente è tradotta ad un sistema di obiettivi usando le tecniche complete di ottimizzazione. La traduzione può essere fatta dinamicamente da un emulatore che emula il sistema dell'eredità sul sistema di obiettivi, o la traduzione può essere una traduzione statica o una compilazione, completamente generante un nuovo programma eseguibile operabile sul sistema di obiettivi. L'invenzione recupera dall'eccezione correttamente ristabilendo la macchina di obiettivo dichiara alla macchina dichiara previsto dal sistema dell'eredità. Questo recupero è fatto usando una procedura di pubblicazione di eccezione per ristabilire la macchina dichiara del sistema di obiettivi prima dell'esecuzione del codice di trattamento di eccezioni. Il ripristino della macchina dichiara è fatto eseguendo un blocchetto di recupero generato tramite la traduzione che modifica la macchina dichiara per abbinare la macchina dell'eredità dichiara.

 
Web www.patentalert.com

< (none)

< Oxidizing composition and uses for dyeing, permanently setting or bleaching keratin fibres

> Method and system for testing and debugging distributed software systems by using network emulation

> (none)

~ 00019