பிளிங்க், பிற கட்டமைப்புகளில் தொகுக்கப்பட்ட லினக்ஸ் பயன்பாடுகளை இயக்க x86-64 முன்மாதிரி

பிளிங்க்

பிளிங்க் என்பது வெவ்வேறு இயக்க முறைமைகளில் x86-64-linux நிரல்களை இயக்கும் ஒரு மெய்நிகர் இயந்திரமாகும்.

என்ற செய்தி சமீபத்தில் வெளியானது பிளிங்க் திட்டத்தின் முதல் பெரிய பதிப்பின் வெளியீடு, இது ஒரு x86-64 செயலி எமுலேட்டராகும், இது நிலையான மற்றும் மாறும் வகையில் உருவாக்கப்பட்ட லினக்ஸ் பயன்பாடுகளை ஒரு மெய்நிகர் கணினியில் எமுலேட்டட் செயலியுடன் இயக்க அனுமதிக்கிறது.

காஸ்மோபாலிட்டன் சி லைப்ரரி, லினக்ஸ் மற்றும் ரெட்பீன் யுனிவர்சல் எக்ஸிகியூடபிள் கோப்பு முறைமைக்கான அர்ப்பணிப்பு தனிமைப்படுத்தும் பொறிமுறையின் துறைமுகம் போன்ற மேம்பாடுகளின் ஆசிரியரால் இந்த திட்டம் உருவாக்கப்பட்டது என்பது குறிப்பிடத்தக்கது.

செயல்பாட்டின் அடிப்படையில், பிளிங்க் qemu-x86_64 கட்டளை போல் தெரிகிறது, ஆனால் QEMU இலிருந்து மிகவும் கச்சிதமான வடிவமைப்பு மற்றும் செயல்திறனில் குறிப்பிடத்தக்க அதிகரிப்பு ஆகியவற்றில் வேறுபடுகிறது. எடுத்துக்காட்டாக, qemu-x220_4 க்கு 86 MB க்கு பதிலாக Blink இயங்கக்கூடியது 64 KB மட்டுமே, மற்றும் செயல்திறன் அடிப்படையில் GCC எமுலேட்டரில் சோதனை ஓட்டத்தில், பிளிங்க் QEMU ஐ இரண்டு முறை அடிக்கிறது.

பிளிங்க் மூலம், x86-64 கட்டமைப்பிற்காக தொகுக்கப்பட்ட லினக்ஸ் நிரல்கள் மற்ற POSIX-இணக்க இயக்க முறைமைகளிலும் (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin) மற்ற வன்பொருள் கட்டமைப்புகளுடன் (x86, ARM, RISC-V, MIPS) வன்பொருளிலும் இயங்க முடியும். PowerPC, s390x).

பிளிங்கின் முக்கிய செய்தி

பதிப்பு 1.0 வெளியீடு அடிப்படையில் 220kb நிலையான சார்பு இல்லாத பைனரியாக உள்ளது இது சுமார் 600 x86 வழிமுறைகள் மற்றும் 180 லினக்ஸ் சிஸ்டம் அழைப்புகளை செயல்படுத்துகிறது, இது எளிய கட்டளை வரி நிரல்களை இயக்குவதில் பிளிங்க் நன்றாக இருக்கும்.

உயர் செயல்திறனை உறுதி செய்ய, ஒரு JIT கம்பைலர் பயன்படுத்தப்படுகிறது, இது மூல வழிமுறைகளை இயந்திர குறியீடாக மாற்றுகிறது பறக்கும் இலக்கு தளத்திற்கு. ELF, PE (Portable Executables) மற்றும் bin (Flat Executable) வடிவங்களில் இயங்கக்கூடிய கோப்புகளின் எமுலேட்டரில் நேரடி துவக்கம், நிலையான C நூலகங்களான Cosmopolitan, Glibc மற்றும் Musl உடன் தொகுக்கப்பட்டது.

Blink ஆனது வேகமான JIT ஐக் கொண்டுள்ளது, இது சில சமயங்களில் Qemu ஐ விட 2 மடங்கு வேகமானது, ஏனெனில் Blink ஆனது printf-பாணி DSL ஐப் பயன்படுத்தி குறியீட்டை விரைவாக உருவாக்கும் அடிப்படை JIT ஐக் கொண்டுள்ளது. எங்களிடம் 63 வரிகள் ANSI C500 குறியீடு இருப்பதால், Blink அணுகக்கூடிய குறியீட்டுத் தளத்தைக் கொண்டுள்ளது. தற்போது, ​​Blink மேம்படுத்தல்களை முயற்சிக்கவில்லை, இது இந்த திட்டத்தை அல்காரிதம்களுக்கான ஒரு புதிய துறையாக மாற்றுகிறது.

பிளிங்க் கட்டளை வரி நிரல்களுக்கு சிறப்பாகச் செயல்படும் என்று குறிப்பிடப்பட்டுள்ளது, இருப்பினும் GUI பயன்பாடுகளைப் பின்பற்றுவதற்கு Blink சில ஆதரவைக் கொண்டுள்ளது. qemu-user (இது லினக்ஸில் மட்டுமே இயங்கும்) போலல்லாமல், Cygwin (Windows) இல் Blink ஐ தொகுத்து, Alpine Linux chroot இல் Bash ஐ இயக்கும் திறன் இருப்பதால், Blink ஐ மற்ற இயக்க முறைமைகளில் இயக்க முடியும்.

பிளிங்க் 250kb சார்பு இல்லாத இயங்கக்கூடியது என்றாலும், நியோஃபெட்சை ஏமாற்றும் அளவுக்கு லினக்ஸ் பயனர் நிலத்தை பிளிங்க் பின்பற்றுகிறது.

ஆப்பிள் சிலிக்கானிலும் பிளிங்க் நன்றாக வேலை செய்கிறது என்பது குறிப்பிடத்தக்கது, எடுத்துக்காட்டாக, MacOS M1 ஆல்பைன் x86_64 என்று நினைத்து நியோஃபெட்சை ஏமாற்றலாம்.

கூடுதலாக, பிளிங்க் அடிப்படையில், Blinkenlights பயன்பாடு உருவாக்கப்படுகிறது, நிரல் செயலாக்கத்தைப் பார்ப்பதற்கும் நினைவகத்தின் உள்ளடக்கங்களை பகுப்பாய்வு செய்வதற்கும் இடைமுகத்தை வழங்குகிறது. தலைகீழ் பிழைத்திருத்த பயன்முறையை (தலைகீழ் பிழைத்திருத்தம்) ஆதரிக்கும் ஒரு பிழைத்திருத்தமாக இந்த பயன்பாட்டைப் பயன்படுத்தலாம் மற்றும் செயல்படுத்தல் வரலாற்றில் திரும்பிச் செல்லவும், முன்பு செயல்படுத்தப்பட்ட புள்ளிக்குத் திரும்பவும் உங்களை அனுமதிக்கிறது.

Blinkenlights TUI வழங்கும் சிறந்த அம்சம் தலைகீழ் பிழைத்திருத்தமாகும். வெளியீட்டு அறிவிப்பில், நீங்கள் கட்டத் திரையில் மட்டுமே சக்கரத்தை உருட்ட வேண்டும் என்று குறிப்பிடப்பட்டுள்ளது. நீங்கள் p விசையை அழுத்தினால், பிளிங்க் உங்கள் நிரலின் அம்சங்களை நிகழ்நேரத்தில் கோடிட்டுக் காட்டுகிறது. கர்னலைப் பயன்படுத்தி நினைவகத்தை பெரிதாக்க மெமரி பேன்ஸ் வீலையும் நீங்கள் கட்டுப்படுத்தலாம்.

இறுதியாக பிளிங்க் எவ்வாறு செயல்படுகிறது என்பதைப் பற்றி மேலும் அறிய விரும்பினால், நீங்கள் அதை செய்ய முடியும் பின்வரும் இணைப்பு.

கண் சிமிட்டவும்

கண் சிமிட்ட முயற்சி செய்ய ஆர்வமுள்ளவர்கள், அதன் தொகுப்பு மிகவும் எளிமையானது என்பதை அவர்கள் அறிந்து கொள்ள வேண்டும், அவர்கள் அதன் மூலக் குறியீட்டைப் பெற வேண்டும், அவர்கள் பின்வரும் இணைப்பில் அல்லது முனையத்தில் பின்வரும் கட்டளையைத் தட்டச்சு செய்வதன் மூலம் அதைச் செய்யலாம். :

wget https://github.com/jart/blink/releases/download/1.0.0/blink-1.0.0.tar.gz
tar xvzf blink-1.0.0.tar.gz
cd blink-1.0.0
./configure MODE=tiny
make -j8 MODE=tiny o/tiny/x86_64/blink/blink
o/third_party/gcc/x86_64/bin/x86_64-linux-musl-strip o/tiny/x86_64/blink/blink
o/tiny/x86_64/blink/blink -v


உங்கள் கருத்தை தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்பட்ட முடியாது. தேவையான புலங்கள் குறிக்கப்பட்டிருக்கும் *

*

*

  1. தரவுக்கு பொறுப்பு: மிகுவல் ஏஞ்சல் கேடன்
  2. தரவின் நோக்கம்: கட்டுப்பாட்டு ஸ்பேம், கருத்து மேலாண்மை.
  3. சட்டபூர்வமாக்கல்: உங்கள் ஒப்புதல்
  4. தரவின் தொடர்பு: சட்டபூர்வமான கடமையால் தவிர மூன்றாம் தரப்பினருக்கு தரவு தெரிவிக்கப்படாது.
  5. தரவு சேமிப்பு: ஆக்சென்டஸ் நெட்வொர்க்குகள் (EU) வழங்கிய தரவுத்தளம்
  6. உரிமைகள்: எந்த நேரத்திலும் உங்கள் தகவல்களை நீங்கள் கட்டுப்படுத்தலாம், மீட்டெடுக்கலாம் மற்றும் நீக்கலாம்.