ΠžΡ‚Ρ‡Ρ‘Ρ‚ ΠΎ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠΈ FreeBSD Π·Π° Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΊΠ²Π°Ρ€Ρ‚Π°Π» 2019 Π³ΠΎΠ΄Π°

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ ΠΎΡ‚Ρ‡Ρ‘Ρ‚ ΠΎ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° FreeBSD с июля ΠΏΠΎ ΡΠ΅Π½Ρ‚ΡΠ±Ρ€ΡŒ 2019 Π³ΠΎΠ΄Π°. Из ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ:

  • ΠžΠ±Ρ‰ΠΈΠ΅ ΠΈ систСмныС вопросы
    • Core team Π² ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅ ΠΎΠ΄ΠΎΠ±Ρ€ΠΈΠ» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² систСму ΠΊΠΎΠ΄Π°, поставляСмого ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ BSD с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ соглашСниСм ΠΎΠ± использовании ΠΏΠ°Ρ‚Π΅Π½Ρ‚ΠΎΠ² (BSD+Patent), Π½ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ Π² систСму ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° ΠΏΠΎΠ΄ Π΄Π°Π½Π½ΠΎΠΉ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ;
    • Π‘ΠΎΡΡ‚ΠΎΡΠ»ΠΎΡΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ засСданиС Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹, созданной для провСдСния ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ исходных тСкстов ΠΈΠ· Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ систСмы управлСния исходными тСкстами Subversion Π² Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡƒΡŽ систСму Git. Дискуссия ΠΏΠΎ цСлСсообразности ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎΠΊΠ° продолТаСтся ΠΈ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ вопросам Π΅Ρ‰Ρ‘ прСдстоит Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ с contrib/, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…ΡΡˆΠΈ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ ΠΊΠ°ΠΊ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ тСстированиС ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²);
    • Из NetBSD ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ инструмСнтарий KCSAN (Kernel Concurrency Sanitizer), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ состояний Π³ΠΎΠ½ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ ядра, выполняСмыми Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… CPU;
    • ВСдётся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ использованию встроСнного Π² Clang ассСмблСра (IAS) вмСсто ассСмблСра ΠΈΠ· GNU binutils;
    • Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° эмуляции окруТСния Linux (Linuxulator) Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ ARM64. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ систСмный Π²Ρ‹Π·ΠΎΠ² «renameat2 «. Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° strace Π΄ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π½Π° для диагностики ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π² исполняСмых Ρ„Π°ΠΉΠ»Π°Ρ… Linux, запускаСмых Π² Linuxulator. РСшСна ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ΠΌ сбоСв ΠΏΡ€ΠΈ связывании исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ² со cΠ²Π΅ΠΆΠ΅ΠΌ glibc. ΠŸΠΎΡ€Ρ‚Ρ‹ с Linux-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ для Linuxulator ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ Π΄ΠΎ CentOS 7.7;
    • Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Google Summer of Code студСнтами ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΡˆΠ΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ²: ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π° рСализация ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ (IPv4/IPv6) ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ping, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ инструмСнтарии для тСстирования мСТсСтСвых экранов ΠΈ выявлСния ошибок Π² ядрС (Kernel sanitizer), ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ mac_ipacl, написан ΠΊΠΎΠ΄ для сТатия Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ памяти ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ΠΈΡŽ процСсса сборки ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΎΡ‚ локальной установки;
    • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ fuzzing-Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ядра FreeBSD с использованиСм систСмы syzkaller. Π—Π° ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ syzkaller выявлСно ΠΈ устранСно Π±ΠΎΠ»Π΅Π΅ дСсяти ошибок. Для запуска syzkaller Π² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ… Π½Π° Π±Π°Π·Π΅ bhyve Π²Ρ‹Π΄Π΅Π»Π΅Π½ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ сСрвСр, Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ
      syzbot Π½Π°Π»Π°ΠΆΠ΅Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… подсистСм FreeBSD Π² инфраструктурС Google. ΠžΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ всСх ΠΊΡ€Π°Ρ…Π°Ρ… Π² сСрвис backtrace.io для упрощСния ΠΈΡ… Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°;

    • ВСдётся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ обновлСнию Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ zlib Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра.
      Бвязанный со сТатиСм ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ с zlib 1.0.4, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ 20 Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, Π½Π° Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΡƒΡŽ Π±Π°Π·Ρƒ zlib 1.2.11. Для ΡƒΠ½ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ доступа ΠΊ zlib Π² ядро Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ compress, compress2 ΠΈ uncompress. ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° PPP ΠΊΠΎΠ΄ ΠΈΠ· подсистСмы netgraph ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π½Π° использованиС систСмной Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ zlib, вмСсто собствСнной Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. На Π½ΠΎΠ²Ρ‹ΠΉ zlib Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ подсистСмы kern_ctf.c, opencryptodeflate, geom_uzip, subr_compressor,
      if_mxge, bxe updated ΠΈ ng_deflate;

    • РазвиваСтся Π½ΠΎΠ²Ρ‹ΠΉ интСрфСйс ядра sysctlinfo, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ элСмСнты Π² Π±Π°Π·Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² sysctl, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Π² Ρ„ΠΎΡ€ΠΌΠ΅ MIB (Management Information Base), ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ… Π² пространство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.
  • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
    • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ядра mac_ipacl, основанный Π½Π° TrustedBSD MAC Framework ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ систСму управлСния доступом ΠΊ настройкам сСтСвого стСка для jail-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ. НапримСр, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ mac_ipacl администратор хост-систСмы ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ root Π² jail-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ IP-адрСса ΠΈΠ»ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ подсСтСй для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… сСтСвых интСрфСйсов. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Π°Ρ систСма ΠΌΠ°Π½Π΄Π°Ρ‚Π½ΠΎΠ³ΠΎ управлСния доступом позволяСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ списки IP-адрСсов ΠΈ подсСтСй, допустимых для Jail, Π·Π°ΠΏΡ€Π΅Ρ‰Π°Ρ‚ΡŒ установку ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… IP ΠΈ подсСтСй Π² Jail ΠΈΠ»ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ смСну ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… сСтСвых интСрфСйсов;
    • Компания Intel ΠΏΠ΅Ρ€Π΅Π΄Π°Π»Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ ΠΏΠΎΡ€Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ стСка TPM 2.0 (Trusted Platform Module) для взаимодСйствия с Ρ‡ΠΈΠΏΠΎΠΌ для бСзопасных вычислСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ примСняСтся для Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΎΠΊ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° ОБ. ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ стСка прСдставлСны Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ² securtity/tpm2-tss, security/tpm2-tools ΠΈ security/tpm2-abrmd. ΠŸΠΎΡ€Ρ‚ tpm2-tss Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для использования API TPM2, tpm2-tools прСдоставляСт ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки для выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с TPM, Π° tpm2-abrmd содСрТит Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ процСсс с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² TPM Access Broker ΠΈ Resource Manager, ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… запросы ΠΎΡ‚ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ TPM ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ устройству. ΠšΡ€ΠΎΠΌΠ΅ Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π²ΠΎ FreeBSD TPM ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для усилСния бСзопасности Strongswan IPsec, SSH ΠΈ TLS Π·Π° счёт выполнСния криптографичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Ρ‡ΠΈΠΏΠ΅;
    • Π―Π΄Ρ€ΠΎ для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ amd64 Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Π·Π°ΡˆΠΈΡ‚Ρ‹ W^X (write XOR execute), ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‰Π΅ΠΉ, Ρ‡Ρ‚ΠΎ страницы памяти Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ доступны Π½Π° запись ΠΈ исполнСниС (ядро Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ исполняСмых страниц памяти для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Π° запись). Новый ΠΌΠ΅Ρ‚ΠΎΠ΄ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ядра Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π² Π²Π΅Ρ‚ΠΊΡƒ HEAD ΠΈ Π²ΠΎΠΉΠ΄Ρ‘Ρ‚ Π² состав выпусков FreeBSD 13.0 ΠΈ 12.2;
    • Для систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² mmap ΠΈ mprotect Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ макрос PROT_MAX(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ допустимый ΠΏΡ€ΠΈ дальнСйшСм ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Π½Π°Π±ΠΎΡ€ Ρ„Π»Π°Π³ΠΎΠ² ограничСния доступа (PROT_READ, PROT_WRITE, PROT_EXEC). ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ PROT_MAX() Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ области памяти Π² ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ исполняСмой ΠΈΠ»ΠΈ Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΠΏΠ°ΠΌΡΡ‚ΡŒ, которая Π½Π΅ допускаСт исполнСния, Π½ΠΎ Π² дальнСйшСм ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π° Π² исполняСмыС. НапримСр, ΠΎΠ±Π»Π°ΡΡ‚ΡŒ памяти ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Π° Π½Π° запись Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° врСмя динамичСского связывания ΠΈΠ»ΠΈ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π° JIT, Π½ΠΎ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ записи ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ΠΌ ΠΈ исполнСниСм, ΠΈ Π² дальнСйшСм, Π² случаС ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚Π°Ρ†ΠΈΠΈ, Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΉ Π½Π΅ смоТСт Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ запись для Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° памяти. Π’ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ PROT_MAX() Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ sysctl vm.imply_prot_max, ΠΏΡ€ΠΈ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€ допустимых Ρ„Π»Π°Π³ΠΎΠ² опрСдСляСтся Π½Π° основС исходных ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° mmap;
    • Для усилСния Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ эксплуатации уязвимостСй ΠΏΠΎΠΌΠΈΠΌΠΎ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ Ρ€Π°Π½Π΄ΠΎΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ адрСсного пространства (ASLR) ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π½Π΄ΠΎΠΌΠΈΠ°Ρ†ΠΈΠΈ смСщСний ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ, Π°Π΄Ρ€Π΅ΡΡƒΡŽΡ‰ΠΈΡ… Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€ стСка ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹Π΅ Π² стСкС структуры с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ± ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… для исполняСмых ΠΎΠ±Ρ€Π°Π·ΠΎΠ² Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ ELF;
    • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ нСбСзопасной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ gets ΠΈΠ· libc (начиная со стандарта C11 данная функция ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΈΠ· спСцификации) ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠ΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ², Π΅Ρ‰Ρ‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Π΄Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. ИзмСнСниС планируСтся ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ Π²ΠΎ FreeBSD 13.0;
    • Π—Π°ΠΏΡƒΡ‰Π΅Π½ ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ создания срСдств оркСстровки jail-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ Π½Π° основС Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° pot для создания ΠΈ экспортирования ΠΎΠ±Ρ€Π°Π·ΠΎΠ², Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ с Docker, ΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° nomad, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ интСрфСйс для динамичСского запуска ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² jail-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Π°Ρ модСль позволяСт Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ процСссы создания jail-ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ ΠΈ развёртывания Π² Π½ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Одной ΠΈΠ· Ρ†Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° являСтся прСдоставлСниС срСдства для манипуляции jail-Π°ΠΌΠΈ ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π² стилС Docker;
  • БистСмы хранСния ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы
    • Из NetBSD Π² ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ «makefs» пСрСнСсСна ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы FAT (msdosfs). ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ измСнСния ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π·Ρ‹ Π€Π‘ с FAT Π±Π΅Π· использования Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° md ΠΈ Π±Π΅Π· ΠΏΠΎΠ»Π½ΠΎΠΌΠΎΡ‡ΠΈΠΉ root;
    • Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° подсистСмы FUSE (File system in USErspace), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм Π² пространствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ поставляСмый Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ содСрТал ΠΌΠ½ΠΎΠ³ΠΎ ошибок ΠΈ Π±Ρ‹Π» основан Π½Π° вСрсии FUSE 7.8, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠΉ 11 Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄. Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° FUSE 7.23 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΊΠΎΠ΄ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€Π°Π² доступа Π½Π° сторонС ядра («-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, внСсСны Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π° организация ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ. Новый Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ Π²ΠΊΠ»ΡŽΡ‡Ρ‘Π½ Π² Π²Π΅Ρ‚ΠΊΠΈ head ΠΈ stable/12 (Π²ΠΎΡˆΡ‘Π» Π² состав FreeBSD 12.1);
    • ΠŸΠΎΡ‡Ρ‚ΠΈ Π΄ΠΎΠ²Π΅Π΄Π΅Π½Π° Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ NFSv4.2 (RFC-7862) для FreeBSD. ОсновноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π² ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Π±Ρ‹Π»ΠΎ ΡƒΠ΄Π΅Π»Π΅Π½ΠΎ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½Ρ‹ тСсты для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ совмСстимости с Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΈΠ· Linux, Π½ΠΎ Π΅Ρ‰Ρ‘ продолТаСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ сСрвСра pNFS с NFSv4.2. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅ ΠΊΠΎΠ΄ ΡƒΠΆΠ΅ рассматриваСтся ΠΊΠ°ΠΊ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² Π²Π΅Ρ‚ΠΊΠΈ FreeBSD head/current. Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии NFS Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ posix_fadvise, posix_fallocate, Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² SEEKHOLE/SEEKDATA Π² lseek, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ локального копирования частСй Ρ„Π°ΠΉΠ»Π° Π½Π° сСрвСрС (Π±Π΅Π· ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ);
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° оборудования
    • Π‘Ρ‚Π°Ρ€Ρ‚ΠΎΠ²Π°Π» ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹ FreeBSD Π½Π° Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠ°Ρ…. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ устройством, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Ρ‘Π½ Π°ΡƒΠ΄ΠΈΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ оборудования Π²ΠΎ FreeBSD, стал Π½ΠΎΡƒΡ‚Π±ΡƒΠΊ Lenovo X1 Carbon сСдьмого поколСния;
    • CheriBSD, ΠΎΡ‚Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚ FreeBSD для ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ процСссорной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ CHERI (Capability Hardware Enhanced RISC Instructions), ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΎ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ грядущСго процСссора ARM Morello, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ систСму управлСния доступом ΠΊ памяти CHERI, ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉΡΡ Π½Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Capsicum. Π§ΠΈΠΏ Morello ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΡŽΡ‚ Π²Ρ‹ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π² 2021 Π³ΠΎΠ΄Ρƒ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ CheriBSD Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ эталонного ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ° CHERI Π½Π° Π±Π°Π·Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ MIPS;
    • Π Π°ΡΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‡ΠΈΠΏΠΎΠ² RockChip RK3399, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΠ»Π°Ρ‚Π°Ρ… RockPro64 ΠΈ NanoPC-T4. НаиболСС сущСствСнным ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ стала ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° eMMC ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° для ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π² ΠΏΠ»Π°Ρ‚Π΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° eMMC;
    • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ARM64 SoC Broadcom BCM5871X с процСссорами ARMv8 Cortex-A57, Π½Π°Ρ†Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ Π½Π° использованиС Π² ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ‚ΠΎΡ€Π°Ρ…, ΡˆΠ»ΡŽΠ·Π°Ρ… ΠΈ сСтСвых Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°Ρ…. Π—Π° ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄
      Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° iProc PCIe ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… криптографичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ для ускорСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ IPsec.
      Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ ΠΊΠΎΠ΄Π° Π² Π²Π΅Ρ‚ΠΊΡƒ HEAD оТидаСтся Π² Ρ‡Π΅Ρ‚Π²Ρ‘Ρ€Ρ‚ΠΎΠΌ ΠΊΠ²Π°Ρ€Ρ‚Π°Π»Π΅;

    • ΠžΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ достиТСния Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΠΎΡ€Ρ‚Π° FreeBSD для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ powerpc64. ОсновноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ удСляСтся ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ качСствСнной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° систСмах с процСссорами IBM POWER8 ΠΈ POWER9, Π½ΠΎ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ поддСрТиваСтся Ρ€Π°Π±ΠΎΡ‚Π° ΠΈ Π½Π° старых Apple Power Mac, x500 ΠΈ Amiga A1222. Π’Π΅Ρ‚ΠΊΠ° powerpc*/12 ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ с gcc 4.2.1, Π° Π²Π΅Ρ‚ΠΊΠ° powerpc*/13 скоро Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π° Π½Π° llvm90. Из 33306 ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ собираСтся 30514;
    • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ FreeBSD для 64-разрядного SoC NXP LS1046A Π½Π° Π±Π°Π·Π΅ процСссора ARMv8 Cortex-A72 с ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π΄Π²ΠΈΠΆΠΊΠΎΠΌ ускорСния ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сСтСвых ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², 10 Gb Ethernet, PCIe 3.0, SATA 3.0 ΠΈ USB 3.0. Π—Π° ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° USB 3.0, SD/MMC, I2C, сСтСвого интСрфСйса DPAA ΠΈ GPIO. Π’ ΠΏΠ»Π°Π½Π°Ρ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° QSPI ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСтСвого интСрфСйса. Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π² Π²Π΅Ρ‚ΠΊΡƒ HEAD оТидаСтся Π² 4 ΠΊΠ²Π°Ρ€Ρ‚Π°Π»Π΅ 2019 Π³ΠΎΠ΄Π°;
    • ΠžΠ±Π½ΠΎΠ²Π»Ρ‘Π½ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ena с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ поколСния сСтСвых Π°Π΄Π°ΠΏΡ‚Π΅Ρ€ΠΎΠ² ENAv2 (Elastic Network Adapter), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² инфраструктурС Elastic Compute Cloud (EC2) для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ связи ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ·Π»Π°ΠΌΠΈ EC2 Π½Π° скоростях Π΄ΠΎ 25 Gb/s. Π’ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ ena Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΈ протСстирована ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° NETMAP, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° адаптация раскладки памяти для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅ΠΆΠΈΠΌΠ° LLQ Π² окруТСниях Amazon EC2 A1;
  • ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ систСма ΠΏΠΎΡ€Ρ‚ΠΎΠ²
    • ΠžΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ графичСского стСка ΠΈ ΠΏΠΎΡ€Ρ‚Ρ‹, связанныС с xorg. ΠŸΠΎΡ€Ρ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ USE_XORG ΠΈ XORG_CAT, ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π½Π° Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ USES вмСсто Π²Ρ‹Π·ΠΎΠ²Π° bsd.xorg.mk Ρ‡Π΅Ρ€Π΅Π· bsd.port.mk. ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Ρ„Π»Π°Π³ «USES=xorg» Π² make-Ρ„Π°ΠΉΠ»Π°Ρ…. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ XORG_CAT Π²Ρ‹Π΄Π΅Π»Π΅Π½Π° ΠΈΠ· bsd.xorg.mk ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ активируСтся Ρ„Π»Π°Π³ΠΎΠΌ «USES=xorg-cat». Π”ΠΎΠ±Π°Π²Π»Π΅Π½ инструмСнтарий для прямого формирования ΠΏΠΎΡ€Ρ‚ΠΎΠ² xorg ΠΈΠ· git-рСпозитория
      freedesktop.org, Ρ‡Ρ‚ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, позволяСт Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ€Ρ‚Ρ‹ для Π΅Ρ‰Ρ‘ Π½Π΅ Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… вСрсий. Π’ дальнСйшСм планируСтся ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ инструмСнтарий для использования сборочной систСмы meson вмСсто autotools для сборки ΠΏΠΎΡ€Ρ‚ΠΎΠ² xorg.

      Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ чисткС старых ΠΏΠΎΡ€Ρ‚ΠΎΠ² xorg, привязанных ΠΊ ΡƒΠΆΠ΅ Π½Π΅ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠ΄Π°Π»Ρ‘Π½ ΠΏΠΎΡ€Ρ‚ x11/libXp, Π° ΠΏΠΎΡ€Ρ‚Ρ‹ x11/Xxf86misc, x11-fonts/libXfontcache ΠΈ graphics/libGLw ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Ρ‹ Π² разряд ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ…;

    • ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Java 11 ΠΈ Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… выпусков Π²ΠΎ FreeBSD, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Π΅Ρ‚ΠΊΡƒ Java 8. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ для FreeBSD Π±Ρ‹Π»Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚Π°ΠΊΠΈΡ… Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй Java 11, ΠΊΠ°ΠΊ Java Flight Recorder, HotSpot Serviceability Agent, HotSpot Debugger, DTrace, Javac Server, Java Sound ΠΈ SCTP, Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΠ»Π°ΡΡŒ Π½Π° обСспСчСниС прохоТдСния всСх тСстов Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ. Число сбоСв ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ тСстов сниТСно с 50 Π΄ΠΎ 2;
    • Π Π°Π±ΠΎΡ‡ΠΈΠΉ стол KDE Plasma, KDE Frameworks, KDE Applications ΠΈ Qt ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ состоянии ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ Π΄ΠΎ самых свСТих выпусков;
    • ΠŸΠΎΡ€Ρ‚Ρ‹ с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ столом Xfce ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ‹ Π΄ΠΎ выпуск 4.14;
    • Π”Π΅Ρ€Π΅Π²ΠΎ ΠΏΠΎΡ€Ρ‚ΠΎΠ² FreeBSD ΠΏΡ€Π΅ΠΎΠ΄ΠΎΠ»Π΅Π»ΠΎ Ρ€ΡƒΠ±Π΅ΠΆ Π² 38000 ΠΏΠΎΡ€Ρ‚ΠΎΠ², число Π½Π΅Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… PR Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 2000, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… 400 PR Π΅Ρ‰Ρ‘ Π½Π΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½Ρ‹. Π—Π° ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ внСсСно 7340 ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΡ‚ 169 Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². ΠŸΡ€Π°Π²Π° ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‚Π΅Ρ€Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ Π΄Π²Π° Π½ΠΎΠ²Ρ‹Ρ… участника (Santhosh Raju ΠΈ Dmitri Goutnik). ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π½ΠΎΠ²Ρ‹ΠΉ выпуск ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° pkg 1.12 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΎΠ²Π΅Ρ€Π»Π΅Π΅Π² Π² Π΄Π΅Ρ€Π΅Π²Π΅ ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ чистки bsd.sites.mk. Π‘Ρ€Π΅Π΄ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ вСрсий Π² ΠΏΠΎΡ€Ρ‚Π°Ρ… ΠΎΡ‚ΠΌΠ΅Ρ‡Π°ΡŽΡ‚ΡΡ: Lazarus 2.0.4, LLVM 9.0, Perl5.30, PostgreSQL 11, Ruby 2.6, Firefox 69.0.1, Firefox-esr 68.1.0, Chromium 76.0;
    • ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ΡΡ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ClonOS, Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ спСциализированный дистрибутив для развёртывания инфраструктуры Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… сСрвСров. По Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹ΠΌ Π·Π°Π΄Π°Ρ‡Π°ΠΌ ClonOS Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ систСмы, ΠΊΠ°ΠΊ Proxmox, Triton (Joyent), OpenStack, OpenNebula ΠΈ Amazon AWS, Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ΠΌ ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… являСтся использованиС FreeBSD ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ управлСния, развёртывания ΠΈ управлСния Jail-ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ FreeBSD ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ срСдами Π½Π° Π±Π°Π·Π΅ Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ΠΎΠ² Bhyve ΠΈ Xen. Из Π½Π΅Π΄Π°Π²Π½ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ отмСчаСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ°
      cloud-init для Linux/BSD VM ΠΈ cloudbase-init для Windows VM, Π½Π°Ρ‡Π°Π»ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° использованиС собствСнных ΠΎΠ±Ρ€Π°Π·ΠΎΠ², задСйствованиС Jenkins CI для тСстирования сборок ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ pkg-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ для установки
      ClonOS ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ².

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ