发布于 2016-08-02 23:56:03 | 222 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

DragonFly BSD BSD系统

DragonFly BSD(DragonFlyBSD) 是一套开放源代码的类Unix操作系统,自 FreeBSD 4.8 分支。


DragonFly BSD 4.6.0 发布了,

该版本更好的支持NVMe,初步支持EFI ,增强提升SMP和网络方面的性能。采用 Linux 4.4 kernel, i915驱动也同步更新,使得处理器更为稳定,尤其是对Broadwell 和 Skylake系列处理器支持更为友好。

内核方面改进:

  • Fix a namecache race (triggered by heavy tmpfs mount/umount rate)

  • Fix two unmount / access races when many mounts are present

  • Improve context switch hotpath

  • Cut pmap invalidations from buffer cache activity in half

  • Reduce certain potential interrupt stacking issues

  • Implement a new fixed memory pool for physio accesses, eliminating all SMP invalidations from the path

  • Refactor pmap invalidations to operate at a higher priority than critical sections, reduce response latency and greatly reducing multi-core stalls during heavy invalidation activity

  • Fix a 2-instruction SMP race during thread exit.

  • Add buffer cache repurposing to reduce TLB invalidations in high-I/O-thru-filesystem situations.  Defaults to off (sysctl vfs.repurpose_enable).

  • Revamp the IPIQ (IPI messaging) mechanics to avoid deadlocks during heavy activity.

  • Revamp the IPI interrupt signalling mechanics to reduce unnecessary duplicate IPIs.

  • We no longer use the vm_map subsystem to dynamically allocate and deallocate KVM for the buffer-cache.  Instead we pre-reserve the maximum amount of (unmapped) KVM for every buffer.  This makes certain congestion-control algorithms for the buffer cache unnecessary and they have been removed.

  • Add a SMP %rip sniffer IPI, very useful for debugging.

  • Fix an issue where the reported real-time becomes inconsistent between cpu threads under heavy loads.  This issue generally resulted in 'make' getting confused.

  • Refactor the VM prefaulting code to improve pipe-lining.  This improves burst page-in performance when starting large applications such as chrome.

  • A lot of work to reduce noticable (but short) stalls in various subsystems when they have to work on large data-sets.  For example such as when a process with 64GB of RSS exits.

  • Fix zfree()'s hysteresis, greatly reducing unnecessary IPIs.

  • Reduce stalls during major token contention.  It used to be that a large multi-threaded program contending on a single lock across all cpus could create noticable stalls even if the program was running niced or at a high (aka low) dynamic priority.  These situations have been fixed.

  • New threads should not inherit the sigalstack.  Fixes issues with 'go'.

  • Fix MSI support issues.

  • Improve buffer flush and cluster_write linearity.

  • Allow drivers to register interrupts which are specifically meant to be high-frequency (disable the rate limiter for such interrupts).

  • Bring in ipfw3

  • implement a lockless in-kernel NAT for ipfw3 (note that PF's NAT is also mostly lockless).

  • Add ipfwsync for ipfw3, for synchronizing state between multiple machines.

  • Various procfs workarounds added to fix truss issues.

  • Implement PIE (place independent executables).  Randomization be enabled with a sysctl kern.elf64.pie_base_mmap.

  • Implement ppoll() with precise microsecond timeout.

  • Fix VM issues with virtio.

  • Add EVFILT_FS support to kqueue.

  • Cut-down on the amount of BSS in the kernel binary.  We ran over the loader's 64MB limit (with the initrd image and a few kld's also loaded), AGAIN!

  • modules.local mechanism added for non-base kernel modules.

  • Implement I2cSerialBus ACPI module support (used by IG4).

  • Implement ACPI's GPIO.

  • Work around HW VM bugs by aligning the kernel load's end address to 2MB, so there is no transition from 4K pages to 2MB pages for kernel text+data+bss.

  • Many, many HAMMER improvements.

  • HAMMER mount is now forced to noatime by default.

  • Do not allow the kqueue sleep timer to wrap.

  • User process scheduler adjustments to improve interactive responsiveness in situations where (essentially) batch jobs are syscall-heavy or VM fault-heavy.

  • Fix cpu selection skew in the scheduler with high fork/exec rates.

  • Fixed vfork()/getpid() bug in heavily threaded programs.

  • Refactor vm_page_alloc() and the pre-zeroing code to maintain cpu-v-cache affinity.

更多改进信息,可查看完整发布说明

下载地址:http://www.dragonflybsd.org/download/



历史版本 :
DragonFly BSD 5.0.0 发布,增加对 HAMMER2 支持
DragonFly BSD 4.8.1 发布,内核性能方面的改进
DragonFly BSD 4.8.0 发布,提高了内核性能
DragonFly BSD 4.6.0 发布,更好的支持 NVMe
DragonFly BSD 4.4.1 发布,BSD 系统
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务