DragonFly BSD

ภาพหน้าจอของซอฟแวร์:
DragonFly BSD
รายละเอียดซอฟแวร์:
รุ่น: 5.2.2 การปรับปรุง
วันที่อัพโหลด: 22 Jun 18
ผู้พัฒนา: The DragonFly Team
การอนุญาต: ฟรี
ความนิยม: 50

Rating: 5.0/5 (Total Votes: 1)

DragonFly BSD เป็นระบบปฏิบัติการ BSD แบบโอเพนซอร์สซึ่งได้รับการออกแบบมาให้มีความต่อเนื่องตรรกะของชุดระบบปฏิบัติการ FreeBSD-4.x คล้ายกับการแจกจ่ายแบบ BSD อื่น ๆ เช่น FreeBSD, NetBSD หรือ OpenBSD มันเป็นทางแยกในเส้นทางเพื่อที่จะพูดให้ฐาน BSD โอกาสที่จะเติบโตในทิศทางใหม่ทั้งหมดจากที่ถ่ายในชุด FreeBSD-5 นอกเหนือจากนั้นยังมีชุดคุณลักษณะเฉพาะซึ่งทำให้แตกต่างจาก OSes อื่นที่คล้ายคลึงกัน


HAMMER เป็นแหล่งท่องเที่ยวหลัก

HAMMER เป็นสถานที่ท่องเที่ยวหลักของ DragonFly ระบบไฟล์ที่ทันสมัยและมีประสิทธิภาพสูงที่มีฟังก์ชันการเข้าถึงที่เก่าแก่และมีมิเรอร์ในตัว เคอร์เนลเป็นหนึ่งในเหตุผลที่ DragonFly มีการแจกจ่าย BSD ที่ดีกว่า

มีตัวกำหนดตารางเวลาสำหรับเคอร์เนลสองแบบ

เคอร์เนลของ DragonFly มีตัวกำหนดตารางเวลาที่แตกต่างกันสองตัวซึ่งจะกำหนดหน่วยประมวลผลทั้งหมด (Light Kernel Thread) และอีกชุดหนึ่งที่เลือกเธรดผู้ใช้คนละชุดสำหรับแต่ละโปรเซสเซอร์และบทคัดย่อหัวข้อผู้ใช้ (User Thread Scheduler) นอกจากนี้เคอร์เนลยังมีตัวจัดสรรหน่วยความจำเคอร์เนลที่ซับซ้อนซึ่งประกอบด้วยตัวจัดสรรหน่วยความจำเชิงวัตถุและเคอร์เนล malloc ที่เรียกว่า kmalloc () ระบบไฟล์อุปกรณ์ DragonFly (DEVFS) เคอร์เนลเสมือน (VKERNEL), NFS V3 RPC asynchronization และ ดิสก์ I / O กรอบกำหนดการ (dsched)


คุณสมบัติคุณสมบัติมากมาย

ท่ามกลางคุณสมบัติที่น่าสนใจอื่น ๆ เราสามารถพูดถึง NULL Filesystem Layer (NULLFS) ที่สนับสนุนจุดเมานท์โดยพลการใด ๆ ที่ไม่ใช่ loop, TMPFS (ระบบแฟ้มชั่วคราว VFS), การเข้ารหัสดิสก์โปร่งใส, การจัดการ SSD (Solid Storage Device), ตัวแปร (บริบท อ่อนไหว), DNTPD (DragonFly Network Time Daemon) และ DMA (DragonFly Mail Agent) นอกจากนี้ผู้ใช้จะสามารถด่านหรือระงับกระบวนการลงในดิสก์ได้ตลอดเวลา ไดรฟ์เวอร์มีไดร์เวอร์ AHCI ที่แข็งแกร่งชื่ออุปกรณ์ที่มีเสถียรภาพตลอดจนการเข้ารหัสและการจัดการระดับเสียงที่ดีขึ้น

บรรทัดด้านล่าง

โดยรวมแล้ว DragonFly พิสูจน์ได้ว่าเป็นระบบปฏิบัติการแบบ UNIX ที่ทันสมัยใช้งานง่ายและสามารถเข้าถึงได้ง่าย สามารถใช้งานได้ทุกวันเป็นระบบเดสก์ท็อปหรือเป็นเซิร์ฟเวอร์ BSD ที่มีประสิทธิภาพ

มีอะไรใหม่ ในรุ่นนี้:

  • เวอร์ชัน Dragonfly 5.2.1 ได้รับการเผยแพร่โดย Meltdown / Spectre mitigation การปรับปรุงวิดีโอ HAMMER2, ipfw และวิดีโอเร่งรัดมากมายรวมทั้งการปรับปรุง (ในการอัปเดต 5.2.1) สำหรับ CVE-2018-8897

มีอะไรใหม่ ในเวอร์ชัน:

  • Christian Groessler (1):
  • telnetd: พิมพ์ข้อมูลระบบ (ระบบปฏิบัติการและสถาปัตยกรรม) ก่อนเข้าสู่ระบบ
  • Matthew Dillon (7):
  • ค้อน 2 - แก้ไขแบ่งตามเผ่าพันธุ์ 0
  • kernel - เลือก MFC ของ kernel umtx จาก master
  • kernel - อัปเดตเอกสาร umtx
  • libc และ pthreads - แก้ไขปัญหาเกี่ยวกับ atfork ด้วย nmalloc, update dmalloc
  • hammer2 - แก้ไขการแข่งขันเปลี่ยนชื่อ
  • hammer2 - เพิ่มประสิทธิภาพ hammer2_pfs_memory_wakeup ()
  • hammer2 - แก้ไขโซ่สกปรกที่ไม่ จำกัด เนื่องจากเปลี่ยนชื่อ
  • Sascha Wildner (5):
  • hammer2.8: แก้ไขข้อผิดพลาด
  • พูด 'hammer2' แทน 'hammer' ในที่ต่างๆ
  • mtree: แก้ไขเจ้าของไดเรกทอรีต่างๆใน / usr / share
  • libc / nls: ใช้ตำแหน่งที่ตั้งปัจจุบัน (กำหนดโดยเธรด)
  • libarchive: เปลี่ยนการกระทำที่ไม่ได้ตั้งใจที่จะผลักดัน

  • มีอะไรใหม่ ในเวอร์ชัน 4.8.1:

    • Kernel:
    • โค้ดแคชแคชของ Refactor เพื่อลบการจอง KVA แบบไดนามิก แต่ KVA ทั้งหมดจะถูกสงวนไว้ในเวลาบูต บันทึกเราจาก IPI ที่ไม่จำเป็นและช่วยให้สามารถใช้งานโค้ดแคชแคชได้อย่างมีนัยสำคัญ
    • เพิ่ม vfs.repurpose_enable (ภายใต้การทดสอบปิดการใช้งานตามค่าเริ่มต้น) คุณลักษณะนี้สามารถเปิดใช้งานเพื่อลดภาระการจัดการ IPI และ VM ลงบนเครื่องซึ่งกำลังทำไฟล์ I / O จำนวนมากเช่นจาก NVMe SSD โดยการหลีกเลี่ยงกลไกการรีไซเคิลเพจ VM ทั่วไป เมื่อเปิดใช้คุณลักษณะนี้จะเรียกเฉพาะเมื่อโหลด I / O สูงเท่านั้น ทำงานโดย repurposing หน้า VM ต้นแบบบัฟเฟอร์ในสถานที่ (เมื่อเป็นไปได้) เพื่อที่จะไม่ต้อง kremove / kenter หน้าใน KVA บัฟเฟอร์ การรีไซเคิลหน้าเว็บ VM ปกติ (ซึ่งอาจถูกทำให้ล้นหลามด้วยการโหลด I / O) จะถูกข้ามไปด้วยเช่นกัน
    • เปลี่ยนวิธีการประมวลผล IPIQ โดยเฉพาะสร้างกลไกเวคเตอร์ Xinterrupt แบบเอกอักซ์สำหรับการ invalidations หน้าซึ่งละเว้น (จะทำงาน) แม้ว่าจะมีส่วนที่สำคัญ ใช้งาน machdep.optimized_invltlb (ปิดใช้งานโดยค่าเริ่มต้นภายใต้การทดสอบ) ซึ่งจะหลีกเลี่ยงการส่ง IPI ที่เป็นโมฆะไปเป็นไม่ใช้งาน
    • แก้ไขการแข่งขันจำนวนมากที่อาจเกิดขึ้นภายใต้แรงสุดขีด กรณีการใช้งานส่วนใหญ่จะไม่เกิดขึ้นเหล่านี้ แต่กล่องของเราสร้างเป็นครั้งคราว ตัวอย่างเช่นมีการแข่งขันสองคำสั่งที่บิตของซีพียูสำหรับ pmap จะถูกล้าง (สำหรับสองคำสั่ง) และทำให้ TLB IPI เกิดขึ้นในเวลาเดียวกันกับซีพียูตัวอื่นสำหรับ pmap เดียวกันเพื่อไม่ให้ทราบว่าซีพียูใช้ pmap . การแก้ไขคือการปิดใช้งานการเพิ่มประสิทธิภาพการโหลด CR3 สำหรับ LWP- & gt; LWP (same proc) switch case.
    • แก้ไขข้อบกพร่องของ HAMMER ซึ่งอาจส่งผลให้เกิดข้อผิดพลาดเกี่ยวกับ DATA CRC ที่รายงานไม่ถูกต้อง
    • แก้ไขการเขียนข้อมูลสองครั้งที่เรียกโดย HAMMER ใช้ cluster_write () ทำให้ประสิทธิภาพการเขียนของ HAMMER ดีขึ้นอย่างมาก
    • มีการล้างข้อมูลและการแก้ไขอื่น ๆ อีกมากมายใน HAMMER ด้วย
    • แก้ไขล็อกฮาร์ดดิสก์ที่อาจเกิดขึ้นใน getpbuf * () เนื่องจากการตีความผิดค่าส่งคืนของ atomic op
    • แก้ไขการขัดจังหวะแบบสแต็กที่อาจเกิดขึ้นในหน้าต่างคำสั่ง 10 คำซึ่งอาจมีอยู่ (แต่ไม่พบในป่า) ที่รันเคอร์เนลสแต็คออก
    • ตัดค่า IPI ที่เกี่ยวข้องในครึ่งหนึ่งสำหรับการดำเนินการแคชบัฟเฟอร์บางอย่างโดยไม่รบกวนการทำ TLB และด้านพลิกกลับทำให้ TLB มีความถูกต้องเมื่อป้อน PTE ใหม่แม้ว่าเนื้อหาก่อนหน้านี้จะไม่ถูกต้องก็ตาม การเพิ่มประสิทธิภาพนี้ช่วยเพิ่มประสิทธิภาพและทำให้การแก้จุดบกพร่องง่ายขึ้นโดยการลบการเพิ่มประสิทธิภาพที่มีปัญหา
    • แก้ไขปัญหาเกี่ยวกับการแข่ง SMP ที่ยากต่อการช็อตโดยเฉพาะอย่างยิ่งที่เกี่ยวข้องกับการทำ umounts พร้อมกันของจุดยึดที่ต่างกันซึ่งอาจทำให้เกิดการสร้างกลุ่มได้ ยังแก้ไขการแข่งขัน mountctl vs umount
    • ลดจำนวนอะตอม ops ในเส้นทางการเปลี่ยน
    • แก้ไขปัญหาการแข่งขัน / ความตื่นตระหนกของ namecache ซึ่งอาจเกิดขึ้นภายใต้การโหลดที่มากเกินไปควบคู่ไปกับกิจกรรม mount / umount มากมาย
    • จำกัด % rip การสุ่มตัวอย่างเป็น root
    • แก้ไขปัญหา getpid () ใน vfork () เมื่อมีเธรด vfork () ในโปรแกรม threaded อาจทำให้ PID ผิดพลาดโดย getpid () ใน child ก่อน exec
    • แก้ไขปัญหาการแข่งขัน / การเรียกสายสั้น ๆ ที่ไม่ค่อยพบในขณะที่ตั้งเวลาเรียกเข้าแฮงเอาท์ก่อนที่จะตั้งค่า
    • การล้างข้อมูลบนแผงควบคุมของ namecache บนคอนโซล โดยเฉพาะรายงานเวลาที่ผ่านไปที่ถูกต้องและ td_comm ของเธรดที่เกี่ยวข้อง
    • ลดการทดสอบหน่วยความจำและการเริ่มต้น zeroing ในช่วงต้นเพื่อปรับปรุงเวลาในการบูตระบบที่มี RAM จำนวนมาก
    • ลบโค้ด zeroing page ที่ไม่ได้ทำงานออกทั้งหมด การ zeroing หน้าบนซีพียูแบบใหม่ตามความต้องการทำได้ดีกว่าด้วยเหตุผลหลายประการและอาจทำงานได้เร็วขึ้นเมื่อรวมกับผู้บริโภคเข้าถึงข้อมูลในหน้าเว็บเนื่องจากผลของแคช นำ PG_ZERO ออกเนื่องจากไม่จำเป็นต้องใช้อีกต่อไป การลบ PG_ZERO จะทำให้เคอร์เนลสามารถแก้ปัญหาได้มากขึ้นโดยการเอาแหล่งที่มาของการปนเปื้อนข้ามอื่น ๆ ออกไป
    • Refactor และดำเนินการติดตั้ง CPU localization สำหรับการจัดสรรหน่วยความจำเคอร์เนล รวมกับการรับรู้ NUMA นี่ทำงานได้กับโครงสร้างข้อมูลเคอร์เนลของซีพียูหรือใช้งานได้นาน ทั้งสองถูกรวมเข้าด้วยกันในนามธรรม PQ_L2_SIZE ของเราที่เคยเป็นรหัสระบายสีของหน้า VM รหัสนี้จะจัดการกับภาษาท้องถิ่นของ CPU และการรับรู้ NUMA ด้วย
    • แก้ไขปัญหา vkernel จำนวนมากและปรับปรุงประสิทธิภาพของ vkernel อย่างมาก
    • อัปเดต kern.proc.pathname ซึ่งเป็นโปรแกรมที่ใช้โดยโปรแกรมเพื่อค้นหาเส้นทางของโปรแกรมที่กำลังทำงานอยู่ sysctl นี้ถูกนำมาใช้ก่อนที่เราจะเก็บข้อมูลที่เพียงพอเพื่อส่งคืนเส้นทางที่ถูกต้อง
    • ซิงค์ ACPICA จาก Intel (นี่คือเหตุการณ์ปกติ)
    • แก้ไขแอสเซมบลีของ memcpy () ABI แอสเซมบลีไม่ส่งคืนอาร์กิวเมนต์เดิม (dst) ไม่สามารถแก้ไขปัญหาที่ทราบ แต่ปิดรูเมื่อ GCC ตัดสินใจที่จะเรียกเมมพิเดียในขณะที่สร้างโค้ด
    • หลายคนมีหน้าที่ในการทำความสะอาดคำเตือนและข้อผิดพลาด O2 เคอร์เนลถูกรวบรวมโดยค่าเริ่มต้น -O2
    • เพิ่มวิธีแก้ไขปัญหาสำหรับผลตอบแทนที่ไม่ถูกต้องในเส้นทาง ACPI (aka buggy ACPI code)
    • แก้ไขการแข่งขัน STOP / CONT ที่อาจถูกเรียกใช้โดยสัญญาณที่รอดำเนินการในเวลาที่ไม่ถูกต้อง
    • แก้ไข coredump แบบเกลียวและแก้ไข lockup ที่เกี่ยวข้องกับหัวข้อเดียวกันเมื่อมีหลายเธรดของกระบวนการเดียวกัน seg-fault ในเวลาเดียวกัน
    • แก้ไขปัญหาการหยุดชะงัก CAM / VM ที่อาจเกิดขึ้นเนื่องจากข้อบกพร่องใน uiomove_nofault () ซึ่งอาจทำให้ 'บัฟเฟอร์รอไม่ จำกัด ' ในระหว่างเพจ / การแลกเปลี่ยนแบบหนา
    • เพิ่มรหัสเพื่อตรวจจับและจัดการกับ IPI ที่สูญหาย นี่เป็นส่วนสำคัญสำหรับ vkernels ที่โฮสต์เสมือนสามารถสูญเสีย IPI ได้ ซีพียูที่แท้จริงไม่ควรสูญเสีย IPIs
    • การแก้ไขต่างๆกับ clock_gettime ()
    • ลบร่องรอยของ MPLOCK เพิ่มเติม เส้นทางที่สำคัญทั้งหมดมีการปลดล็อกจากบล็อกนี้แล้ว แต่ยังคงมีสถานที่ที่ไม่สำคัญจำนวนน้อยที่ใช้งานอยู่
    • ประมวลผลโค้ดการประมวลผลความจำต่ำและแก้ไขจำนวนเชื้อชาติที่สามารถป้องกันไม่ให้คุณลักษณะทำงานได้
    • แก้ไขการล็อกระบบด้วย VMM และรีสตาร์ทโค้ด VMX
    • แก้ไขการหยุดชะงักเมื่อ numvnodes เข้าถึง maxvnodes ซึ่งอาจเกิดขึ้นภายใต้การโหลดที่หนักหน่วง ยังแก้ไขรั่วหน่วยความจำเคอร์เนลเล็กน้อยเมื่อ 'df' หรือซิงค์ระบบแฟ้มแข่งกับ umount ลดการคำนวณ maxvnodes ด้วยความสุภาพ ตัวอย่างเช่นเครื่องที่มี RAM ขนาด 8GB จะตั้งค่า maxvnodes เป็น 478483 แทนที่จะเป็น 598103
    • แก้ไขความตื่นตระหนกที่หาได้ยากซึ่งสามารถเรียกใช้โดย vm_object_page_remove () เมื่อ user_yield () ถูกเรียกไม่ถูกต้องขณะถือ spinlock และตัดสินใจกำหนดเวลาไว้
    • ลดขนาดโครงสร้างเคอร์เนลที่จัดสรรแบบไดนามิก โดยเฉพาะการจัดสรรตาราง hasode ที่มีขนาดใหญ่เกินไปมีขนาดเล็กลง มีผลต่อ UFS โดยส่วนใหญ่ (ซึ่ง DragonFlyBSD ไม่ใช้มากนัก)
    • เพิ่มวิธีแก้ปัญหาสำหรับ AMD erratum 793
    • แก้ไขปัญหาการหยุดชะงักที่อาจเกิดขึ้นได้ในกลุ่ม _ * () การเรียก I / O แบบ stacked
    • แก้ไขข้อบกพร่องที่โหลดโมดูล recursive อาจหยุดชะงัก
    • แก้ไขข้อบกพร่องแบบโง่ ๆ ในโค้ด sillyrename NFS (เซิร์ฟเวอร์ฝั่ง NFS) ซึ่งอาจทำให้โค้ด sillyrename ของเซิร์ฟเวอร์ NFS ไม่เคยลบไฟล์ที่เปลี่ยนโง่ โง่อย่างไร!
    • ทำงานได้ดีขึ้นรองรับการกำหนดค่าสูง ncpu + หน่วยความจำต่ำ
    • Refactor แบ่งปัน spinlocks เพื่อลดจำนวนการปั่นด้ายซึ่งอาจเกิดขึ้นได้เมื่อ CPU หลายตัวได้รับ spinlock ร่วมกันในเวลาเดียวกัน
    • ปรับปรุงการดำเนินงานของ namecache เพื่อลดความขัดแย้งของ SMP ให้ดียิ่งขึ้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพของคอมโพเนนต์เดี่ยวที่ไม่ขัดแย้งกันพร้อม ๆ กันอย่างน้อย 25 เท่าในระบบที่มีแกนหลาย ๆ ตัวและช่วยลดการทำงานของ vnode และ mount ref และการดำเนินงานที่ไม่ได้ใช้งานได้อย่างมาก
    • ตรวจสอบโครงสร้างของเคอร์เนลจำนวนมากเพื่อปรับปรุงพื้นที่แคชและลดการตีกลับของแคช
    • แก้ไขข้อบกพร่องในไฟล์เปลี่ยนชื่อของ SMBFS
    • ใช้ RLIMIT_RSS ตัวประมวลผล RSS แบบต่อกระบวนการซึ่งจะบังคับเพจแยกตามท้องถิ่นบนพื้นฐานของแต่ละกระบวนการ คุณลักษณะนี้สามารถใช้เพื่อป้องกันขั้นตอนหนึ่งจากการเปลี่ยนส่วนที่เหลือของเครื่องให้กลายเป็นกรณีที่ยาก
    • เพิ่มพื้นที่ swap ที่รองรับสูงสุด สูงสุดจะถูก จำกัด โดย ram โดยส่วนใหญ่จะอยู่ในสิบเทราไบต์ (ถ้าคุณมี RAM เพียงพอสำหรับโครงสร้างการจัดการสนับสนุน) เพิ่ม KVM ของเคอร์เนลจาก 128G เป็น 511G
    • ใช้การลบ PMAP แบบไดนามิก (ปิดใช้งานโดยค่าเริ่มต้น) โค้ดนี้จะนำโค้ด pmap ไปใช้เพื่อลบหน้าตารางเพจระดับกลางและ PD จาก pmap ทันที อาจเป็นประโยชน์หากหน่วยความจำมีระดับพรีเมี่ยม แต่โปรดทราบว่าหากเปิดใช้งานจะทำให้โปรแกรมทำงานช้าลงซึ่งจัดสรรและยกเลิกการจัดสรรหน่วยความจำในอัตราที่สูง
    • ปรับแต่งระดับการใช้งานของผู้ใช้ที่ 'ดี' ทำให้ค่าที่เลือกที่ดีกว่าที่เคยเป็นมา
    • เพิ่มไดรเวอร์ NVME แบบเดิมที่มีประสิทธิภาพสูงไปยัง DragonFly ที่เขียนโดยแมตต์ดิลลอน ไดรเวอร์นี้จะใช้เวกเตอร์ MSI-X และคิวที่มีอยู่ทั้งหมดที่อุปกรณ์รองรับการกำหนดตำแหน่งต่อ CPU โดยไม่มีการล็อคหรือการล็อกที่น้อยที่สุด (ไม่มีข้อขัดแย้ง SMP ในกรณีส่วนใหญ่) และมีความสามารถในการ IOPS และการส่งผ่านข้อมูลที่ผิดพลาด
    • Graphics:
    • ทำให้ Broadwell และ Skylake มีเสถียรภาพนำเราไปสู่ ​​DRM เทียบเท่ากับ Linux 4.6
    • ใช้ Linux i2c API เพื่อทำให้การย้ายข้อมูลเป็นเรื่องง่ายขึ้น
    • แก้ไขข้อผิดพลาดบางอย่างเก่ารวมถึงการกลับรายการคำสั่งซื้อที่ล็อกได้ซึ่งอาจทำให้การเล่นวิดีโอไม่หยุดชะงัก (และส่วนที่เหลือของ X)
    • แก้ไขข้อผิดพลาดลำดับความสำคัญของเธรด kernel drm ที่อนุญาตให้กระบวนการของผู้ใช้มีลำดับความสำคัญสูงกว่าเธรดของผู้ช่วย drm การแก้ไขปัญหาแผงควบคุมวิดีโอชั่วคราวส่วนใหญ่ที่รายงานในเบราว์เซอร์
    • จัดการ framebuffer EFI ผ่าน DRM ปรับปรุงการสลับ VT ของ syscons และแก้ไขปัญหาการหยุดชะงักที่เกี่ยวข้อง นอกจากนี้เคอร์เนลยังพยายามที่จะเปลี่ยนกลับไปที่คอนโซล VT จาก X เมื่อเกิดความตื่นตระหนก
    • เครือข่าย:
    • มีการปรับปรุงมากมายทั่วทั้งคณะ
    • iwm - แก้ไขปัญหาที่เกิดจากเหตุผลทางกลับกัน การปรับปรุงอื่น ๆ อีกมากมายที่ช่วยปรับปรุงประสิทธิภาพได้เป็นอย่างมาก
    • wlan - รองรับการสแกนแบบ Asynchronous bg และเพิ่มคุณสมบัติอื่น ๆ
    • ไดรเวอร์อื่น ๆ :
    • nvme - เพิ่มลงในการสร้างเคอร์เนลเริ่มต้นบวกการแก้ไขและการปรับปรุงประสิทธิภาพ
    • mmcsd - การสนับสนุน eMMC ที่สำคัญที่เพิ่มลงใน DragonFly
    • ahci - การปรับเปลี่ยนความเข้ากันได้บางอย่างและ quirks เพิ่มเติมเพิ่มเพื่อสนับสนุน chipsets เสียในตัวคูณพอร์ตโดยเฉพาะ ใช้ FBS (FIS-Based-Switching) เมื่อได้รับการสนับสนุนจากชิปเซ็ต
    • เพิ่มการสนับสนุน Trackpoint และ Elantech
    • Userland:
    • systat เพิ่มขึ้นเพื่อขัดจังหวะการขัดจังหวะหลายครั้งที่อยู่ในโปรแกรมควบคุมเดียวกันเนื่องจากมักจะมีรายการมากเกินไปในรายการ
    • systat -vm 1 ได้รับการปรับปรุงและปรับปรุงใหม่อย่างมากเพื่อรายงานข้อมูลที่เป็นประโยชน์มากขึ้นและเพื่อแกะกล่องข้อมูลเพื่อไม่ให้เกิดการชนกัน และเพิ่ม 'nvme' เพื่อจับคู่อุปกรณ์บล็อก ปรับการแสดงผล vmstats แบบขยายและเปลี่ยนวิธีรายงาน ozfod และ nzfod

    • 'รีมาร์เก็ตติ้ง' vmstat 1 ' ทุ่งนาทั้งหมดกำลังวิ่งเข้าหากันเนื่องจากประสิทธิภาพของโองการเครื่องสมัยใหม่ที่เกิดขึ้นเมื่อ 30 ปีก่อน
    • เปลี่ยนการส่งสัญญาณ mount / mountd เพื่อลดการสแกนและคำสั่ง mountlist ที่ไม่จำเป็นจากการดำเนินการ mount_null และ mount_tmpfs เฉพาะเรื่องที่เกิดขึ้นภายใต้การใช้ mount / umount ร่วมกันเป็นจำนวนมากเท่านั้น แต่การสร้างแบบกลุ่มจะสร้างสถานการณ์นั้นขึ้นอย่างจริงจัง
    • แก้ไขรั่วไหลของฟอร์ก / exec * () ที่ libc สามารถเรียกใช้เนื่องจากไม่ใช้ O_CLOEXEC ในแบบอะตอม เพิ่มคุณสมบัติต่างๆของ O_CLOEXEC ลงในฟังก์ชันเช่น popen () และ mk * stemp * () (เพิ่ม mkostemp () และ mkostemps ()) แก้ไขไฟล์ descriptor descriptor ที่รั่วไหลใน popen () เมื่อทำงานในสภาวะแวดล้อมแบบมีเธรด
    • ดีกว่าที่จะ pthreads ใน vfork () โดยให้ sub-process ใหม่ lwp TID เดียวกับที่เรียกว่า vfork () อนุญาตให้ฟังก์ชันการสนับสนุน pthread ทำงานได้ในเด็กระหว่าง vfork โดยไม่ทำให้เกิด pthreads
    • การแก้ไขปัญหาความเข้ากันได้กับส่วนหัวเพื่อปรับปรุง dports ที่สร้างขึ้นเป็นจำนวนมาก
    • การนำเข้า OpenSSL หลายรายการสำหรับการแก้ไขด้านความปลอดภัย
    • Resync OpenSSH เพื่อให้สามารถเก็บข้อมูลอัปเดตได้ง่ายขึ้น
    • แยกเคอร์เนล C ออกจากเคอร์เนลโดยใช้ KCFLAGS แทน CFLAGS
    • ลบไดรเวอร์ ISA เก่าจำนวนมากจากต้นไม้ทั้งหมด เนื่องจาก DragonFlyBSD มีเฉพาะ 64 บิตเท่านั้นเราจึงสามารถเริ่มนำไดรเวอร์เก่าที่ไม่มีอยู่ในแพลตฟอร์ม 64 บิตออกได้
    • แนะนำ WORLD_CFLAGS และ WORLD_CCOPTLEVEL โดยค่าเริ่มต้นเป็น -O วิธีนี้ทำให้การรวบรวมข้อมูลโลก -O2 หรือสิ่งอื่น ๆ ได้ง่ายขึ้น (เช่น WORLD_CCOPTLEVEL = 2) อย่างไรก็ตามเราไม่สนับสนุนการใช้งาน 3 ขึ้นไป ค่าที่ถูกต้องคือ 0, 1, 2, 3, s, g และ 'fast'
    • ปรับการจัดรูปแบบ STATUS สำหรับ ps เพื่อให้สามารถอ่านได้ง่ายขึ้นและลบธงโบราณที่ไม่สามารถใช้ได้อีกต่อไปและสร้างความยุ่งเหยิง
    • แก้ไขการจัดตำแหน่ง malloc () สำหรับการจัดสรรขนาดเล็ก การจัดตำแหน่งต่ำสุดคือตอนนี้ 16 การจัดสรรอยู่ในช่วง 16-128 ไบต์แทน 8. หมายเหตุว่าอำนาจของ 2 จัดสรรได้รับเสมอชิดธรรมชาติ แต่บางโปรแกรมใช้หลายรายการ (เช่น) 16 เช่น '48' และ สมมติว่ามีการจัดตำแหน่ง 16 ไบต์
    • เพิ่มคำสบประมาทแล้วเพิ่ม
    • powerd - เพิ่มการจัดการตามอุณหภูมิเพื่อ powerd ด้วยตัวเลือกใหม่ -H lotemp: hightemp คุณลักษณะนี้มีประโยชน์อย่างมากสำหรับแล็ปท็อปที่มีการระบายความร้อนที่ไม่ดีและ BIOSs whos ตั้งใจเค้นที่อุณหภูมิสูงเกินไป ขณะนี้ Powerd ยังตรวจจับการเปลี่ยนแปลงสถานะพลังงาน (ซึ่งสามารถเปลี่ยนความถี่ของความถี่ที่มี) และเปลี่ยนการบริการได้อย่างถูกต้องเมื่อมีการเปลี่ยนแปลงสถานะพลังงาน
    • Lots of libthread_xu / pthreads แก้ไขและปรับปรุงเพื่อปรับปรุงความเข้ากันได้ของ dports
    • เพิ่มคุณสมบัติการคัดลอกลงใน vkernel ตัวอย่างเช่นอนุญาตให้ใช้ vkernels หลายรูปแบบเพื่อใช้ภาพดิสก์ตัวเดียวได้โดยการปรับเปลี่ยน COW แต่ละตัวไปเป็น ram
    • / usr / src / ความปลอดภัยที่เชื่อมต่ออยู่ความขัดแย้งที่ถูกลบออกจาก libmd, libcrypt
    • เครื่องมือต่างๆได้รับการอัปเกรดในระบบฐาน:
    • คอมไพเลอร์อัปเดตไปที่ GCC 5.4.1 แล้ว
    • ขณะนี้เรามีผู้ประสานงานทองกับ LTO แล้ว
    • binutils 2.25
    • น้อยกว่า 481
    • OpenSSL / LibRESSL ปรับปรุงใหม่อย่างสมบูรณ์ ฐานใช้ libressl แล้ว
    • อัปเดตเขตเวลาหลายรายการ
    • สถานะค้อน:
    • การปรับปรุงเบ็ดเตล็ด สิ่งหนึ่งที่ไม่ได้ทำให้กลายเป็นรุ่นที่เผยแพร่คือการชนรุ่นเพื่อใช้อัลกอริธึม CRC ที่รวดเร็วขึ้นด้วยพหุนามที่แตกต่างกัน งานนี้จะเป็น MFC'd เพื่อให้ได้รับเมื่อการทดสอบเสร็จสิ้น อย่างไรก็ตามผู้ใช้ไม่ควรกังวลเรื่องนี้มากนักเนื่องจากมีการแก้ไขปัญหาประสิทธิภาพที่ร้ายแรงที่สุดในรุ่น (แก้ไขโค้ด cluster_write () สำหรับระบบไฟล์ที่เขียน)
    • Hammer2 สถานะ:
    • การพัฒนายังคงดำเนินต่อไป แต่ยังไม่มีคำใดในการเผยแพร่ครั้งแรก
    • สถานะฉาง:
    • มีการเพิ่มกรอบเริ่มต้นสำหรับการใช้ clang เป็นคอมไพเลอร์ฐานอื่นใน DragonFly เพื่อแทนที่ gcc 4.7 ยังไม่เสร็จสมบูรณ์ คุณสามารถเพิ่ม Clang ได้ในรูปแบบแพคเกจ
    • สถานะ 64 บิต:
    • โปรดทราบว่า DragonFly เป็นระบบปฏิบัติการแบบ 64 บิตเท่านั้นเมื่อใช้เวอร์ชัน 4.6 และจะไม่ทำงานบนฮาร์ดแวร์แบบ 32 บิต
    • การสนับสนุน AMD Ryzen กำลังอยู่ระหว่างการเปิดตัวและการพัฒนาเพิ่มเติมของ Ryzen จะเกิดขึ้นต่อไป มีปัญหา CPU-reported-topology บางอย่างที่จะแก้ไขและ MFC'd ปัญหาเสถียรภาพบางอย่างกำลังรอการอัปเดตของไมโครโปรเซสเซอร์ AMD เพื่อแก้ไข / สอบซ่อม ผู้ใช้ Ryzen สามารถมั่นใจได้ว่าเราจะอยู่เคียงข้างคุณ!

    • มีอะไรใหม่ ในเวอร์ชัน 4.8.0:

      • Kernel:
      • โค้ดแคชแคชของ Refactor เพื่อลบการจอง KVA แบบไดนามิก แต่ KVA ทั้งหมดจะถูกสงวนไว้ในเวลาบูต บันทึกเราจาก IPI ที่ไม่จำเป็นและช่วยให้สามารถใช้งานโค้ดแคชแคชได้อย่างมีนัยสำคัญ
      • เพิ่ม vfs.repurpose_enable (ภายใต้การทดสอบปิดการใช้งานตามค่าเริ่มต้น) คุณลักษณะนี้สามารถเปิดใช้งานเพื่อลดภาระการจัดการ IPI และ VM ลงบนเครื่องซึ่งกำลังทำไฟล์ I / O จำนวนมากเช่นจาก NVMe SSD โดยการหลีกเลี่ยงกลไกการรีไซเคิลเพจ VM ทั่วไป เมื่อเปิดใช้คุณลักษณะนี้จะเรียกเฉพาะเมื่อโหลด I / O สูงเท่านั้น ทำงานโดย repurposing หน้า VM ต้นแบบบัฟเฟอร์ในสถานที่ (เมื่อเป็นไปได้) เพื่อที่จะไม่ต้อง kremove / kenter หน้าใน KVA บัฟเฟอร์ การรีไซเคิลหน้าเว็บ VM ปกติ (ซึ่งอาจถูกทำให้ล้นหลามด้วยการโหลด I / O) จะถูกข้ามไปด้วยเช่นกัน
      • เปลี่ยนวิธีการประมวลผล IPIQ โดยเฉพาะสร้างกลไกเวคเตอร์ Xinterrupt แบบเอกอักซ์สำหรับการ invalidations หน้าซึ่งละเว้น (จะทำงาน) แม้ว่าจะมีส่วนที่สำคัญ ใช้งาน machdep.optimized_invltlb (ปิดใช้งานโดยค่าเริ่มต้นภายใต้การทดสอบ) ซึ่งจะหลีกเลี่ยงการส่ง IPI ที่เป็นโมฆะไปเป็นไม่ได้ใช้งาน
      • แก้ไขการแข่งขันจำนวนมากที่อาจเกิดขึ้นภายใต้แรงสุดขีด กรณีการใช้งานส่วนใหญ่จะไม่เกิดขึ้นเหล่านี้ แต่กล่องของเราสร้างเป็นครั้งคราว ตัวอย่างเช่นมีการแข่งขันสองคำสั่งที่บิตของซีพียูสำหรับ pmap จะถูกล้าง (สำหรับสองคำสั่ง) และทำให้ TLB IPI เกิดขึ้นในเวลาเดียวกันกับซีพียูตัวอื่นสำหรับ pmap เดียวกันเพื่อไม่ให้ทราบว่าซีพียูใช้ pmap . การแก้ไขคือการปิดใช้งานการเพิ่มประสิทธิภาพการโหลด CR3 สำหรับ LWP- & gt; LWP (same proc) switch case.
      • แก้ไขข้อบกพร่องของ HAMMER ซึ่งอาจส่งผลให้เกิดข้อผิดพลาดเกี่ยวกับ DATA CRC ที่รายงานไม่ถูกต้อง
      • แก้ไขการเขียนข้อมูลสองครั้งที่เรียกโดย HAMMER ใช้ cluster_write () ทำให้ประสิทธิภาพการเขียนของ HAMMER ดีขึ้นอย่างมาก
      • มีการล้างข้อมูลและการแก้ไขอื่น ๆ อีกมากมายใน HAMMER ด้วย
      • แก้ไขล็อกฮาร์ดดิสก์ที่อาจเกิดขึ้นใน getpbuf * () เนื่องจากการตีความผิดค่าส่งคืนของ atomic op
      • แก้ไขการขัดจังหวะแบบสแต็กที่อาจเกิดขึ้นในหน้าต่างคำสั่ง 10 คำซึ่งอาจมีอยู่ (แต่ไม่พบในป่า) ที่รันเคอร์เนลสแต็คออก
      • ตัดค่า IPI ที่เกี่ยวข้องในครึ่งหนึ่งสำหรับการดำเนินการแคชบัฟเฟอร์บางอย่างโดยไม่รบกวนการทำ TLB และด้านพลิกกลับทำให้ TLB มีความถูกต้องเมื่อป้อน PTE ใหม่แม้ว่าเนื้อหาก่อนหน้านี้จะไม่ถูกต้องก็ตาม การเพิ่มประสิทธิภาพนี้ช่วยเพิ่มประสิทธิภาพและทำให้การแก้จุดบกพร่องง่ายขึ้นโดยการลบการเพิ่มประสิทธิภาพที่มีปัญหา
      • แก้ไขปัญหาเกี่ยวกับการแข่ง SMP ที่ยากต่อการช็อตโดยเฉพาะอย่างยิ่งที่เกี่ยวข้องกับการทำ umounts พร้อมกันของจุดยึดที่ต่างกันซึ่งอาจทำให้เกิดการสร้างกลุ่มได้ ยังแก้ไขการแข่งขัน mountctl vs umount
      • ลดจำนวนอะตอม ops ในเส้นทางการเปลี่ยน
      • แก้ไขปัญหาการแข่งขัน / ความตื่นตระหนกของ namecache ซึ่งอาจเกิดขึ้นภายใต้การโหลดที่มากเกินไปควบคู่ไปกับกิจกรรม mount / umount มากมาย
      • จำกัด % rip การสุ่มตัวอย่างเป็น root
      • แก้ไขปัญหา getpid () ใน vfork () เมื่อมีเธรด vfork () ในโปรแกรม threaded อาจทำให้ PID ผิดพลาดโดย getpid () ใน child ก่อน exec
      • แก้ไขปัญหาการแข่งขัน / การเรียกสายสั้น ๆ ที่ไม่ค่อยพบในขณะที่ตั้งเวลาเรียกเข้าแฮงเอาท์ก่อนที่จะตั้งค่า
      • การล้างข้อมูลบนแผงควบคุมของ namecache บนคอนโซล โดยเฉพาะรายงานเวลาที่ผ่านไปที่ถูกต้องและ td_comm ของเธรดที่เกี่ยวข้อง
      • ลดการทดสอบหน่วยความจำและการเริ่มต้น zeroing ในช่วงต้นเพื่อปรับปรุงเวลาในการบูตระบบที่มี RAM จำนวนมาก
      • ลบโค้ด zeroing page ที่ไม่ได้ทำงานออกทั้งหมด การ zeroing หน้าบนซีพียูแบบใหม่ตามความต้องการทำได้ดีกว่าด้วยเหตุผลหลายประการและอาจทำงานได้เร็วขึ้นเมื่อรวมกับผู้บริโภคเข้าถึงข้อมูลในหน้าเว็บเนื่องจากผลของแคช นำ PG_ZERO ออกเนื่องจากไม่จำเป็นต้องใช้อีกต่อไป การลบ PG_ZERO จะทำให้เคอร์เนลสามารถแก้ปัญหาได้มากขึ้นโดยการเอาแหล่งที่มาของการปนเปื้อนข้ามอื่น ๆ ออกไป
      • Refactor และดำเนินการติดตั้ง CPU localization สำหรับการจัดสรรหน่วยความจำเคอร์เนล รวมกับการรับรู้ NUMA นี่ทำงานได้กับโครงสร้างข้อมูลเคอร์เนลของซีพียูหรือใช้งานได้นาน ทั้งสองถูกรวมเข้าด้วยกันในนามธรรม PQ_L2_SIZE ของเราที่เคยเป็นรหัสระบายสีของหน้า VM รหัสนี้จะจัดการกับภาษาท้องถิ่นของ CPU และการรับรู้ NUMA ด้วย
      • แก้ไขปัญหา vkernel จำนวนมากและปรับปรุงประสิทธิภาพของ vkernel อย่างมาก
      • อัปเดต kern.proc.pathname ซึ่งเป็นโปรแกรมที่ใช้โดยโปรแกรมเพื่อค้นหาเส้นทางของโปรแกรมที่กำลังทำงานอยู่ sysctl นี้ถูกนำมาใช้ก่อนที่เราจะเก็บข้อมูลที่เพียงพอเพื่อส่งคืนเส้นทางที่ถูกต้อง
      • ซิงค์ ACPICA จาก Intel (นี่คือเหตุการณ์ปกติ)
      • แก้ไขแอสเซมบลีของ memcpy () ABI แอสเซมบลีไม่ส่งคืนอาร์กิวเมนต์เดิม (dst) ไม่สามารถแก้ไขปัญหาที่ทราบ แต่ปิดรูเมื่อ GCC ตัดสินใจที่จะเรียกเมมพิเดียในขณะที่สร้างโค้ด
      • หลายคนมีหน้าที่ในการทำความสะอาดคำเตือนและข้อผิดพลาด O2 เคอร์เนลถูกรวบรวมโดยค่าเริ่มต้น -O2
      • เพิ่มวิธีแก้ไขปัญหาสำหรับผลตอบแทนที่ไม่ถูกต้องในเส้นทาง ACPI (aka buggy ACPI code)
      • แก้ไขการแข่งขัน STOP / CONT ที่อาจถูกเรียกใช้โดยสัญญาณที่รอดำเนินการในเวลาที่ไม่ถูกต้อง
      • แก้ไข coredump แบบเกลียวและแก้ไข lockup ที่เกี่ยวข้องกับหัวข้อเดียวกันเมื่อมีหลายเธรดของกระบวนการเดียวกัน seg-fault ในเวลาเดียวกัน
      • แก้ไขปัญหาการหยุดชะงัก CAM / VM ที่อาจเกิดขึ้นเนื่องจากข้อบกพร่องใน uiomove_nofault () ซึ่งอาจทำให้ 'บัฟเฟอร์รอไม่ จำกัด ' ในระหว่างเพจ / การแลกเปลี่ยนแบบหนา
      • เพิ่มรหัสเพื่อตรวจจับและจัดการกับ IPI ที่สูญหาย นี่เป็นส่วนสำคัญสำหรับ vkernels ที่โฮสต์เสมือนสามารถสูญเสีย IPI ได้ ซีพียูที่แท้จริงไม่ควรสูญเสีย IPIs
      • การแก้ไขต่างๆกับ clock_gettime ()
      • ลบร่องรอยของ MPLOCK เพิ่มเติม เส้นทางที่สำคัญทั้งหมดมีการปลดล็อกจากบล็อกนี้แล้ว แต่ยังคงมีสถานที่ที่ไม่สำคัญจำนวนน้อยที่ใช้งานอยู่
      • ประมวลผลโค้ดการประมวลผลความจำต่ำและแก้ไขจำนวนเชื้อชาติที่สามารถป้องกันไม่ให้คุณลักษณะทำงานได้
      • แก้ไขการล็อกระบบด้วย VMM และรีสตาร์ทโค้ด VMX
      • แก้ไขการหยุดชะงักเมื่อ numvnodes เข้าถึง maxvnodes ซึ่งอาจเกิดขึ้นภายใต้การโหลดที่หนักหน่วง ยังแก้ไขรั่วหน่วยความจำเคอร์เนลเล็กน้อยเมื่อ 'df' หรือซิงค์ระบบแฟ้มแข่งกับ umount ลดการคำนวณ maxvnodes ด้วยความสุภาพ ตัวอย่างเช่นเครื่องที่มี RAM ขนาด 8GB จะตั้งค่า maxvnodes เป็น 478483 แทนที่จะเป็น 598103
      • แก้ไขความตื่นตระหนกที่หาได้ยากซึ่งสามารถเรียกใช้โดย vm_object_page_remove () เมื่อ user_yield () ถูกเรียกไม่ถูกต้องขณะถือ spinlock และตัดสินใจกำหนดเวลาไว้
      • ลดขนาดโครงสร้างเคอร์เนลที่จัดสรรแบบไดนามิก โดยเฉพาะการจัดสรรตาราง hasode ที่มีขนาดใหญ่เกินไปมีขนาดเล็กลง มีผลต่อ UFS โดยส่วนใหญ่ (ซึ่ง DragonFlyBSD ไม่ใช้มากนัก)
      • เพิ่มวิธีแก้ปัญหาสำหรับ AMD erratum 793
      • แก้ไขปัญหาการหยุดชะงักที่อาจเกิดขึ้นได้ในกลุ่ม _ * () การเรียก I / O แบบ stacked
      • แก้ไขข้อบกพร่องที่โหลดโมดูล recursive อาจหยุดชะงัก
      • แก้ไขข้อบกพร่องแบบโง่ ๆ ในโค้ด sillyrename NFS (เซิร์ฟเวอร์ฝั่ง NFS) ซึ่งอาจทำให้โค้ด sillyrename ของเซิร์ฟเวอร์ NFS ไม่เคยลบไฟล์ที่เปลี่ยนโง่ โง่อย่างไร!
      • ทำงานได้ดีขึ้นรองรับการกำหนดค่าสูง ncpu + หน่วยความจำต่ำ
      • Refactor แบ่งปัน spinlocks เพื่อลดจำนวนการปั่นด้ายซึ่งอาจเกิดขึ้นได้เมื่อ CPU หลายตัวได้รับ spinlock ร่วมกันในเวลาเดียวกัน
      • ปรับปรุงการดำเนินงานของ namecache เพื่อลดความขัดแย้งของ SMP ให้ดียิ่งขึ้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพของคอมโพเนนต์เดี่ยวที่ไม่ขัดแย้งกันพร้อม ๆ กันอย่างน้อย 25 เท่าในระบบที่มีแกนหลาย ๆ ตัวและช่วยลดการทำงานของ vnode และ mount ref และการดำเนินงานที่ไม่ได้ใช้งานได้อย่างมาก
      • ตรวจสอบโครงสร้างของเคอร์เนลจำนวนมากเพื่อปรับปรุงพื้นที่แคชและลดการตีกลับของแคช
      • แก้ไขข้อบกพร่องในไฟล์เปลี่ยนชื่อของ SMBFS
      • ใช้ RLIMIT_RSS ตัวประมวลผล RSS แบบต่อกระบวนการซึ่งจะบังคับเพจแยกตามท้องถิ่นบนพื้นฐานของแต่ละกระบวนการ คุณลักษณะนี้สามารถใช้เพื่อป้องกันขั้นตอนหนึ่งจากการเปลี่ยนส่วนที่เหลือของเครื่องให้กลายเป็นกรณีที่ยาก
      • เพิ่มพื้นที่ swap ที่รองรับสูงสุด สูงสุดจะถูก จำกัด โดย ram โดยส่วนใหญ่จะอยู่ในสิบเทราไบต์ (ถ้าคุณมี RAM เพียงพอสำหรับโครงสร้างการจัดการสนับสนุน) เพิ่ม KVM ของเคอร์เนลจาก 128G เป็น 511G
      • ใช้การลบ PMAP แบบไดนามิก (ปิดใช้งานโดยค่าเริ่มต้น) โค้ดนี้จะนำโค้ด pmap ไปใช้เพื่อลบหน้าตารางเพจระดับกลางและ PD จาก pmap ทันที อาจเป็นประโยชน์หากหน่วยความจำมีระดับพรีเมี่ยม แต่โปรดทราบว่าหากเปิดใช้งานจะทำให้โปรแกรมทำงานช้าลงซึ่งจัดสรรและยกเลิกการจัดสรรหน่วยความจำในอัตราที่สูง
      • ปรับแต่งระดับการใช้งานของผู้ใช้ที่ 'ดี' ทำให้ค่าที่เลือกที่ดีกว่าที่เคยเป็นมา
      • เพิ่มไดรเวอร์ NVME แบบเดิมที่มีประสิทธิภาพสูงไปยัง DragonFly ที่เขียนโดยแมตต์ดิลลอน ไดรเวอร์นี้จะใช้เวกเตอร์ MSI-X และคิวที่มีอยู่ทั้งหมดที่อุปกรณ์รองรับการกำหนดตำแหน่งต่อ CPU โดยไม่มีการล็อคหรือการล็อกที่น้อยที่สุด (ไม่มีข้อขัดแย้ง SMP ในกรณีส่วนใหญ่) และมีความสามารถในการ IOPS และการส่งผ่านข้อมูลที่ผิดพลาด
      • Graphics:
      • ทำให้ Broadwell และ Skylake มีเสถียรภาพนำเราไปสู่ ​​DRM เทียบเท่ากับ Linux 4.6
      • ใช้ Linux i2c API เพื่อทำให้การย้ายข้อมูลเป็นเรื่องง่ายขึ้น
      • แก้ไขข้อผิดพลาดบางอย่างเก่ารวมถึงการกลับรายการคำสั่งซื้อที่ล็อกได้ซึ่งอาจทำให้การเล่นวิดีโอไม่หยุดชะงัก (และส่วนที่เหลือของ X)
      • แก้ไขข้อผิดพลาดลำดับความสำคัญของเธรด kernel drm ที่อนุญาตให้กระบวนการของผู้ใช้มีลำดับความสำคัญสูงกว่าเธรดของผู้ช่วย drm การแก้ไขปัญหาแผงควบคุมวิดีโอชั่วคราวส่วนใหญ่ที่รายงานในเบราว์เซอร์
      • จัดการ framebuffer EFI ผ่าน DRM ปรับปรุงการสลับ VT ของ syscons และแก้ไขปัญหาการหยุดชะงักที่เกี่ยวข้อง นอกจากนี้เคอร์เนลยังพยายามที่จะเปลี่ยนกลับไปที่คอนโซล VT จาก X เมื่อเกิดความตื่นตระหนก
      • เครือข่าย:
      • มีการปรับปรุงมากมายทั่วทั้งคณะ
      • iwm - แก้ไขปัญหาที่เกิดจากเหตุผลทางกลับกัน การปรับปรุงอื่น ๆ อีกมากมายที่ช่วยปรับปรุงประสิทธิภาพได้เป็นอย่างมาก
      • wlan - รองรับการสแกนแบบ Asynchronous bg และเพิ่มคุณสมบัติอื่น ๆ
      • ไดรเวอร์อื่น ๆ :
      • nvme - เพิ่มลงในการสร้างเคอร์เนลเริ่มต้นบวกการแก้ไขและการปรับปรุงประสิทธิภาพ
      • mmcsd - การสนับสนุน eMMC ที่สำคัญที่เพิ่มลงใน DragonFly
      • ahci - การปรับเปลี่ยนความเข้ากันได้บางอย่างและ quirks เพิ่มเติมเพิ่มเพื่อสนับสนุน chipsets เสียในตัวคูณพอร์ตโดยเฉพาะ ใช้ FBS (FIS-Based-Switching) เมื่อได้รับการสนับสนุนจากชิปเซ็ต
      • เพิ่มการสนับสนุน Trackpoint และ Elantech
      • Userland:
      • systat เพิ่มขึ้นเพื่อขัดจังหวะการขัดจังหวะหลายครั้งที่อยู่ในโปรแกรมควบคุมเดียวกันเนื่องจากมักจะมีรายการมากเกินไปในรายการ
      • systat -vm 1 ได้รับการปรับปรุงและปรับปรุงใหม่อย่างมากเพื่อรายงานข้อมูลที่เป็นประโยชน์มากขึ้นและเพื่อแกะกล่องข้อมูลเพื่อไม่ให้เกิดการชนกัน และเพิ่ม 'nvme' เพื่อจับคู่อุปกรณ์บล็อก ปรับการแสดงผล vmstats แบบขยายและเปลี่ยนวิธีรายงาน ozfod และ nzfod

      • 'รีมาร์เก็ตติ้ง' vmstat 1 ' ทุ่งนาทั้งหมดกำลังวิ่งเข้าหากันเนื่องจากประสิทธิภาพของโองการเครื่องสมัยใหม่ที่เกิดขึ้นเมื่อ 30 ปีก่อน
      • เปลี่ยนการส่งสัญญาณ mount / mountd เพื่อลดการสแกนและคำสั่ง mountlist ที่ไม่จำเป็นจากการดำเนินการ mount_null และ mount_tmpfs เฉพาะเรื่องที่เกิดขึ้นภายใต้การใช้ mount / umount ร่วมกันเป็นจำนวนมากเท่านั้น แต่การสร้างแบบกลุ่มจะสร้างสถานการณ์นั้นขึ้นอย่างจริงจัง
      • แก้ไขรั่วไหลของฟอร์ก / exec * () ที่ libc สามารถเรียกใช้เนื่องจากไม่ใช้ O_CLOEXEC ในแบบอะตอม เพิ่มคุณสมบัติต่างๆของ O_CLOEXEC ลงในฟังก์ชันเช่น popen () และ mk * stemp * () (เพิ่ม mkostemp () และ mkostemps ()) แก้ไขไฟล์ descriptor descriptor ที่รั่วไหลใน popen () เมื่อทำงานในสภาวะแวดล้อมแบบมีเธรด
      • ดีกว่าที่จะ pthreads ใน vfork () โดยให้ sub-process ใหม่ lwp TID เดียวกับที่เรียกว่า vfork () อนุญาตให้ฟังก์ชันการสนับสนุน pthread ทำงานได้ในเด็กระหว่าง vfork โดยไม่ทำให้เกิด pthreads
      • การแก้ไขปัญหาความเข้ากันได้กับส่วนหัวเพื่อปรับปรุง dports ที่สร้างขึ้นเป็นจำนวนมาก
      • การนำเข้า OpenSSL หลายรายการสำหรับการแก้ไขด้านความปลอดภัย
      • Resync OpenSSH เพื่อให้สามารถเก็บข้อมูลอัปเดตได้ง่ายขึ้น
      • แยกเคอร์เนล C ออกจากเคอร์เนลโดยใช้ KCFLAGS แทน CFLAGS
      • ลบไดรเวอร์ ISA เก่าจำนวนมากจากต้นไม้ทั้งหมด เนื่องจาก DragonFlyBSD มีเฉพาะ 64 บิตเท่านั้นเราจึงสามารถเริ่มนำไดรเวอร์เก่าที่ไม่มีอยู่ในแพลตฟอร์ม 64 บิตออกได้
      • แนะนำ WORLD_CFLAGS และ WORLD_CCOPTLEVEL โดยค่าเริ่มต้นเป็น -O วิธีนี้ทำให้การรวบรวมข้อมูลโลก -O2 หรือสิ่งอื่น ๆ ได้ง่ายขึ้น (เช่น WORLD_CCOPTLEVEL = 2) อย่างไรก็ตามเราไม่สนับสนุนการใช้งาน 3 ขึ้นไป ค่าที่ถูกต้องคือ 0, 1, 2, 3, s, g และ 'fast'
      • ปรับการจัดรูปแบบ STATUS สำหรับ ps เพื่อให้สามารถอ่านได้ง่ายขึ้นและลบธงโบราณที่ไม่สามารถใช้ได้อีกต่อไปและสร้างความยุ่งเหยิง
      • แก้ไขการจัดตำแหน่ง malloc () สำหรับการจัดสรรขนาดเล็ก การจัดตำแหน่งต่ำสุดคือตอนนี้ 16 การจัดสรรอยู่ในช่วง 16-128 ไบต์แทน 8. หมายเหตุว่าอำนาจของ 2 จัดสรรได้รับเสมอชิดธรรมชาติ แต่บางโปรแกรมใช้หลายรายการ (เช่น) 16 เช่น '48' และ สมมติว่ามีการจัดตำแหน่ง 16 ไบต์
      • เพิ่มคำสบประมาทแล้วเพิ่ม
      • powerd - เพิ่มการจัดการตามอุณหภูมิเพื่อ powerd ด้วยตัวเลือกใหม่ -H lotemp: hightemp คุณลักษณะนี้มีประโยชน์อย่างมากสำหรับแล็ปท็อปที่มีการระบายความร้อนที่ไม่ดีและ BIOSs whos ตั้งใจเค้นที่อุณหภูมิสูงเกินไป ขณะนี้ Powerd ยังตรวจจับการเปลี่ยนแปลงสถานะพลังงาน (ซึ่งสามารถเปลี่ยนความถี่ของความถี่ที่มี) และเปลี่ยนการบริการได้อย่างถูกต้องเมื่อมีการเปลี่ยนแปลงสถานะพลังงาน
      • Lots of libthread_xu / pthreads แก้ไขและปรับปรุงเพื่อปรับปรุงความเข้ากันได้ของ dports
      • เพิ่มคุณสมบัติการคัดลอกลงใน vkernel ตัวอย่างเช่นอนุญาตให้ใช้ vkernels หลายรูปแบบเพื่อใช้ภาพดิสก์ตัวเดียวได้โดยการปรับเปลี่ยน COW แต่ละตัวไปเป็น ram
      • / usr / src / ความปลอดภัยที่เชื่อมต่ออยู่ความขัดแย้งที่ถูกลบออกจาก libmd, libcrypt
      • เครื่องมือต่างๆได้รับการอัปเกรดในระบบฐาน:
      • คอมไพเลอร์อัปเดตไปที่ GCC 5.4.1 แล้ว
      • ขณะนี้เรามีผู้ประสานงานทองกับ LTO แล้ว
      • binutils 2.25
      • น้อยกว่า 481
      • OpenSSL / LibRESSL ปรับปรุงใหม่อย่างสมบูรณ์ ฐานใช้ libressl แล้ว
      • อัปเดตเขตเวลาหลายรายการ
      • สถานะค้อน:
      • การปรับปรุงเบ็ดเตล็ด สิ่งหนึ่งที่ไม่ได้ทำให้กลายเป็นรุ่นที่เผยแพร่คือการชนรุ่นเพื่อใช้อัลกอริธึม CRC ที่รวดเร็วขึ้นด้วยพหุนามที่แตกต่างกัน งานนี้จะเป็น MFC'd เพื่อให้ได้รับเมื่อการทดสอบเสร็จสิ้น อย่างไรก็ตามผู้ใช้ไม่ควรกังวลเรื่องนี้มากนักเนื่องจากมีการแก้ไขปัญหาประสิทธิภาพที่ร้ายแรงที่สุดในรุ่น (แก้ไขโค้ด cluster_write () สำหรับระบบไฟล์ที่เขียน)
      • Hammer2 สถานะ:
      • การพัฒนายังคงดำเนินต่อไป แต่ยังไม่มีคำใดในการเผยแพร่ครั้งแรก
      • สถานะฉาง:
      • มีการเพิ่มกรอบเริ่มต้นสำหรับการใช้ clang เป็นคอมไพเลอร์ฐานอื่นใน DragonFly เพื่อแทนที่ gcc 4.7 ยังไม่เสร็จสมบูรณ์ คุณสามารถเพิ่ม Clang ได้ในรูปแบบแพคเกจ
      • สถานะ 64 บิต:
      • โปรดทราบว่า DragonFly เป็นระบบปฏิบัติการแบบ 64 บิตเท่านั้นเมื่อใช้เวอร์ชัน 4.6 และจะไม่ทำงานบนฮาร์ดแวร์แบบ 32 บิต
      • การสนับสนุน AMD Ryzen กำลังอยู่ระหว่างการเปิดตัวและการพัฒนาเพิ่มเติมของ Ryzen จะเกิดขึ้นต่อไป มีปัญหา CPU-reported-topology บางอย่างที่จะแก้ไขและ MFC'd ปัญหาเสถียรภาพบางอย่างกำลังรอการอัปเดตของไมโครโปรเซสเซอร์ AMD เพื่อแก้ไข / สอบซ่อม ผู้ใช้ Ryzen สามารถมั่นใจได้ว่าเราจะอยู่เคียงข้างคุณ!

      มีอะไรใหม่ ในเวอร์ชัน 4.6.0:

      • mmcsd (4): แก้ไขข้อผิดพลาดในอาร์เรย์ disk_create () อนุญาตให้เข้าถึงการ์ดหน่วยความจำ SD / MMC & gt; 1
      • เพิ่มซิป (1) ถ้าคุณไม่สามารถเอาชนะได้ให้เข้าร่วม em
      • เรียกคืนความสามารถของโทในการสร้าง Release 4.4
      • buildworld - อนุญาตให้รีเซ็ตสร้างบนต้นแบบ
      • etc / rc.d - การปรับเปลี่ยนแบบไม่ใช้ดิสก์
      • kernel - เพิ่มการสนับสนุน kqueue ไปยัง NFS (แก้ไขปัญหา firefox ด้วย / nfs)
      • นำเข้า OpenSSL 1.0.1s
      • การปรับท้องถิ่นสำหรับ OpenSSL 1.0.1s
      • ซิงค์ฐานข้อมูล zoneinfo กับ tzdata2016b จาก ftp://ftp.iana.org/tz/releases
      • zic (8) / zdump (8): อย่าเตือนเกี่ยวกับคำย่อเช่น '-05'
      • zic (8): ลบ 'register' ที่พุ่งเข้ามาในการกระทำครั้งสุดท้าย
      • kernel / acpi_timer: เพิ่ม cpu_enable_intr ที่หายไป () หลังจากทดสอบตัวจับเวลา
      • em.4: พูดถึงการสนับสนุนของ i219
      • ig_hal / em / emx: เพิ่มการสนับสนุน I219 (Skylake)
      • sys / vfs / hammer: แก้ไขข้อผิดพลาดในการลบหัวเรื่องส่วนหัวของไดรฟ์ข้อมูล
      • sbin / hammer: อย่าเข้าถึงบัฟเฟอร์ผู้ใช้ HAMMER เกินกว่า 16KB
      • sbin / hammer: เพิ่มตัวเลือก obfuscate เพื่อแสดงค้อน
      • sys / vfs / hammer: แก้ไขปัญหาชั่วคราวของ kernel panic บน volume-del

      มีอะไรใหม่ ในเวอร์ชัน 4.4.3 / 4.6.0 RC2:

      • mmcsd (4): แก้ไขข้อผิดพลาดในอาร์เรย์ disk_create () อนุญาตให้เข้าถึงการ์ดหน่วยความจำ SD / MMC & gt; 1
      • เพิ่มซิป (1) ถ้าคุณไม่สามารถเอาชนะได้ให้เข้าร่วม em
      • เรียกคืนความสามารถของโทในการสร้าง Release 4.4
      • buildworld - อนุญาตให้รีเซ็ตสร้างบนต้นแบบ
      • etc / rc.d - การปรับเปลี่ยนแบบไม่ใช้ดิสก์
      • kernel - เพิ่มการสนับสนุน kqueue ไปยัง NFS (แก้ไขปัญหา firefox ด้วย / nfs)
      • นำเข้า OpenSSL 1.0.1s
      • การปรับท้องถิ่นสำหรับ OpenSSL 1.0.1s
      • ซิงค์ฐานข้อมูล zoneinfo กับ tzdata2016b จาก ftp://ftp.iana.org/tz/releases
      • zic (8) / zdump (8): อย่าเตือนเกี่ยวกับคำย่อเช่น '-05'
      • zic (8): ลบ 'register' ที่พุ่งเข้ามาในการกระทำครั้งสุดท้าย
      • kernel / acpi_timer: เพิ่ม cpu_enable_intr ที่หายไป () หลังจากทดสอบตัวจับเวลา
      • em.4: พูดถึงการสนับสนุนของ i219
      • ig_hal / em / emx: เพิ่มการสนับสนุน I219 (Skylake)
      • sys / vfs / hammer: แก้ไขข้อผิดพลาดในการลบหัวเรื่องส่วนหัวของไดรฟ์ข้อมูล
      • sbin / hammer: อย่าเข้าถึงบัฟเฟอร์ผู้ใช้ HAMMER เกินกว่า 16KB
      • sbin / hammer: เพิ่มตัวเลือก obfuscate เพื่อแสดงค้อน
      • sys / vfs / hammer: แก้ไขปัญหาชั่วคราวของ kernel panic บน volume-del

      มีอะไรใหม่ ในเวอร์ชัน 4.4.3:

      • mmcsd (4): แก้ไขข้อผิดพลาดในอาร์เรย์ disk_create () อนุญาตให้เข้าถึงการ์ดหน่วยความจำ SD / MMC & gt; 1
      • เพิ่มซิป (1) ถ้าคุณไม่สามารถเอาชนะได้ให้เข้าร่วม em
      • เรียกคืนความสามารถของโทในการสร้าง Release 4.4
      • buildworld - อนุญาตให้รีเซ็ตสร้างบนต้นแบบ
      • etc / rc.d - การปรับเปลี่ยนแบบไม่ใช้ดิสก์
      • kernel - เพิ่มการสนับสนุน kqueue ไปยัง NFS (แก้ไขปัญหา firefox ด้วย / nfs)
      • นำเข้า OpenSSL 1.0.1s
      • การปรับท้องถิ่นสำหรับ OpenSSL 1.0.1s
      • ซิงค์ฐานข้อมูล zoneinfo กับ tzdata2016b จาก ftp://ftp.iana.org/tz/releases
      • zic (8) / zdump (8): อย่าเตือนเกี่ยวกับคำย่อเช่น '-05'
      • zic (8): ลบ 'register' ที่พุ่งเข้ามาในการกระทำครั้งสุดท้าย
      • kernel / acpi_timer: เพิ่ม cpu_enable_intr ที่หายไป () หลังจากทดสอบตัวจับเวลา
      • em.4: พูดถึงการสนับสนุนของ i219
      • ig_hal / em / emx: เพิ่มการสนับสนุน I219 (Skylake)
      • sys / vfs / hammer: แก้ไขข้อผิดพลาดในการลบหัวเรื่องส่วนหัวของไดรฟ์ข้อมูล
      • sbin / hammer: อย่าเข้าถึงบัฟเฟอร์ผู้ใช้ HAMMER เกินกว่า 16KB
      • sbin / hammer: เพิ่มตัวเลือก obfuscate เพื่อแสดงค้อน
      • sys / vfs / hammer: แก้ไขปัญหาชั่วคราวของ kernel panic บน volume-del

      มีอะไรใหม่ ในเวอร์ชัน 4.4.2:

      • virtio_blk: ใช้ contigmalloc / contigfree สำหรับการจัดสรร vtblk_request
      • drm / radeon: เราต้องการที่อยู่จริงของหน้าดัมมี่ไม่ใช่เสมือน
      • if_iwm: ใช้การเปลี่ยนแปลงบางอย่างจาก OpenBSD, if_iwm.c รอบ 1.39 - & gt; 1.42
      • if_iwm: เพียงเก็บตัวชี้เฟิร์มแวร์โครงสร้างเช่น if_iwn ไม่ได้
      • if_iwm: ลบความคิดเห็นที่อ้างถึงลินุกซ์ไฟล์ iwlwifi ของ Linux
      • if_iwm: แก้ไขการใช้ IEEE80211_ADDR_COPY ()
      • if_iwm: แก้ไขโค้ดการตั้งค่าการควบคุมอัตราค่าใช้จ่าย
      • etc / rc.d: อัปเดตข้อมูล rtsold
      • i915 - เพิ่มความล่าช้าหลังจากแนบเพื่อหลีกเลี่ยงการแข่งขันคอนโซล / X
      • kernel - ลด ltrp_signotify () latency
      • devfs - แก้ไขความหวาดกลัวเกี่ยวกับ devfs พิเศษเมื่อมีกฎอยู่
      • ssh - ลบการสนับสนุนข้ามเขตแบบไม่ได้รับการสนับสนุน CVE-2016-0777 CVE-2016-0778
      • kernel - เพิ่ม quirks สำหรับ xhci (usb)
      • ค้อน - ลบการแก้จุดบกพร่อง kprintf
      • libc / stdtime: แก้ไขสองกรณีที่ตัวชี้ NULL อาจเป็นค่าว่าง () 'd.
      • kernel / vga: ลบ lwkt_reltoken () ที่ไม่ถูกต้อง ยังไม่ถึงจุดนี้
      • libc / nls: ซิงค์ข้อความ str (ข้อผิดพลาด, สัญญาณ} () ด้วย
      • w (1): inet_addr () จะส่งกลับ INADDR_NONE เมื่อความล้มเหลว
      • ee (1): แก้ไขตัวแปรที่ไม่ได้เริ่มดำเนินการ
      • kernel: แก้ไข kern.dumpdev sysctl
      • นำเข้า OpenSSL 1.0.1r.
      • การปรับท้องถิ่นสำหรับ OpenSSL 1.0.1r.
      • gcc50 / libconv_supc: cp-demangle.c ต้องการ HAVE_CONFIG_H.
      • ซิงค์ฐานข้อมูล zoneinfo กับ tzdata2016a จาก ftp://ftp.iana.org/tz/releases
      • อัปเกรด: เพิ่มเขตเวลาที่ล้าสมัย
      • igb: แก้ไขการตั้งค่า DMACR
      • ifconfig: แก้ไขการลบที่อยู่ inet6

      มีอะไรใหม่ ในเวอร์ชัน 4.4.1:

      • Kernel:
      • ปรับปรุงการตั้งค่าการประหยัดพลังงานของ CPU
      • ลดการจัดสรรไฟล์ / การโต้แย้งฟรี
      • ลดการโต้แย้งของ kqueue
      • ดำเนินการเรียกระบบ lwp_setname (2)
      • แก้ไข dsp (4) การสนับสนุนการดำเนินการ nonblocking
      • เพิ่ม Aperf (4) driver เพื่อแสดงความถี่ของ CPU ที่มีประสิทธิภาพ
      • การล้างข้อมูลจำนวนมากและการแก้ไข HAMMER
      • ซิงค์ ACPICA กับ 20151124
      • ส่วนใหญ่แล้วเสร็จแล้วเอาบิต i386 (32 บิต) ออก
      • ปรับฮีปบูตเพื่อจัดการกับภาพ MD ขนาดใหญ่
      • รหัสผ่านการล้างข้อมูลบนรหัส kernel ที่ตายแล้ว (ยังคงมีการเชื่อมต่อ syslink)
      • ถูกลบออก (เกิดข้อผิดพลาดและไม่ทำงานได้ดีกับ SSD)
      • ขั้นตอนวิธีการกู้คืนเพจเจอร์สำหรับหน่วยความจำต่ำและหน่วยความจำ pkill
      • Graphics:
      • ไดร์เวอร์ drm / i915 และ drm / radeon ตรงกับ kernel Linux 3.18
      • i915 สนับสนุน ValleyView / Baytrail และ Cherryview Atom SOCs
      • GPU ในบรอดเวย์ตอนนี้เร่งขึ้นอย่างเต็มที่
      • เตรียมงานให้การสนับสนุน Skylake
      • ตอนนี้ระบบคอนโซลสนับสนุนกราฟิก DRM ตามค่าเริ่มต้นแล้ว เทอร์มินัลเสมือนไม่ได้แสดงหน้าจอสีดำอีกต่อไปเมื่อเริ่มต้น Xorg และโมดูลเคอร์เนลหนึ่งกิโลเมตรที่โหลด
      • จัดการพลังงานที่ดีขึ้น แผงรีเฟรชตัวเองพร้อมใช้งานบนฮาร์ดแวร์ i915
      • เซ็นเซอร์วัดอุณหภูมิได้รับการสนับสนุนบนฮาร์ดแวร์ Radeon แล้ว
      • เครือข่าย:
      • สนับสนุน Realtek 8168H ในอีก (4)
      • เพิ่ม driver iv (iwm)
      • แล้ว
      • rtadvd อัปเดตเพิ่ม rtadvctl
      • การเชื่อมต่อ UDP แบบอะซิงโครนัสสำหรับการจัดการโหลดที่มากขึ้น
      • หน้าต่างเริ่มต้น TCP ใหม่ขึ้นสำหรับการเชื่อมต่อที่มีความหน่วงสูง
      • ค่า Nmbcluster ของเคอร์เนลสามารถปรับค่าได้จริงสำหรับการเข้าชมที่รุนแรงระบบเครือข่าย:
      • ทำให้เสถียรภาพของซ็อกเก็ตโดเมน UNIX
      • รหัส GC ใหม่สำหรับ fd-passing over unix domain sockets
      • การซิงค์ IPv6 อื่น ๆ กับ FreeBSD
      • ปรับปรุงประสิทธิภาพ socket (2) สำหรับ TCP และ UDP
      • ปรับปรุงการเชื่อมต่อ TCP (2) พอร์ตภายในที่ปรับปรุงใหม่
      • เพิ่มการยอมรับ (4) การเรียกระบบ
      • เพิ่มการสนับสนุน SOCK_CLOEXEC และ SOCK_NONBLOCK ซ็อกเก็ต (2) และ accept4 (2) flags
      • ทำให้คุณลักษณะการควบคุมการไหลของ HW สามารถใช้งานได้ ifconfig
      • เพิ่ม tunables เพื่อให้ NFSROOT iosize และ readahead ถูกตั้งค่าไว้
      • นำไฟล์ ipfw ที่ขยายจาก FreeBSD (เรียกว่า ipfw3 ใน DFly)
      • ไดรเวอร์อื่น ๆ :
      • สนับสนุน MIDI แล้ว
      • bugfixes จำนวนมากสำหรับเครื่องแม็ปอุปกรณ์
      • dm-delay และ dm-flakey ถูกเพิ่มเข้าไปในเครื่องแม็ปอุปกรณ์
      • โมเด็ม USB ทำงานได้ดีขึ้น (หรืออย่างน้อยก็ไม่ต้องตื่นตระหนกเคอร์เนล)
      • เพิ่มการเข้าถึงคุณลักษณะและสถานะของ ECC ram ECC
      • wlan ได้รับการอัปเดตจาก FreeBSD (ก่อนการถอดอุปกรณ์แบบแยก)
      • Userland:
      • ไลบรารี regex ถูกแทนที่ด้วยไลบรารี regex TRE แบบหลายไบต์และโดยทั่วไป ตรงกับคุณสมบัติของ OSX (DF เป็น BSD ตัวแรกที่ย้ายไปยัง TRE หลังจาก MacOS)
      • libm ถูกแทนที่ด้วยเวอร์ชัน OpenBSD (นี่คืองานที่กำลังทำงานร่วมกันอยู่ระหว่างดำเนินการ)
      • libc มีคุณลักษณะเวอร์ชันสัญลักษณ์ซึ่งสามารถใช้งานไบนารีที่สร้างขึ้นใน Release 4.4 เพื่อดำเนินการใน DragonFly เป็นเวลาหลายปีในอนาคต
      • ตรวจสอบการปรับปรุงและปรับปรุงตำแหน่งรวมทั้งการใช้การเรียงข้อมูล
      • malloc.h removed (DragonFly เป็น BSD ตัวแรกที่เอาหัวข้อนี้ออก)
      • gcc50 libstdc ++ ที่ได้รับการแก้ไขเพื่อให้สามารถใช้ฟังก์ชัน C99 ได้อย่างเต็มที่ใน
      • เป็นผลมาจากการอัพเดต locales ผลลัพธ์ของ ls (1) รูปแบบที่ยาวและ -T รูปแบบมีการเปลี่ยนแปลงเมื่อใช้ชื่อ locales (โดยใช้คำจำกัดความของ POSIX จึงรับประกันได้ทั้งแบบรวดเร็วและสามตัวอักษรกว้าง) และปี, ชั่วโมงและข้อมูลที่สองจะปรากฏขึ้นเสมอ ภายใต้ตำแหน่ง C / POSIX จะไม่มีการเปลี่ยนแปลงในผลลัพธ์ ls (1) ที่ไม่ใช่การจัดการประทับเวลาในอนาคตได้รับการแก้ไขให้ตรงกับข้อกำหนดมาตรฐาน POSIX
      • ถ้ามีการใช้ WPA Supplicant จากฐานข้อมูลจะมีการหน่วงเวลา 10 วินาทีในระหว่างการบู๊ตเมื่อมีข้อความปรากฏขึ้นซึ่งขอแนะนำให้ใช้รุ่น DPorts (security / wpa_supplicant) แทน
      • ปรับปรุง powerd (8)
      • เพิ่มผลลัพธ์ด้านบน (1) และ ps (1) สำหรับ LWP และเธรดของเคอร์เนล
      • แก้ไขการสนับสนุน pthread_set_name_np (3)
      • ย้าย tcpdrop (8)
      • การเพิ่มตำแหน่งที่ตั้งใหม่ ๆ รวมถึงภาษาอาหรับหกแห่ง (UAE, ซาอุดิอาระเบียอียิปต์จอร์แดนโมร็อกโกกาตาร์) สถานที่อื่น ๆ ในสเปน (เม็กซิโกอาร์เจนตินาคอสตาริกา) สถานที่อื่น ๆ ในภาษาอังกฤษ (ฟิลิปปินส์สิงคโปร์ฮ่องกง) (นอร์เวย์และนอร์เวย์) เซอร์เบียนำเสนอทั้งแบบอักษรซีริลลิกและลาตินในขณะนี้ ('locale -a' แสดงรายการที่สมบูรณ์)
      • rtadvc นำเข้าจาก FreeBSD
      • เครื่องมือต่างๆได้รับการอัปเกรดในระบบฐาน:
      • nvi2 อัปเดตเป็นเวอร์ชัน 2.1.3
      • เพิ่ม libexecinfo (ซิงค์จาก FreeBSD)
      • ไอคอนตรงกันกับ FreeBSD
      • openssl อัปเดตเป็น 1.0.1q
      • xz อัปเดตเป็น 5.2.2
      • libedit อัปเดตเป็นเวอร์ชัน 2015-03-25
      • binutils อัปเดตเป็น 2.25.1
      • grep อัปเดตเป็น 2.22
      • tcsh อัปเดตเป็น 6.19.00
      • libdialog ได้รับการอัปเดตเป็น v1.2-20150920
      • (tn) อัปเดต FTP เป็น '10 ต.ค. 2015 '
      • gcc อัพเดตเป็น 5.2
      • acpica อัปเดตเป็น 20150717
      • sort (1) ซึ่งมาจาก NetBSD ถูกแทนที่ด้วยเวอร์ชัน FreeBSD
      • localedef (1) เครื่องมือภายในที่มีต้นกำเนิดใน Illumos
      • cldr2def เครื่องมือภายในที่มีต้นกำเนิดในโครงการ FreeBSD ที่ถูกละทิ้ง แต่ขยายไปสู่ ​​DF
      • นำออกจากระบบฐาน:
      • hostapd (มีเวอร์ชันล่าสุดผ่าน dports: net / hostapd)
      • mklocale (ถูกแทนที่ด้วย localedef)
      • colldef (ถูกแทนที่ด้วย localedef)
      • การปรับปรุง HAMMER:
      • มีการล้างข้อมูลจำนวนมากและแก้ไข Hammer1 ด้วย Tomohiro Kusumi
      • การปรับปรุงอื่น ๆ :
      • DPorts มีจำนวนประมาณ 22,800 พอร์ต พอร์ตที่เสียไปก่อนหน้านี้หลายแห่งได้รับการแก้ไขโดยผู้ใช้ปกติเนื่องจากมีส่วนร่วมที่นำเสนอผ่านกลไกการดึงข้อมูลของ GitHub (ขอขอบคุณ!)
      • หกชุด "อย่างเป็นทางการ" ของวอลเปเปอร์ DragonFly สามารถดูได้ที่ x11-themes / dragonfly-wallpapers (pkg install dragonfly-wallpapers) เหล่านี้จะถูกติดตั้งโดยอัตโนมัติและกำหนดไว้ล่วงหน้าสำหรับผู้ใช้ KDE และติดตั้งโดยอัตโนมัติสำหรับผู้ใช้ XFCE4 แต่วอลล์เปเปอร์ยังคงได้รับการเลือกด้วยตนเองด้วยเดสก์ท็อปนั้น (อย่างน้อยตอนนี้) ได้รับการติดตั้งที่แชร์ / วอลเปเปอร์ซึ่งเชื่อมโยงไปถึงการแบ่งปัน / ภูมิหลัง / แมลงปอ

ซอฟต์แวร์ที่คล้ายกัน

LiveCD-Multimedia
LiveCD-Multimedia

19 Feb 15

TeX Live
TeX Live

20 Feb 15

DruidBSD
DruidBSD

20 Feb 15

ความคิดเห็นที่ DragonFly BSD

ความคิดเห็นที่ไม่พบ
เพิ่มความคิดเห็น
เปิดภาพ!
ค้นหาตามหมวดหมู่