DragonFly BSD 5.8 operatsion tizimining chiqarilishi

Mavjud reliz DragonFlyBSD 5.8, gibrid yadroli operatsion tizim, yaratilgan 2003 yilda FreeBSD 4.x filialini muqobil rivojlantirish maqsadida. DragonFly BSD xususiyatlari orasida biz tarqatilgan versiya fayl tizimini ajratib ko'rsatishimiz mumkin HAMMER, foydalanuvchi jarayonlari sifatida "virtual" tizim yadrolarini yuklashni qo'llab-quvvatlash, SSD disklarida FS ma'lumotlari va metama'lumotlarini keshlash qobiliyati, kontekstga sezgir variantning ramziy havolalari, jarayonlarni diskda holatini saqlashda muzlatish qobiliyati, engil iplar yordamida gibrid yadro (LWKT).

asosiy yaxshilanishlarDragonFlyBSD 5.8 da qo'shilgan:

  • Asosiy tarkibga yordamchi dastur kiradi dsynth, o'zingizning DPort ikkilik omborlarini mahalliy yig'ish va texnik xizmat ko'rsatish uchun mo'ljallangan. Bog'liqlik daraxtini hisobga olgan holda ixtiyoriy sonli portlarni o'rnatishni parallellashtirish qo'llab-quvvatlanadi. Yangi nashrga tayyorgarlik ko'rish jarayonida DPort bir nechta qaram paketlarni yaratishni tezlashtirishga qaratilgan ko'plab o'zgarishlarni amalga oshirdi.
  • libc samarali signalni maskalash mexanizmini amalga oshiradi, bu malloc*() va shunga o'xshash funktsiyalarni signal bilan uzilishi sababli muammolardan himoya qilish imkonini beradi. Signallarni qisqa muddatli blokirovka qilish va blokdan chiqarish uchun tizim chaqiruvlarisiz ishlaydigan sigblockall() va sigunblockall() funksiyalari taklif etiladi. Bundan tashqari, libc strtok() funksiyasini ko‘p tarmoqli ilovalarda foydalanish uchun moslashtirdi, dportlarni qo‘llab-quvvatlashni yaxshilash uchun TABDLY, TAB0, TAB3 konstantalarini va __errno_location funksiyasini qo‘shdi.
  • DRM (To'g'ridan-to'g'ri Rendering menejeri) interfeys komponentlari Wayland qo'llab-quvvatlashini yaxshilashga qaratilgan 4.9 yadrosidan ko'chirilgan tanlangan xususiyatlar bilan Linux yadrosi 4.12 bilan sinxronlashtiriladi.
    Intel GPU'lari uchun drm/i915 drayveri yangi chiplarni (Skylake, Coffelake, Amber Leyk, Viski ko'li va Kometa ko'li) qo'llab-quvvatlash uchun 4.8.17 yadrosidan uzatilgan kod bilan Linux yadrosi 5.4 bilan sinxronlashtiriladi. AMD video kartalari uchun drm/radeon drayveri Linux 4.9 yadrosi bilan sinxronlashtirilgan.

  • Virtual xotiraning sahifalash algoritmlari sezilarli darajada takomillashtirildi, bu bizga xotira yetarli bo'lmaganda foydalanuvchi interfeysidagi javob berish muammolarini bartaraf etish yoki minimallashtirish imkonini beradi. Tizim xotirasi yetarli emasligi sababli Chrome/Chromium’ni muzlatish bilan bog‘liq muammolar hal qilindi.
  • Ko'p sonli protsessor yadrolariga ega tizimlarda yadro miqyosi yaxshilandi. Virtual xotira sahifasini so'rash vaqti qisqartirildi. Xotira kam bo'lganda SMP tortishuvi kamayadi. "Ochiq(... O_RDWR)" qo'ng'irog'ining samaradorligi ortdi.
  • Yadrodagi psevdo-tasodifiy raqamlar generatori qayta ishlab chiqilgan. RDRAND drayveri barcha protsessorlardan entropiyani to'plash uchun moslashtirilgan. Kamaytirilgan intensivlik
    va RDRAND tasmasi hajmi, ilgari bo'sh vaqt davomida CPU vaqtining 2-3% ni oladi.

  • Yangi tizim qo'ng'iroqlari realpath, getrandom va lwp_getname (pthread_get_name_np ni amalga oshirishga ruxsat berilgan).
  • SMAP (Supervisor Mode Access Prevention) va SMEP (Supervisor Mode Execution Prevention) himoya mexanizmlari uchun qo‘shimcha qo‘llab-quvvatlash. SMAP yadro darajasida ishlaydigan imtiyozli koddan foydalanuvchi ma'lumotlariga kirishni bloklash imkonini beradi. SMEP yadro rejimidan foydalanuvchi darajasida joylashgan kodni bajarishga o'tishga ruxsat bermaydi, bu yadrodagi ko'plab zaifliklardan foydalanishni blokirovka qilishga imkon beradi (qobiq kodi bajarilmaydi, chunki u foydalanuvchi maydonida);
  • Jailni sozlash uchun qayta ishlangan sysctl o'zgaruvchilari. Jaildan nullf va tmpflarni o'rnatish imkoniyati qo'shildi.
  • HAMMER2 fayl tizimi uchun favqulodda holat rejimi qo'shildi, bu nosozlikdan keyin tiklanish vaqtida ishlatilishi mumkin. Ushbu rejimda inodeni mahalliy ravishda yangilashda oniy tasvirlarni yo'q qilish mumkin (diskda bo'sh joy bo'lmaganda, nusxa ko'chirish-yozish mexanizmidan foydalanishning iloji bo'lmaganda fayllar va kataloglarni o'chirish imkonini beradi). HAMMER2-da ipni jo'natishni qo'llab-quvvatlashni qayta ishlash orqali sezilarli darajada yaxshilandi. Buferlarni yuvish jarayoni sezilarli darajada yaxshilandi.
  • TMPFS ishonchliligi va ishlashi yaxshilandi. Tizimda bo'sh xotira etishmasligi mavjud bo'lganda ish samaradorligini oshirish.
  • IPv4 tarmoq stegi endi /31 prefikslarini qo'llab-quvvatlaydi (QRM 3021).
    Tap MTU > 1500 ni qo‘llab-quvvatlash uchun SIOCSIFMTU ioctl bilan ishlashni yaxshiladi. SIOCSIFINFO_IN6 va SO_RERROR uchun qo‘shimcha yordam qo‘shildi.

  • Iwm drayveri Intel simsiz chiplarini qo'llab-quvvatlash bilan FreeBSD bilan sinxronlashtiriladi (iwm-9000 va iwm-9260 uchun qo'shimcha yordam).
  • Port mosligini yaxshilash uchun Linuxga mos keladigan basename() va dirname() funksiyalari qoʻshildi.
  • fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 FreeBSD’dan libc/getaddrinfo(), calendar(1), rcorder-visualize.sh ga ko‘chirildi. Math.h dan funksiyalar OpenBSD dan ko'chirildi.
  • Uchinchi tomon komponentlarining yangilangan versiyalari, jumladan Binutils 2.34, Openresolv 3.9.2, DHCPCD 8.1.3. Standart kompilyator - gcc-8.

Manba: opennet.ru

a Izoh qo'shish