DragonFly BSD

البرمجيات قطة:
DragonFly BSD
تفاصيل البرنامج:
الإصدار: 5.2.2 محدث
تاريخ إيداع: 22 Jun 18
المطور: The DragonFly Team
ترخيص: حرر
شعبية: 50

Rating: 5.0/5 (Total Votes: 1)

DragonFly BSD هو نظام تشغيل BSD مفتوح المصدر مصمم ليكون الاستمرارية المنطقية لسلسلة OS FreeBSD-4.x. وهو مشابه جدًا للتوزيعات الأخرى القائمة على BSD ، مثل FreeBSD أو NetBSD أو OpenBSD. إنها شوكة في المسار ، إذا جاز التعبير ، مما يمنح قاعدة BSD فرصة للنمو في اتجاه جديد تمامًا من الاتجاه الذي تم التقاطه في سلسلة FreeBSD-5. علاوة على ذلك ، تتضمن مجموعة فريدة من الميزات التي تميزها عن أنظمة تشغيل أخرى مماثلة.


HAMMER هو عامل الجذب الرئيسي

إن HAMMER هو عامل الجذب الرئيسي في DragonFly ، وهو نظام ملفات حديث وعالي الأداء يتميز بوظيفة الوصول التاريخي والمراعاة المضمنة. النواة هي أيضا واحدة من الأسباب التي تجعل DragonFly أفضل توزيع BSD.

يوفر جدولين مختلفين للنواة

تشتمل نواة DragonFly على جدولين مختلفين ، أحدهما يقوم بجدولة جميع الكيانات القابلة للتنفيذ (خيط الوزن الخفيف) وآخر يختار مؤشر ترابط مستخدم واحد في كل مرة لكل معالج ويلخص موضوعات المستخدم (برنامج جدولة المستخدم). بالإضافة إلى ذلك ، يتميز kernel بمخصص ذاكرة kernel معقد يتألف من مُخصص ذاكرة مخصصة للكائن ومولار kernel أساسي يسمى kmalloc () ونظام ملفات جهاز DragonFly (DEVFS) ونواة افتراضية (VKERNEL) وتزامن NFS V3 RPC و قرص جدولة I / O (dsched).


الميزات والكثير من الميزات

من بين الميزات الأخرى المثيرة للاهتمام ، يمكن أن نذكر طبقة NULL Filesystem (NULLFS) التي تدعم نقاط التركيب الاعتباطي غير التكرار ، TMPFS (Temporary Filesystem VFS) ، تشفير القرص الشفاف ، دعم SSD (جهاز التخزين الصلب) ، متغير (السياق) حساسة) symlinks ، DNTPD (DragonFly شبكة التوقيت الشيطان) و DMA (عميل بريد DragonFly). بالإضافة إلى ذلك ، سيكون المستخدمون قادرين على نقطة تفتيش أو تعليق العمليات على القرص في أي وقت. يوفر التوزيعة برامج تشغيل AHCI قوية ، وأسماء أجهزة ثابتة ، بالإضافة إلى التشفير وإدارة حجم الصوت على أساس جيد.

خلاصة القول

بشكل عام ، يثبت DragonFly أن يكون نظام تشغيل يشبه UNIX عصري وسهل الاستخدام ويمكن الوصول إليه. يمكن استخدامه على أساس يومي كنظام سطح مكتب أو كخادم BSD قوي.

ما هو الجديد في هذا الإصدار:

تم إصدار الإصدار DragonFly 5.2.1 ، مع تخفيف الانهيار / الشبح ، العديد من التحسينات على HAMMER2 ، ipfw ، والفيديو المعجل ، بالإضافة إلى إصلاح (في التحديث 5.2.1) ل CVE-2018-8897.

ما هو الجديد في الإصدار:

كريستيان جروسلر (1):
telnetd: معلومات نظام الطباعة (نظام التشغيل والهندسة المعمارية) قبل تسجيل الدخول الفوري.
ماثيو ديلون (7):
hammer2 - أصلح الانقسام بواسطة 0 العرق
نواة - MFC انتقائي من عمل umtx kernel من الرئيسية
نواة - تحديث وثائق umtx
libc and pthreads - إصلاح مشكلات atfork مع nmalloc ، تحديث dmalloc
hammer2 - إصلاح سباق إعادة تسمية
hammer2 - تحسين hammer2_pfs_memory_wakeup ()
hammer2 - إصلاح السلاسل القذرة لأجل غير مسمى بسبب إعادة تسميتها
ساشا وايلدنر (5):
hammer2.8: إصلاح الخطأ المطبعي.
قل "hammer2" بدلاً من "hammer" في أماكن متعددة.
mtree: إصلاح المالك لعدة دلائل في / usr / share.
libc / nls: استخدم اللغة الحالية (تم ضبطها حسب مؤشر الترابط).
libarchive: Revert الالتزام الذي لم يكن من المفترض أن يتم دفعه.

ما هو الجديد في الإصدار 4.8.1:

ونواة:
رمز ذاكرة التخزين المؤقت العازلة Refactor لإزالة تحفظات KVA الحيوية. بدلا من ذلك ، يتم حجز جميع KVA في وقت التمهيد. يوفر لنا من IPIs غير الضرورية ويسمح تبسيط كبير من رمز ذاكرة التخزين المؤقت المخزن المؤقت.
إضافة vfs.repurpose_enable (تحت الاختبار ، معطلة بشكل افتراضي). يمكن تمكين هذه الميزة لتقليل حمل إدارة IPI و VM بشكل كبير على جهاز يقوم بكميات كبيرة من I / O ، على سبيل المثال من NVMe SSD ، بتجاوز آلية إعادة تدوير VM العادية. عند التمكين ، لا يتم تشغيل الميزة إلا تحت أحمال I / O العالية. وهو يعمل عن طريق إعادة تعيين صفحات VM التي تقوم على مخزن مؤقت في المكان (متى أمكن) حتى لا تضطر إلى kremove / kenter الصفحات في KVA في المخزن المؤقت. يتم تجاوز إعادة تدوير صفحة VM العادية (التي قد تكون غارقة في ذلك عن طريق تحميل I / O) كذلك.
تغيير كيفية معالجة IPIQ ، على وجه الخصوص إنشاء آلية متجه Xinterrupt مستقلة عن عمليات إلغاء الصفحة التي ستتجاهل (ستعمل) حتى إذا تم تعليق قسم حرج. تنفيذ machdep.optimized_invltlb (معطل بشكل افتراضي ، تحت الاختبار) الذي يتجنب إرسال عناوين IPI لإبطال tlb إلى وضع الخمول cpus.

إصلاح العديد من السباقات التي يمكن أن تحدث في ظل الأحمال الشديدة. معظم حالات الاستخدام لن تؤدي أبدًا إلى حدوث ذلك ، ولكن مربعات الإنشاء الخاصة بنا كانت تحدث أحيانًا. على سبيل المثال ، كان هناك سباقان للتوجيه حيث يتم مسح بتة cpu لـ pmap (من أجل اثنين من التعليمات) ويتسبب في حدوث IPI TLB في نفس الوقت على وحدة معالجة مركزية أخرى لنفس pmap لعدم إدراك أن cpu كان يستخدم pmap . الإصلاح هو تعطيل التحسين إعادة تحميل CR3 للحالة تبديل LWP- & gt؛ LWP (نفس proc).
إصلاح خطأ HAMMER الذي قد ينتج عنه خطأ في إبلاغ عن خطأ في CRC DATA.
إصلاح كتابة مزدوجة يتم تشغيلها بواسطة الطريقة التي يستخدمها HAMMER cluster_write (). هذا يحسن بشكل ملحوظ أداء الكتابة HAMMER.
العديد من عمليات تنظيف وإصلاحات HAMMER الأخرى دخلت.
إصلاح القفل الصعب الذي يمكن أن يحدث في getpbuf * () بسبب سوء تفسير لقيمة الإرجاع من المرجع الذري.
قم بإصلاح مقاطعة تكديس يمكن أن تحدث في إطار 10-تعليمات ، يحتمل (ولكن غير موجود في البرية) تشغيل مكدس kernel.قطع IPap ذات الصلة في النصف عن عمليات تخزين مؤقت مؤقت معينة من خلال عدم إزعاجها لإبطال TLB ، وعلى الجانب الآخر دائماً إلغاء صلاحية TLB عند إدخال PTE جديد حتى إذا كانت المحتويات السابقة غير صالحة. يعمل ذلك على تحسين الأداء ويجعل عملية التصحيح أسهل أيضًا عن طريق إزالة تحسين المشاكل.
إصلاح عدد من سباقات SMP التي يصعب إطلاقها ، خاصة فيما يتعلق بالقيام بعمليات تحميل متزامنة لنقاط التثبيت المختلفة التي يمكن أن تؤدي إليها الإنشاءات الكبيرة. أيضا إصلاح سباق مقابل جبل umct.
تقليل عدد العمليات الذرية في مسار التبديل.
إصلاح السباق / الذعر namecache التي يمكن أن تحدث في ظل الأحمال القصوى إلى جانب الكثير من النشاط جبل / umount.
تقييد أخذ عينات التمزق إلى الجذر.
إصلاح مشكلة getpid () في vfork () عند مترابطة. على وجه الخصوص ، يمكن أن يسبب vfork () s المتزامنة في برنامج مترابطة PID خاطئة ليتم إرجاعها بواسطة getpid () في التابع قبل exec.
إصلاح سباق tsleep / callout نادر عند بدء تشغيل جهاز ضبط وقت وسيلة الشرح قبل الانتهاء من إعداد tsleep () بالكامل.
تنظيف الرسائل المماطلة namecache على وحدة التحكم. على وجه الخصوص ، تقرير الوقت المنقضي المناسب و td_comm لمؤشر الترابط المعني.مزيد من تقليل اختبار الذاكرة والتخيف التمهيد المبكر لتحسين أوقات التمهيد على أنظمة مع كميات كبيرة من ذاكرة الوصول العشوائي.
أزل رمز التصفير الخامل للصفحة تمامًا. إن تحديد صفحة في وحدة المعالجة المركزية الحديثة عند الطلب يكون أفضل للعديد من الأسباب ، وقد يكون أسرع في الواقع عند دمجه مع وصول العميل إلى البيانات في الصفحة ، وذلك بسبب تأثيرات ذاكرة التخزين المؤقت. إزالة PG_ZERO ، لأنه لم يعد هناك حاجة إليها. تؤدي إزالة PG_ZERO أيضًا إلى زيادة إمكانية تصحيح النواة عن طريق إزالة مصدر آخر محتمل للتلوث المتبادل.
Refactor والانتهاء من تطبيق توطين وحدة المعالجة المركزية لتخصيصات ذاكرة kernel. اجمع مع الوعي NUMA. هذا يعمل من أجل بنية البيانات kernel localized أو نطاقات قصيرة العمر. يتم الجمع بين الاثنين معاً في تجريد PQ_L2_SIZE الخاص بنا والذي اعتاد أن يكون رمز تلوين صفحة VM. يعالج هذا الرمز أيضًا تعريب وحدة المعالجة المركزية ووعي NUMA.
إصلاح العديد من المشاكل vkernel وتحسين أداء vkernel بشكل ملحوظ.
قم بتحديث kern.proc.pathname ، sysctl الذي تستخدمه البرامج للعثور على مسار البرنامج الجاري تشغيله. تم تنفيذ هذا sysctl أصلاً قبل أن نقوم بتخزين بيانات كافية لإرجاع مسار كامل مناسب.
قم بمزامنة ACPICA من Intel (وهذا أمر عادي).إصلاح التجمع memcpy () ABI. لم يكن التجميع إرجاع الوسيطة الأصلي (dst). لا يصلح أي مشكلات معروفة ولكنه يغلق فجوة عندما يقرر GCC أحيانًا استدعاء memcpy أثناء إنشاء الشفرة.
يلتزم العديد بتنظيف وتحذير -O2 من الأخطاء. يتم الآن تجميع النواة -O2 بشكل افتراضي.
إضافة إلى حل بديل غير صحيح في مسار ACPI (يعرف أيضاً رمز ACPI buggy).
إصلاح السباق STOP / CONT الذي يمكن تشغيله بإشارة معلقة في الوقت غير المناسب.
إصلاحات coredump مترابطة وإصلاح lockup المتعلقة بنفسه عند خيوط متعددة لنفس عملية seg-fault في نفس الوقت.
إصلاح حالة توقف تام CAM / VM التي قد تحدث بسبب وجود خطأ في uiomove_nofault (). وقد يتسبب ذلك في "وجود مخزن مؤقت للانتظار لأجل غير مسمى" أثناء الترحيل / التبادل الثقيل.
إضافة كود لاكتشاف ومعالجة مؤشرات IPI المفقودة. هذا هو في المقام الأول ل vkernels حيث يمكن أن يفقد بعض المضيفين الظاهري IPIs. وحدات المعالجة المركزية الحقيقية ليس من المفترض أن تفقد IPIs.
إصلاحات مختلفة ل clock_gettime ().
إزالة المزيد من بقايا MPLOCK. منذ وقت طويل تم تجريد جميع المسارات الحيوية من هذا القفل ، ولكن لا تزال هناك عدد قليل من الأماكن غير الحرجة التي تستخدمها.أعد عمل شفرة قتل الذاكرة المنخفضة وقم بإصلاح عدد من السباقات التي يمكن أن تمنع الميزة من العمل.
إصلاح قفل النظام باستخدام VMM وإعادة ترميز كود VMX.
إصلاح حالة توقف تام عندما يصل numvnodes إلى maxvnodes ، والتي يمكن أن تحدث تحت الأحمال الثقيلة. أيضا إصلاح تسرب ذاكرة kernel طفيفة عندما يتزامن "df" أو sync نظام الملفات. أيضا تقليل حساب maxvnodes بشكل متواضع. على سبيل المثال ، سيتم الآن تعيين جهاز مع ذاكرة الوصول العشوائي 8 غيغابايت maxvnodes إلى 478483 بدلاً من 598103.
إصلاح حالة نادرة من الذعر يمكن تشغيلها بواسطة vm_object_page_remove () عندما يتم استدعاء user_yield () بشكل غير صحيح أثناء تثبيت spinlock ، ثم تقرر deschedule.
تقليل حجم بعض بنيات kernel المخصصة بشكل حيوي. على وجه الخصوص ، أصبحت تخصيصات تجزئة inode حجم مفرط أصغر الآن. يؤثر في المقام الأول على UFS (التي لا تستخدم DragonFlyBSD الكثير).
إضافة حل بديل لـ AMD erratum 793.
إصلاح حالة توقف تام يمكن أن تحدث في مكالمات استدعاءات / مخارج الكتلة المجمعة _ * ().
إصلاح الخطأ الذي يمكن أن يتسبب في تحميل وحدة متكررة.
إصلاح الخلل سخيفة في رمز sillyrename NFS (جانب الخادم NFS) التي يمكن أن تتسبب في رمز sillyrename الخاص بملقم NFS لعدم إزالة الملف الذي تمت إعادة تسميته. يا للسخافة!القيام بعمل أفضل استيعاب عالية تكوينات ncpu + الذاكرة.
ريفاكتر spinlocks مشتركة للحد من كمية الغزل التي يمكن أن تحدث عندما تحصل على cpus متعددة spinlock مشتركة في نفس الوقت.
مراجعة عمليات namecache لتخفيض تنافس SMP بشكل أكبر. يعمل ذلك على تحسين الأداء المتزامن لمكون واحد لا يتعارض مع ما لا يقل عن 25 مرة على الأنظمة التي تحتوي على العديد من النوى ، ويقلل بشكل كبير من عمليات إعادة ترتيب وترقيم هيكل الجهاز.
قم بإصلاح العديد من البنيات الأخرى لتحسين موقع ذاكرة التخزين المؤقت وتقليل ارتداد خط ذاكرة التخزين المؤقت.
إصلاح الخلل في رمز إعادة تسمية ملف SMBFS.
تطبيق RLIMIT_RSS ، محدد RSS لكل عملية والذي سيتم فرض ترحيل الصفحات المترجمة على أساس كل عملية. هذه الميزة يمكن استخدامها لمنع عملية واحدة من تحويل ما تبقى من الجهاز إلى حالة صعبة.
زيادة الحد الأقصى لمساحة المبادلة المدعومة. الحد الأقصى الآن محدود في المقام الأول من ذاكرة الوصول العشوائي وسيكون في عشرات تيرابايت (إذا كان لديك ذاكرة الوصول العشوائي كافية لهياكل الإدارة الداعمة). زيادة أيضا KVM النواة من 128G إلى 511G.تنفيذ الحذف pmap الحيوي (تعطيل افتراضيا). هذا توجيه رمز pmap لحذف صفحات جدول الصفحات المتوسطة و PDs من pmap على الطاير. يمكن أن يكون من المفيد إذا كانت الذاكرة في قسط ، ولكن لاحظ أنه إذا تم تمكينها ، فإنه سيؤدي إلى بطء تنفيذ البرامج التي تخصيص و إلغاء تخصيص الذاكرة بمعدل مرتفع.
Refactor كيف تعمل مستويات "لطيفة" المستخدم ، مما يجعل القيم اللطيفة المختارة أكثر أهمية مما كانت عليه من قبل.
قم بإضافة برنامج تشغيل NVME عالي الأداء إلى DragonFly ، كتبه Matt Dillon. سيستخدم برنامج التشغيل هذا نواقل MSI-X وجميع قوائم الانتظار المتاحة التي يدعمها الجهاز ، والتوطين لكل وحدة المعالجة المركزية بدون قفل أو قفل بسيط (لا توجد تعارضات في SMP في معظم الحالات) ، وقادر على IOPS المجنون والإنتاجية.
الرسومات:
تثبيت Broadwell و Skylake ، يرفعنا إلى نظام التشغيل Linux بما يعادل 4.6 DRM.
تطبيق Linux i2c API لجعل النقل أسهل.
أصلح بعض الأخطاء القديمة ، بما في ذلك انعكاس أمر القفل ، مما قد يؤدي إلى توقف تشغيل الفيديو (وباقي X).
قم بإصلاح خطأ أولوية مؤشر ترابط kernel drm الذي يسمح لعمليات المستخدم أن يكون لها أولوية أعلى من مؤشر ترابط drm. يعمل هذا على إصلاح معظم أكشاك الفيديو المؤقتة التي يتم الإبلاغ عنها في المتصفحات.التعامل مع EFI framebuffer تمرير إلى إدارة الحقوق الرقمية ، وتحسين التبديل VT syscons وإصلاح الجمود ذات الصلة. كما حاول النواة التبديل إلى وحدة التحكم VT من X عند حدوث حالة من الذعر.
التواصل:
العديد من التحسينات في جميع المجالات.
iwm - يعمل على إصلاح مشكلة ناتجة عن المنطق المقلوب. العديد من التحسينات الأخرى التي تحسن الأداء بشكل ملحوظ.
wlan - تمت إضافة دعم لمسح bg غير المتزامن وميزات أخرى.
السائقين الآخرين:
nvme - تمت الإضافة إلى إنشاء النواة الافتراضي ، بالإضافة إلى الإصلاحات وتحسينات الأداء.
mmcsd - إضافة دعم eMMC هام إلى DragonFly.
ahci - بعض تعديلات التوافق والمزيد من المراوغات المضافة لدعم الشرائح المعطلة ، وخاصة مضاعفات المنافذ. قم أيضًا بتطبيق FBS (FIS-Based-Switching) عند دعمه من خلال مجموعة الشرائح.
وأضاف تراكبوينت وإلانتيك الدعم.
يوزرلاند:
تحسين systat لطي مقاطعات متعددة تنتمي إلى نفس برنامج التشغيل ، حيث غالباً ما يكون هناك عدد كبير جداً للإدراج الآن.systat -vm 1 معززًا ومُجددًا بشكل كبير للإبلاغ عن مزيد من المعلومات المفيدة وتفريغ الحقول بحيث لا تتداخل مع بعضها البعض. وأضف "nvme" إلى مطابقة جهاز الكتلة. كما يمكنك ضبط شاشة العرض الموسعة وتغيير كيفية الإبلاغ عن ozfod و nzfod.
الإنتاج "vmstat 1" refactored. كانت جميع الحقول متداخلة مع بعضها البعض بسبب الأداء العالي لآلات الآلة الحديثة التي كانت موجودة قبل 30 عامًا.
قم بتغيير إشارة mount / mountd لتقليل عمليات الفحص والأوامر غير الضرورية في mount_null و mount_tmpfs. فقط يهم حقا تحت الاستخدام المتزامن كبيرة من جبل / umount ، ولكن بناء بالجملة في الواقع يخلق هذا الوضع.
إصلاح العديد من الشقوق / exec * () تسرب يمكن أن يؤدي libc بسبب عدم استخدام O_CLOEXEC بطريقة ذرية. إضافة ميزات O_CLOEXEC مختلفة إلى وظائف مثل popen () و mk * stemp * () (إضافة mkostemp () و mkostemps ()). إصلاح تسرب واصف ملف في popen () عند التشغيل في بيئة مترابطة.
يكون ألطف إلى pthreads في vfork () بإعطاء lwp العملية الفرعية الجديدة نفس TID كـ التي تسمى vfork (). يسمح هذا لوظائف دعم pthread للتنفيذ في الطفل أثناء vfork دون إنفجار pthreads.يصلح الكثير من التوافق للرؤوس لتحسين بنى المجموعات الأكبر.
العديد من واردات OpenSSL لإصلاحات الأمان.
Resync OpenSSH لجعله أسهل للاحتفاظ به uptodate.
أعلام منفصلة kernel C باستخدام بنية kernel استخدم KCFLAGS بدلاً من CFLAGS.
قم بإزالة العديد من برامج تشغيل ISA القديمة من الشجرة بالكامل. كما أصبح DragonFlyBSD الآن 64 بت فقط ، يمكننا البدء في إزالة برامج التشغيل القديمة غير الموجودة على الأنظمة الأساسية 64 بت.
قدم WORLD_CFLAGS و WORLD_CCOPTLEVEL ، معطلًا على -O. هذا يجعل من السهل تجميع عالمك -O2 أو أيا كان (على سبيل المثال WORLD_CCOPTLEVEL = 2). ومع ذلك ، فإننا لا نشجع على استخدام 3 أو أعلى. القيم الصالحة هي 0 و 1 و 2 و 3 و s و g و "سريع".
اضبط تنسيق STATUS لـ ps لجعله أكثر قابلية للقراءة وإزالة الأعلام القديمة التي لم تعد قابلة للتطبيق وخلق فوضى.
إصلاح محاذاة malloc () للمخصصات الصغيرة. الحد الأدنى للمحاذاة هو 16 الآن للمخصصات في نطاق 16-128 بايت بدلاً من 8. لاحظ أن توزيعات الطاقة من 2 كانت دائمًا متوافقة بشكل طبيعي ، ولكن بعض البرامج تستخدم مضاعفات (على سبيل المثال) 16 ، مثل '48' ، و تفترض محاذاة 16 بايت.
وأضاف فورتشنز refactored.powerd - إضافة إدارة تستند إلى درجة الحرارة لتشغيل powerd-new lotH: خيار hightemp. هذه الميزة مفيدة للغاية على أجهزة الكمبيوتر المحمولة مع سوء التبريد و BIOSs عمد خنق عمدا في درجة حرارة عالية جدا. تكتشف Powerd الآن أيضاً تغييرات حالة الطاقة (التي يمكن أن تغير قائمة الترددات المتاحة) وتقوم بتحويل الخدمة بشكل صحيح عند حدوث تغيير في حالة الطاقة.
الكثير من libthread_xu / pthreads إصلاحات وتعديلات لتحسين توافق dports.
إضافة ميزات النسخ عند الكتابة إلى vkernel. على سبيل المثال ، يسمح vkernels متعددة لاستخدام صورة قرص واحد عن طريق وجود كل COW التعديلات داخليا إلى ذاكرة الوصول العشوائي.
/ usr / src / rewired آمنة ، والنزاعات إزالتها من libmd ، libcrypt.
تم ترقية أدوات مختلفة في النظام الأساسي:
مترجم تحديث لدول مجلس التعاون الخليجي 5.4.1.
لدينا الآن رابط ذهبي مع LTO.
binutils 2.25
أقل من 481.
OpenSSL / LibRESSL تم تجديده بالكامل. يستخدم Base الآن libressl.
تحديثات متعددة المنطقة الزمنية.
حالة المطرقة:

تحسينات متنوعة. كان هناك شيء واحد لم يجعله في الإصدار هو عثرة الإصدار لاستخدام خوارزمية CRC أسرع مع متعدد الحدود مختلفة. هذا العمل سيكون MFC'd torelease بمجرد اكتمال الاختبار. ومع ذلك ، لا يجب على المستخدمين القلق بشأنها أكثر من اللازم لأن إصلاح أخطر هو IS في الإصدار (إصلاح إلى رمز cluster_write () من أجل كتابة نظام الملفات).
Hammer2 الحالة:
يستمر التطوير ولكن لا توجد كلمة بعد في الإصدار الأول.
حالة Clang:
تمت إضافة إطار عمل لبدء استخدام clang كمحول أساسي بديل في DragonFly ، لاستبدال gcc 4.7. لم تكتمل بعد بالطبع يمكن إضافة Clang كحزمة.
حالة 64 بت:
لاحظ أن DragonFly هو نظام تشغيل 64 بت فقط من 4.6 ، ولن يعمل على أجهزة 32 بت.
دعم AMD Ryzen متوفر في الإصدار وسيتم تقديم المزيد من العمل عند حدوث تطورات جديدة لـ Ryzen. هناك بعض المشكلات طبولوجيا التي تم الإبلاغ عنها طبولوجيا التي سيتم إصلاحها و MFC'd. هناك بعض مشكلات الثبات التي تنتظر حاليًا تحديث الرمز الصغير لـ AMD لحل / إعادة الاختبار. يمكن التأكيد على مستخدمي Ryzen أننا نبقى على رأسها!

ما هو الجديد في الإصدار 4.8.0:

نواة:
رمز ذاكرة التخزين المؤقت العازلة Refactor لإزالة تحفظات KVA الحيوية. بدلا من ذلك ، يتم حجز جميع KVA في وقت التمهيد. يوفر لنا من IPIs غير الضرورية ويسمح تبسيط كبير من رمز ذاكرة التخزين المؤقت المخزن المؤقت.
إضافة vfs.repurpose_enable (تحت الاختبار ، معطلة بشكل افتراضي). يمكن تمكين هذه الميزة لتقليل حمل إدارة IPI و VM بشكل كبير على جهاز يقوم بكميات كبيرة من I / O ، على سبيل المثال من NVMe SSD ، بتجاوز آلية إعادة تدوير VM العادية. عند التمكين ، لا يتم تشغيل الميزة إلا تحت أحمال I / O العالية. وهو يعمل عن طريق إعادة تعيين صفحات VM التي تقوم على مخزن مؤقت في المكان (متى أمكن) حتى لا تضطر إلى kremove / kenter الصفحات في KVA في المخزن المؤقت. يتم تجاوز إعادة تدوير صفحة VM العادية (التي قد تكون غارقة في ذلك عن طريق تحميل I / O) كذلك.
تغيير كيفية معالجة IPIQ ، على وجه الخصوص إنشاء آلية متجه Xinterrupt مستقلة عن عمليات إلغاء الصفحة التي ستتجاهل (ستعمل) حتى إذا تم تعليق قسم حرج. تنفيذ machdep.optimized_invltlb (معطل بشكل افتراضي ، تحت الاختبار) الذي يتجنب إرسال عناوين IPI لإبطال tlb إلى cpus غير نشط.إصلاح العديد من السباقات التي يمكن أن تحدث في ظل الأحمال الشديدة. معظم حالات الاستخدام لن تؤدي أبدًا إلى حدوث ذلك ، ولكن مربعات الإنشاء الخاصة بنا كانت تحدث أحيانًا. على سبيل المثال ، كان هناك سباقان للتوجيه حيث يتم مسح بتة cpu لـ pmap (من أجل اثنين من التعليمات) ويتسبب في حدوث IPI TLB في نفس الوقت على وحدة معالجة مركزية أخرى لنفس pmap لعدم إدراك أن cpu كان يستخدم pmap . الإصلاح هو تعطيل التحسين إعادة تحميل CR3 للحالة تبديل LWP- & gt؛ LWP (نفس proc).
إصلاح خطأ HAMMER الذي قد ينتج عنه خطأ في إبلاغ عن خطأ في CRC DATA.
إصلاح كتابة مزدوجة يتم تشغيلها بواسطة الطريقة التي يستخدمها HAMMER cluster_write (). هذا يحسن بشكل ملحوظ أداء الكتابة HAMMER.
العديد من عمليات تنظيف وإصلاحات HAMMER الأخرى دخلت.
إصلاح القفل الصعب الذي يمكن أن يحدث في getpbuf * () بسبب سوء تفسير لقيمة الإرجاع من المرجع الذري.
قم بإصلاح مقاطعة تكديس يمكن أن تحدث في إطار 10-تعليمات ، يحتمل (ولكن غير موجود في البرية) تشغيل مكدس kernel.قطع IPap ذات الصلة في النصف عن عمليات تخزين مؤقت مؤقت معينة من خلال عدم إزعاجها لإبطال TLB ، وعلى الجانب الآخر دائماً إلغاء صلاحية TLB عند إدخال PTE جديد حتى إذا كانت المحتويات السابقة غير صالحة. يعمل ذلك على تحسين الأداء ويجعل عملية التصحيح أسهل أيضًا عن طريق إزالة تحسين المشاكل.
إصلاح عدد من سباقات SMP التي يصعب إطلاقها ، خاصة فيما يتعلق بالقيام بعمليات تحميل متزامنة لنقاط التثبيت المختلفة التي يمكن أن تؤدي إليها الإنشاءات الكبيرة. أيضا إصلاح سباق مقابل جبل umct.
تقليل عدد العمليات الذرية في مسار التبديل.
إصلاح السباق / الذعر namecache التي يمكن أن تحدث في ظل الأحمال القصوى إلى جانب الكثير من النشاط جبل / umount.
تقييد أخذ عينات التمزق إلى الجذر.
إصلاح مشكلة getpid () في vfork () عند مترابطة. على وجه الخصوص ، يمكن أن يسبب vfork () s المتزامنة في برنامج مترابطة PID خاطئة ليتم إرجاعها بواسطة getpid () في التابع قبل exec.
إصلاح سباق tsleep / callout نادر عند بدء تشغيل جهاز ضبط وقت وسيلة الشرح قبل الانتهاء من إعداد tsleep () بالكامل.
تنظيف الرسائل المماطلة namecache على وحدة التحكم. على وجه الخصوص ، تقرير الوقت المنقضي المناسب و td_comm لمؤشر الترابط المعني.مزيد من تقليل اختبار الذاكرة والتخيف التمهيد المبكر لتحسين أوقات التمهيد على أنظمة مع كميات كبيرة من ذاكرة الوصول العشوائي.
أزل رمز التصفير الخامل للصفحة تمامًا. إن تحديد صفحة في وحدة المعالجة المركزية الحديثة عند الطلب يكون أفضل للعديد من الأسباب ، وقد يكون أسرع في الواقع عند دمجه مع وصول العميل إلى البيانات في الصفحة ، وذلك بسبب تأثيرات ذاكرة التخزين المؤقت. إزالة PG_ZERO ، لأنه لم يعد هناك حاجة إليها. تؤدي إزالة PG_ZERO أيضًا إلى زيادة إمكانية تصحيح النواة عن طريق إزالة مصدر آخر محتمل للتلوث المتبادل.
Refactor والانتهاء من تطبيق توطين وحدة المعالجة المركزية لتخصيصات ذاكرة kernel. اجمع مع الوعي NUMA. هذا يعمل من أجل بنية البيانات kernel localized أو نطاقات قصيرة العمر. يتم الجمع بين الاثنين معاً في تجريد PQ_L2_SIZE الخاص بنا والذي اعتاد أن يكون رمز تلوين صفحة VM. يعالج هذا الرمز أيضًا تعريب وحدة المعالجة المركزية ووعي NUMA.
إصلاح العديد من المشاكل vkernel وتحسين أداء vkernel بشكل ملحوظ.
قم بتحديث kern.proc.pathname ، sysctl الذي تستخدمه البرامج للعثور على مسار البرنامج الجاري تشغيله. تم تنفيذ هذا sysctl أصلاً قبل أن نقوم بتخزين بيانات كافية لإرجاع مسار كامل مناسب.
قم بمزامنة ACPICA من Intel (وهذا أمر عادي).إصلاح التجمع memcpy () ABI. لم يكن التجميع إرجاع الوسيطة الأصلي (dst). لا يصلح أي مشكلات معروفة ولكنه يغلق فجوة عندما يقرر GCC أحيانًا استدعاء memcpy أثناء إنشاء الشفرة.
يلتزم العديد بتنظيف وتحذير -O2 من الأخطاء. يتم الآن تجميع النواة -O2 بشكل افتراضي.
إضافة إلى حل بديل غير صحيح في مسار ACPI (يعرف أيضاً رمز ACPI buggy).
إصلاح السباق STOP / CONT الذي يمكن تشغيله بإشارة معلقة في الوقت غير المناسب.
إصلاحات coredump مترابطة وإصلاح lockup المتعلقة بنفسه عند خيوط متعددة لنفس عملية seg-fault في نفس الوقت.
إصلاح حالة توقف تام CAM / VM التي قد تحدث بسبب وجود خطأ في uiomove_nofault (). وقد يتسبب ذلك في "وجود مخزن مؤقت للانتظار لأجل غير مسمى" أثناء الترحيل / التبادل الثقيل.
إضافة كود لاكتشاف ومعالجة مؤشرات IPI المفقودة. هذا هو في المقام الأول ل vkernels حيث يمكن أن يفقد بعض المضيفين الظاهري IPIs. وحدات المعالجة المركزية الحقيقية ليس من المفترض أن تفقد IPIs.
إصلاحات مختلفة ل clock_gettime ().
إزالة المزيد من بقايا MPLOCK. منذ وقت طويل تم تجريد جميع المسارات الحيوية من هذا القفل ، ولكن لا تزال هناك عدد قليل من الأماكن غير الحرجة التي تستخدمها.أعد عمل شفرة قتل الذاكرة المنخفضة وقم بإصلاح عدد من السباقات التي يمكن أن تمنع الميزة من العمل.
إصلاح قفل النظام باستخدام VMM وإعادة ترميز كود VMX.
إصلاح حالة توقف تام عندما يصل numvnodes إلى maxvnodes ، والتي يمكن أن تحدث تحت الأحمال الثقيلة. أيضا إصلاح تسرب ذاكرة kernel طفيفة عندما يتزامن "df" أو sync نظام الملفات. أيضا تقليل حساب maxvnodes بشكل متواضع. على سبيل المثال ، سيتم الآن تعيين جهاز مع ذاكرة الوصول العشوائي 8 غيغابايت maxvnodes إلى 478483 بدلاً من 598103.
إصلاح حالة نادرة من الذعر يمكن تشغيلها بواسطة vm_object_page_remove () عندما يتم استدعاء user_yield () بشكل غير صحيح أثناء تثبيت spinlock ، ثم تقرر deschedule.
تقليل حجم بعض بنيات kernel المخصصة بشكل حيوي. على وجه الخصوص ، أصبحت تخصيصات تجزئة inode حجم مفرط أصغر الآن. يؤثر في المقام الأول على UFS (التي لا تستخدم DragonFlyBSD الكثير).
إضافة حل بديل لـ AMD erratum 793.
إصلاح حالة توقف تام يمكن أن تحدث في مكالمات استدعاءات / مخارج الكتلة المجمعة _ * ().
إصلاح الخطأ الذي يمكن أن يتسبب في تحميل وحدة متكررة.
إصلاح الخلل سخيفة في رمز sillyrename NFS (جانب الخادم NFS) التي يمكن أن تتسبب في رمز sillyrename الخاص بملقم NFS لعدم إزالة الملف الذي تمت إعادة تسميته. يا للسخافة!القيام بعمل أفضل استيعاب عالية تكوينات ncpu + الذاكرة.
ريفاكتر spinlocks مشتركة للحد من كمية الغزل التي يمكن أن تحدث عندما تحصل على cpus متعددة spinlock مشتركة في نفس الوقت.
مراجعة عمليات namecache لتخفيض تنافس SMP بشكل أكبر. يعمل ذلك على تحسين الأداء المتزامن لمكون واحد لا يتعارض مع ما لا يقل عن 25 مرة على الأنظمة التي تحتوي على العديد من النوى ، ويقلل بشكل كبير من عمليات إعادة ترتيب وترقيم هيكل الجهاز.
قم بإصلاح العديد من البنيات الأخرى لتحسين موقع ذاكرة التخزين المؤقت وتقليل ارتداد خط ذاكرة التخزين المؤقت.
إصلاح الخلل في رمز إعادة تسمية ملف SMBFS.
تطبيق RLIMIT_RSS ، محدد RSS لكل عملية والذي سيتم فرض ترحيل الصفحات المترجمة على أساس كل عملية. هذه الميزة يمكن استخدامها لمنع عملية واحدة من تحويل ما تبقى من الجهاز إلى حالة صعبة.
زيادة الحد الأقصى لمساحة المبادلة المدعومة. الحد الأقصى الآن محدود في المقام الأول من ذاكرة الوصول العشوائي وسيكون في عشرات تيرابايت (إذا كان لديك ذاكرة الوصول العشوائي كافية لهياكل الإدارة الداعمة). زيادة أيضا KVM النواة من 128G إلى 511G.تنفيذ الحذف pmap الحيوي (تعطيل افتراضيا). هذا توجيه رمز pmap لحذف صفحات جدول الصفحات المتوسطة و PDs من pmap على الطاير. يمكن أن يكون من المفيد إذا كانت الذاكرة في قسط ، ولكن لاحظ أنه إذا تم تمكينها ، فإنه سيؤدي إلى بطء تنفيذ البرامج التي تخصيص و إلغاء تخصيص الذاكرة بمعدل مرتفع.
Refactor كيف تعمل مستويات "لطيفة" المستخدم ، مما يجعل القيم اللطيفة المختارة أكثر أهمية مما كانت عليه من قبل.
قم بإضافة برنامج تشغيل NVME عالي الأداء إلى DragonFly ، كتبه Matt Dillon. سيستخدم برنامج التشغيل هذا نواقل MSI-X وجميع قوائم الانتظار المتاحة التي يدعمها الجهاز ، والتوطين لكل وحدة المعالجة المركزية بدون قفل أو قفل بسيط (لا توجد تعارضات في SMP في معظم الحالات) ، وقادر على IOPS المجنون والإنتاجية.
الرسومات:
تثبيت Broadwell و Skylake ، يرفعنا إلى نظام التشغيل Linux بما يعادل 4.6 DRM.
تطبيق Linux i2c API لجعل النقل أسهل.
أصلح بعض الأخطاء القديمة ، بما في ذلك انعكاس أمر القفل ، مما قد يؤدي إلى توقف تشغيل الفيديو (وباقي X).
قم بإصلاح خطأ أولوية مؤشر ترابط kernel drm الذي يسمح لعمليات المستخدم أن يكون لها أولوية أعلى من مؤشر ترابط drm. يعمل هذا على إصلاح معظم أكشاك الفيديو المؤقتة التي يتم الإبلاغ عنها في المتصفحات.التعامل مع EFI framebuffer تمرير إلى إدارة الحقوق الرقمية ، وتحسين التبديل VT syscons وإصلاح الجمود ذات الصلة. كما حاول النواة التبديل إلى وحدة التحكم VT من X عند حدوث حالة من الذعر.
التواصل:
العديد من التحسينات في جميع المجالات.
iwm - يعمل على إصلاح مشكلة ناتجة عن المنطق المقلوب. العديد من التحسينات الأخرى التي تحسن الأداء بشكل ملحوظ.
wlan - تمت إضافة دعم لمسح bg غير المتزامن وميزات أخرى.
السائقين الآخرين:
nvme - تمت الإضافة إلى إنشاء النواة الافتراضي ، بالإضافة إلى الإصلاحات وتحسينات الأداء.
mmcsd - إضافة دعم eMMC هام إلى DragonFly.
ahci - بعض تعديلات التوافق والمزيد من المراوغات المضافة لدعم الشرائح المعطلة ، وخاصة مضاعفات المنافذ. قم أيضًا بتطبيق FBS (FIS-Based-Switching) عند دعمه من خلال مجموعة الشرائح.
وأضاف تراكبوينت وإلانتيك الدعم.
يوزرلاند:
تحسين systat لطي مقاطعات متعددة تنتمي إلى نفس برنامج التشغيل ، حيث غالباً ما يكون هناك عدد كبير جداً للإدراج الآن.systat -vm 1 معززًا ومُجددًا بشكل كبير للإبلاغ عن مزيد من المعلومات المفيدة وتفريغ الحقول بحيث لا تتداخل مع بعضها البعض. وأضف "nvme" إلى مطابقة جهاز الكتلة. كما يمكنك ضبط شاشة العرض الموسعة وتغيير كيفية الإبلاغ عن ozfod و nzfod.
الإنتاج "vmstat 1" refactored. كانت جميع الحقول متداخلة مع بعضها البعض بسبب الأداء العالي لآلات الآلة الحديثة التي كانت موجودة قبل 30 عامًا.
قم بتغيير إشارة mount / mountd لتقليل عمليات الفحص والأوامر غير الضرورية في mount_null و mount_tmpfs. فقط يهم حقا تحت الاستخدام المتزامن كبيرة من جبل / umount ، ولكن بناء بالجملة في الواقع يخلق هذا الوضع.
إصلاح العديد من الشقوق / exec * () تسرب يمكن أن يؤدي libc بسبب عدم استخدام O_CLOEXEC بطريقة ذرية. إضافة ميزات O_CLOEXEC مختلفة إلى وظائف مثل popen () و mk * stemp * () (إضافة mkostemp () و mkostemps ()). إصلاح تسرب واصف ملف في popen () عند التشغيل في بيئة مترابطة.
يكون ألطف إلى pthreads في vfork () بإعطاء lwp العملية الفرعية الجديدة نفس TID كـ التي تسمى vfork (). يسمح هذا لوظائف دعم pthread للتنفيذ في الطفل أثناء vfork دون إنفجار pthreads.يصلح الكثير من التوافق للرؤوس لتحسين بنى المجموعات الأكبر.
العديد من واردات OpenSSL لإصلاحات الأمان.
Resync OpenSSH لجعله أسهل للاحتفاظ به uptodate.
أعلام منفصلة kernel C باستخدام بنية kernel استخدم KCFLAGS بدلاً من CFLAGS.
قم بإزالة العديد من برامج تشغيل ISA القديمة من الشجرة بالكامل. كما أصبح DragonFlyBSD الآن 64 بت فقط ، يمكننا البدء في إزالة برامج التشغيل القديمة غير الموجودة على الأنظمة الأساسية 64 بت.
قدم WORLD_CFLAGS و WORLD_CCOPTLEVEL ، معطلًا على -O. هذا يجعل من السهل تجميع عالمك -O2 أو أيا كان (على سبيل المثال WORLD_CCOPTLEVEL = 2). ومع ذلك ، فإننا لا نشجع على استخدام 3 أو أعلى. القيم الصالحة هي 0 و 1 و 2 و 3 و s و g و "سريع".
اضبط تنسيق STATUS لـ ps لجعله أكثر قابلية للقراءة وإزالة الأعلام القديمة التي لم تعد قابلة للتطبيق وخلق فوضى.
إصلاح محاذاة malloc () للمخصصات الصغيرة. الحد الأدنى للمحاذاة هو 16 الآن للمخصصات في نطاق 16-128 بايت بدلاً من 8. لاحظ أن توزيعات الطاقة من 2 كانت دائمًا متوافقة بشكل طبيعي ، ولكن بعض البرامج تستخدم مضاعفات (على سبيل المثال) 16 ، مثل '48' ، و تفترض محاذاة 16 بايت.
وأضاف فورتشنز refactored.powerd - إضافة إدارة تستند إلى درجة الحرارة لتشغيل powerd-new lotH: خيار hightemp. هذه الميزة مفيدة للغاية على أجهزة الكمبيوتر المحمولة مع سوء التبريد و BIOSs عمد خنق عمدا في درجة حرارة عالية جدا. تكتشف Powerd الآن أيضاً تغييرات حالة الطاقة (التي يمكن أن تغير قائمة الترددات المتاحة) وتقوم بتحويل الخدمة بشكل صحيح عند حدوث تغيير في حالة الطاقة.
الكثير من libthread_xu / pthreads إصلاحات وتعديلات لتحسين توافق dports.
إضافة ميزات النسخ عند الكتابة إلى vkernel. على سبيل المثال ، يسمح vkernels متعددة لاستخدام صورة قرص واحد عن طريق وجود كل COW التعديلات داخليا إلى ذاكرة الوصول العشوائي.
/ usr / src / rewired آمنة ، والنزاعات إزالتها من libmd ، libcrypt.
تم ترقية أدوات مختلفة في النظام الأساسي:
مترجم تحديث لدول مجلس التعاون الخليجي 5.4.1.
لدينا الآن رابط ذهبي مع LTO.
binutils 2.25
أقل من 481.
OpenSSL / LibRESSL تم تجديده بالكامل. يستخدم Base الآن libressl.
تحديثات متعددة المنطقة الزمنية.
حالة المطرقة:

تحسينات متنوعة. كان هناك شيء واحد لم يجعله في الإصدار هو عثرة الإصدار لاستخدام خوارزمية CRC أسرع مع متعدد الحدود مختلفة. هذا العمل سيكون MFC'd torelease بمجرد اكتمال الاختبار. ومع ذلك ، لا يجب على المستخدمين القلق بشأنها أكثر من اللازم لأن إصلاح أخطر هو IS في الإصدار (إصلاح إلى رمز cluster_write () من أجل كتابة نظام الملفات).
Hammer2 الحالة:
يستمر التطوير ولكن لا توجد كلمة بعد في الإصدار الأول.
حالة Clang:
تمت إضافة إطار عمل لبدء استخدام clang كمحول أساسي بديل في DragonFly ، لاستبدال gcc 4.7. لم تكتمل بعد بالطبع يمكن إضافة Clang كحزمة.
حالة 64 بت:
لاحظ أن DragonFly هو نظام تشغيل 64 بت فقط من 4.6 ، ولن يعمل على أجهزة 32 بت.
دعم AMD Ryzen متوفر في الإصدار وسيتم تقديم المزيد من العمل عند حدوث تطورات جديدة لـ Ryzen. هناك بعض المشكلات طبولوجيا التي تم الإبلاغ عنها طبولوجيا التي سيتم إصلاحها و MFC'd. هناك بعض مشكلات الثبات التي تنتظر حاليًا تحديث الرمز الصغير لـ AMD لحل / إعادة الاختبار. يمكن التأكيد على مستخدمي Ryzen أننا نبقى على رأسها!

ما هو الجديد في الإصدار 4.6.0:


mmcsd (4): إصلاح الخطأ المطبعي في disk_create () args. يسمح بالوصول إلى & gt؛ بطاقة SD-/ MMC.
إضافة بفك (1). إذا لم تستطيعي الفوز عليهم ، انضم إليهم
استعادة القدرة على إنشاء عالم رئيسي في الإصدار 4.4
buildworld - السماح - يبني على أساس سيد
etc / rc.d - تعديلات بدون قرص
kernel - إضافة دعم kqueue إلى NFS (إصلاح مشكلات firefox مع w / nfs)
استيراد OpenSSL 1.0.1s.
تعديلات محلية لـ OpenSSL 1.0.1s.
قاعدة بيانات المزامنة zoneinfo مع tzdata2016b من ftp://ftp.iana.org/tz/releases
zic (8) / zdump (8): لا تحذر من الاختصارات مثل '-05'.
zic (8): إزالة "السجل" الذي تسلل في آخر ارتكاب.
kernel / acpi_timer: إضافة cpu_enable_intr () مفقود بعد اختبار جهاز ضبط الوقت.
em.4: أذكر دعم i219.
ig_hal / em / emx: إضافة دعم I219 (Skylake)
تميز الكلية / vfs / hammer: إصلاح الخطأ على مسح حجم المجلد
sbin / hammer: لا تتجاوز 16 كيلو بايت من المخزن المؤقت لمستخدمي HAMMER
sbin / hammer: إضافة خيار تشويش لإظهار المطرقة
sys / vfs / hammer: إصلاح مؤقت لنوبة الذعر على وحدة التخزين

ما هو الجديد في الإصدار 4.4.3 / 4.6.0 RC2:


mmcsd (4): إصلاح الخطأ المطبعي في disk_create () args. يسمح بالوصول إلى & gt؛ بطاقة SD-/ MMC.
إضافة بفك (1). إذا لم تستطيعي الفوز عليهم ، انضم إليهم
استعادة القدرة على إنشاء عالم رئيسي في الإصدار 4.4
buildworld - السماح - يبني على أساس سيد
etc / rc.d - تعديلات بدون قرص
kernel - إضافة دعم kqueue إلى NFS (إصلاح مشكلات firefox مع w / nfs)
استيراد OpenSSL 1.0.1s.
تعديلات محلية لـ OpenSSL 1.0.1s.
قاعدة بيانات المزامنة zoneinfo مع tzdata2016b من ftp://ftp.iana.org/tz/releases
zic (8) / zdump (8): لا تحذر من الاختصارات مثل '-05'.
zic (8): إزالة "السجل" الذي تسلل في آخر ارتكاب.
kernel / acpi_timer: إضافة cpu_enable_intr () مفقود بعد اختبار جهاز ضبط الوقت.
em.4: أذكر دعم i219.
ig_hal / em / emx: إضافة دعم I219 (Skylake)
تميز الكلية / vfs / hammer: إصلاح الخطأ على مسح حجم المجلد
sbin / hammer: لا تتجاوز 16 كيلو بايت من المخزن المؤقت لمستخدمي HAMMER
sbin / hammer: إضافة خيار تشويش لإظهار المطرقة
sys / vfs / hammer: إصلاح مؤقت لنوبة الذعر على وحدة التخزين

الجديد في الإصدار 4.4.3:


mmcsd (4): إصلاح الخطأ المطبعي في disk_create () args. يسمح بالوصول إلى & gt؛ بطاقة SD-/ MMC.
إضافة بفك (1). إذا لم تستطيعي الفوز عليهم ، انضم إليهم
استعادة القدرة على إنشاء عالم رئيسي في الإصدار 4.4
buildworld - السماح - يبني على أساس سيد
etc / rc.d - تعديلات بدون قرص
kernel - إضافة دعم kqueue إلى NFS (إصلاح مشكلات firefox مع w / nfs)
استيراد OpenSSL 1.0.1s.
تعديلات محلية لـ OpenSSL 1.0.1s.
قاعدة بيانات المزامنة zoneinfo مع tzdata2016b من ftp://ftp.iana.org/tz/releases
zic (8) / zdump (8): لا تحذر من الاختصارات مثل '-05'.
zic (8): إزالة "السجل" الذي تسلل في آخر ارتكاب.
kernel / acpi_timer: إضافة cpu_enable_intr () مفقود بعد اختبار جهاز ضبط الوقت.
em.4: أذكر دعم i219.
ig_hal / em / emx: إضافة دعم I219 (Skylake)
تميز الكلية / vfs / hammer: إصلاح الخطأ على مسح حجم المجلد
sbin / hammer: لا تتجاوز 16 كيلو بايت من المخزن المؤقت لمستخدمي HAMMER
sbin / hammer: إضافة خيار تشويش لإظهار المطرقة
sys / vfs / hammer: إصلاح مؤقت لنوبة الذعر على وحدة التخزين

الجديد في الإصدار 4.4.2:

virtio_blk: استخدم contigmalloc / contigfree لمخصصات vtblk_request.
drm / radeon: نحتاج إلى العنوان الفعلي للصفحة الوهمية ، وليس العنوان الظاهري
if_iwm: تطبيق بعض التغييرات من OpenBSD ، if_iwm.c rev 1.39 - & gt؛ 1.42
if_iwm: فقط قم بتخزين مؤشر البرنامج الثابت للبنية ، مثل if_iwn.
if_iwm: قم بإزالة التعليقات التي تشير إلى أسماء ملفات Linux iwlwifi.
if_iwm: إصلاح استخدام IEEE80211_ADDR_COPY ().
if_iwm: إصلاح رمز إعداد التحكم في المعدل.
etc / rc.d: قم بتحديث rtsold
i915 - أضف التأخير بعد الإرفاق لتجنب سواقات الكونسول / إكس
نواة - تقليل lwp_signotify () الكمون
devfs - إصلاح حالة من الذعر على أجهزة إضافية تتراكم عند وجود القواعد
ssh - إزالة دعم التجوال غير الموثق CVE-2016-0777 CVE-2016-0778
نواة - إضافة مراوغات ل xhci (USB)
مطرقة - إزالة التصحيح kprintf
libc / stdtime: إصلاح حالتين حيث يمكن أن يكون مؤشر NULL مجاناً () 'd.
kernel / vga: إزالة خطأ lwkt_reltoken (). لم يؤخذ في هذه المرحلة.
libc / nls: Sync str {error، signal} () messages with.
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:

نواة:
تحسين إعدادات توفير طاقة وحدة المعالجة المركزية
تقليل تخصيص الملفات / التنازع الحر
تقليل التنافس kqueue
تم تنفيذ استدعاء النظام lwp_setname (2)
ثابت dsp (4) دعم عملية nonblocking
إضافة برنامج aperf (4) لعرض تردد وحدة المعالجة المركزية الفعال
العديد من عمليات التنظيف والإصلاحات إلى HAMMER
قم بمزامنة ACPICA إلى 20151124
انتهى في الغالب إزالة بت i386 (32 بت)
ضبط كومة محمل الإقلاع للتعامل مع صور MD أكبر
تنظيف تصريح المرور على كود النواة الميتة (بقايا syslink ، الخ)
dsched removed (مشكلات في الخلل ولا تعمل بشكل جيد مع محركات الأقراص ذات الحالة الثابتة)
إعادة صياغة خوارزميات النداء ل pkill الذاكرة المنخفضة والخروج من الذاكرة
الرسومات:
drm / i915 و drm / radeon يتطابقان الآن مع Linux kernel 3.18
i915 يدعم ValleyView / Baytrail و Cherryview Atom SOCs
يتم الآن تسريع GPUs برودويل بالكامل
العمل التحضيري لدعم Skylake
تدعم وحدة التحكم في النظام الآن رسومات drm بشكل افتراضي ؛ المحطات الافتراضية لا تظهر فقط شاشة سوداء مرة واحدة بمجرد بدء تشغيل Xorg وأحد وحدات kernel kms التي تم تحميلها.
تحسين إدارة الطاقة. لوحة تحديث الذات المتاحة على الأجهزة i915أجهزة استشعار درجة الحرارة تدعم الآن على أجهزة Radeon
التواصل:
دعم Realtek 8168H في إعادة (4)
iwm (4) سائق
rtadvd محدث ، وأضاف rtadvctl
اتصالات UDP غير المتزامنة ، للتعامل مع حمولة أكبر بكثير
نافذة تشغيل TCP جديدة أكبر ، لاتصالات عالية الكمون
قيم nmbcluster kernel قابلة للتعديل بشكل مباشر ، من أجل شبكات الاتصال ذات الحركة القصوى:
تثبيت مأخذ المجال UNIX
رمز GC جديد لـ fd-pass عبر مآخذ مجال unix
متفرقات IPv6 متزامنة مع فري
أداء مأخذ توصيل محسن (2) لـ TCP و UDP
تحسين اتصال TCP (2) تحديد المنفذ المحلي
تمت إضافة قبول (4) استدعاء النظام
تمت إضافة دعم لمأخذ SOCK_CLOEXEC و SOCK_NONBLOCK (2) وعلامات accept4 (2)
جعل ميزات التحكم في التدفق HW متاحة ل ifconfig
إضافة tunables للسماح NFSROOT iosize و readahead ليتم تعيينها
إحضار ipfw الموسعة من FreeBSD (يسمى ipfw3 في DFly)
السائقين الآخرين:
تم قراءة دعم MIDI
العديد من الأخطاء bugfixes لجهاز مخطط
تمت إضافة dm-delay و dm-flakey إلى مخطط الجهاز
أجهزة المودم تعمل بشكل أفضل (أو على الأقل لا تثير الذعر)تحسين الوصول إلى ميزات ذاكرة الوصول العشوائي ذاكرة الوصول العشوائي والحالة
wlan محدث من FreeBSD (فقط قبل إزالة الجهاز المنفصل)
يوزرلاند:
تم استبدال مكتبة regex بمكتبة regex TRE متعدد البايتات والأكثر قدرة بشكل عام. يتطابق مع OSX في الميزات. (DF هو أول BSD للانتقال إلى TRE بعد MacOS)
استبدال libm مع إصدار OpenBSD (هذا هو العمل التعاوني في التقدم)
يتميز libc الآن بإصدار الرموز التي يمكن أن تمكّن الثنائيات التي تم إنشاؤها في الإصدار 4.4 من التنفيذ على DragonFly لسنوات في المستقبل.
إصلاح شامل وتحديث اللغات ، بما في ذلك تنفيذ الترتيب.
إزالة malloc.h (DragonFly هو أول BSD لإزالة هذا العنوان)
تعديل gcc50 libstdc ++ لتمكين الاستخدام الكامل لوظائف C99 في clangوكنتيجة لتحديث اللغات المحلية ، تغير ناتج تنسيق ls (1) الطويل وتنسيق -T عند استخدام أسماء محلية مسمى. بشكل ملحوظ ، يتم دائمًا اختصار أشهر الصيغة الطويلة باللغة الإنجليزية (باستخدام تعريفات POSIX ، وبالتالي تضمن أن تكون سريعة وثلاث أحرف على حدٍ سواء) ويتم عرض معلومات السنة والساعة والثانية دائمًا. تحت لغة C / POSIX لا يوجد أي تغيير في ls (1) خرج غير التعامل مع الطابع الزمني في المستقبل ليتماشى مع متطلبات POSIX القياسية.
إذا تم استخدام WPA Supplicant من الأساس ، فسيكون هناك تأخير لمدة 10 ثوان أثناء التمهيد أثناء عرض رسالة توصي بشدة باستخدام إصدار DPorts (الأمان / wpa_supplicant) بدلاً من ذلك.
تحسين powerd (8)
تحسين أعلى (1) وإخراج (1) لـ LWPs و kernel threads
تم إصلاح دعم pthread_set_name_np (3)
استدار tcpdrop (8)إضافة العديد من الأماكن الجديدة بما في ذلك ستة مواقع عربية (الإمارات العربية المتحدة ، المملكة العربية السعودية ، مصر ، الأردن ، المغرب ، قطر) ، أماكن إسبانية إضافية (المكسيك ، الأرجنتين ، كوستاريكا) ، أماكن إنجليزية إضافية (الفلبين ، سنغافورة ، هونج كونج) ، تصحيح النرويجي لغات (nb و nn فقط) ، الموسعة السويدية (فنلندا) ، سامي (فنلندا ، النرويج) ، الصربية قدمت في كل أشكال السيريلية واللاتينية الآن. ('locale -a' يوفر قائمة كاملة.)
rtadvc المستوردة من FreeBSD
تم ترقية أدوات مختلفة في النظام الأساسي:
تحديث nvi2 إلى الإصدار 2.1.3
تمت إضافة libexecinfo (تمت مزامنته من FreeBSD)
iconv متزامنة مع فري
openssl محدثة إلى 1.0.1q
xz تحديث إلى 5.2.2
libedit محدثة للنسخة 2015/12/10
تم تحديث binutils إلى 2.25.1
grep تحديث إلى 2.22
تم تحديث tcsh إلى 6.19.00
libdialog تحديث إلى v1.2-20150920
(tn) بروتوكول نقل الملفات المحدث إلى '10 أكتوبر 2015 '
تحديث مجلس التعاون الخليجي إلى 5.2
acpica محدث إلى 20150717
تم استبدال الفرز (1) ، الذي جاء من NetBSD ، بإصدار FreeBSD
localedef (1) ، أداة داخلية ذات أصول على Illumos
cldr2def ، أداة داخلية ذات أصول في مشروع FreeBSD تم التخلي عنها ، لكنها مددت لـ DFتمت إزالته من النظام الأساسي:
hostapd (أحدث إصدار متاح عبر dports: net / hostapd)
mklocale (استبدالها localedef)
colldef (تم استبداله بـ localedef)
تحسينات HAMMER:
العديد من العديد من عمليات التنظيف والإصلاحات إلى Hammer1 ، وذلك بفضل Tomohiro Kusumi
تحسينات أخرى:
يبلغ عدد مرافئ DP حول 22،800 منفذ. تم إصلاح العديد من المنافذ التي تم كسرها سابقًا بواسطة المستخدمين العاديين بسبب المساهمات المقدمة من خلال آلية طلب السحب الخاصة بـ GitHub. (شكر!)
تتوفر ست مجموعات "رسمية" من ورق DragonFly على x11-themes / dragonfly-wallpapers (pkg install dragonfly-wallpapers). يتم تثبيتها تلقائيًا ويتم تحديدها مسبقًا لمستخدمي KDE ، ويتم تثبيتها تلقائيًا لمستخدمي XFCE4 ولكن لا تزال خلفيات الشاشة محددة يدويًا مع سطح المكتب هذا (على الأقل في الوقت الحالي). يتم تثبيتها على مشاركة / خلفيات والتي ترتبط لمشاركة / الخلفيات / اليعسوب.

برامج مماثلة

DSLinux
DSLinux

3 Jun 15

RAFDROID HD
RAFDROID HD

14 Apr 15

LiveUSB-Games
LiveUSB-Games

20 Feb 15

SmartOS
SmartOS

17 Aug 18

تعليقات ل DragonFly BSD

لم يتم العثور على التعليقات
إضافة تعليق
بدوره على الصور!