FreeBSD Q2019 XNUMX ื“ื•ื— ื”ืชืงื“ืžื•ืช

ื™ืฆื ืœืื•ืจ ื“ื™ื•ื•ื— ืขืœ ืคื™ืชื•ื— ืคืจื•ื™ืงื˜ FreeBSD ืžืืคืจื™ืœ ืขื“ ื™ื•ื ื™ 2019. ื‘ื™ืŸ ื”ืฉื™ื ื•ื™ื™ื ื ื™ืชืŸ ืœืฆื™ื™ืŸ:

  • ืฉืืœื•ืช ื›ืœืœื™ื•ืช ื•ืžืขืจื›ืชื™ื•ืช
    • ืฆื•ื•ืช Core ื”ื—ืœื™ื˜ ืœื”ืงื™ื ืงื‘ื•ืฆืช ืขื‘ื•ื“ื” ืฉืชื‘ื“ื•ืง ืืช ื”ืืคืฉืจื•ืช ืœื”ืขื‘ื™ืจ ืืช ืงื•ื“ ื”ืžืงื•ืจ ืžืžืขืจื›ืช ื‘ืงืจืช ืžืงื•ืจ Subversion ื”ืžืจื›ื–ื™ืช ืœืžืขืจื›ืช Git ื”ืžื‘ื•ื–ืจืช.
    • ืขืจืš ื‘ื“ื™ืงื•ืช fuzz ืฉืœ ืœื™ื‘ืช FreeBSD ื‘ืืžืฆืขื•ืช ื”ืžืขืจื›ืช syzkaller ื•ืžืกืคืจ ืฉื’ื™ืื•ืช ืฉื–ื•ื”ื• ืชื•ืงื ื•. ื ื•ืกืคื” ืฉื›ื‘ื” ืœื‘ื“ื™ืงื” ืžื˜ื•ืฉื˜ืฉืช ืฉืœ ืกืคืจื™ื•ืช ืœืชืื™ืžื•ืช ืขื ืกื‘ื™ื‘ืช 32 ืกื™ื‘ื™ื•ืช ื‘ืžืขืจื›ื•ืช ืขื ืœื™ื‘ื” ืฉืœ 64 ืกื™ื‘ื™ื•ืช. ื”ื˜ืžื™ืข ืืช ื”ื™ื›ื•ืœืช ืœื”ืคืขื™ืœ ืืช syzkaller ื‘ืžื›ื•ื ื•ืช ื•ื™ืจื˜ื•ืืœื™ื•ืช ืžื‘ื•ืกืกื•ืช Bhyve. ื‘ืฉืœื‘ ื”ื‘ื, ืžืชื•ื›ื ืŸ ืœื”ืจื—ื™ื‘ ืืช ื”ื›ื™ืกื•ื™ ืฉืœ ื‘ื“ื™ืงื•ืช ืฉื™ื—ื•ืช ืžืขืจื›ืช, ืœื”ืฉืชืžืฉ ื‘-LLVM Sanizer ืœื‘ื“ื™ืงืช ื”ืœื™ื‘ื”, ืœื”ืฉืชืžืฉ ื‘-netdump ื›ื“ื™ ืœืฉืžื•ืจ dump ื”ืœื™ื‘ื” ื‘ืžื”ืœืš ืงืจื™ืกื•ืช ื‘ืžื”ืœืš ื‘ื“ื™ืงื•ืช ืžื˜ื•ืฉื˜ืฉ ื•ื›ื•'.
    • ื”ื—ืœื” ื”ืขื‘ื•ื“ื” ืขืœ ืขื“ื›ื•ืŸ ื”ื˜ืžืขืช zlib ื‘ืจืžืช ื”ืงืจื ืœ. ืขื‘ื•ืจ ื’ื™ืฉืช ืœื™ื‘ื” ืœืงื•ื“ zlib, ืฉื ื”ืกืคืจื™ื™ื” contrib/zlib ืฉื•ื ื” ืœ-sys/contrib/zlib, ื•ื’ื ืฉื ืงื•ื‘ืฅ ื”ื›ื•ืชืจืช crc.h ืฉื•ื ื” ื›ื“ื™ ืœืžื ื•ืข ื”ืชื ื’ืฉื•ืช ืขื zlib/crc.h. ื ื™ืงื” ืงื•ื“ ืžื“ื•ืจ ืงื•ื“ื ืฉื”ื™ื” ืชืœื•ื™ ื‘-zlib ื•ื‘ื ื™ืคื•ื—. ื‘ืฉืœื‘ ื”ื‘ื, ืžืชื•ื›ื ืŸ ืœืกืคืง ืืช ื”ื™ื›ื•ืœืช ืœื‘ื ื•ืช ืืช ื”ืงืจื ืœ ื‘ื•-ื–ืžื ื™ืช ืขื ื”-zlib ื”ื™ืฉืŸ ื•ื”ื—ื“ืฉ ืขื‘ื•ืจ ื”ืขื‘ืจื” ื”ื“ืจื’ืชื™ืช ืœื’ืจืกื” ื”ื—ื“ืฉื” ืฉืœ ืคื•ื ืงืฆื™ื•ืช ื”ืžืฉืชืžืฉื•ืช ื‘ื“ื—ื™ืกื”;
    • ืชืฉืชื™ืช ืืžื•ืœืฆื™ื™ืช ืกื‘ื™ื‘ืช ืœื™ื ื•ืงืก (Linuxulator) ืขื•ื“ื›ื ื”. ืชืžื™ื›ื” ืžื•ื’ื‘ืจืช ื‘ื›ืœื™ ื ื™ืคื•ื™ ื‘ืื’ื™ื ืฉืœ ืœื™ื ื•ืงืก ื›ืžื• ื›ืœื™ ื”ืฉื™ืจื•ืช strace. ื—ื‘ื™ืœืช linux-c7-strace ื ื•ืกืคื” ืœื™ืฆื™ืื•ืช, ืฉื‘ื” ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื›ื“ื™ ืœื”ืชื—ืงื•ืช ืื—ืจ ืงื‘ืฆื™ ื”ืคืขืœื” ืฉืœ ืœื™ื ื•ืงืก ื‘ืžืงื•ื ื›ืœื™ ื”ืฉื™ืจื•ืช ื”ืกื˜ื ื“ืจื˜ื™ื™ื truss ื•-ktrace, ืืฉืจ ืขื“ื™ื™ืŸ ืœื ื™ื›ื•ืœื™ื ืœืคืขื ื— ื›ืžื” ื“ื’ืœื™ื ื•ืžื‘ื ื™ื ืกืคืฆื™ืคื™ื™ื ืœืœื™ื ื•ืงืก. ื‘ื ื•ืกืฃ, ื ื•ืกืคื” ื—ื‘ื™ืœืช linux-ltp ืขื ืงื•ื‘ืฆื™ ื”ื”ืคืขืœื” ืฉืœ Linux Test Project ื•ื ืคืชืจื• ื‘ืขื™ื•ืช ืชืื™ืžื•ืช ืขื ืงื•ื‘ืฆื™ ื”ืคืขืœื” ื”ืžืงื•ืฉืจื™ื ืขื ื’ืจืกืื•ืช ื—ื“ืฉื•ืช ืฉืœ glibc;
    • ื”ื˜ืžืขืช ืคืขื•ืœื•ืช ืื™ ืชื•ืงืฃ ืžื•ืฉื”ื” ื‘ืžื ื’ื ื•ืŸ pmap ื”ื•ืขื‘ืจื” ืœืฉื™ืžื•ืฉ ื‘ืืœื’ื•ืจื™ืชื ืขื™ื‘ื•ื“ ืชื•ืจ ื”ืคื•ืขืœ ืœืœื ื ืขื™ืœื”, ืžื” ืฉืื™ืคืฉืจ ืœืคืชื•ืจ ื‘ืขื™ื•ืช ืžื“ืจื’ื™ื•ืช ื‘ืขืช ื‘ื™ืฆื•ืข ืžืกืคืจ ืจื‘ ืฉืœ ืคืขื•ืœื•ืช ื‘ื™ื˜ื•ืœ ืžืคื” ืžืงื‘ื™ืœื•ืช;
    • ืžื ื’ื ื•ืŸ ื—ืกื™ืžืช vnode ื‘ืžื”ืœืš ื‘ื™ืฆื•ืข ืงืจื™ืื•ืช ืžืขืจื›ืช ืฉืœ ืžืฉืคื—ืช execve() ืฉื•ื ื”, ืžื” ืฉืื™ืคืฉืจ ืœื”ืฉื™ื’ ื™ืขื™ืœื•ืช ืžื•ื’ื‘ืจืช ื‘ืขืช ื‘ื™ืฆื•ืข ื‘ื•-ื–ืžื ื™ืช execve() ืขื‘ื•ืจ ืื•ืชื• ืงื•ื‘ืฅ (ืœื“ื•ื’ืžื”, ื‘ืขืช ื‘ื™ืฆื•ืข ืคืขื•ืœื•ืช assembly ืขื ืžืงื‘ื™ืœื•ืช ืฉืœ ื”ืฉืงืช ื”ืžื”ื“ืจ);
  • ืื‘ื˜ื—ื”
    • ื”-bhyve hypervisor ืžืžืฉื™ืš ืœืฉืคืจ ืืช ื”ืชืžื™ื›ื” ื‘ื”ื’ื™ืจื” ื—ื™ื” ืฉืœ ืกื‘ื™ื‘ื•ืช ืื•ืจื— ืžืžืืจื— โ€‹โ€‹ืื—ื“ ืœืื—ืจ ื•ืืช ื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช Save/Restore, ื”ืžืืคืฉืจืช ืœืš ืœื”ืงืคื™ื ืืช ืžืขืจื›ืช ื”ืื•ืจื—, ืœืฉืžื•ืจ ืืช ื”ืžืฆื‘ ื‘ืงื•ื‘ืฅ ื•ืœืื—ืจ ืžื›ืŸ ืœื—ื“ืฉ ืืช ื”ื‘ื™ืฆื•ืข.
    • ื‘ืืžืฆืขื•ืช ื”ืฉื™ืžื•ืฉ ื‘ืกืคืจื™ื™ืช libvdsk, bhyve ื”ื•ืกื™ืคื” ืชืžื™ื›ื” ื‘ืชืžื•ื ื•ืช ื“ื™ืกืง ื‘ืคื•ืจืžื˜ QCOW2. ื“ื•ืจืฉ ื”ืชืงื ื” ื›ื“ื™ ืœืขื‘ื•ื“
      ืฉื•ื ื” ื‘ืžื™ื•ื—ื“ ื’ืจืกื” ืฉืœ bhyve, ืฉื”ื•ืžืจื” ืœืฉื™ืžื•ืฉ ื‘ืžื˜ืคืœื™ ืชืคืขื•ืœ ืงื‘ืฆื™ื ื”ืžื‘ื•ืกืกื™ื ืขืœ libvdsk. ื‘ืžื”ืœืš ืชืงื•ืคืช ื”ื“ื™ื•ื•ื—, ื‘ื™ืฆืขื” libvdsk ื’ื ืขื‘ื•ื“ื” ื›ื“ื™ ืœืคืฉื˜ ืืช ืฉื™ืœื•ื‘ ื”ืชืžื™ื›ื” ื‘ืคื•ืจืžื˜ื™ื ื—ื“ืฉื™ื, ืฉื™ืคื•ืจ ื‘ื™ืฆื•ืขื™ ื”ืงืจื™ืื” ื•ื”ื›ืชื™ื‘ื” ื•ื”ื•ืกืคื” ืชืžื™ื›ื” ื‘-Copy-On-Write. ืžื‘ื™ืŸ ื”ืžืฉื™ืžื•ืช ื”ื ื•ืชืจื•ืช, ื”ืฉื™ืœื•ื‘ ืฉืœ libvdsk ื‘ืžื‘ื ื” ื”ืจืืฉื™ ืฉืœ bhyve ืžืฆื•ื™ืŸ;

    • ืœื ืžืœื™ื ื ื•ืกืคื” ืžืขืจื›ืช ืœืื™ืกื•ืฃ ืžื™ื“ืข ืชืขื‘ื•ืจื”
      Maltrail, ื”ืžืืคืฉืจ ืœื™ืฆื•ืจ ืžืœื›ื•ื“ื•ืช ืขื‘ื•ืจ ื‘ืงืฉื•ืช ืจืฉืช ื–ื“ื•ื ื™ื•ืช (ื›ืชื•ื‘ื•ืช IP ื•ื“ื•ืžื™ื™ื ื™ื ืžืจืฉื™ืžื•ืช ืฉื—ื•ืจื•ืช ื ื‘ื“ืงื•ืช) ื•ืœืฉืœื•ื— ืžื™ื“ืข ืขืœ ืคืขื™ืœื•ืช ืฉื–ื•ื”ืชื” ืœืฉืจืช ืžืจื›ื–ื™ ืœืฆื•ืจืš ื—ืกื™ืžื” ืื• ื ื™ืชื•ื— ืฉืœ ื ื™ืกื™ื•ื ื•ืช ืชืงื™ืคื” ืœืื—ืจ ืžื›ืŸ;

    • ืœื™ืฆื™ืื•ืช ื ื•ืกืคื• ืคืœื˜ืคื•ืจืžื•ืช ืœืื™ืชื•ืจ ื”ืชืงืคื•ืช, ื ื™ืชื•ื— ื™ื•ืžื ื™ื ื•ื ื™ื˜ื•ืจ ืฉืœืžื•ืช ื”ืงื‘ืฆื™ื Wazuh (ืžื–ืœื’ ืฉืœ Ossec ืขื ืชืžื™ื›ื” ื‘ืื™ื ื˜ื’ืจืฆื™ื” ืขื ELK-Stack);
  • ืชืช ืžืขืจื›ืช ืจืฉืช
    • ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ ena ืขื•ื“ื›ืŸ ืœืชืžื™ื›ื” ื‘ื“ื•ืจ ื”ืฉื ื™ ืฉืœ ืžืชืืžื™ ืจืฉืช ENAv2 (ืžืชืื ืจืฉืช ืืœืกื˜ื™) ื”ืžืฉืžืฉื™ื ื‘ืชืฉืชื™ืช Elastic Compute Cloud (EC2) ืœืืจื’ื•ืŸ ืชืงืฉื•ืจืช ื‘ื™ืŸ ืฆืžืชื™ EC2 ื‘ืžื”ื™ืจื•ื™ื•ืช ืฉืœ ืขื“ 25 Gb/s. ืชืžื™ื›ื” ื‘-NETMAP ื ื•ืกืคื” ืœืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ ena.
    • 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 ื•ื”ืขืชืงื”. ื›ืœ ืžื” ืฉื ื•ืชืจ ื”ื•ื ืœื™ื™ืฉื ืืช ืคืขื•ืœืช ื”-Seek ื”ื ื“ืจืฉืช ื›ื“ื™ ืœื”ืฉืชืžืฉ ื‘-lseek(SEEKHOLE/SEEKDATA) ืขื NFS. ืชืžื™ื›ื” ื‘-NFSv4.2 ืžืชื•ื›ื ื ืช ืขื‘ื•ืจ FreeBSD 13;

  • ืžืขืจื›ื•ืช ืื—ืกื•ืŸ ื•ืงื‘ืฆื™ื
    • ื”ืคืจื•ื™ืงื˜ ืœืขื™ื‘ื•ื“ ืžื—ื“ืฉ ืฉืœ ื”ื“ืจื™ื™ื‘ืจ ืขื‘ื•ืจ ืชืช-ืžืขืจื›ืช ื”-FUSE (ืžืขืจื›ืช ืงื‘ืฆื™ื ื‘-USErspace), ื”ืžืืคืฉืจืช ื™ืฆื™ืจืช ื”ื˜ืžืขื•ืช ืฉืœ ืžืขืจื›ื•ืช ืงื‘ืฆื™ื ื‘ืžืจื—ื‘ ื”ืžืฉืชืžืฉ, ืขื•ืžื“ ืœื”ืกืชื™ื™ื. ื”ื“ืจื™ื™ื‘ืจ ืฉืกื•ืคืง ื‘ืžืงื•ืจ ืžื™ื•ืฉืŸ ื•ืžื›ื™ืœ ื‘ืื’ื™ื ืจื‘ื™ื. ื›ื—ืœืง ืžืคืจื•ื™ืงื˜ ืžื•ื“ืจื ื™ื–ืฆื™ื” ืฉืœ ืžื ื”ืœื™ ื”ืชืงื ื™ื, ื”ื•ื˜ืžืขื” ืชืžื™ื›ื” ื‘ืคืจื•ื˜ื•ืงื•ืœ FUSE 7.23 (ืงื•ื“ื ืœื›ืŸ ื’ืจืกื” 7.8, ืฉืคื•ืจืกืžื” ืœืคื ื™ 11 ืฉื ื™ื ื ืชืžื›ื”), ืงื•ื“ ื ื•ืกืฃ ืœื‘ื“ื™ืงืช ื–ื›ื•ื™ื•ืช ื’ื™ืฉื” ื‘ืฆื“ ื”ืœื™ื‘ื” ("-o default_permissions"), ืงืจื™ืื•ืช ืœ ื ื•ืกืคื• VOP_MKNOD, VOP_BMAP ื•-VOP_ADVLOCK, ื”ื™ื›ื•ืœืช ืœื”ืคืจื™ืข ืœืคืขื•ืœื•ืช FUSE, ื”ื•ืกืคื” ืชืžื™ื›ื” ื‘ืฆื™ื ื•ืจื•ืช ืœืœื ืฉื ื•ืฉืงืขื™ ื™ื•ื ื™ืงืก ื‘-fusefs, ื”ื™ื›ื•ืœืช ืœื”ืฉืชืžืฉ ื‘-kqueue ืขื‘ื•ืจ /dev/fuse, ืืคืฉืจื” ืขื“ื›ื•ืŸ ืคืจืžื˜ืจื™ mount ื‘ืืžืฆืขื•ืช "mount -u", ื”ื•ืกืคืช ืชืžื™ื›ื” ืขื‘ื•ืจ ื™ื™ืฆื•ื fusefs ื‘ืืžืฆืขื•ืช NFS, ื”ื˜ืžืขืช ื—ืฉื‘ื•ื ืื•ืช RLIMIT_FSIZE, ื”ื•ืกืคืช ื“ื’ืœื™ื FOPEN_KEEP_CACHE ื•-FUSE_ASYNC_READ, ื‘ื•ืฆืขื• ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ืžืฉืžืขื•ืชื™ื•ืช ืฉืœ ื‘ื™ืฆื•ืขื™ื ื•ืืจื’ื•ืŸ ื”-Caching ืฉื•ืคืจ;
    • ืชืžื™ื›ื” ื‘ืคืขื•ืœืช 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. ืชืžื™ื›ื” ื‘ืคืœื˜ืคื•ืจืžืช ื”ื‘ืกื™ืก (SMP ืžืจื•ื‘ื” ืžืฉืชืžืฉื™ื) ื•-SATA 3.0 ื›ื‘ืจ ื”ื•ื˜ืžืขื”. ืชืžื™ื›ื” ื‘-USB 3.0, SD/MMC ื•-I2C ื ืžืฆืืช ื‘ืคื™ืชื•ื—. ื”ืชื•ื›ื ื™ื•ืช ื›ื•ืœืœื•ืช ืชืžื™ื›ื” ื‘-Ethernet, GPIO ื•-QSPI. ืกื™ื•ื ื”ืขื‘ื•ื“ื” ื•ื”ื”ืฉืชืœื‘ื•ืช ื‘ืกื ื™ืฃ HEAD ืฆืคื•ื™ื™ื ื‘ืจื‘ืขื•ืŸ ื”ืจื‘ื™ืขื™ ืฉืœ 4.
    • ืžื ื”ืœื™ ื”ืชืงื ื™ื ืฉืœ mlx5en ื•-mlx5ib ืžืขื•ื“ื›ื ื™ื ืขื‘ื•ืจ ืžืชืืžื™ Mellanox ConnectX-4 [Lx], ConnectX-5 [Ex] ื•-ConnectX-6 [Dx] Ethernet ื•-InfiniBand. ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžืชืืžื™ Mellanox Socket Direct (ConnectX-6), ื”ืžืืคืฉืจืช ืชืคื•ืงื” ืฉืœ ืขื“ 200Gb/s ื‘ืืคื™ืง PCIe Gen 3.0. ืขื‘ื•ืจ ืฉื‘ื‘ื™ BlueField ืžืจื•ื‘ื™ ืœื™ื‘ื•ืช, ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžื ื”ืœ ื”ื”ืชืงืŸ RShim. ื—ื‘ื™ืœืช mstflint ืขื ืขืจื›ืช ื›ืœื™ ืื‘ื—ื•ืŸ ืขื‘ื•ืจ ืžืชืืžื™ ืžืœืื ื•ืงืก ื ื•ืกืคื” ืœื™ืฆื™ืื•ืช;
  • ืžืขืจื›ืช ืืคืœื™ืงืฆื™ื•ืช ื•ื™ืฆื™ืื•ืช
    • ืจื›ื™ื‘ื™ ืžื—ืกื ื™ืช ื’ืจืคื™ืงื” ืขื•ื“ื›ื ื•. ืžื ื”ืœ ื”ื”ืชืงืŸ drm.ko (ืžื ื”ืœ ืขื™ื‘ื•ื“ ื™ืฉื™ืจ) ื”ื•ืขื‘ืจ ืžืงืจื ืœ Linux 5.0. ื“ืจื™ื™ื‘ืจ ื–ื” ื ื—ืฉื‘ ื ื™ืกื™ื•ื ื™ ื•ื”ื•ื ื ื•ืกืฃ ืœืขืฅ ื”ืคื•ืจื˜ื™ื ื›-graphics/drm-devel-kmod. ืžื›ื™ื•ื•ืŸ ืฉืžื ื”ืœ ื”ื”ืชืงืŸ ืžืฉืชืžืฉ ื‘ืžืกื’ืจืช Linux KPI ื”ืžืขื•ื“ื›ื ืช ื›ื“ื™ ืœื”ื™ื•ืช ืชื•ืื ืœ-DRM API ืฉืœ ืœื™ื‘ืช ืœื™ื ื•ืงืก, FreeBSD CURRENT ื ื“ืจืฉ ืœืคืขื•ืœ. ืžื ื”ืœ ื”ื”ืชืงืŸ vboxvideo.ko drm ืขื‘ื•ืจ ื”-GPU ื”ื•ื™ืจื˜ื•ืืœื™ ืฉืœ VirtualBox ื”ื•ืขื‘ืจ ื’ื ืž-Linux. ื—ื‘ื™ืœืช Mesa ืขื•ื“ื›ื ื” ืœื’ืจืกื” 18.3.2 ื•ืขื‘ืจื” ืœื”ืฉืชืžืฉ ื‘-LLVM ืžื™ืฆื™ืืช devel/llvm80 ื‘ืžืงื•ื devel/llvm60.
    • ืขืฅ ื”ื™ืฆื™ืื•ืช ืฉืœ FreeBSD ืขื‘ืจ 37000 ื™ืฆื™ืื•ืช, ืžืกืคืจ ื”-PRs ื”ืœื ืกื’ื•ืจื™ื ื ื•ืชืจ ืขืœ 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

ื”ื•ืกืคืช ืชื’ื•ื‘ื”