- ΠΠ±ΡΠΈΠ΅ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ
- Core team ΠΏΡΠΈΠ½ΡΠ» ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π³ΡΡΠΏΠΏΡ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΡΠ΅ΠΊΡΡΠΎΠ² ΠΈΠ· ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ Subversion Π² Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Git.
- ΠΡΠΎΠ²Π΅Π΄Π΅Π½ΠΎ fuzzing-ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΄ΡΠ° FreeBSD Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΡ
syzkaller ΠΈ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ ΡΡΠ΄ Π²ΡΡΠ²Π»Π΅Π½Π½ΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΡΠΎΡΠ»ΠΎΠΉΠΊΠ° Π΄Π»Ρ fuzzing-ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°Ρ Ρ 64-ΡΠ°Π·ΡΡΠ΄Π½ΡΠΌ ΡΠ΄ΡΠΎΠΌ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π·Π°ΠΏΡΡΠΊΠ° syzkaller Π² Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Π°Ρ Π½Π° Π±Π°Π·Π΅ bhyve. ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΡΠ°ΠΏΠ΅ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΠΎΡ Π²Π°Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ², Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ LLVM sanitizer Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠ΄ΡΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ netdump Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ Π΄Π°ΠΌΠΏΠΎΠ² ΡΠ΄ΡΠ° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΡΠ°Ρ ΠΎΠ² ΠΏΡΠΈ fuzzing-ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Ρ.ΠΏ. - ΠΠ°ΡΠ°Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ zlib Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ΄ΡΠ°. ΠΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΡΠ΄ΡΠ° ΠΊ ΠΊΠΎΠ΄Ρ zlib ΠΊΠ°ΡΠ°Π»ΠΎΠ³ contrib/zlib ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ Π² sys/contrib/zlib, ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» crc.h Π΄Π»Ρ ΠΈΠ·Π±Π΅ΠΆΠ°Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ° Ρ zlib/crc.h. ΠΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΡΠΈΡΡΠΊΠ° ΡΡΡΠ°ΡΠ΅Π²ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠ³ΠΎ ΠΎΡ zlib ΠΈ inflate. ΠΠ°Π»Π΅Π΅ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ΄ΡΠ° ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠΎ ΡΡΠ°ΡΡΠΌ ΠΈ Π½ΠΎΠ²ΡΠΌ zlib Π΄Π»Ρ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° Π½Π° Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ ΡΠΆΠ°ΡΠΈΠ΅;
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ° ΡΠΌΡΠ»ΡΡΠΈΠΈ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Linux (Linuxulator). Π Π°ΡΡΠΈΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² Linux, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΡΠΈΠ»ΠΈΡΠ° strace. Π ΠΏΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ linux-c7-strace, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Linux Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΡ truss ΠΈ ktrace, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΌΠΎΠ³ΡΡ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ Linux ΡΠ»Π°Π³ΠΈ ΠΈ ΡΡΡΡΠΊΡΡΡΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ linux-ltp Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Linux Test Project ΠΈ ΡΠ΅ΡΠ΅Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Π½Π½ΡΠΌΠΈ Ρ Π½ΠΎΠ²ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ glibc;
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ ΡΠΈΡΡΠΊΠΈ ΠΏΡΠΈΠ²ΡΠ·ΠΎΠΊ ΠΊ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΡΡΠ°Π½ΠΈΡΠ°ΠΌ ΠΏΠ°ΠΌΡΡΠΈ (delayed invalidation) Π² ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ΅ pmap ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Π° Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π³ΠΎ Π±Π΅Π· Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΎΠΊ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΡΠ΅ΡΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΡΡ ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ unmap;
- ΠΠ·ΠΌΠ΅Π½ΡΠ½ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ vnode Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π° execve(), ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ ΡΠ°Π±ΠΎΡΡ ΠΏΡΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ execve() Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ°ΠΉΠ»Π° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠ±ΠΎΡΠΊΠΈ Ρ ΡΠ°ΡΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°);
- ΠΠ΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ
- Π Π³ΠΈΠΏΠ΅ΡΠ²ΠΈΠ·ΠΎΡΠ΅ bhyve ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΎ ΡΡΠΎΠ²Π΅ΡΡΠ΅Π½ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Live-ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Π³ΠΎΡΡΠ΅Π²ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ ΠΎΡΡΠ° Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ Save/Restore, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΉ Π·Π°ΠΌΠΎΡΠΎΠ·ΠΈΡΡ Π³ΠΎΡΡΠ΅Π²ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² ΡΠ°ΠΉΠ», Π° Π·Π°ΡΠ΅ΠΌ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.
- Π§Π΅ΡΠ΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ libvdsk Π² bhyve Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΠΈΡΠΊΠΎΠ²ΡΡ
ΠΎΠ±ΡΠ°Π·ΠΎΠ² Π² ΡΠΎΡΠΌΠ°ΡΠ΅ QCOW2. ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ bhyve, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Π° Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π° Π±Π°Π·Π΅ libvdsk. ΠΠ° ΠΎΡΡΡΡΠ½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π² libvdsk ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Π½ΠΎΠ²ΡΡ ΡΠΎΡΠΌΠ°ΡΠΎΠ², ΡΠ»ΡΡΡΠ΅Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Copy-On-Write. ΠΠ· ΠΎΡΡΠ°Π²ΡΠΈΡ ΡΡ Π·Π°Π΄Π°Ρ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ libvdsk Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΎΡΡΠ°Π² bhyve; - Π ΠΏΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ±ΠΎΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΡΠ°ΡΠΈΠΊΠ΅
Maltrail , ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π»ΠΎΠ²ΡΡΠΊΠΈ Π΄Π»Ρ Π²ΡΠ΅Π΄ΠΎΠ½ΠΎΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π²ΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² (ΠΏΡΠΎΠ²Π΅ΡΡΡΡΡΡ IP ΠΈ Π΄ΠΎΠΌΠ΅Π½Ρ ΠΈΠ· ΡΡΡΠ½ΡΡ ΡΠΏΠΈΡΠΊΠΎΠ²) ΠΈ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΎ Π²ΡΡΠ²Π»Π΅Π½Π½ΠΎΠΉ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ Π½Π° ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π΄Π»Ρ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° ΠΏΠΎΠΏΡΡΠΎΠΊ ΡΠΎΠ²Π΅ΡΡΠ΅Π½ΠΈΡ Π°ΡΠ°ΠΊ; - Π ΠΏΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌ Π΄Π»Ρ Π²ΡΡΠ²Π»Π΅Π½ΠΈΡ Π°ΡΠ°ΠΊ, Π°Π½Π°Π»ΠΈΠ·Π° Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²
Wazuh (ΡΠΎΡΠΊ Ossec Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΡELK-Stack );
- Π‘Π΅ΡΠ΅Π²Π°Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°
- ΠΠ±Π½ΠΎΠ²Π»ΡΠ½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ena Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ Π²ΡΠΎΡΠΎΠ³ΠΎ ΠΏΠΎΠΊΠΎΠ»Π΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π²ΡΡ Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ² ENAv2 (Elastic Network Adapter), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅ Elastic Compute Cloud (EC2) Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ·Π»Π°ΠΌΠΈ EC2 Π½Π° ΡΠΊΠΎΡΠΎΡΡΡΡ Π΄ΠΎ 25 Gb/s. Π Π΄ΡΠ°ΠΉΠ²Π΅Ρ ena Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° NETMAP.
- ΠΠΎ FreeBSD HEAD ΠΏΡΠΈΠ½ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΠ΅ΠΊ MMC/SD, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ΅ CAM ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ SDIO (Secure Digital I/O). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, SDIO ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎ WiFi ΠΈ Bluetooth ΠΌΠΎΠ΄ΡΠ»ΡΡ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΏΠ»Π°Ρ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ Raspberry Pi 3. ΠΠΎΠ²ΡΠΉ ΡΡΠ΅ΠΊ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ CAM Π΄Π»Ρ ΠΎΡΠΏΡΠ°Π²ΠΊΠΈ SD-ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΡΠΎ Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ², ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ°ΡΠ°Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² Π΄Π»Ρ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΡΡ ΡΠΈΠΏΠΎΠ² Broadcom, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ FullMAC (Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠΈΠΏΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ ΡΠ²ΠΎΠ΅ΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ ΡΠ²ΠΎΠ΅Π³ΠΎ Π±Π΅ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ° 802.11);
- ΠΠ΅Π΄ΡΡΡΡ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ NFSv4.2 (RFC-7862) Π΄Π»Ρ FreeBSD. Π Π½ΠΎΠ²ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ NFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ posix_fadvise, posix_fallocate, ΡΠ΅ΠΆΠΈΠΌΠΎΠ² SEEKHOLE/SEEKDATA Π² lseek, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΡΡΠ΅ΠΉ ΡΠ°ΠΉΠ»Π° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ (Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ).
Π Π½Π°ΡΡΠΎΡΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ Π΄Π»Ρ FreeBSD ΡΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π±Π°Π·ΠΎΠ²Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ LayoutError, IOAdvise, Allocate ΠΈ Copy. ΠΡΡΠ°ΡΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Seek, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ lseek(SEEKHOLE/SEEKDATA) Ρ NFS. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ NFSv4.2 ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² FreeBSD 13;
- Π‘ΠΈΡΡΠ΅ΠΌΡ Ρ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ
- ΠΠ»ΠΈΠ·ΠΈΡΡΡ ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎ ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ FUSE (File system in USErspace), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅ΠΉ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΡΡΡΠ°ΡΠ΅Π» ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ. Π ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΠΎ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΠ·Π°ΡΠΈΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° FUSE 7.23 (ΡΠ°Π½Π΅Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π»Π°ΡΡ Π²Π΅ΡΡΠΈΡ 7.8, Π²ΡΠΏΡΡΠ΅Π½Π½Π°Ρ 11 Π»Π΅Ρ Π½Π°Π·Π°Π΄), Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΠ° Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΄ΡΠ° («-o default_permissions»), Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π²ΡΠ·ΠΎΠ²Ρ VOP_MKNOD, VOP_BMAP ΠΈ VOP_ADVLOCK, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΡΠ΅ΡΡΠ²Π°Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ FUSE, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΡ ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ unix-ΡΠΎΠΊΠ΅ΡΠΎΠ² Π² fusefs, ΠΏΠΎΡΠ²ΠΈΠ»Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ kqueue Π΄Π»Ρ /dev/fuse, ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΌΠΎΠ½ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· «mount -u», Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΊΡΠΏΠΎΡΡΠ° fusefs ΡΠ΅ΡΠ΅Π· NFS, ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΡΡΡ RLIMIT_FSIZE, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ ΡΠ»Π°Π³ΠΈ FOPEN_KEEP_CACHE ΠΈ FUSE_ASYNC_READ, Π²Π½Π΅ΡΠ΅Π½Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠ»ΡΡΡΠ΅Π½Π° ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ;
- Π ΠΊΠΎΠ΄ Π²ΡΡΠ΅ΡΠ½Π΅Π½ΠΈΡ ΡΡΡΠ°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ Π² ΡΠ°Π·Π΄Π΅Π» ΠΏΠΎΠ΄ΠΊΠ°ΡΠΊΠΈ (swap pager) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ BIO_DELETE, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ TRIM Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΎΠ² Ρ SSD-Π½Π°ΠΊΠΎΠΏΠΈΡΠ΅Π»Π΅ΠΉ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΊΠ° ΠΈΡ ΡΠ»ΡΠΆΠ±Ρ.
- ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ
- ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ARM64 SoC Broadcom BCM5871X Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°ΠΌΠΈ ARMv8 Cortex-A57, Π½Π°ΡΠ΅Π»Π΅Π½Π½ΡΠΌΠΈ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΎΡΠ°Ρ , ΡΠ»ΡΠ·Π°Ρ ΠΈ ΡΠ΅ΡΠ΅Π²ΡΡ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ°Ρ . ΠΠ° ΠΎΡΡΡΡΠ½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ ΡΠ»ΡΡΡΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ ΠΈ Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠΈΠ½ iProc PCIe, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° BNXT Ethernet, Π²Π΅Π΄ΡΡΡΡ ΡΠ°Π±ΠΎΡΠ° ΠΏΠΎ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΡΠΈΠΏΡΠΎΠ΄Π²ΠΈΠΆΠΊΠ° Π΄Π»Ρ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ IPsec. ΠΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π° Π² Π²Π΅ΡΠΊΡ HEAD ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ³ΠΎΠ΄ΠΈΠΈ;
- ΠΠ°ΡΠ°Π»Π°ΡΡ ΡΠ°Π±ΠΎΡΠ° Π½Π°Π΄ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ 64-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠ³ΠΎ SoC NXP LS1046A Π½Π° Π±Π°Π·Π΅ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ° ARMv8 Cortex-A72 Ρ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Π΄Π²ΠΈΠΆΠΊΠΎΠΌ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², 10 Gb Ethernet, PCIe 3.0, SATA 3.0 ΠΈ USB 3.0. Π£ΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ (multi-user SMP) ΠΈ SATA 3.0. Π ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° USB 3.0, SD/MMC ΠΈ I2C. Π ΠΏΠ»Π°Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Ethernet, GPIO ΠΈ QSPI. ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π² Π²Π΅ΡΠΊΡ HEAD ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ Π² 4 ΠΊΠ²Π°ΡΡΠ°Π»Π΅ 2019 Π³ΠΎΠ΄Π°.
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΡ mlx5en ΠΈ mlx5ib Π΄Π»Ρ Ethernet- ΠΈ InfiniBand-Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ² Mellanox ConnectX-4 [Lx], ConnectX-5 [Ex] ΠΈ ConnectX-6 [Dx]. ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ² Mellanox Socket Direct (ConnectX-6), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΡΠΎΠΏΡΡΠΊΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π΄ΠΎ 200Gb/s Π½Π° ΡΠΈΠ½Π΅ PCIe Gen 3.0. ΠΠ»Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΠ΄Π΅ΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² «BlueField» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° RShim. Π ΠΏΠΎΡΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΠ°ΠΊΠ΅Ρ mstflint Ρ Π½Π°Π±ΠΎΡΠΎΠΌ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠΈΠ»ΠΈΡ Π΄Π»Ρ Π°Π΄Π°ΠΏΡΠ΅ΡΠΎΠ² Mellanox;
- ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΡΡΠΎΠ²
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ°. ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΠΎΡΡΠΈΡΠΎΠ²Π½ΠΈΠ΅ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° drm.ko (Direct Rendering Manager) ΠΈΠ· ΡΠ΄ΡΠ° Linux 5.0. ΠΠ°Π½Π½ΡΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² Π΄Π΅ΡΠ΅Π²ΠΎ ΠΏΠΎΡΡΠΎΠ² ΠΊΠ°ΠΊ graphics/drm-devel-kmod. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π΄ΡΠ°ΠΉΠ²Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½ΡΠΉ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Linux KPI Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ DRM API ΡΠ΄ΡΠ° Linux, Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ FreeBSD CURRENT. ΠΠ· Linux ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ drm-Π΄ΡΠ°ΠΉΠ²Π΅Ρ vboxvideo.ko Π΄Π»Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ GPU VirtualBox. ΠΠ°ΠΊΠ΅Ρ Mesa ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½ Π΄ΠΎ Π²ΡΠΏΡΡΠΊΠ° 18.3.2 ΠΈ ΠΏΠ΅ΡΠ΅Π²Π΅Π΄ΡΠ½ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ LLVM ΠΈΠ· ΠΏΠΎΡΡΠ° devel/llvm80 Π²ΠΌΠ΅ΡΡΠΎ devel/llvm60.
- ΠΠ΅ΡΠ΅Π²ΠΎ ΠΏΠΎΡΡΠΎΠ² FreeBSD ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π»ΠΎ ΡΡΠ±Π΅ΠΆ Π² 37000 ΠΏΠΎΡΡΠΎΠ², ΡΠΈΡΠ»ΠΎ Π½Π΅Π·Π°ΠΊΡΡΡΡΡ PR Π΄Π΅ΡΠΆΠΈΡΡΡ Π½Π° ΠΎΡΠΌΠ΅ΡΠΊΠ΅ Π² 2146. ΠΠ° ΠΎΡΡΡΡΠ½ΡΠΉ ΠΏΠ΅ΡΠΈΠΎΠ΄ Π²Π½Π΅ΡΠ΅Π½ΠΎ 7837 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΡ 172 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². ΠΡΠ°Π²Π° ΠΊΠΎΠΌΠΌΠΈΡΡΠ΅ΡΠ° ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΡΠΈ Π½ΠΎΠ²ΡΡ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠ°. Π‘ΡΠ΅Π΄ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Π²Π΅ΡΡΠΈΠΉ Π² ΠΏΠΎΡΡΠ°Ρ ΠΎΡΠΌΠ΅ΡΠ°ΡΡΡΡ: MySQL 5.7, Python 3.6, Ruby 2.5, Samba 4.8, Julia 1.0, Firefox 68.0, Chromium 75.0.3770.100. ΠΡΠ΅ ΠΏΠΎΡΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Go ΠΏΠ΅ΡΠ΅Π²Π΅Π΄Π΅Π½Ρ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ»Π°Π³Π° «USES=go». ΠΠΎΠ±Π°Π²Π»Π΅Π½ ΡΠ»Π°Π³ «USES=cabal» Π΄Π»Ρ ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅ΡΠ° Cabal, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠ³ΠΎ Π΄Π»Ρ ΠΊΠΎΠ΄Π° Π½Π° Haskell. ΠΠΊΠ»ΡΡΠ΅Π½ ΡΡΡΠΎΠ³ΠΈΠΉ ΡΠ΅ΠΆΠΈΠΌ Π·Π°ΡΠΈΡΡ ΡΡΠ΅ΠΊΠ°. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π° Π²Π΅ΡΡΠΈΡ Python 3.6 Π²ΠΌΠ΅ΡΡΠΎ 2.7.
- ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½ ΡΠ΅Π»ΠΈΠ· ΡΡΠΈΠ»ΠΈΡΡ
nsysctl 1.0 , ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡΠ΅ΠΉ Π°Π½Π°Π»ΠΎΠ³ /sbin/sysctl, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉlibxo Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΎΠΏΡΠΈΠΉ. Nsysctl ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ Π΄Π»Ρ Π½Π°Π³Π»ΡΠ΄Π½ΠΎΠ³ΠΎ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΡ Π·Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ sysctl ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ Π² ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π²ΡΠ²ΠΎΠ΄ Π² ΡΠΎΡΠΌΠ°ΡΠ°Ρ XML, JSON ΠΈ HTML;
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru