Keluaran sistem pengendalian DragonFly BSD 5.8

Ada melepaskan DragonFlyBSD 5.8, sistem pengendalian dengan kernel hibrid, dicipta pada tahun 2003 untuk tujuan pembangunan alternatif cawangan FreeBSD 4.x. Antara ciri DragonFly BSD, kami boleh menyerlahkan sistem fail versi teragih HAMMER, sokongan untuk memuatkan kernel sistem "maya" sebagai proses pengguna, keupayaan untuk menyimpan data FS dan metadata pada pemacu SSD, pautan simbolik varian sensitif konteks, keupayaan untuk membekukan proses sambil menyimpan keadaannya pada cakera, kernel hibrid menggunakan benang ringan (LWKT) .

Utama penambahbaikanditambah dalam DragonFlyBSD 5.8:

  • Komposisi utama termasuk utiliti dsynth, direka untuk pemasangan tempatan dan penyelenggaraan repositori binari DPort anda sendiri. Keselarian pemasangan bilangan port yang sewenang-wenangnya disokong, dengan mengambil kira pokok pergantungan. Sebagai persediaan untuk keluaran baharu, DPort juga telah membuat sejumlah besar perubahan yang bertujuan untuk mempercepatkan pembinaan beberapa pakej bergantung.
  • libc melaksanakan mekanisme penutup isyarat yang berkesan, yang memungkinkan untuk melindungi malloc*() dan fungsi serupa daripada masalah akibat gangguannya oleh isyarat. Untuk menyekat dan menyahsekat isyarat jangka pendek, fungsi sigblockall() dan sigunblockall() dicadangkan, yang berfungsi tanpa membuat panggilan sistem. Selain itu, libc telah menyesuaikan fungsi strtok() untuk digunakan dalam aplikasi berbilang benang, menambah pemalar TABDLY, TAB0, TAB3 dan fungsi __errno_location untuk meningkatkan sokongan dports.
  • Komponen antara muka DRM (Direct Rendering Manager) disegerakkan dengan kernel Linux 4.9, dengan ciri terpilih yang dialihkan daripada kernel 4.12 yang bertujuan untuk meningkatkan sokongan Wayland.
    Pemacu drm/i915 untuk GPU Intel disegerakkan dengan kernel Linux 4.8.17 dengan kod dipindahkan daripada kernel 5.4 untuk menyokong cip baharu (Skylake, Coffelake, Amber Lake, Whiskey Lake dan Comet Lake). Pemacu drm/radeon untuk kad video AMD disegerakkan dengan kernel Linux 4.9.

  • Algoritma paging memori maya telah dipertingkatkan dengan ketara, membolehkan kami menghapuskan atau meminimumkan masalah responsif dalam antara muka pengguna apabila memori tidak mencukupi. Masalah dengan pembekuan Chrome/Chromium disebabkan oleh memori sistem yang tidak mencukupi telah diselesaikan.
  • Penskalaan kernel yang lebih baik pada sistem dengan sejumlah besar teras pemproses. Mengurangkan masa permintaan halaman memori maya. Mengurangkan perbalahan SMP apabila ingatan rendah. Peningkatan kecekapan panggilan "open(... O_RDWR)".
  • Penjana nombor pseudo-rawak dalam kernel telah direka bentuk semula. Pemacu RDRAND disesuaikan untuk mengumpul entropi daripada semua CPU. Keamatan berkurangan
    dan saiz suapan RDRAND, yang sebelum ini mengambil 2-3% masa CPU semasa masa melahu.

  • Menambahkan panggilan sistem baharu realpath, getrandom dan lwp_getname (membenarkan pelaksanaan pthread_get_name_np).
  • Sokongan tambahan untuk mekanisme perlindungan SMAP (Pencegahan Akses Mod Penyelia) dan SMEP (Pencegahan Pelaksanaan Mod Penyelia). SMAP membolehkan anda menyekat akses kepada data ruang pengguna daripada kod istimewa yang dijalankan pada peringkat kernel. SMEP tidak membenarkan peralihan daripada mod kernel kepada pelaksanaan kod yang terletak di peringkat pengguna, yang memungkinkan untuk menyekat eksploitasi banyak kelemahan dalam kernel (kod shell tidak akan dilaksanakan, kerana ia berada dalam ruang pengguna);
  • Pembolehubah sysctl diolah semula untuk mengkonfigurasi Jail. Menambahkan keupayaan untuk memasang nullfs dan tmpfs dari Jail.
  • Menambahkan mod kecemasan untuk sistem fail HAMMER2, yang boleh digunakan semasa pemulihan selepas kegagalan. Dalam mod ini, adalah mungkin untuk memusnahkan syot kilat apabila mengemas kini inod secara setempat (membolehkan anda memadam fail dan direktori jika tiada ruang cakera kosong, apabila mustahil untuk menggunakan mekanisme salin atas tulis). Prestasi yang dipertingkatkan dengan ketara dengan mengolah semula sokongan penghantaran benang dalam HAMMER2. Proses pembilasan penimbal telah dipertingkatkan dengan ketara.
  • Peningkatan kebolehpercayaan dan prestasi TMPFS. Meningkatkan kecekapan operasi apabila terdapat kekurangan memori percuma dalam sistem.
  • Timbunan rangkaian IPv4 kini menyokong /31 awalan (RFC 3021).
    Ketik telah memperbaik pengendalian ioctl SIOCSIFMTU untuk menyokong MTU > 1500. Menambah sokongan untuk SIOCSIFINFO_IN6 dan SO_RERROR.

  • Pemacu iwm disegerakkan dengan FreeBSD dengan sokongan untuk cip wayarles Intel (menambah sokongan untuk iwm-9000 dan iwm-9260).
  • Menambahkan fungsi basename() dan dirname() serasi Linux untuk meningkatkan keserasian port.
  • Mengalihkan fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 daripada FreeBSD ke libc/getaddrinfo(), calendar(1), rcorder-visualize.sh. Fungsi daripada math.h telah dialihkan daripada OpenBSD.
  • Versi komponen pihak ketiga yang dikemas kini, termasuk Binutils 2.34, Openresolv 3.9.2, DHCPCD 8.1.3. Pengkompil lalai ialah gcc-8.

Sumber: opennet.ru

Tambah komen