智能化下的产物,无人棋牌室
DragonFly BSD 4.6.0 发布了,DragonFly是一份作为FreeBSD-4.x系列在逻辑上的延续而设计的操作系统及应用环境。这些操作系统与Linux可归为相同的类别,因为它 们都基于UNIX理念及应用程序接口。DragonFly是这条发展道路上的一个分支,可以说,是给了BSD一个向着不同于FreeBSD-5系列的崭新 方向而发展的机会。
该版本更好的支持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/