ืฉื—ืจื•ืจ ืžืขืจื›ืช ื”ื”ืคืขืœื” DragonFly BSD 5.8

ื–ืžื™ืŸ ืฉื—ืจื•ืจ DragonFlyBSD 5.8, ืžืขืจื›ืช ื”ืคืขืœื” ืขื ืœื™ื‘ื” ื”ื™ื‘ืจื™ื“ื™ืช, ื ื•ืฆืจ ื‘ืฉื ืช 2003 ืœืฆื•ืจืš ืคื™ืชื•ื— ื—ืœื•ืคื™ ืฉืœ ืกื ื™ืฃ FreeBSD 4.x. ื‘ื™ืŸ ื”ืชื›ื•ื ื•ืช ืฉืœ DragonFly BSD, ืื ื• ื™ื›ื•ืœื™ื ืœื”ื“ื’ื™ืฉ ืžืขืจื›ืช ืงื‘ืฆื™ื ื‘ื’ืจืกื” ืžื‘ื•ื–ืจืช ืคื˜ื™ืฉ, ืชืžื™ื›ื” ื‘ื˜ืขื™ื ืช ืœื™ื‘ื•ืช ืžืขืจื›ืช "ื•ื™ืจื˜ื•ืืœื™ื•ืช" ื›ืชื”ืœื™ื›ื™ ืžืฉืชืžืฉ, ื™ื›ื•ืœืช ืฉืžื™ืจื” ื‘ืžื˜ืžื•ืŸ ืฉืœ ื ืชื•ื ื™ FS ื•ืžื˜ื ื ืชื•ื ื™ื ืขืœ ื›ื•ื ื ื™ SSD, ืงื™ืฉื•ืจื™ื ืกืžืœื™ื™ื ื•ืจื™ืืฆื™ื•ืช ืจื’ื™ืฉื•ืช ืœื”ืงืฉืจ, ื”ื™ื›ื•ืœืช ืœื”ืงืคื™ื ืชื”ืœื™ื›ื™ื ืชื•ืš ืฉืžื™ืจืช ืžืฆื‘ื ื‘ื“ื™ืกืง, ืœื™ื‘ื” ื”ื™ื‘ืจื™ื“ื™ืช ื‘ืืžืฆืขื•ืช ืคืชื™ืœื™ื ืงืœื™ื. (LWKT) .

ื”ืขื™ืงืจื™ ืฉื™ืคื•ืจื™ืื ื•ืกืฃ ื‘- DragonFlyBSD 5.8:

  • ื”ื”ืจื›ื‘ ื”ืขื™ืงืจื™ ื›ื•ืœืœ ืืช ื”ืฉื™ืจื•ืช dsynth, ืžื™ื•ืขื“ ืœื”ืจื›ื‘ื” ืžืงื•ืžื™ืช ื•ืชื—ื–ื•ืงื” ืฉืœ ืžืื’ืจื™ DPort ื‘ื™ื ืืจื™ื™ื ืžืฉืœืš. ื”ืงื‘ื™ืœื” ืฉืœ ื”ืจื›ื‘ื” ืฉืœ ืžืกืคืจ ืฉืจื™ืจื•ืชื™ ืฉืœ ื™ืฆื™ืื•ืช ื ืชืžื›ืช, ืชื•ืš ื”ืชื—ืฉื‘ื•ืช ื‘ืขืฅ ื”ืชืœื•ืช. ื›ื”ื›ื ื” ืœืžื”ื“ื•ืจื” ื”ื—ื“ืฉื”, DPort ื‘ื™ืฆืขื” ื’ื ืžืกืคืจ ืจื‘ ืฉืœ ืฉื™ื ื•ื™ื™ื ืฉืžื˜ืจืชื ืœื”ืื™ืฅ ืืช ื”ื‘ื ื™ื™ื” ืฉืœ ืžืกืคืจ ื—ื‘ื™ืœื•ืช ืชืœื•ื™ื•ืช.
  • libc ืžื™ื™ืฉืžืช ืžื ื’ื ื•ืŸ ืžื™ืกื•ืš ืื•ืชื•ืช ื™ืขื™ืœ, ื”ืžืืคืฉืจ ืœื”ื’ืŸ ืขืœ malloc*() ื•ืคื•ื ืงืฆื™ื•ืช ื“ื•ืžื•ืช ืžืคื ื™ ื‘ืขื™ื•ืช ื”ื ื•ื‘ืขื•ืช ืžื”ื”ืคืจืขื” ืฉืœื”ืŸ ืขืœ ื™ื“ื™ ืื•ืช. ืขื‘ื•ืจ ื—ืกื™ืžื” ื•ื‘ื™ื˜ื•ืœ ื—ืกื™ืžื” ืœื˜ื•ื•ื— ืงืฆืจ ืฉืœ ืื•ืชื•ืช, ืžื•ืฆืขื•ืช ื”ืคื•ื ืงืฆื™ื•ืช sigblockall() ื•-sigunblockall() ืืฉืจ ืคื•ืขืœื•ืช ืžื‘ืœื™ ืœื‘ืฆืข ืงืจื™ืื•ืช ืžืขืจื›ืช. ื‘ื ื•ืกืฃ, libc ื”ืชืื™ืžื” ืืช ื”ืคื•ื ืงืฆื™ื” strtok() ืœืฉื™ืžื•ืฉ ื‘ื™ื™ืฉื•ืžื™ื ืžืจื•ื‘ื™ื, ื”ื•ืกื™ืคื” ืงื‘ื•ืขื™ื TABDLY, TAB0, TAB3 ื•ืคื•ื ืงืฆื™ื™ืช __errno_location ื›ื“ื™ ืœืฉืคืจ ืืช ื”ืชืžื™ื›ื” ื‘-dports.
  • ืจื›ื™ื‘ื™ ืžืžืฉืง DRM (Direct Rendering Manager) ืžืกื•ื ื›ืจื ื™ื ืขื ืœื™ื‘ืช ืœื™ื ื•ืงืก 4.9, ืขื ืชื›ื•ื ื•ืช ื ื‘ื—ืจื•ืช ื”ืžื•ื‘ืื•ืช ืžื’ืจืขื™ืŸ 4.12 ืฉืžื˜ืจืชืŸ ืœืฉืคืจ ืืช ื”ืชืžื™ื›ื” ื‘-Wayland.
    ืžื ื”ืœ ื”ื”ืชืงืŸ drm/i915 ืขื‘ื•ืจ GPUs ืฉืœ ืื™ื ื˜ืœ ืžืกื•ื ื›ืจืŸ ืขื ืœื™ื‘ืช ืœื™ื ื•ืงืก 4.8.17 ืขื ืงื•ื“ ื”ืžื•ืขื‘ืจ ืžืงืจื ืœ 5.4 ื›ื“ื™ ืœืชืžื•ืš ื‘ืฉื‘ื‘ื™ื ื—ื“ืฉื™ื (Skylake, Coffelake, Amber Lake, Whisky Lake ื•-Comet Lake). ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ drm/radeon ืขื‘ื•ืจ ื›ืจื˜ื™ืกื™ ืžืกืš AMD ืžืกื•ื ื›ืจืŸ ืขื ืœื™ื‘ืช Linux 4.9.

  • ืืœื’ื•ืจื™ืชืžื™ ื”ื”ื—ืœืคื” ืฉืœ ื–ื™ื›ืจื•ืŸ ื•ื™ืจื˜ื•ืืœื™ ืฉื•ืคืจื• ืžืฉืžืขื•ืชื™ืช, ื•ืžืืคืฉืจื™ื ืœื ื• ืœื‘ื˜ืœ ืื• ืœืžื–ืขืจ ื‘ืขื™ื•ืช ืชื’ื•ื‘ื” ื‘ืžืžืฉืง ื”ืžืฉืชืžืฉ ื›ืืฉืจ ืื™ืŸ ืžืกืคื™ืง ื–ื™ื›ืจื•ืŸ. ื‘ืขื™ื•ืช ื‘ื”ืงืคืืช Chrome/Chromium ืขืงื‘ ื—ื•ืกืจ ื–ื™ื›ืจื•ืŸ ืžืขืจื›ืช ื ืคืชืจื•.
  • ืงื ื” ืžื™ื“ื” ืžืฉื•ืคืจ ืฉืœ ืœื™ื‘ื•ืช ื‘ืžืขืจื›ื•ืช ืขื ืžืกืคืจ ืจื‘ ืฉืœ ืœื™ื‘ื•ืช ืžืขื‘ื“. ื–ืžืŸ ื‘ืงืฉืช ื“ืคื™ ื–ื™ื›ืจื•ืŸ ื•ื™ืจื˜ื•ืืœื™ ืžื•ืคื—ืช. ืžื—ืœื•ืงืช SMP ืžื•ืคื—ืชืช ื›ืืฉืจ ื”ื–ื™ื›ืจื•ืŸ ื ืžื•ืš. ื™ืขื™ืœื•ืช ืžื•ื’ื‘ืจืช ืฉืœ ื”ืงืจื™ืื” "ืคืชื•ื—(... O_RDWR)".
  • ืžื—ื•ืœืœ ื”ืžืกืคืจื™ื ื”ืคืกืื•ื“ื•-ืืงืจืื™ื™ื ื‘ืงืจื ืœ ืขื•ืฆื‘ ืžื—ื“ืฉ. ืžื ื”ืœ ื”ื”ืชืงืŸ RDRAND ืžื•ืชืื ืœืฆื‘ื•ืจ ืื ื˜ืจื•ืคื™ื” ืžื›ืœ ื”ืžืขื‘ื“ื™ื. ืขื•ืฆืžื” ืžื•ืคื—ืชืช
    ื•ื’ื•ื“ืœ ื”ื–ื ืช RDRAND, ืฉืœืงื—ื” ื‘ืขื‘ืจ 2-3% ืžื–ืžืŸ ื”-CPU ื‘ื–ืžืŸ ืกืจืง.

  • ืžืขืจื›ืช ื—ื“ืฉื” ื ื•ืกืคื” ืงื•ืจืืช ืœ-realpath, getrandom ื•-lwp_getname (ืื™ืคืฉืจื” ืืช ื”ื™ื™ืฉื•ื ืฉืœ pthread_get_name_np).
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžื ื’ื ื•ื ื™ ื”ื”ื’ื ื” ืฉืœ SMAP (ืžื ื™ืขืช ื’ื™ืฉื” ืœืžืฆื‘ ืžืคืงื—) ื•-SMEP (ืžื ื™ืขืช ื‘ื™ืฆื•ืข ืžืฆื‘ ืžืคืงื—). SMAP ืžืืคืฉืจ ืœืš ืœื—ืกื•ื ื’ื™ืฉื” ืœื ืชื•ื ื™ ืžืจื—ื‘ ื”ืžืฉืชืžืฉ ืžืงื•ื“ ืžื™ื•ื—ืก ื”ืคื•ืขืœ ื‘ืจืžืช ื”ืงืจื ืœ. SMEP ืื™ื ื• ืžืืคืฉืจ ืžืขื‘ืจ ืžืžืฆื‘ ืœื™ื‘ื” ืœื‘ื™ืฆื•ืข ืงื•ื“ ื”ืžืžื•ืงื ื‘ืจืžืช ื”ืžืฉืชืžืฉ, ืžื” ืฉืžืืคืฉืจ ืœื—ืกื•ื ื ื™ืฆื•ืœ ืฉืœ ื ืงื•ื“ื•ืช ืชื•ืจืคื” ืจื‘ื•ืช ื‘ืงืจื ืœ (ืงื•ื“ ืžืขื˜ืคืช ืœื ื™ื‘ื•ืฆืข, ืžืื—ืจ ื•ื”ื•ื ื ืžืฆื ื‘ืžืจื—ื‘ ื”ืžืฉืชืžืฉ);
  • ืขื™ื‘ื•ื“ ืžื—ื“ืฉ ืฉืœ ืžืฉืชื ื™ sysctl ืœื”ื’ื“ืจืช ื”ื›ืœื. ื ื•ืกืคื” ืืช ื”ื™ื›ื•ืœืช ืœื”ืขืœื•ืช ืืช nulfs ื•-tmpfs ืžื”ื›ืœื.
  • ื ื•ืกืฃ ืžืฆื‘ ื—ื™ืจื•ื ืขื‘ื•ืจ ืžืขืจื›ืช ื”ืงื‘ืฆื™ื HAMMER2, ืฉื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื” ื‘ืžื”ืœืš ื”ืชืื•ืฉืฉื•ืช ืœืื—ืจ ืชืงืœื”. ื‘ืžืฆื‘ ื–ื”, ื ื™ืชืŸ ืœื”ืฉืžื™ื“ ืฆื™ืœื•ืžื™ ืžืฆื‘ ื‘ืขืช ืขื“ื›ื•ืŸ ื”ืื™ื ื•ื“ ื‘ืื•ืคืŸ ืžืงื•ืžื™ (ืžืืคืฉืจ ืœืžื—ื•ืง ืงื‘ืฆื™ื ื•ืกืคืจื™ื•ืช ื‘ื”ื™ืขื“ืจ ืฉื˜ื— ื“ื™ืกืง ืคื ื•ื™, ื›ืืฉืจ ืื™ ืืคืฉืจ ืœื”ืฉืชืžืฉ ื‘ืžื ื’ื ื•ืŸ ื”ืขืชืง-ืขืœ-ื›ืชื™ื‘ื”). ื‘ื™ืฆื•ืขื™ื ืžืฉื•ืคืจื™ื ื‘ืื•ืคืŸ ืžืฉืžืขื•ืชื™ ืขืœ ื™ื“ื™ ืขื™ื‘ื•ื“ ืžื—ื“ืฉ ืฉืœ ืชืžื™ื›ื” ื‘ืžืฉืœื•ื— ื—ื•ื˜ื™ื ื‘-HAMMER2. ืชื”ืœื™ืš ืฉื˜ื™ืคืช ื”ืžืื’ืจื™ื ืฉื•ืคืจ ืžืฉืžืขื•ืชื™ืช.
  • ืืžื™ื ื•ืช ื•ื‘ื™ืฆื•ืขื™ื ืžืฉื•ืคืจื™ื ืฉืœ TMPFS. ื™ืขื™ืœื•ืช ื”ืคืขืœื” ืžื•ื’ื‘ืจืช ื›ืืฉืจ ื—ืกืจ ื–ื™ื›ืจื•ืŸ ืคื ื•ื™ ื‘ืžืขืจื›ืช.
  • ืขืจื™ืžืช ื”ืจืฉืช IPv4 ืชื•ืžื›ืช ื›ืขืช ื‘ืงื™ื“ื•ืžื•ืช /31 (RFC 3021).
    Tap ืฉื™ืคืจื” ืืช ื”ื˜ื™ืคื•ืœ ื‘- SIOCSIFMTU ioctl ื›ื“ื™ ืœืชืžื•ืš ื‘-MTU > 1500. ื ื•ืกืคื” ืชืžื™ื›ื” ืขื‘ื•ืจ SIOCSIFINFO_IN6 ื•-SO_RERROR.

  • ืžื ื”ืœ ื”ื”ืชืงืŸ ืฉืœ iwm ืžืกื•ื ื›ืจืŸ ืขื FreeBSD ืขื ืชืžื™ื›ื” ื‘ืฉื‘ื‘ื™ื ืืœื—ื•ื˜ื™ื™ื ืฉืœ ืื™ื ื˜ืœ (ื ื•ืกืคื” ืชืžื™ื›ื” ืขื‘ื•ืจ iwm-9000 ื•- iwm-9260).
  • ื ื•ืกืคื• ืคื•ื ืงืฆื™ื•ืช basename() ื•-dirname ืชื•ืืžื•ืช ืœื™ื ื•ืงืก ื›ื“ื™ ืœืฉืคืจ ืืช ืชืื™ืžื•ืช ื”ืคื•ืจื˜ื™ื.
  • ื”ืขื‘ื™ืจ fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 ืž- FreeBSD ืœ-libc/getaddrinfo(), calendar(1), rcorder-visualize.sh. ืคื•ื ืงืฆื™ื•ืช ืž-math.h ื”ื•ืขื‘ืจื• ืž-OpenBSD.
  • ื’ืจืกืื•ืช ืžืขื•ื“ื›ื ื•ืช ืฉืœ ืจื›ื™ื‘ื™ ืฆื“ ืฉืœื™ืฉื™, ื›ื•ืœืœ Binutils 2.34, Openresolv 3.9.2, DHCPCD 8.1.3. ืžื”ื“ืจ ื‘ืจื™ืจืช ื”ืžื—ื“ืœ ื”ื•ื gcc-8.

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

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