Laporan Kamajuan FreeBSD Q2019 XNUMX

diterbitkeun laporan ngeunaan pamekaran proyék FreeBSD ti April nepi ka Juni 2019. Di antara parobahan urang tiasa dicatet:

  • Masalah umum sareng sistemik
    • Tim Inti mutuskeun pikeun ngadegkeun grup kerja pikeun ngajalajah kamungkinan mindahkeun kode sumber tina sistem kontrol sumber Subversion terpusat ka sistem Git desentralisasi.
    • Ngalaksanakeun uji fuzz kernel FreeBSD nganggo sistem syzkaller sareng sababaraha kasalahan anu diidentifikasi dilereskeun. Ditambahkeun lapisan pikeun nguji fuzzing perpustakaan pikeun kasaluyuan sareng lingkungan 32-bit dina sistem sareng kernel 64-bit. Kamampuh ngajalankeun syzkaller dina mesin virtual basis bhyve geus dilaksanakeun. Dina tahap salajengna, rencanana pikeun ngalegaan liputan tés panggero sistem, nganggo sanitizer LLVM pikeun mariksa kernel, nganggo netdump pikeun ngahemat dumps kernel nalika kacilakaan nalika uji fuzzing, jsb.
    • Karya parantos dimimitian pikeun ngapdet palaksanaan zlib dina tingkat kernel. Pikeun aksés kernel kana kode zlib, diréktori contrib / zlib diganti jadi sys / contrib / zlib, sarta file lulugu crc.h ieu ogé diganti pikeun nyegah konflik kalawan zlib / crc.h. Ngabersihan kode warisan anu gumantung kana zlib sareng inflate. Salajengna, éta rencanana nyadiakeun kamampuhan pikeun ngawangun kernel sakaligus kalawan zlib heubeul jeung anyar pikeun mindahkeun bertahap kana versi anyar tina fungsi nu ngagunakeun komprési;
    • Infrastruktur émulasi lingkungan Linux (Linuxulator) parantos diropéa. Ngaronjatkeun dukungan pikeun alat debugging Linux sapertos utiliti strace. Paket linux-c7-strace geus ditambahkeun kana palabuhan, nu bisa dipaké pikeun ngalacak file laksana Linux Ubuntu tinimbang truss baku sarta Utiliti ktrace, nu teu acan tiasa decode sababaraha bandéra jeung struktur Linux Ubuntu. Sajaba ti éta, paket linux-ltp jeung Linux Ubuntu Test Project executables geus ditambahkeun jeung masalah kasaluyuan jeung executables numbu ka versi anyar glibc geus direngsekeun;
    • Palaksanaan operasi invalidation nyangsang dina mékanisme pmap geus dibikeun ka pamakéan hiji algoritma processing antrian anu hade tanpa konci, nu geus hasil nu mungkin pikeun ngajawab masalah scalability nalika ngajalankeun angka nu gede ngarupakeun operasi unmap paralel;
    • Mékanisme pikeun meungpeuk vnode salila palaksanaan panggero sistem tina execve () kulawarga geus robah, nu ngamungkinkeun pikeun ngahontal efisiensi ngaronjat nalika sakaligus ngajalankeun execve () pikeun file sarua (Contona, nalika ngajalankeun operasi assembly kalawan parallelization. tina peluncuran kompiler);
  • kasalametan
    • Hypervisor bhyve terus ningkatkeun rojongan pikeun Live migrasi lingkungan tamu ti hiji host ka sejen tur fungsi Simpen / Mulangkeun, nu ngidinan Anjeun pikeun freeze sistem tamu, nyimpen kaayaan ka file, lajeng neruskeun palaksanaan.
    • Ngaliwatan pamakéan perpustakaan libvdsk, bhyve geus ditambahkeun rojongan pikeun gambar disk dina format QCOW2. Merlukeun instalasi pikeun digawé
      husus dirobah Vérsi bhyve, anu parantos dirobih janten panangan operasi file dumasar kana libvdsk. Salila période ngalaporkeun, libvdsk ogé ngalaksanakeun pagawéan pikeun nyederhanakeun integrasi pangrojong pikeun format anyar, ningkatkeun kinerja maca sareng nyerat, sareng nambihan dukungan pikeun Copy-On-Write. Tina tugas sésana, integrasi libvdsk kana struktur utama bhyve nyatet;

    • Hiji sistem pikeun ngumpulkeun informasi lalulintas geus ditambahkeun kana palabuhan
      Maltrail, nu ngidinan Anjeun pikeun nyieun sarap pikeun requests jaringan jahat (IP jeung domain ti blacklists dipariksa) jeung ngirim informasi ngeunaan aktivitas kauninga ka server terpusat pikeun blocking saterusna atawa analisis usaha serangan;

    • Platform parantos ditambah kana palabuhan pikeun ngadeteksi serangan, nganalisa log sareng ngawaskeun integritas file Wazuh (garpu Ossec kalayan dukungan pikeun integrasi sareng ELK-tumpukan);
  • Subsistem jaringan
    • Supir ena parantos diropéa pikeun ngadukung generasi kadua adaptor jaringan ENAv2 (Elastic Network Adapter) anu dianggo dina infrastruktur Elastic Compute Cloud (EC2) pikeun ngatur komunikasi antara titik EC2 dina kecepatan dugi ka 25 Gb / s. rojongan NETMAP geus ditambahkeun kana supir ena.
    • FreeBSD HEAD ngadopsi tumpukan MMC/SD anyar, dumasar kana kerangka CAM sareng ngamungkinkeun anjeun nyambungkeun alat sareng antarmuka SDIO (Secure Digital I/O). Contona, SDIO dipaké dina WiFi jeung modul Bluetooth pikeun loba dewan, kayaning buah prambus Pi 3. tumpukan anyar ogé ngamungkinkeun panganteur CAM dipaké pikeun ngirim paréntah SD ti aplikasi dina spasi pamaké, nu ngamungkinkeun pikeun nyieun alat. drivers nu beroperasi dina tingkat pamaké. Karya geus dimimitian dina nyieun drivers pikeun chip nirkabel Broadcom operasi dina modeu FullMAC (dina sisi chip ngajalankeun hiji semblance tina sistem operasi sorangan kalawan palaksanaan na 802.11 nirkabel tumpukan);
    • Karya keur dijalankeun pikeun nerapkeun NFSv4.2 (RFC-7862) pikeun FreeBSD. Versi anyar NFS nambihan rojongan pikeun posix_fadvise, fungsi posix_fallocate, SEEKHOLE / modeu SEEKDATA di lseek, sarta operasi nyalin lokal bagian tina file dina server (tanpa mindahkeun ka klien).

      FreeBSD ayeuna nyayogikeun pangrojong dasar pikeun operasi LayoutError, IOAdvise, Allocate, sareng Copy. Sadaya anu tetep nyaéta ngalaksanakeun operasi Pilarian anu diperyogikeun pikeun ngagunakeun lseek (SEEKHOLE / SEEKDATA) sareng NFS. rojongan NFSv4.2 rencanana pikeun FreeBSD 13;

  • Panyimpenan sareng sistem file
    • Proyék pikeun ngerjakeun deui supir pikeun subsistem FUSE (Sistem file dina USErspace), anu ngamungkinkeun nyiptakeun palaksanaan sistem file dina rohangan pangguna, parantos réngsé. Supir anu disayogikeun asalna parantos lami sareng seueur bug. Salaku bagian tina proyék modernisasi supir, dukungan pikeun protokol FUSE 7.23 dilaksanakeun (saméméhna versi 7.8, dirilis 11 sababaraha taun ka pengker dirojong), kode ieu ditambahkeun pikeun pariksa hak aksés di sisi kernel ("-o default_permissions"), nelepon ka VOP_MKNOD, VOP_BMAP na VOP_ADVLOCK ditambahkeun, kamampuhan pikeun interrupting operasi FUSE, rojongan ditambahkeun pikeun pipa unnamed na sockets unix di fusefs, kamampuhan pikeun ngagunakeun kqueue pikeun / dev / sekering, diwenangkeun ngamutahirkeun parameter Gunung via "Gunung -u", rojongan ditambahkeun pikeun exporting fusefs via NFS, dilaksanakeun RLIMIT_FSIZE akuntansi, ditambahkeun FOPEN_KEEP_CACHE umbul sarta FUSE_ASYNC_READ, optimizations kinerja signifikan geus dijieun jeung organisasi cache geus ningkat;
    • Rojongan pikeun operasi BIO_DELETE geus ditambahkeun kana kode swap pager, nu ngidinan Anjeun pikeun make paréntah TRIM nalika nyoplokkeun blok ti drive SSD pikeun ngaronjatkeun kahirupan layanan maranéhanana.
  • rojongan hardware
    • Karya terus nerapkeun rojongan pikeun ARM64 SoC Broadcom BCM5871X kalawan prosesor ARMv8 Cortex-A57, aimed dina pamakéan dina routers, gateways jeung neundeun jaringan. Salila période ngalaporkeun, rojongan pikeun beus iProc PCIe internal tur éksternal ieu ningkat, rojongan pikeun BNXT Ethernet ditambahkeun, jeung karya keur dijalankeun pikeun ngagunakeun mesin crypto diwangun-di pikeun ngagancangkeun IPsec. Integrasi kode kana cabang HEAD diperkirakeun dina satengah kadua taun;
    • Karya geus dimimitian dina rojongan pikeun 64-bit SoC NXP LS1046A dumasar kana prosésor ARMv8 Cortex-A72 kalawan mesin akselerasi processing pakét jaringan terpadu, 10 Gb Ethernet, PCIe 3.0, Kang Tata 3.0 jeung USB 3.0. Rojongan pikeun platform dasar (multi-pamaké SMP) sareng SATA 3.0 parantos dilaksanakeun. Rojongan pikeun USB 3.0, SD / MMC sareng I2C nuju dikembangkeun. Rencanana kalebet dukungan pikeun Ethernet, GPIO sareng QSPI. Parantosan padamelan sareng kalebet dina cabang HEAD diperkirakeun dina kuartal ka-4 2019.
    • Pembalap mlx5en sareng mlx5ib anu diropéa pikeun adaptor Mellanox ConnectX-4 [Lx], ConnectX-5 [Ex], sareng ConnectX-6 [Dx] Ethernet sareng InfiniBand. Ditambahkeun dukungan pikeun adaptor Mellanox Socket Direct (ConnectX-6), ngamungkinkeun throughput dugi ka 200Gb / s dina beus PCIe Gen 3.0. Pikeun chip BlueField multi-inti, rojongan pikeun supir RShim geus ditambahkeun. Paket mstflint sareng sakumpulan utilitas diagnostik pikeun adaptor Mellanox parantos ditambah kana palabuhan;
  • Aplikasi sareng sistem port
    • Komponén tumpukan grafik parantos diropéa. Supir drm.ko (Direct Rendering Manager) parantos dialihkeun tina kernel Linux 5.0. supir ieu dianggap ékspériméntal sarta geus ditambahkeun kana tangkal palabuhan sakumaha grafik / drm-devel-kmod. Kusabab supir nganggo kerangka Linux KPI anu diropéa pikeun cocog sareng kernel Linux DRM API, FreeBSD CURRENT kedah dijalankeun. Supir drm vboxvideo.ko pikeun VirtualBox virtual GPU ogé parantos porting tina Linux. pakét Mesa geus diropéa pikeun release 18.3.2 sarta switched pikeun pamakéan LLVM ti devel / port llvm80 tinimbang devel / llvm60.
    • Tangkal palabuhan FreeBSD geus ngaleuwihan 37000 palabuhan, jumlah PRs unclosed tetep dina 2146. Salila période ngalaporkeun, 7837 parobahan dijieun tina 172 pamekar. Tilu pamilon anyar nampi hak committer. Diantara apdet vérsi anu penting dina palabuhan nyaéta: MySQL 5.7, Python 3.6, Ruby 2.5, Samba 4.8, Julia 1.0, Firefox 68.0, Chromium 75.0.3770.100. Sadaya port Go parantos dirobih nganggo bandéra "USES=go". Ditambahkeun "USES = cabal" bendera ka manajer pakét Cabal dipaké pikeun kode Haskell. Mode panyalindungan tumpukan ketat diaktipkeun. Versi Python standar nyaéta 3.6 tibatan 2.7.
    • Pelepasan utilitas parantos disiapkeun nsysctl 1.0, anu nawiskeun analog kana /sbin/sysctl anu ngagunakeun libxo pikeun kaluaran jeung nyadiakeun hiji set dimekarkeun tina pilihan. Nsysctl tiasa dianggo pikeun ngawas sacara visual kaayaan nilai sysctl sareng nampilkeun inpormasi ngeunaan objék dina bentuk terstruktur. Kaluaran dina XML, JSON jeung format HTML mungkin;

sumber: opennet.ru

Tambahkeun komentar