Lëshimi i parë i Blink, një emulator me performancë të lartë për sistemet x86-64

ËshtĂ« publikuar lĂ«shimi i parĂ« i rĂ«ndĂ«sishĂ«m i projektit Blink, i cili zhvillon njĂ« emulator pĂ«r procesorĂ«t x86-64, duke lejuar ekzekutimin e aplikacioneve Linux tĂ« ndĂ«rtuara statikisht dhe dinamikisht nĂ« njĂ« makinĂ« virtuale me procesorin e emuluar. Me ndihmĂ«n e Blink, programet Linux tĂ« ndĂ«rtuara pĂ«r arkitekturĂ«n x86-64 mund tĂ« ekzekutohen nĂ« sisteme tĂ« tjera operuese tĂ« pĂ«rputhshme me POSIX (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin) dhe nĂ« pajisje me arkitekturĂ« tjetĂ«r harduerike (x86, ARM, RISC-V, MIPS, PowerPC, s390x). Kodi i projektit Ă«shtĂ« shkruar nĂ« gjuhĂ«n C (ANSI C11) dhe shpĂ«rndahet nĂ«n licencĂ«n ISC. Nga varĂ«sitĂ« kĂ«rkohet vetĂ«m libc (POSIX.1-2017).

NĂ« funksionalitet, Blink i ngjan komandĂ«s qemu-x86_64, por dallohet nga QEMU pĂ«r njĂ« ekzekutim mĂ« kompakt dhe njĂ« rritje tĂ« konsiderueshme tĂ« performancĂ«s. PĂ«r shembull, skedari ekzekutiv i Blink merr vetĂ«m 221 KB (nĂ« ndĂ«rtimin e shkurtuar — 115 KB) nĂ« vend tĂ« 4 MB tĂ« qemu-x86_64, dhe sipas performancĂ«s nĂ« disa teste, siç Ă«shtĂ« ekzekutimi nĂ« emulator GCC dhe kryerja e operacioneve matematikore, e tejkalon QEMU pĂ«rreth dy herĂ«.

PĂ«r tĂ« siguruar cilĂ«si tĂ« lartĂ« performancĂ«s, pĂ«rdoret kompilator JIT, i cili nĂ« kohĂ« reale kthen instruksionet origjinale nĂ« kodin makinerik pĂ«r platformĂ«n e synuar. MbĂ«shtetet ekzekutimi direkt nĂ« emulatorin e skedarĂ«ve ekzekutivĂ« nĂ« formatet ELF, PE (Portable Executables) dhe bin (Flat executable), tĂ« ndĂ«rtuara me bibliotekat standarde tĂ« C-sĂ« Cosmopolitan, Glibc dhe Musl. ËshtĂ« realizuar mbĂ«shtetje e integruar pĂ«r 180 thirrje sistemore Linux dhe emulimi i rreth 600 instruksioneve tĂ« procesorit x86, duke pĂ«rfshirĂ« grupe instruksionesh i8086, i386, SSE2, x86_64, SSE3, SSSE3, CLMUL, POPCNT, ADX, BMI2 (MULX, PDEP, PEXT), X87, RDRND, RDSEED dhe RDTSCP.

Për më tepër, në bazë të Blink zhvillohet utilitari blinkenlights, i cili ofron një ndërfaqe për vizualizimin e procesit të ekzekutimit të programit dhe analizimin e përmbajtjes së memories. Utilitari mund të përdoret si një debues, që mbështet modin e debimit të kundërt (Reverse-Debugging) dhe lejon lëvizjen prapa në historinë e ekzekutimit dhe rikthimin në një pikë të ekzekutuar më parë. Projekti zhvillohet nga autori i zhvillimeve të tilla si biblioteka C Cosmopolitan, porta e mekanizmit të izolimit pledge për Linux dhe sistemi i skedarëve ekzekutivë universale Redbean.

Lëshimi i parë i Blink, një emulator me performancë të lartë për sistemet x86-64


Burimi: opennet.ru
Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster