cproc - ืึท ื ื™ื™ึทืข ืกืึธืœื™ื“ ืงืึทืžืคึผื™ื™ืœืขืจ ืคึฟืึทืจ ื“ื™ C ืฉืคึผืจืึทืš

Michael Forney, ื“ืขื•ื•ืขืœืึธืคึผืขืจ ืคื•ืŸ ื“ื™ swc ืงืึธืžืคึผืึธืกื™ื˜ืข ืกืขืจื•ื•ืขืจ ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ Wayland ืคึผืจืึธื˜ืึธืงืึธืœ, ืื™ื– ื“ืขื•ื•ืขืœืึธืคึผื™ื ื’ ืึท ื ื™ื™ึทืข cproc ืงืึทืžืคึผื™ื™ืœืขืจ ื•ื•ืึธืก ืฉื˜ื™ืฆื˜ ื“ื™ C11 ื ืึธืจืžืึทืœ ืื•ืŸ ืขื˜ืœืขื›ืข GNU ื™ืงืกื˜ืขื ืฉืึทื ื–. ืฆื• ื“ื–ืฉืขื ืขืจื™ื™ื˜ ืึธืคึผื˜ื™ืžื™ื–ืขื“ ืขืงืกืขืงื•ื˜ืึทื‘ืœืข ื˜ืขืงืขืก, ื“ืขืจ ืงืึทืžืคึผื™ื™ืœืขืจ ื ื™ืฆื˜ ื“ื™ QBE ืคึผืจื•ื™ืขืงื˜ ื•ื•ื™ ืึท ื‘ืึทืงืขื ื“. ื“ืขืจ ืงืึทืžืคึผื™ื™ืœืขืจ ืงืึธื“ ืื™ื– ื’ืขืฉืจื™ื‘ืŸ ืื™ืŸ C ืื•ืŸ ืื™ื– ืคื•ื ืื ื“ืขืจื’ืขื˜ื™ื™ืœื˜ ืื•ื ื˜ืขืจ ื“ืขืจ ืคืจื™ื™ ISC ื“ืขืจืœื•ื™ื‘ืขื ื™ืฉ.

ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืื™ื– ื ืึธืš ื ื™ืฉื˜ ื’ืึทื ืฅ, ืึธื‘ืขืจ ืื™ืŸ ื“ืขื ืงืจืึทื ื˜ ื‘ื™ื ืข ืฉื˜ื™ืฆืŸ ืคึฟืึทืจ ืจื•ื‘ึฟ ืคื•ืŸ ื“ื™ C11 ืกืคึผืขืกืึทืคืึทืงื™ื™ืฉืึทื ื– ืื™ื– ื™ืžืคึผืœืึทืžืขื ืึทื“. ืฆื•ื•ื™ืฉืŸ ื“ื™ ืื™ืฆื˜ ืึทื ืกืึทืคึผืึธืจื˜ื™ื“ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ ื–ืขื ืขืŸ ื•ื•ืขืจื™ืึทื‘ืึทืœ-ืœืขื ื’ ืขืจื™ื™ื–, ืึท ืคึผืจืขืคึผืจืึธืกืขืกืกืึธืจ, ื“ื•ืจ ืคื•ืŸ PIE (ืคึผืึธื–ื™ืฆื™ืข ืคืจื™ื™ึท ืงืึธื“) ืขืงืกืขืงื•ื˜ืึทื‘ืœืข ื˜ืขืงืขืก ืื•ืŸ ืฉืขืจื“ ืœื™ื™ื‘ืจืขืจื™ื–, ื™ื ืœื™ื ืข ืึทืกืขืžื‘ืึทืœืœืขืจ, ื“ื™ "ืœืึทื ื’ ื˜ืึธืคึผืœ" ื˜ื™ืคึผ, ื“ื™ _Thread_local ืกืคึผืขืกื™ืคื™ืขืจ, ื•ื•ืึทืœืึทื˜ืึทืœ ื˜ื™ื™ืคึผืก, ืฉื˜ืจื™ืงืœ ืœื™ื˜ืขืจืึทืœื– ืžื™ื˜ ืึท ืคึผืจืขืคื™ืงืก (ืœ"...").

ืื™ืŸ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ืฆื™ื™ื˜, ื“ื™ ืงื™ื™ืคึผืึทื‘ื™ืœืึทื˜ื™ื– ืคื•ืŸ cproc ื–ืขื ืขืŸ ืฉื•ื™ืŸ ื’ืขื ื•ื’ ืฆื• ื‘ื•ื™ืขืŸ ื–ื™ืš, mcpp, gcc 4.7, binutils ืื•ืŸ ืื ื“ืขืจืข ื™ืงืขืจื“ื™ืง ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื–. ื“ืขืจ ืฉืœื™ืกืœ ื—ื™ืœื•ืง ืคื•ืŸ ืื ื“ืขืจืข ืงืึทืžืคึผื™ื™ืœืขืจื– ืื™ื– ื“ื™ ืคืึธืงื•ืก ืื•ื™ืฃ ืงืจื™ื™ื™ื˜ื™ื ื’ ืึท ืกืึธืœื™ื“ ืื•ืŸ ืึทื ืงืึทืžืคึผืœืึทืงื™ื™ื˜ื™ื“ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ. ืคึฟืึทืจ ื‘ื™ื™ึทืฉืคึผื™ืœ, ื“ื™ ื‘ืึทืงืขื ื“ ืึทืœืึทื•ื– ืื™ืจ ืฆื• ื“ื–ืฉืขื ืขืจื™ื™ื˜ ืงืึธื“ ื•ื•ืึธืก ื“ืขืžืึทื ืกื˜ืจื™ื™ืฅ 70% ืคื•ืŸ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ ืึทื•ื•ืึทื ืกื™ืจื˜ืข ืงืึธืžืคึผื™ืœืขืจืก, ืึธื‘ืขืจ ื“ื™ ืคืืจื’ืขืœื™ื™ื’ื˜ ืคืึทื ื’ืงืฉืึทื ืึทืœื™ื˜ื™ ืื™ื– ื™ืŸ 10% ืคื•ืŸ ื’ืจื•ื™ืก ืงืึธืžืคึผื™ืœืขืจืก. ืฉื˜ื™ืฆื˜ ื‘ื ื™ืŸ ืคึฟืึทืจ x86_64 ืื•ืŸ aarch64 ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื– ืื•ื™ืฃ ืœื™ื ื•ืงืก ืื•ืŸ ืคืจืขืขื‘ืกื“ ืคึผืœืึทื˜ืคืึธืจืžืก ืžื™ื˜ ื“ื™ Glibc, bsd libc ืื•ืŸ Musl ืœื™ื™ื‘ืจืขืจื™ื–.

ืžืงื•ืจ: opennet.ru

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’