العربية  

books dynamic binary translation

If you do not find what you're looking for, you can use more accurate words.

View more

الترجمة الثنائية الديناميكية (Info)


تعتمد عملية الترجمة الثنائية الديناميكة على التركيز على سلسلة قصيرة من الشفرة—بحجم كتلة بسيطة واحدة نموذجياً—ثم ترجمتها وتخزين سلسلة التعليمات الناتجة مؤقتاً. لا تتم ترجمة الشفرات إلا عند اكتشافها وعندما تكون ترجمتها ممكنة، وتحور تعليمات التفريع حتى تشير إلى الشفرات المترجمة والمحفوظة سابقاً (memoization).

تختلف الترجمة الثنائية الديناميكية عن المحاكاة البسيطة حيث تلغى فيها حلقة «اقرأ-فك التشفير-نفذ» الرئيسية في المحاكاة—وهي حلقة خانقة للأداء، وهذا يؤدي في المقابل لإضافة عبئ كبير أثناء الترجمة. لكن هذا العبئ يتوقع تعويضه بشكل تدريجي عند تكرار تنفيذ سلاسل الأكواد نفسها مرات عديدة.

المترجمات الديناميكية المتقدمة أكثر تستخدم عملية إعادة تجميع ديناميكية حيث يتم تقييس الشفرات المترجمة لمعرفة الأجزاء التي يتكرر تنفيذها مرات كثيرة، ثم تخضع هذه الأجزاء لعمليات تحسين أداء قاسية. هذه التقنية تتقاطع مع مترجمات JIT، وفي الحقيقة يمكن اعتبار بعض هذه المترجمات (مثل تقنية هوت-سبوت من شركة صن) كمترجمات ديناميكية من مجموعة تعليمات ظاهرية (تعليمات بايت-كود) إلى مجموعة تعليمات حقيقية.

Source: wikipedia.org