गतिशील पुनर्संकलन: Difference between revisions
No edit summary |
No edit summary |
||
Line 23: | Line 23: | ||
* [[मैक 68K एमुलेटर]] के बाद के संस्करणों का उपयोग [[क्लासिक मैक ओएस]] में [[पावरपीसी]] हार्डवेयर पर [[680x0]] कूट भाषा चलाने के लिए किया गया। | * [[मैक 68K एमुलेटर]] के बाद के संस्करणों का उपयोग [[क्लासिक मैक ओएस]] में [[पावरपीसी]] हार्डवेयर पर [[680x0]] कूट भाषा चलाने के लिए किया गया। | ||
* [[प्स्य्को]], [[पायथन (प्रोग्रामिंग भाषा)]] के लिए एक [[विशेषज्ञ संकलक|विशेष संकलक है]] । | * [[प्स्य्को]], [[पायथन (प्रोग्रामिंग भाषा)]] के लिए एक [[विशेषज्ञ संकलक|विशेष संकलक है]] । | ||
* एचपी [[डायनेमो परियोजना]], एक पारदर्शी बाइनरी गतिशील [[संकलक अनुकूलन]] का एक उदाहरण है।<ref name="HP_1999_Dynamo">{{cite web|url=http://www.hpl.hp.com/techreports/1999/HPL-1999-77.html|title=डायनेमो पर एचपी लैब्स की तकनीकी रिपोर्ट}}</ | * एचपी [[डायनेमो परियोजना]], एक पारदर्शी बाइनरी गतिशील [[संकलक अनुकूलन]] का एक उदाहरण है।<ref name="HP_1999_Dynamo">{{cite web|url=http://www.hpl.hp.com/techreports/1999/HPL-1999-77.html|title=डायनेमो पर एचपी लैब्स की तकनीकी रिपोर्ट}}</ref> | ||
* [[डायनेमोरियो]], एक [[खुला स्रोत सॉफ्टवेयर]]|डायनेमो का ओपन-सोर्स उत्तराधिकारी जो [[एआरएम वास्तुकला]], [[x86-64]] और [[आइए-64]] (इटेनियम) इंस्ट्रक्शन सेट के साथ काम करता है। | * [[डायनेमोरियो]], एक [[खुला स्रोत सॉफ्टवेयर]]|डायनेमो का ओपन-सोर्स उत्तराधिकारी जो [[एआरएम वास्तुकला]], [[x86-64]] और [[आइए-64]] (इटेनियम) इंस्ट्रक्शन सेट के साथ काम करता है। | ||
<ref>{{Cite web |url=http://www.dynamorio.org/home.html |title=DynamoRIO डायनेमिक इंस्ट्रूमेंटेशन टूल प्लेटफॉर्म|access-date=2016-04-12 |archive-date=2019-09-05 |archive-url=https://web.archive.org/web/20190905070811/http://www.dynamorio.org/home.html |url-status=dead }}</ref><ref>{{Cite web|url=https://github.com/डायनेमोरियो/dynamorio|title = डायनेमोरियो|website = [[GitHub]]|date = 15 October 2021}}</ref> | |||
* [[Vx32|वीएक्स32]] सुरक्षित अनुप्रयोग [[प्लग-इन (कंप्यूटिंग)]] के लिए [[ऑपरेटिंग सिस्टम|संचालन प्रणाली]]-स्वतंत्र एक्स86 [[x86 आर्किटेक्चर|आर्किटेक्चर]] सैंडबॉक्स बनाने के लिए गतिशील पुनर्संकलन को नियोजित करता है। | * [[Vx32|वीएक्स32]] सुरक्षित अनुप्रयोग [[प्लग-इन (कंप्यूटिंग)]] के लिए [[ऑपरेटिंग सिस्टम|संचालन प्रणाली]]-स्वतंत्र एक्स86 [[x86 आर्किटेक्चर|आर्किटेक्चर]] सैंडबॉक्स बनाने के लिए गतिशील पुनर्संकलन को नियोजित करता है। | ||
* मैक के लिए [[माइक्रोसॉफ्ट वर्चुअल पीसी]], पावरपीसी पर एक्स86 कूट भाषा चलाने के लिए प्रयोग किया जाता है। | * मैक के लिए [[माइक्रोसॉफ्ट वर्चुअल पीसी]], पावरपीसी पर एक्स86 कूट भाषा चलाने के लिए प्रयोग किया जाता है। | ||
* फ्रीकीबी, एक अंतरराष्ट्रीय डॉस कीबोर्ड और कंसोल संचालक है जिसमें कई प्रयोज्य संवर्द्धन के साथ स्वयं-संशोधित कूट भाषा और [[गतिशील मृत कोड उन्मूलन|गतिशील मृत कूट भाषा उन्मूलन]] का उपयोग किया गया है ताकि इसके उपयोगकर्ता विन्यास (चयनित सुविधाओं, भाषाओं, अभिविन्यास ) और वास्तविक क्रम पर्यावरण (ओएस) के आधार पर इसकी इन-मेमोरी छवि को कम किया जा सके। संस्करण और संस्करण, लोड किए गए संचालक,अंतर्निहित धातु सामग्री), स्वचालित रूप से निर्भरता को हल करना, बाइट-स्तरीय कणिकता पर कूट भाषा अनुभागों को गतिशील रूप से स्थानांतरित करना और पुनर्संयोजित करना और स्रोत कूट भाषा में प्रदान की गई अर्थ-संबंधी जानकारी के आधार पर अनुकूलन, सभा और रूपरेखा जानकारी के दौरान विशेष उपकरणों द्वारा उत्पन्न स्थानांतरण जानकारी लोड समय पर प्राप्त किया।<ref name="Paul_1997_FreeKEYB">{{citation | * फ्रीकीबी, एक अंतरराष्ट्रीय डॉस कीबोर्ड और कंसोल संचालक है जिसमें कई प्रयोज्य संवर्द्धन के साथ स्वयं-संशोधित कूट भाषा और [[गतिशील मृत कोड उन्मूलन|गतिशील मृत कूट भाषा उन्मूलन]] का उपयोग किया गया है ताकि इसके उपयोगकर्ता विन्यास (चयनित सुविधाओं, भाषाओं, अभिविन्यास ) और वास्तविक क्रम पर्यावरण (ओएस) के आधार पर इसकी इन-मेमोरी छवि को कम किया जा सके। संस्करण और संस्करण, लोड किए गए संचालक,अंतर्निहित धातु सामग्री), स्वचालित रूप से निर्भरता को हल करना, बाइट-स्तरीय कणिकता पर कूट भाषा अनुभागों को गतिशील रूप से स्थानांतरित करना और पुनर्संयोजित करना और स्रोत कूट भाषा में प्रदान की गई अर्थ-संबंधी जानकारी के आधार पर अनुकूलन, सभा और रूपरेखा जानकारी के दौरान विशेष उपकरणों द्वारा उत्पन्न स्थानांतरण जानकारी लोड समय पर प्राप्त किया।<ref name="Paul_1997_FreeKEYB">{{citation | ||
|title=FreeKEYB - Enhanced DOS keyboard and console driver |edition=v6.5 |first1=Matthias R. |last1=Paul |first2=Axel C. |last2=Frinke |type=User Manual |date=1997-10-13 |orig-year=first published 1991}}</ | |title=FreeKEYB - Enhanced DOS keyboard and console driver |edition=v6.5 |first1=Matthias R. |last1=Paul |first2=Axel C. |last2=Frinke |type=User Manual |date=1997-10-13 |orig-year=first published 1991}}</ref> | ||
* [[Xbox 360]] (यानी मूल Xbox (कंसोल) के लिए लिखे गए चल रहे गेम) की पश्चगामी संगतता कार्यक्षमता को व्यापक रूप से गतिशील पुनर्संकलन का उपयोग करने के लिए माना जाता है। | * [[Xbox 360]] (यानी मूल Xbox (कंसोल) के लिए लिखे गए चल रहे गेम) की पश्चगामी संगतता कार्यक्षमता को व्यापक रूप से गतिशील पुनर्संकलन का उपयोग करने के लिए माना जाता है। | ||
* Apple सिलिकॉन के लिए Apple का [[रोसेटा 2]], x86-64-आधारित प्रोसेसर के लिए संकलित कई अनुप्रयोगों को Apple सिलिकॉन पर निष्पादन के लिए अनुवादित करने की अनुमति देता है। | * Apple सिलिकॉन के लिए Apple का [[रोसेटा 2]], x86-64-आधारित प्रोसेसर के लिए संकलित कई अनुप्रयोगों को Apple सिलिकॉन पर निष्पादन के लिए अनुवादित करने की अनुमति देता है। | ||
Line 62: | Line 62: | ||
* [http://www.multigesture.net/wp-content/uploads/mirror/zenogais/Dynamic%20Recompiler.html Dynamic recompiler tutorial] | * [http://www.multigesture.net/wp-content/uploads/mirror/zenogais/Dynamic%20Recompiler.html Dynamic recompiler tutorial] | ||
* [https://web.archive.org/web/20170201173933/http://emulatemii.com/wordpress/?tag=dynarec Blog posts about writing a MIPS to PPC dynamic recompiler] | * [https://web.archive.org/web/20170201173933/http://emulatemii.com/wordpress/?tag=dynarec Blog posts about writing a MIPS to PPC dynamic recompiler] | ||
[[Category:Articles with invalid date parameter in template]] | |||
[[Category: | |||
[[Category:Created On 17/02/2023]] | [[Category:Created On 17/02/2023]] | ||
[[Category:Machine Translated Page]] | |||
[[Category:Pages with reference errors]] | |||
[[Category:Pages with script errors]] | |||
[[Category:Templates Vigyan Ready]] | |||
[[Category:Use dmy dates from July 2019]] | |||
[[Category:अनुकरण सॉफ्टवेयर]] | |||
[[Category:वर्चुअलाइजेशन]] | |||
[[Category:संकलक निर्माण]] |
Revision as of 11:06, 29 March 2023
कार्यक्रम निष्पादन |
---|
सामान्य अवधारणाएँ |
कोड के प्रकार |
संकलन रणनीतियाँ |
उल्लेखनीय रनटाइम्स |
|
उल्लेखनीय संकलक और टूलचेन |
|
कंप्यूटर विज्ञान एक गतिशील पुनर्संकलन कुछ अनुकरणकर्ताओं और आभासी मशीनो की एक विशेषता है, जहां प्रणाली निष्पादन के दौरान कंप्यूटर कूट भाषा के कुछ भाग को संकलित कर सकता है। निष्पादन के दौरान संकलित करके, प्रणाली कार्यक्रम के क्रम वातावरण को प्रतिबिंबित करने के लिए उत्पन्न किए गए कूट भाषा को तैयार कर सकता है और संभावित रूप से पारंपरिक स्थिर संकलक के लिए उपलब्ध जानकारी का दोहन करके अधिक कुशल कूट भाषा का उत्पादन कर सकता है।
उपयोग करता है
कार्य अवधि पर स्थापत्य के बीच मशीन कूट लेखन को परिवर्तित करने के लिए अधिकांश गतिशील पुनर्संकलक का उपयोग किया जाता है। विरासत द्यूत क्षेत्र के अनुकरण में यह एक ऐसा कार्य है जिसकी हमेशा आवश्यकता पड़ती है। अन्य मामलों में, जावा (प्रोग्रामिंग भाषा) या सामान्य भाषा क्रम बायटेकोड जैसे सुवाह्य कार्यक्रम प्रतिनिधित्व को निष्पादित करने के लिए एक अनुकूली अनुकूलन रणनीति के हिस्से के रूप में एक प्रणाली गतिशील पुनर्संकलन को नियोजित कर सकता है। यह बड़ी तेज़ी से दोषमार्जक गतिशील रीकंपिलेशन का भी उपयोग करते हैं ताकि अधिकांश डी-ऑप्टिमाइजेशन तकनीकों में ऊपरी खर्च को कम किया जा सके,और अन्य विशेषताएं जैसी गतिशील थ्रेड माइग्रेशन ।
कार्य
गतिशील रीकंपलर को जिन मुख्य कार्यों को करना होता है, वे हैं:
- स्रोत पटल से मशीन कूट भाषा में पढ़ना
- लक्ष्य पटल के लिए एमिटिंग मशीन कोड
एक गतिशील रीकंपलर कुछ सहायक कार्य भी कर सकता है:
- पुनः संकलित कूट भाषा के कैश (कंप्यूटिंग) का प्रबंधन
- चक्र गणना रजिस्टरों के साथ प्लेटफार्मों पर बीता हुआ चक्र गणना का अद्यतन करना
- व्यवधान जाँच का प्रबंधन
- कल्पित समर्थन धातु सामग्री के लिए एक अंतरापृष्ठ प्रदान करना, उदाहरण के लिए एक जीपीयू
- लक्ष्य धातु सामग्री पर कुशलतापूर्वक चलाने के लिए उच्च-स्तरीय कूट भाषा संरचनाओं का अनुकूलन (नीचे देखें)
अनुप्रयोग
- कई जावा आभासी मशीनों में गतिशील पुनर्संकलन की सुविधा होती है
- एक्स86 पर मैक ओएस एक्स के लिए एप्प्ल का रोसेटा (सॉफ्टवेयर), पावरपीसी कूट भाषा को एक्स86 आर्किटेक्चर पर चलाने की अनुमति देता है।
- मैक 68K एमुलेटर के बाद के संस्करणों का उपयोग क्लासिक मैक ओएस में पावरपीसी हार्डवेयर पर 680x0 कूट भाषा चलाने के लिए किया गया।
- प्स्य्को, पायथन (प्रोग्रामिंग भाषा) के लिए एक विशेष संकलक है ।
- एचपी डायनेमो परियोजना, एक पारदर्शी बाइनरी गतिशील संकलक अनुकूलन का एक उदाहरण है।[1]
- डायनेमोरियो, एक खुला स्रोत सॉफ्टवेयर|डायनेमो का ओपन-सोर्स उत्तराधिकारी जो एआरएम वास्तुकला, x86-64 और आइए-64 (इटेनियम) इंस्ट्रक्शन सेट के साथ काम करता है।
- वीएक्स32 सुरक्षित अनुप्रयोग प्लग-इन (कंप्यूटिंग) के लिए संचालन प्रणाली-स्वतंत्र एक्स86 आर्किटेक्चर सैंडबॉक्स बनाने के लिए गतिशील पुनर्संकलन को नियोजित करता है।
- मैक के लिए माइक्रोसॉफ्ट वर्चुअल पीसी, पावरपीसी पर एक्स86 कूट भाषा चलाने के लिए प्रयोग किया जाता है।
- फ्रीकीबी, एक अंतरराष्ट्रीय डॉस कीबोर्ड और कंसोल संचालक है जिसमें कई प्रयोज्य संवर्द्धन के साथ स्वयं-संशोधित कूट भाषा और गतिशील मृत कूट भाषा उन्मूलन का उपयोग किया गया है ताकि इसके उपयोगकर्ता विन्यास (चयनित सुविधाओं, भाषाओं, अभिविन्यास ) और वास्तविक क्रम पर्यावरण (ओएस) के आधार पर इसकी इन-मेमोरी छवि को कम किया जा सके। संस्करण और संस्करण, लोड किए गए संचालक,अंतर्निहित धातु सामग्री), स्वचालित रूप से निर्भरता को हल करना, बाइट-स्तरीय कणिकता पर कूट भाषा अनुभागों को गतिशील रूप से स्थानांतरित करना और पुनर्संयोजित करना और स्रोत कूट भाषा में प्रदान की गई अर्थ-संबंधी जानकारी के आधार पर अनुकूलन, सभा और रूपरेखा जानकारी के दौरान विशेष उपकरणों द्वारा उत्पन्न स्थानांतरण जानकारी लोड समय पर प्राप्त किया।[4]
- Xbox 360 (यानी मूल Xbox (कंसोल) के लिए लिखे गए चल रहे गेम) की पश्चगामी संगतता कार्यक्षमता को व्यापक रूप से गतिशील पुनर्संकलन का उपयोग करने के लिए माना जाता है।
- Apple सिलिकॉन के लिए Apple का रोसेटा 2, x86-64-आधारित प्रोसेसर के लिए संकलित कई अनुप्रयोगों को Apple सिलिकॉन पर निष्पादन के लिए अनुवादित करने की अनुमति देता है।
एम्युलेटर्स
एमुलेटर
- एक प्लेस्टेशन 2 एमुलेटर, में एक पुनर्संकलक है जिसे माइक्रो वीयू कहा जाता है, जो सुपरवीयू का उत्तराधिकारी है।
- जीसीईएमयू,[6] एक खेल घन एमुलेटर है।
- रत्न,[7]
- जेम, [7] एमएसए के लिए एक गेम बॉय इम्यूलेटर एक ऑप्टिमाइजिंग गतिशील रीकंपलर का उपयोग करता है।
- डीएसएमयूएमई,[8] एक निंटेंडो डी एस एमुलेटर, एक डायनारेक विकल्प है |
- सोयविज़ का पीएसपी,[9] एक प्लेस्टेशन पोर्टेबल इम्यूलेटर, एक डायनारेक विकल्प है।
- मुपेन 64 प्लस, एक मल्टी-प्लेटफ़ॉर्म निन्टेंडो 64 एमुलेटर है।[10]
- Yabause, एक बहु-मंच अब शनि एमुलेटर है।[11]
- पीपीएसएसपीपी, एक बहु-मंच प्लेस्टेशन पोर्टेबल इम्यूलेटर, डिफ़ॉल्ट रूप से समय-समय पर संकलन गतिशील रीकंपलर का उपयोग करता है।[12]
यह भी देखें
- बाइनरी रीकंपाइलर
- बाइनरी अनुवाद
- प्लेटफॉर्म वर्चुअलाइजेशन सॉफ्टवेयर की तुलना
- अभी-अभी संकलन
- इंस्ट्रुमेंटेशन (कंप्यूटर प्रोग्रामिंग)
संदर्भ
- ↑ "डायनेमो पर एचपी लैब्स की तकनीकी रिपोर्ट".
- ↑ "DynamoRIO डायनेमिक इंस्ट्रूमेंटेशन टूल प्लेटफॉर्म". Archived from the original on 2019-09-05. Retrieved 2016-04-12.
- ↑ "डायनेमोरियो". GitHub. 2021-10-15.
- ↑ Paul, Matthias R.; Frinke, Axel C. (1997-10-13) [first published 1991], FreeKEYB - Enhanced DOS keyboard and console driver (User Manual) (v6.5 ed.)
- ↑ "PCSX 2".
- ↑ petebernert. "जीसीएम". SourceForge.
- ↑ "Gameboy Emulator for MSX | The New Image". GEM. Retrieved 2014-01-12.
- ↑ "DeSmuME v0.9.9".
- ↑ Publicado por Carlos Ballesteros Velasco (2013-07-28). "Soywiz's PSP Emulator: Release : Soywiz's Psp Emulator 2013-07-28 (r525)". Pspemu.soywiz.com. Retrieved 2014-01-12.
- ↑ Mupen64Plus
- ↑ "SH2".
- ↑ "PPSSPP - PPSSPP - PSP emulator for Android, Windows, Linux, iOS, MacOSX". ppsspp.org. Retrieved 2021-11-17.