ืืื ืืืคืชืืื ืืืืื
ืคืืชืืื LLVM ืฉืืืฉื ืืืืจืื ื ืืืกืืก ืืื ืืืช ืืื ืืืจืืื ืฉื ืืืื. ืืจืขืืื ืืืจืืื ืืื ืฉืื ืืืื ืืืจ ืืชืืืื ืืคืชื ืืช ื-libc ืฉืื, ืื ืืื ืื ืืคืชื ืืื ืืช ืืืขืจืืช ืฉืื ืืืกืืจืช LLVM, ืฉืืืจ ืืฆืืขื ืกืคืจืืื ืกืื ืืจืืืช ืืฉืื ืขืืืจ C++ (Libc++), ืืื ืืื ืื ืกืคืจืืื ืกืื ืืจืืืช ืืืื ืขืืืจ C (libc).
ืืคืืชืื ืืชืืื ื ืืืชืืฆืข ืืฉืืืื, ืืืืืื ืืืืจืื ืืช ืืคืื ืงืฆืืื ืืืืช. ืืืคืฉืจืืืืช ืืจืืฉืื ืืช ืืืฆืขืืช ืืขืฆื ืืฉืืื ืืื ืืืคืืืงืฆืื ืืืขืจืืช Libc, ืืื ื ืืืฉืืื ืชืืื ืืช ืฉืืจื ืืืฉืื. ืืืืจ ืืืขื ืืจืื ืืกืืืืช ืฉื ืคืื ืงืฆืืื ืืืืช, ื-Libc ืืืืฉ ืืืื ืืฉืืฉ ืืชืืืืฃ ืืื ืืืขืจืืช Libc. ืื ื ืืชืื ื ืื ืืืชืืื ืขื ืชืืืื ืืืจืืืืงืืืจืช x86-64, ืืื ืืงืก ืืงืืฉืืจ ืกืืื (ืืขืื ื ืืื ืืืช, ืงืืฉืืจ ืืืจืืืืงืืืจืืช ื ืืกืคืืช ืืืืืขื ืืืืคื ืืฉื ื).
ืืคืจืืืงื ืขืืืื ืืฉืื ืืคืืชืื ืืจืืฉืื ื, ืื ืืืจ ืืืืืจื ืืืจืืช ืืกืืกืืืช:
- ืืืืืืจืืืช ืืคืืชืื ืืืชืื ืืคืืืืกืืคืื ืฉื ืืกืคืงืช ืกืคืจืืื ืืจืขืื ืืช ืืื ืกื ืืื ืืืืื;
- ืชืืืื ืืงืืฉืืจ ืกืืื ืืืฆืืื
PIE (ืงืืืฆื ืืคืขืื ืืืชื ืชืืืืื ืืืืงืื) ืืืื PIE. ืืชื CRT (ืืื ืจืืฆื C) ืืืืขื PIE ืขืืืจ ืงืืืฆื ืืคืขืื ืืงืืฉืจืื ืกืืืืช; - ืชืืืื ืืจืื ืืคืื ืงืฆืืืช ืืกืื ืืจืืืืช ืฉื ืกืคืจืืืช C, ืขื ืชืืกืคืืช POSIX ืืืื ืืจืืืืช ืกืคืฆืืคืืืช ืืืขืจืืช ืื ืืจืฉืืช ืขื ืืื ืืืฉืืืื ืงืืืืื;
- ืืืืืจ ืขื ืืจืืืืช ืกืคืฆืืคืืืช ืืกืคืง ืืืืกืฃ ืืืชื ืจืง ืืืฉืจ ืืฉ ืฆืืจื. ืืืื ืชืืืื ืืืจืืืืช ืฉื ืฆื ืฉืืืฉื, ืืืฆืข ืืืฉืชืืฉ ืืืืฉื ืฉื ืืคืจืืืงืืื Clang ื-libc++;
- ืฉืืืืฉ ืืฉืืืืช ืขืืืื ืืืืืฆืืช ืืคืืชืื ืืืืฆืขืืช ืขืจืืช ืืืืื ืฉื LLVM, ืืืื ืฉืืืืฉ ืืืืืจ ืืืืื ืืืืืงืืช ืืืืฉืืฉ ืืืจ ืืืืชืืื.
ืืื ืืืคืชืื LLVM ืืคืขืืืื
ืื ืืขืชื
- ืคืืชืื ืืชืืืืงื ืฉื Libc ื ืืื, ืชืืื ืืืืืืชื ืืื ืืฉืืื ืงืฉื ืืืื. ืืืขืื ืืื ืื ืืืืืช ืืงืื, ืืื ืืืงืคืื ืขื ืืชื ืืืืช ื ืืื ื ืืงืฉืืื ืืืืฉืื ืืืฉืงืื, ืชืื ืืชืืฉืืืช ืืฉืืืช ืืืคืืืงืฆืืืช ืืขืฆืืื ืฉื ืืชืื ืื ืคืขื ื-C/C++, ืืื ืืืคืืืงืฆืืืช ืืฉืคืืช ืืืจืืช, ืฉืืื ืืจืืฆื ืฉืืื ื ืืฆื ืืฉืืืืฉ ืืืช Libc. ืืืฉื ืืืืชืืช ืืืื ืืงืืช ืืืฉืืื ืืช ืื ืืืื ืกืื ืจืง ืชืืืื ืืื ืฉืืจืื ืชืืื ืืืช ืงืืืืืช ืื ืืืืื ืืขืืื ืขื Libc, ืืื ืื ืคืจืืืงื ืืื ืื ืืขื ืืื ืืช ืืฆืจืื ืื.
- ืคืืชืื ืชืืืืื ืืืื ืืืจืืก ืืช Libc, ืืื ืืืืืฃ ืืืชื ืืฉืืืืฉ ื ืจืื, ืืืชืืฆืื ืืื ืืฆืืจื ืืืืกืืฃ ืคืจืืฆืืช ืืื ืืืืืื ืชืืืืืช ืืืคืืืงืฆืืืช. ืคืืชืื ืืืกืืช ืคืจืืืงื ืงืื ืคืชืื ืชืืืืื ืืืฉืื ืืช ืืฉืืืื ืืืืืื ืืฆืจืืื ืืืคืชืจืื ืืช ืฉื ืืืืจื, ืชืื ืคืืืขื ืืืื ืืจืกืื ืฉื ืืงืืืื. ืืืืืื, ืื ืืชื ืืืื ืืขืื ืฉื ืืจืืช ืขื ืืื ืืื ืืชืืื ื ืืืจืช, ืืคืืชืื ืืืืงืจ ืงื ืืืชืจ ืืืืืื ืฉ-Libc ืชืืื ืืืื ืื ืืืฉืจ ืืชืงื ืืช ืืืื ืขืฆืื. ืืคื ืืฉืชืืฉืช ืืืืื BSD libc ืืืืจืืช ืืื, ืืืืื ืืฉืชืืฉืช ืืืืื ืืืืกื ืืคืืงืกืื. ืื ืืกืืื ืฉื ืืคืชื musl ืืื ืฉืคื ื ืืืื ืืขืืงืจ ืขื ืืื ืขืืจืื ืืื ืืืืจืืจ ื ืืฉืื ืจืืฉืื, ืื ืืขืืื ืื ืคื ื ืืืื ืืืืจืืจ ืคืจืืื ืืื ืืื ืืคื ื ืืืฆืืข ืฉืื ืืืื ืืกืจื ืชืืขืืช ืืืคืจืืขืื ืืกื ืืคืื.
- ืืืขืืจ ืืื ื-ืชืจืืืช ืืคืืชืื libc ืืืชืืงืืืช ืืกืื ืืจืืื ืืื ืขื ืืกืืื ืืื ืืฉืืืื ืืื ืืืืืืืืืืช, ืื ืฉืื ืืข ืืคืชืื ืืืฉืืืื ืืืฉืชืืฉ ืืชืงื ืื ืืืงืื ืืืืืช ืงืฉืืจืื ืืืืฉืืืื ืกืคืฆืืคืืื. ืืื ืืืืจ ื-musl ืืชื ืื ืืืืืืช ืกืคืจืืืชื ื-LLVM, ืืื ื ืื ืคืืชืื libc ืืชืื LLVM, ืฉืื ืืืงืจื ืื ืืืืคื ืืขืฆืืื ืฉื libc ืืืื ืืืืฉืื ืืกืืื ืืืคื ืืคืชืจืื ืืืืจืื ืจืืฉืื ื ืขืืืจ LLVM, ืืื ืืฉืืจ ืืืคืืื ืืคืชืจืื ืกืื ื'.
ืืงืืจ: OpenNet.ru