ಬ್ಲಿಂಕ್‌ನ ಮೊದಲ ಬಿಡುಗಡೆ, ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯ x86-64 ಎಮ್ಯುಲೇಟರ್

ಬ್ಲಿಂಕ್ ಪ್ರಾಜೆಕ್ಟ್‌ನ ಮೊದಲ ಮಹತ್ವದ ಬಿಡುಗಡೆಯನ್ನು ಪ್ರಕಟಿಸಲಾಗಿದೆ, x86-64 ಪ್ರೊಸೆಸರ್ ಎಮ್ಯುಲೇಟರ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ, ಇದು ಎಮ್ಯುಲೇಟೆಡ್ ಪ್ರೊಸೆಸರ್‌ನೊಂದಿಗೆ ವರ್ಚುವಲ್ ಗಣಕದಲ್ಲಿ ಸ್ಥಿರವಾಗಿ ಮತ್ತು ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ನಿರ್ಮಿಸಲಾದ ಲಿನಕ್ಸ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಚಲಾಯಿಸಲು ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ. ಬ್ಲಿಂಕ್ ಬಳಸಿ, x86-64 ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗಾಗಿ ಕಂಪೈಲ್ ಮಾಡಲಾದ ಲಿನಕ್ಸ್ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಇತರ POSIX-ಕಂಪ್ಲೈಂಟ್ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್‌ಗಳಲ್ಲಿ (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin) ಮತ್ತು ಇತರ ಹಾರ್ಡ್‌ವೇರ್ ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗಳೊಂದಿಗೆ ಹಾರ್ಡ್‌ವೇರ್‌ನಲ್ಲಿ (x86, ARM, RISC-V) ರನ್ ಮಾಡಬಹುದು. , PowerPC, s390x). ಪ್ರಾಜೆಕ್ಟ್ ಕೋಡ್ ಅನ್ನು C (ANSI C11) ನಲ್ಲಿ ಬರೆಯಲಾಗಿದೆ ಮತ್ತು ISC ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗಿದೆ. ಅವಲಂಬನೆಗಳಲ್ಲಿ, ಕೇವಲ libc (POSIX.1-2017) ಅಗತ್ಯವಿದೆ.

ಕಾರ್ಯಚಟುವಟಿಕೆಗೆ ಸಂಬಂಧಿಸಿದಂತೆ, ಬ್ಲಿಂಕ್ qemu-x86_64 ಆಜ್ಞೆಯನ್ನು ಹೋಲುತ್ತದೆ, ಆದರೆ ಹೆಚ್ಚು ಸಾಂದ್ರವಾದ ವಿನ್ಯಾಸ ಮತ್ತು ಗಮನಾರ್ಹ ಕಾರ್ಯಕ್ಷಮತೆಯ ವರ್ಧಕದಲ್ಲಿ QEMU ನಿಂದ ಭಿನ್ನವಾಗಿದೆ. ಉದಾಹರಣೆಗೆ, ಬ್ಲಿಂಕ್ ಎಕ್ಸಿಕ್ಯೂಟಬಲ್ ಫೈಲ್ qemu-x221_115 ಗಾಗಿ 4 MB ಬದಲಿಗೆ 86 KB (ಮೊಟಕುಗೊಳಿಸಿದ ನಿರ್ಮಾಣದೊಂದಿಗೆ - 64 KB) ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಮತ್ತು GCC ಎಮ್ಯುಲೇಟರ್‌ನಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಮತ್ತು ಗಣಿತದ ಕಾರ್ಯಾಚರಣೆಗಳಂತಹ ಕೆಲವು ಪರೀಕ್ಷೆಗಳಲ್ಲಿನ ಕಾರ್ಯಕ್ಷಮತೆಯ ದೃಷ್ಟಿಯಿಂದ, ಇದು ಸುಮಾರು ಎರಡು ಬಾರಿ QEMU ಅನ್ನು ಹಿಂದಿಕ್ಕುತ್ತದೆ.

ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು, JIT ಕಂಪೈಲರ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ, ಇದು ಹಾರಾಡುತ್ತಿರುವಾಗ ಗುರಿ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ಗಾಗಿ ಮೂಲ ಸೂಚನೆಗಳನ್ನು ಯಂತ್ರ ಸಂಕೇತವಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ. ELF, PE (ಪೋರ್ಟಬಲ್ ಎಕ್ಸಿಕ್ಯೂಟಬಲ್ಸ್) ಮತ್ತು ಬಿನ್ (ಫ್ಲಾಟ್ ಎಕ್ಸಿಕ್ಯೂಟಬಲ್) ಫಾರ್ಮ್ಯಾಟ್‌ಗಳಲ್ಲಿ ಎಕ್ಸಿಕ್ಯೂಟಬಲ್ ಫೈಲ್‌ಗಳ ಎಮ್ಯುಲೇಟರ್‌ನಲ್ಲಿ ನೇರ ಉಡಾವಣೆ, ಸ್ಟ್ಯಾಂಡರ್ಡ್ C ಲೈಬ್ರರೀಸ್ ಕಾಸ್ಮೋಪಾಲಿಟನ್, Glibc ಮತ್ತು Musl ನೊಂದಿಗೆ ಸಂಕಲಿಸಲಾಗಿದೆ, ಬೆಂಬಲಿತವಾಗಿದೆ. 180 ಲಿನಕ್ಸ್ ಸಿಸ್ಟಮ್ ಕರೆಗಳಿಗೆ ಸ್ಥಳೀಯ ಬೆಂಬಲವನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ ಮತ್ತು i600, i86, SSE8086, x386_2, SSE86, SSSE64, CLMUL, POPCNT, ADX, BMI3 (MULX, PDENDSED), X3 x2 ಪ್ರೊಸೆಸರ್ ಸೂಚನೆಗಳ ಅನುಕರಣೆ ಸೂಚನಾ ಸೆಟ್‌ಗಳು ಮತ್ತು RDTSCP.

ಹೆಚ್ಚುವರಿಯಾಗಿ, ಬ್ಲಿಂಕನ್‌ಲೈಟ್ಸ್ ಉಪಯುಕ್ತತೆಯನ್ನು ಬ್ಲಿಂಕ್ ಆಧಾರದ ಮೇಲೆ ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗುತ್ತಿದೆ, ಇದು ಪ್ರೋಗ್ರಾಂ ಎಕ್ಸಿಕ್ಯೂಶನ್ ಅನ್ನು ದೃಶ್ಯೀಕರಿಸಲು ಮತ್ತು ಮೆಮೊರಿಯ ವಿಷಯಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ. ಉಪಯುಕ್ತತೆಯನ್ನು ರಿವರ್ಸ್-ಡೀಬಗ್ಗಿಂಗ್ ಮೋಡ್ (ರಿವರ್ಸ್-ಡೀಬಗ್ಗಿಂಗ್) ಬೆಂಬಲಿಸುವ ಡೀಬಗರ್ ಆಗಿ ಬಳಸಬಹುದು ಮತ್ತು ನೀವು ಎಕ್ಸಿಕ್ಯೂಶನ್ ಇತಿಹಾಸದಲ್ಲಿ ಹಿಂದಕ್ಕೆ ಸರಿಸಲು ಮತ್ತು ಹಿಂದೆ ಕಾರ್ಯಗತಗೊಳಿಸಿದ ಬಿಂದುವಿಗೆ ಹಿಂತಿರುಗಲು ಅನುಮತಿಸುತ್ತದೆ. C-ಲೈಬ್ರರಿ ಕಾಸ್ಮೊಪಾಲಿಟನ್, Linux ಗಾಗಿ ಪ್ರತಿಜ್ಞೆ ಪ್ರತ್ಯೇಕತೆಯ ಕಾರ್ಯವಿಧಾನದ ಪೋರ್ಟ್ ಮತ್ತು Redbean ಯುನಿವರ್ಸಲ್ ಎಕ್ಸಿಕ್ಯೂಟಬಲ್ ಫೈಲ್ ಸಿಸ್ಟಮ್‌ನಂತಹ ಬೆಳವಣಿಗೆಗಳ ಲೇಖಕರಿಂದ ಯೋಜನೆಯನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ.

ಬ್ಲಿಂಕ್‌ನ ಮೊದಲ ಬಿಡುಗಡೆ, ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆಯ x86-64 ಎಮ್ಯುಲೇಟರ್


ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ