FreeBSD Q2019 XNUMX Iroyin Ilọsiwaju

atejade ṣe ijabọ lori idagbasoke iṣẹ akanṣe FreeBSD lati Oṣu Kẹrin si Oṣu Karun ọdun 2019. Lara awọn iyipada a le ṣe akiyesi:

  • Gbogbogbo ati eto eto
    • Ẹgbẹ Core pinnu lati ṣeto ẹgbẹ ti n ṣiṣẹ lati ṣawari iṣeeṣe gbigbe koodu orisun lati eto iṣakoso orisun Subversion aarin si eto Git ti a ti sọ di mimọ.
    • Ṣe idanwo fuzz ti ekuro FreeBSD ni lilo eto naa syzkaller ati awọn nọmba kan ti mọ aṣiṣe ti a atunse. Fikun Layer kan fun idanwo iruju ti awọn ile-ikawe fun ibamu pẹlu agbegbe 32-bit lori awọn eto pẹlu ekuro 64-bit kan. Ni agbara lati ṣiṣe syzkaller ni bhyve-orisun foju ero ti a ti muse. Ni ipele atẹle, o ti gbero lati faagun agbegbe ti idanwo ipe eto, lo LLVM sanitizer lati ṣayẹwo ekuro, lo netdump lati ṣafipamọ awọn idalẹnu ekuro lakoko awọn ipadanu lakoko idanwo iruju, ati bẹbẹ lọ.
    • Iṣẹ ti bẹrẹ lori imudojuiwọn imuse zlib ni ipele ekuro. Fun iraye si kernel si koodu zlib, itọsọna contrib/zlib ti jẹ lorukọmii si sys/contrib/zlib, ati pe faili akọsori crc.h tun jẹ lorukọ lati yago fun ija pẹlu zlib/crc.h. Ti sọ di mimọ koodu pataki ti o gbarale zlib ati fifẹ. Nigbamii ti, o ti gbero lati pese agbara lati kọ ekuro nigbakanna pẹlu atijọ ati zlib tuntun fun gbigbe mimu si ẹya tuntun ti awọn iṣẹ ti o lo funmorawon;
    • Awọn amayederun imulation ayika Linux (Linuxulator) ti ni imudojuiwọn. Atilẹyin ti o pọ si fun awọn irinṣẹ n ṣatunṣe aṣiṣe Linux gẹgẹbi IwUlO strace. A ti ṣafikun package linux-c7-strace si awọn ebute oko oju omi, eyiti o le lo lati wa kakiri awọn faili ṣiṣe Linux dipo ti truss boṣewa ati awọn ohun elo ktrace, eyiti ko le pinnu diẹ ninu awọn asia ati awọn ẹya pato Linux. Ni afikun, package linux-ltp pẹlu awọn iṣẹ ṣiṣe Idanwo Linux ti ṣafikun ati pe awọn ọran ibamu pẹlu awọn iṣẹ ṣiṣe ti o sopọ pẹlu awọn ẹya tuntun ti glibc ti ni ipinnu;
    • Awọn imuse ti awọn iṣẹ aiṣedeede idaduro ni ẹrọ pmap ti gbe lọ si lilo algorithm processing ti isinyi ti o ṣiṣẹ laisi awọn titiipa, eyiti o jẹ ki o ṣee ṣe lati yanju awọn iṣoro scalability nigbati o ba n ṣe nọmba nla ti awọn iṣẹ aiṣedeede ti o jọra;
    • Ilana fun didi vnode lakoko ipaniyan ti awọn ipe eto ti idile execve () ti yipada, eyiti o jẹ ki o ṣee ṣe lati ṣaṣeyọri ṣiṣe pọ si nigbakanna ti n ṣiṣẹ execve () fun faili kanna (fun apẹẹrẹ, nigba ṣiṣe awọn iṣẹ apejọ pẹlu parallelization). ti ibẹrẹ alakojo);
  • Aabo
    • Bhyve hypervisor tẹsiwaju lati ni ilọsiwaju atilẹyin fun ijira Live ti awọn agbegbe alejo lati ọdọ agbalejo kan si omiiran ati iṣẹ Fipamọ / Mu pada, eyiti o fun ọ laaye lati di eto alejo, fifipamọ ipinle si faili kan, lẹhinna tun bẹrẹ ipaniyan.
    • Nipasẹ lilo ile-ikawe libvdsk, bhyve ti ṣafikun atilẹyin fun awọn aworan disiki ni ọna kika QCOW2. Nilo fifi sori ẹrọ lati ṣiṣẹ
      pataki títúnṣe Ẹya ti bhyve, eyiti o ti yipada lati lo awọn olutọju iṣiṣẹ faili ti o da lori libvdsk. Lakoko akoko ijabọ, libvdsk tun ṣe iṣẹ lati ṣe irọrun isọpọ ti atilẹyin fun awọn ọna kika tuntun, ilọsiwaju kika ati iṣẹ kikọ, ati atilẹyin afikun fun Daakọ-Lori-Kọ. Ninu awọn iṣẹ-ṣiṣe ti o ku, iṣọkan ti libvdsk sinu ipilẹ akọkọ ti bhyve ni a ṣe akiyesi;

    • Eto kan fun gbigba alaye ijabọ ni a ti ṣafikun si awọn ebute oko oju omi
      Maltrail, eyiti o fun ọ laaye lati ṣẹda awọn ẹgẹ fun awọn ibeere nẹtiwọọki irira (IPs ati awọn ibugbe lati awọn atokọ dudu ti ṣayẹwo) ati firanṣẹ alaye nipa iṣẹ ṣiṣe ti a rii si olupin aarin kan fun idinamọ atẹle tabi itupalẹ awọn igbiyanju ikọlu;

    • A ti ṣafikun awọn iru ẹrọ si awọn ebute oko oju omi fun wiwa awọn ikọlu, itupalẹ awọn akọọlẹ ati abojuto iduroṣinṣin faili Wazuh (orita ti Ossec pẹlu atilẹyin fun Integration pẹlu ELK-akopọ);
  • Nẹtiwọọki subsystem
    • Awakọ ena ti ni imudojuiwọn lati ṣe atilẹyin iran keji ti awọn oluyipada nẹtiwọki ENAv2 (Elastic Network Adapter) ti a lo ninu awọn amayederun Elastic Compute Cloud (EC2) lati ṣeto awọn ibaraẹnisọrọ laarin awọn apa EC2 ni awọn iyara ti o to 25 Gb/s. Atilẹyin NETMAP ti ṣafikun si awakọ ena.
    • FreeBSD HEAD gba akopọ MMC/SD tuntun kan, ti o da lori ilana CAM ati gbigba ọ laaye lati sopọ awọn ẹrọ pẹlu wiwo SDIO (Secure Digital I/O). Fun apẹẹrẹ, SDIO ti lo ni WiFi ati awọn modulu Bluetooth fun ọpọlọpọ awọn igbimọ, gẹgẹbi Rasipibẹri Pi 3. Akopọ tuntun tun jẹ ki wiwo CAM le ṣee lo lati firanṣẹ awọn aṣẹ SD lati awọn ohun elo ni aaye olumulo, eyiti o jẹ ki o ṣee ṣe lati ṣẹda ẹrọ. awakọ ti o ṣiṣẹ ni ipele olumulo. Iṣẹ ti bẹrẹ lori ṣiṣẹda awọn awakọ fun awọn eerun alailowaya Broadcom ti n ṣiṣẹ ni ipo FullMAC (ni ẹgbẹ chirún o nṣiṣẹ irisi ti ẹrọ iṣẹ tirẹ pẹlu awọn imuse ti akopọ alailowaya 802.11);
    • Iṣẹ n lọ lọwọ lati ṣe NFSv4.2 (RFC-7862) fun FreeBSD. Ẹya tuntun ti NFS ṣe afikun atilẹyin fun posix_fadvise, awọn iṣẹ posix_fallocate, awọn ipo SEEKHOLE/SEEKDATA ni lseek, ati iṣẹ ti didaakọ agbegbe ti awọn apakan ti faili kan lori olupin (laisi gbigbe si alabara).

      FreeBSD lọwọlọwọ n pese atilẹyin ipilẹ fun LayoutError, IOAdvise, Allocate, ati awọn iṣẹ ẹda. Gbogbo ohun ti o ku ni lati ṣe iṣẹ ṣiṣe wiwa ti o nilo lati lo lseek(SEEKHOLE/SEEKDATA) pẹlu NFS. Atilẹyin NFSv4.2 ti gbero fun FreeBSD 13;

  • Ibi ipamọ ati awọn ọna ṣiṣe faili
    • Ise agbese lati tun ṣe awakọ fun FUSE (File system in USERspace), eyiti o fun laaye ṣiṣẹda awọn imuse ti awọn ọna ṣiṣe faili ni aaye olumulo, ti sunmọ ipari. Awakọ ti a pese ni akọkọ jẹ igba atijọ ati pe o ni ọpọlọpọ awọn idun ninu. Gẹgẹbi apakan ti iṣẹ akanṣe imudojuiwọn awakọ, atilẹyin fun ilana FUSE 7.23 ti ṣe imuse (ẹya tẹlẹ 7.8, ti a tu silẹ ni ọdun 11 sẹhin ni atilẹyin), a ṣafikun koodu lati ṣayẹwo awọn ẹtọ iwọle ni ẹgbẹ kernel (“-o default_permissions”), awọn ipe si VOP_MKNOD, VOP_BMAP ati VOP_ADVLOCK ni a fi kun, agbara lati ṣe idilọwọ awọn iṣẹ FUSE, atilẹyin afikun fun awọn paipu ti a ko darukọ ati awọn sockets unix ni awọn fusefs, agbara lati lo kqueue fun / dev / fuse, ti o gba laaye lati ṣe imudojuiwọn awọn ipele oke nipasẹ “mount-u”, atilẹyin afikun fun awọn fiusi okeere nipasẹ NFS, imuse iṣiro RLIMIT_FSIZE, fi kun awọn asia FOPEN_KEEP_CACHE ati FUSE_ASYNC_READ, awọn iṣapeye iṣẹ ṣiṣe pataki ti ṣe ati pe o ti ni ilọsiwaju si agbari caching;
    • Atilẹyin fun iṣẹ BIO_DELETE ti ni afikun si koodu swap pager, eyiti o fun ọ laaye lati lo aṣẹ TRIM nigba yiyọ awọn bulọọki lati awọn awakọ SSD lati mu igbesi aye iṣẹ wọn pọ si.
  • Hardware support
    • Iṣẹ tẹsiwaju lati ṣe atilẹyin atilẹyin fun ARM64 SoC Broadcom BCM5871X pẹlu awọn ilana ARMv8 Cortex-A57, ti a pinnu lati lo ninu awọn olulana, awọn ẹnu-ọna ati ibi ipamọ nẹtiwọki. Lakoko akoko ijabọ, atilẹyin fun inu ati ita awọn ọkọ akero iProc PCIe ti ni ilọsiwaju, atilẹyin fun BNXT Ethernet ti ṣafikun, ati pe iṣẹ n lọ lọwọ lati lo ẹrọ crypto ti a ṣe sinu lati mu IPsec pọ si. Ijọpọ koodu sinu ẹka HEAD ni a reti ni idaji keji ti ọdun;
    • Iṣẹ ti bẹrẹ lori atilẹyin fun 64-bit SoC NXP LS1046A ti o da lori ero isise ARMv8 Cortex-A72 pẹlu ẹrọ isare isare ti nẹtiwọọki ohun elo, 10 Gb Ethernet, PCIe 3.0, SATA 3.0 ati USB 3.0. Atilẹyin fun ipilẹ ipilẹ (SMP olumulo pupọ) ati SATA 3.0 ti ni imuse tẹlẹ. Atilẹyin fun USB 3.0, SD/MMC ati I2C wa ni idagbasoke. Awọn ero pẹlu atilẹyin fun Ethernet, GPIO ati QSPI. Ipari iṣẹ ati ifisi ni ẹka HEAD ni a nireti ni 4th mẹẹdogun ti 2019.
    • Awọn imudojuiwọn mlx5en ati awọn awakọ mlx5ib fun Mellanox ConnectX-4 [Lx], ConnectX-5 [Ex], ati ConnectX-6 [Dx] Ethernet ati awọn oluyipada InfiniBand. Atilẹyin ti a ṣafikun fun awọn oluyipada Socket Direct Mellanox (ConnectX-6), gbigba fun igbejade to 200Gb/s lori ọkọ akero PCIe Gen 3.0. Fun awọn eerun BlueField olona-mojuto, atilẹyin fun awakọ RShim ti ni afikun. Apo mstflint pẹlu ṣeto awọn ohun elo iwadii fun awọn oluyipada Mellanox ti ṣafikun si awọn ebute oko oju omi;
  • Awọn ohun elo ati eto ibudo
    • Awọn paati akopọ eya aworan ti ni imudojuiwọn. Awakọ drm.ko (Oluṣakoso Rendering taara) ti jẹ gbigbe lati ekuro Linux 5.0. Awakọ yii ni a ka si esiperimenta ati pe o ti ṣafikun si igi ebute oko bi awọn eya aworan/drm-devel-kmod. Niwọn igba ti awakọ naa nlo ilana KPI Linux ti a ṣe imudojuiwọn lati ni ibamu pẹlu Linux ekuro DRM API, FreeBSD CURRENT ni a nilo lati ṣiṣẹ. Awakọ drm vboxvideo.ko fun VirtualBox foju GPU ti tun ti gbejade lati Lainos. Mesa package ti ni imudojuiwọn lati tu 18.3.2 silẹ ati yipada lati lo LLVM lati ibudo devel/llvm80 dipo devel/llvm60.
    • Igi ebute oko oju omi FreeBSD ti kọja awọn ebute oko oju omi 37000, nọmba awọn PRs ti a ko tii wa ni 2146. Lakoko akoko ijabọ, awọn ayipada 7837 ni a ṣe lati awọn olupilẹṣẹ 172. Awọn olukopa tuntun mẹta gba awọn ẹtọ olufaraji. Lara awọn imudojuiwọn ẹya pataki ni awọn ebute oko oju omi ni: MySQL 5.7, Python 3.6, Ruby 2.5, Samba 4.8, Julia 1.0, Firefox 68.0, Chromium 75.0.3770.100. Gbogbo awọn ibudo Go ti jẹ iyipada lati lo asia "USES=go". Ṣafikun asia "USES=cabal" si oluṣakoso package Cabal ti a lo fun koodu Haskell. Ipo aabo akopọ to muna ti ṣiṣẹ. Ẹya aiyipada ti Python jẹ 3.6 dipo 2.7.
    • Itusilẹ IwUlO ti pese sile nsysctl 1.0, eyiti o funni ni afọwọṣe si /sbin/sysctl ti o nlo libxo fun o wu ki o si pese ohun ti fẹ ṣeto awọn aṣayan. Nsysctl le ṣee lo lati ṣe atẹle oju oju ipo ti awọn iye sysctl ati ṣafihan alaye lori awọn nkan ni fọọmu ti a ṣeto. Ijade ni awọn ọna kika XML, JSON ati HTML ṣee ṣe;

orisun: opennet.ru

Fi ọrọìwòye kun