DragonFly BSD 5.8操作系统发布

可得到 发布 蜻蜓BSD 5.8,具有混合内核的操作系统, 创建 2003年,出于替代开发FreeBSD 4.x分支的目的。 在 DragonFly BSD 的功能中,我们可以重点介绍分布式版本化文件系统 HAMMER、支持将“虚拟”系统内核加载为用户进程、在 SSD 驱动器上缓存 FS 数据和元数据的能力、上下文相关的变量符号链接、冻结进程同时将其状态保存在磁盘上的能力、使用轻量级线程的混合内核(LWKT)。

改进DragonFlyBSD 5.8 中添加:

  • 主要组成包括实用程序 dsynth,专为本地组装和维护您自己的 DPort 二进制存储库而设计。 考虑到依赖树,支持任意数量端口组装的并行化。 为了准备新版本,DPort 还进行了大量更改,旨在加快多个依赖包的构建速度。
  • libc 实现了有效的信号屏蔽机制,这使得可以保护 malloc*() 和类似函数免受由于信号中断而导致的问题。 对于信号的短期阻塞和解除阻塞,提出了 sigblockall() 和 sigunblockall() 函数,它们无需进行系统调用即可工作。 此外,libc 还调整了 strtok() 函数以用于多线程应用程序,添加了常量 TABDLY、TAB0、TAB3 和 __errno_location 函数以改进 dports 支持。
  • DRM(直接渲染管理器)界面组件与 Linux 内核 4.9 同步,并从 4.12 内核移植了一些选定的功能,旨在改进 Wayland 支持。
    Intel GPU 的 drm/i915 驱动程序与 Linux 内核 4.8.17 同步,代码从 5.4 内核转移来支持新芯片(Skylake、Coffelake、Amber Lake、Whiskey Lake 和 Comet Lake)。 AMD显卡的drm/radeon驱动程序与Linux 4.9内核同步。

  • 虚拟内存分页算法得到了显着改进,使我们能够消除或最大限度地减少内存不足时用户界面的响应问题。 由于系统内存不足而导致 Chrome/Chromium 冻结的问题已得到解决。
  • 改进了具有大量处理器核心的系统上的内核扩展。 减少虚拟内存页面请求时间。 减少内存不足时的 SMP 争用。 提高了“open(... O_RDWR)”调用的效率。
  • 内核中的伪随机数生成器已被重新设计。 RDRAND 驱动程序适用于累积来自所有 CPU 的熵。 降低强度
    以及 RDRAND 提要的大小,以前在空闲期间占用了 2-3% 的 CPU 时间。

  • 添加了新的系统调用 realpath、getrandom 和 lwp_getname(允许执行 pthread_get_name_np)。
  • 添加了对 SMAP(管理员模式访问保护)和 SMEP(管理员模式执行保护)保护机制的支持。 SMAP 允许您阻止在内核级别运行的特权代码访问用户空间数据。 SMEP 不允许从内核模式转换到位于用户级别的代码执行,这使得可以阻止对内核中许多漏洞的利用(shell 代码不会被执行,因为它位于用户空间);
  • 重新设计了用于配置 Jail 的 sysctl 变量。 添加了从 Jail 挂载 nullfs 和 tmpfs 的功能。
  • 为HAMMER2文件系统添加了紧急模式,可在故障后恢复时使用。 在此模式下,在本地更新 inode 时可以销毁快照(允许您在没有可用磁盘空间、无法使用写时复制机制时删除文件和目录)。 通过重新设计 HAMMER2 中的线程调度支持,显着提高了性能。 刷新缓冲区的过程得到了显着改进。
  • 提高了 TMPFS 的可靠性和性能。 当系统中缺乏可用内存时提高运行效率。
  • IPv4 网络堆栈现在支持 /31 前缀(RFC 3021).
    Tap 改进了 SIOCSIFMTU ioctl 处理以支持 MTU > 1500。添加了对 SIOCSIFINFO_IN6 和 SO_RERROR 的支持。

  • iwm 驱动程序与 FreeBSD 同步,支持 Intel 无线芯片(增加了对 iwm-9000 和 iwm-9260 的支持)。
  • 添加了Linux兼容的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

添加评论