dbo:abstract
|
- في الحوسبة، الترجمة الثنائية (أو إعادة التجميع (الثنائية)) هي محاكاة تنفيذ مجموعة تعليمات ما باستخدام مجموعة تعليمات أخرى عبر ترجمة الكود الثنائي من مجموعة التعليمات الأولى إلى الثانية، حيث تتم ترجمة سلاسل التعليمات من مجموعة التعليمات المصدر (من اللغة الثنائية المصدرية) إلى مجموعة التعليمات الهدف. في بعض الحالات، مثل ، يمكن أن تكون مجموعة التعليمات الهدف هي نفسها مجموعة التعليمات المصدرية، وذلك لتوفير مزايا تفيد في الاختبار والتنقيح مثل تتبع التعليمات، ونقاط التوقف الشرطية وأيضاً اكتشاف (hot spots). هناك نوعين أساسيين للترجمة الثنائية: الترجمة الثنائية الستاتيكية والترجمة الثنائية الديناميكية. يمكن تنفيذ الترجمة عبر عتاد خاص (عبر دارات خاصة في وحدة المعالجة المركزية على سبيل المثال) أو برمجياً (مثل بيئات التنفيذ، المحاكيات). (ar)
- In computing, binary translation is a form of binary recompilation where sequences of instructions are translated from a source instruction set to the target instruction set. In some cases such as instruction set simulation, the target instruction set may be the same as the source instruction set, providing testing and debugging features such as instruction trace, conditional breakpoints and hot spot detection. The two main types are static and dynamic binary translation. Translation can be done in hardware (for example, by circuits in a CPU) or in software (e.g. run-time engines, static recompiler, emulators). (en)
- En informatique, la translation de code est une technique d'émulation consistant à traduire (de l'anglais « to translate », traduire) le jeu d'instructions d'une architecture source vers le jeu d'instructions d'une architecture destination. On distingue deux types de translation de code :
* la translation statique, dans ce cas un fichier exécutable de la machine source est intégralement traduit en un fichier exécutable de la machine destination ;
* la translation dynamique (ou compilation à la volée), dans ce cas les instructions de la machine source sont traduites en instructions de la machine cible au moment même de leur exécution. (fr)
- 컴퓨팅에서 이진 변환 또는 바이너리 변환(binary translation)은 명령어를 원본(source) 명령어 집합에서 대상(target) 명령어 집합으로 변환하는 바이너리 재컴파일의 일종이다. 등의 경우에 대상 명령어 집합은 원본 명령어 집합과 동일할 수 있으며 명령어 추적, 조건문 브레이크포인트, 핫스팟 감지 등 테스트 및 디버깅 기능을 제공한다. 2가지 주된 유형으로 정적 이진 변환과 동적 이진 변환이 있다. 변환은 하드웨어 수준에서 수행될 수 있고(예: CPU의 회로를 통해) 아니면 소프트웨어 수준에서 수행될 수도 있다.(예: 런타임 엔진, 정적 재컴파일러, 에뮬레이터) (ko)
- バイナリ変換(英: Binary translation)は、コンピュータの領域において、変換元の命令列を変換先の命令セットに翻訳し、機械語コードを変換することで命令セットのエミュレーションを行うことである。 (ja)
- Een binaire vertaling is de emulatie van een instructieset door een processor met een andere instructieset door middel van vertaling van de broncode. Hierdoor zou het in theorie mogelijk zijn om Mac OS X (dat de instructieset AMD64 ondersteunt) te draaien op PowerPC-gebaseerde computers. Er zijn twee soorten: statisch en dynamisch. Bij statisch wordt de code niet uitgevoerd, maar gewoon omgezet naar code voor de andere instructieset. Bij dynamische binaire vertaling wordt de code uitgevoerd en zo omgezet naar code voor een andere instructieset. (nl)
- 在计算机领域中,二进制翻译(binary translation)、二进制转换或二进制重新编译((binary) recompilation)是以翻译二进制代码来仿真另一个。指令按顺序从原指令集翻译为目标指令集。在等某些情况中,目标指令集可能与源指令集是同一指令集,翻译是为提供指令跟踪、条件断点、检测等测试和调试功能。 二进制翻译主要分为静态翻译与动态翻译两种类型。翻译可以由硬件(例如通过CPU中的电路)或软件(例如运行时引擎、静态重编译、仿真器等)完成。 (zh)
- Двоичная трансляция (англ. binary translation) — эмуляция одного набора инструкций на другом за счёт трансляции машинного кода. Последовательности инструкций переводятся из исходного набора в целевой набор инструкций. Двоичная трансляция позволяет выполнять приложения одной архитектуры при работе на второй, причём для оптимизирующих двоичных компиляторов скорость выполнения кода зачастую выше оригинала. Двоичная трансляция может быть статической и динамической. Динамическая компиляция происходит незаметно для пользователя при запуске приложения. Статический компилятор делает из двоичного кода исходной архитектуры готовое полноценное приложение для целевой архитектуры. При статической динамической трансляции весь исходный исполняемый файл транслируется в исполнимый файл для целевой архитектуры. Это весьма непростая задача — выполнить данную трансляцию абсолютно корректно, так как не весь код сразу считывается транслятором. Например, некоторые части исполнимого кода доступны лишь через косвенные переходы, чьи параметры становятся известны лишь во время исполнения. С другой стороны, динамическая трансляция рассматривает короткие последовательности кода (как правило, это базовый блок: цикл или метод), транслирует его и кэширует результирующую последовательность. Код транслируется не весь, а по мере считывания и, соответственно, возможности его трансляции, и для инструкций ветвления создается контрольная точка в транслируемом коде. Динамическая двоичная трансляция отличается от простой эмуляции удалением основного цикла эмулятора «считывание-декодирование-исполнение» (что является основным его узким местом), расплачиваясь за это большими накладными нагрузками во время процесса трансляции.Эти накладные расходы (нагрузки) несколько нивелируются в дальнейшем благодаря тому, что оттранслированный код будет исполняться несколько раз (то есть без повторной трансляции). Более совершенные динамические трансляторы применяют : транслируемый код инструментируется на предмет выяснения «температуры кода», то есть того, какие фрагменты выполняются довольно часто, и к ним применяется агрессивная оптимизация. Такой подход напоминает JIT-компилятор, и в сущности, такие компиляторы (как например, технология HotSpot от корпорации Sun) можно рассматривать как динамические трансляторы из виртуального набора инструкций (байт-код) в реальный. (ru)
|
rdfs:comment
|
- 컴퓨팅에서 이진 변환 또는 바이너리 변환(binary translation)은 명령어를 원본(source) 명령어 집합에서 대상(target) 명령어 집합으로 변환하는 바이너리 재컴파일의 일종이다. 등의 경우에 대상 명령어 집합은 원본 명령어 집합과 동일할 수 있으며 명령어 추적, 조건문 브레이크포인트, 핫스팟 감지 등 테스트 및 디버깅 기능을 제공한다. 2가지 주된 유형으로 정적 이진 변환과 동적 이진 변환이 있다. 변환은 하드웨어 수준에서 수행될 수 있고(예: CPU의 회로를 통해) 아니면 소프트웨어 수준에서 수행될 수도 있다.(예: 런타임 엔진, 정적 재컴파일러, 에뮬레이터) (ko)
- バイナリ変換(英: Binary translation)は、コンピュータの領域において、変換元の命令列を変換先の命令セットに翻訳し、機械語コードを変換することで命令セットのエミュレーションを行うことである。 (ja)
- Een binaire vertaling is de emulatie van een instructieset door een processor met een andere instructieset door middel van vertaling van de broncode. Hierdoor zou het in theorie mogelijk zijn om Mac OS X (dat de instructieset AMD64 ondersteunt) te draaien op PowerPC-gebaseerde computers. Er zijn twee soorten: statisch en dynamisch. Bij statisch wordt de code niet uitgevoerd, maar gewoon omgezet naar code voor de andere instructieset. Bij dynamische binaire vertaling wordt de code uitgevoerd en zo omgezet naar code voor een andere instructieset. (nl)
- 在计算机领域中,二进制翻译(binary translation)、二进制转换或二进制重新编译((binary) recompilation)是以翻译二进制代码来仿真另一个。指令按顺序从原指令集翻译为目标指令集。在等某些情况中,目标指令集可能与源指令集是同一指令集,翻译是为提供指令跟踪、条件断点、检测等测试和调试功能。 二进制翻译主要分为静态翻译与动态翻译两种类型。翻译可以由硬件(例如通过CPU中的电路)或软件(例如运行时引擎、静态重编译、仿真器等)完成。 (zh)
- في الحوسبة، الترجمة الثنائية (أو إعادة التجميع (الثنائية)) هي محاكاة تنفيذ مجموعة تعليمات ما باستخدام مجموعة تعليمات أخرى عبر ترجمة الكود الثنائي من مجموعة التعليمات الأولى إلى الثانية، حيث تتم ترجمة سلاسل التعليمات من مجموعة التعليمات المصدر (من اللغة الثنائية المصدرية) إلى مجموعة التعليمات الهدف. في بعض الحالات، مثل ، يمكن أن تكون مجموعة التعليمات الهدف هي نفسها مجموعة التعليمات المصدرية، وذلك لتوفير مزايا تفيد في الاختبار والتنقيح مثل تتبع التعليمات، ونقاط التوقف الشرطية وأيضاً اكتشاف (hot spots). (ar)
- In computing, binary translation is a form of binary recompilation where sequences of instructions are translated from a source instruction set to the target instruction set. In some cases such as instruction set simulation, the target instruction set may be the same as the source instruction set, providing testing and debugging features such as instruction trace, conditional breakpoints and hot spot detection. (en)
- En informatique, la translation de code est une technique d'émulation consistant à traduire (de l'anglais « to translate », traduire) le jeu d'instructions d'une architecture source vers le jeu d'instructions d'une architecture destination. On distingue deux types de translation de code : (fr)
- Двоичная трансляция (англ. binary translation) — эмуляция одного набора инструкций на другом за счёт трансляции машинного кода. Последовательности инструкций переводятся из исходного набора в целевой набор инструкций. Двоичная трансляция позволяет выполнять приложения одной архитектуры при работе на второй, причём для оптимизирующих двоичных компиляторов скорость выполнения кода зачастую выше оригинала. (ru)
|