O le uluai faʻasalalauga taua o le poloketi Blink ua faʻasalalau, faʻatupuina se emulator o le x86-64 processors e mafai ai ona e tamoʻe faʻamalosi ma faʻamalosia le faʻaogaina o Linux i totonu o se masini komepiuta ma se faʻataʻitaʻiga faʻaogaina. Faatasi ai ma Blink, o polokalame Linux ua tuufaatasia mo le x86-64 fausaga e mafai ona faʻatautaia i luga o isi POSIX-compatible operating system (macOS, FreeBSD, NetBSD, OpenBSD, Cygwin) ma luga o masini ma isi mea faʻapipiʻi fausaga (x86, ARM, RISC-V, MIPS , PowerPC, s390x). O le fa'ailoga o le poloketi o lo'o tusia i le gagana C (ANSI C11) ma fa'asoa i lalo ole laisene ISC. O fa'alagolago, na'o le libc (POSIX.1-2017) e mana'omia.
I tulaga o galuega, Blink e tutusa ma le qemu-x86_64 poloaiga, ae e ese mai le QEMU i lona mamanu sili atu ona faʻatusatusa ma faʻateleina le faʻatinoga. Mo se faʻataʻitaʻiga, o le Blink executable e naʻo le 221 KB e naʻo le 115 KB (faʻatasi ai ma le faʻaogaina o le fale - 4 KB) nai lo le 86 MB mo qemu-x64_XNUMX, ma i nisi o suʻega, e pei o le taʻavale i le GCC emulator ma le faʻatinoina o galuega faʻa-matematika, e sili atu le lelei. QEMU e tusa ma le lua taimi.
Ina ia faʻamautinoa le maualuga o le faʻatinoga, o loʻo faʻaaogaina se JIT compiler, lea e faʻaliliu ai faʻamatalaga faʻamatalaga i luga o le lele i totonu o le masini numera mo le faʻatulagaina o faʻatonuga. E lagolagoina e le emulator le faʻalauiloaina tuusaʻo o faila faʻapipiʻi i le ELF, PE (Portable Executables) ma le pini (Flat executable) formats, tuʻufaʻatasia ma faletusi C masani Cosmopolitan, Glibc ma Musl. Lagolago faʻapipiʻi mo le 180 Linux system calls ma faʻataʻitaʻiga o le tusa ma le 600 x86 faʻatonuga faʻatonu e aofia ai i8086, i386, SSE2, x86_64, SSE3, SSSE3, CLMUL, POPCNT, ADX, BMI2 (MULX, PDEP, PEXT), X87RD, RSEEDDRND seti fa'atonuga ma le RDTSCP.
E le gata i lea, e faʻavae i luga ole Blink, o loʻo atinaʻe le faʻaogaina o moli, lea e maua ai se atinaʻe mo le vaʻaia o le alualu i luma o le faʻatinoina o le polokalame ma le suʻeina o mea o loʻo manatua. E mafai ona fa'aogaina le fa'aoga e fai ma fa'amaufa'ailoga e lagolagoina ai le fa'afoliga-debugging mode ma fa'atagaina oe e toe fo'i i tua i le tala fa'asolopito ma toe fo'i i se mea na fa'atino muamua. O le poloketi na fausia e le tusitala o ia atinaʻe e pei o le Cosmopolitan C faletusi, o se taulaga o le faʻaogaina o le tuʻufua mo Linux ma le Redbean universal executable file system.

puna: opennet.ru
