{"id":83515,"date":"2020-06-01T13:41:56","date_gmt":"2020-06-01T11:41:56","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-7"},"modified":"2020-06-01T13:41:56","modified_gmt":"2020-06-01T11:41:56","slug":"reliz-yadra-linux-5-7","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-7","title":{"rendered":"Lansarea nucleului Linux 5.7","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dup\u0103 dou\u0103 luni de dezvoltare, Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/31\/326\">a prezentat<\/a><\/noindex> lansarea nucleului <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.7<\/a><\/noindex>. Dintre cele mai notabile schimb\u0103ri: o nou\u0103 implementare a sistemului de fi\u0219iere exFAT, modulul bareudp pentru crearea de tuneluri UDP, protec\u021bie pe baza autentific\u0103rii pointerelor pentru ARM64, posibilitatea ata\u0219\u0103rii programelor BPF la handlerii LSM, o nou\u0103 implementare Curve25519, detectorul \u201esplit-lock\u201d, compatibilitatea BPF cu PREEMPT_RT, eliminarea limit\u0103rii de 80 de caractere pentru \u0219iruri de cod, luarea \u00een considerare a temperaturii CPU \u00een planificatorul de sarcini, posibilitatea utiliz\u0103rii clone() pentru generarea de procese \u00eentr-un alt cgroup, protec\u021bie \u00eempotriva scrierii \u00een memorie cu ajutorul userfaultfd.<\/p>\n<p>\u00cen noua versiune au fost incluse 15033 de corec\u021bii de la 1961 de dezvoltatori,<br \/>\ndimensiunea patch-ului \u2014 39 MB (modific\u0103rile au afectat 11590 de fi\u0219iere, s-au ad\u0103ugat 570560 de linii de cod,<br \/>\n\u0219i elimin\u00e2nd 297401 de linii). Aproximativ 41% din toate modific\u0103rile prezentate \u00een 5.7<br \/>\nsunt legate de driverele de dispozitive, aproximativ 16% din modific\u0103ri au<br \/>\nde a face cu actualizarea codului specific arhitecturilor hardware, 13%<br \/>\nlegat de stiva de re\u021bea, 4% \u2014 de sistemele de fi\u0219iere \u0219i 4% de interne<br \/>\ninterne ale nucleului. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.6\">Principalele<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/816934\/\">nout\u0103\u021bi<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Subsistemul de disc, I\/O \u0219i sistemele de fi\u0219iere<\/b>\n<ul>\n<li class=\"l\"> A fost ad\u0103ugat\u0103 o nou\u0103 implementare a driverului exFAT, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52222\">bazat\u0103<\/a><\/noindex> \u00een baza de cod actual\u0103 \u201esdfat\u201d (2.x), dezvoltat\u0103 de compania Samsung pentru smartphone-urile sale Android. Driverul ad\u0103ugat anterior \u00een kernel s-a bazat pe un cod \u00eenvechit de la Samsung (versiunea 1.2.9) \u0219i a fost cu aproximativ 10% mai lent dec\u00e2t noul driver. Amintim c\u0103 ad\u0103ugarea suportului exFAT \u00een kernel a devenit posibil\u0103 dup\u0103 ce compania Microsoft <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51374\">a publicat<\/a><\/noindex> a f\u0103cut publice specifica\u021biile \u0219i a oferit posibilitatea de utilizare gratuit\u0103 a brevetelor pentru exFAT \u00een Linux.\n<li class=\"l\"> \u00cen Btrfs a fost implementat\u0103 o nou\u0103 comand\u0103 ioctl() \u2014 BTRFS_IOC_SNAP_DESTROY_V2, permi\u021b\u00e2nd \u0219tergerea subdiviziunii dup\u0103 identificatorul s\u0103u. S-a asigurat suport complet pentru clonarea extents inline. S-a extins num\u0103rul punctelor de anulare pentru opera\u021biunile de redistribuire, ceea ce a permis reducerea timpilor de a\u0219teptare \u00eendelunga\u021bi \u00een execu\u021bia comenzii \u2018balance cancel\u2019. S-a accelerat determinarea referin\u021belor inverse la extents (de exemplu, timpul de execu\u021bie al scenariului de testare a fost redus de la o or\u0103 la c\u00e2teva minute). S-a ad\u0103ugat posibilitatea ata\u0219\u0103rii la fiecare inode al arborelui de extents al fi\u0219ierului. Schema de blocare utilizat\u0103 la scrierea \u00een subdiviziuni \u0219i la excluderea NOCOW a fost reproiectat\u0103. A fost \u00eembun\u0103t\u0103\u021bit\u0103 eficien\u021ba execu\u021biei fsync pentru intervale.\n<li class=\"l\"> \u00cen XFS, a fost \u00eembun\u0103t\u0103\u021bit\u0103 verificarea metadatelor \u0219i executarea fsck pentru parti\u021biile active. A fost propus\u0103 o bibliotec\u0103 pentru reconstruirea structurilor btree, care va fi utilizat\u0103 \u00een viitor pentru refacerea xfs_repair \u0219i implementarea op\u021biunii de recuperare f\u0103r\u0103 deconectarea parti\u021biei.\n<li class=\"l\"> \u00cen CIFS, a fost ad\u0103ugat\u0103 suport experimental pentru plasarea parti\u021biei de swap \u00een stoc\u0103rile SMB3. Au fost implementate extensii POSIX \u00een readdir, definite \u00een specifica\u021bia SMB3.1.1. Performan\u021ba scrierii pentru paginile de 64KB a fost crescut\u0103 atunci c\u00e2nd este activat modul cache=strict \u0219i se folosesc versiunile protocolului 2.1+.\n<li class=\"l\"> FS EXT4 a fost transformat\u0103 din bmap \u0219i iopoll \u00een utilizarea iomap.\n<li class=\"l\"> \u00cen F2FS a fost implementat suportul op\u021bional pentru compresia datelor utiliz\u00e2nd algoritmul zstd. \u00cen mod implicit, algoritmul LZ4 este utilizat pentru compresie. A fost ad\u0103ugat suport pentru comanda \u201echattr -c commit\u201d. S-a asigurat redarea timpului de montare. A fost ad\u0103ugat ioctl F2FS_IOC_GET_COMPRESS_BLOCKS pentru ob\u021binerea informa\u021biilor despre num\u0103rul de blocuri comprimate. Au fost ad\u0103ugate date despre compresie, afisate prin statx.\n<li class=\"l\"> \u00cen sistemul de fi\u0219iere Ceph a fost ad\u0103ugat\u0103 posibilitatea de a executa local opera\u021biuni de creare \u0219i \u0219tergere (unlink) a fi\u0219ierelor f\u0103r\u0103 a a\u0219tepta r\u0103spunsul serverului (func\u021bionare \u00een mod asincron). Schimbarea, de exemplu, permite cre\u0219terea semnificativ\u0103 a performan\u021bei \u00een utilizarea utilitarului rsync.\n<li class=\"l\"> \u00cen OVERLAYFS, a fost ad\u0103ugat\u0103 posibilitatea de a utiliza virtiofs ca FS de nivel superior.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/2\/22\/317\">Rewrite<\/a><\/noindex> codul de traversare a c\u0103ilor \u00een VFS, a fost ref\u0103cut codul de analiz\u0103 a link-urilor simbolice \u0219i a fost unificat\u0103 traversarea punctelor de montare.\n<li class=\"l\"> \u00cen subsistemul scsi, utilizatorilor nep\u0103gubi\u021bi <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/6fdb79ff27ee0d385ec8481458d2fd1d69fec50b\">este permis\u0103<\/a><\/noindex> executarea comenzilor ZBC.\n<li class=\"l\"> \u00cen dm_writecache <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/3923d4854e189d84c6ec22e66d536d3498f2747c\">a fost implementat\u0103<\/a><\/noindex> posibilitatea de a cur\u0103\u021ba gradual cache-ul pe baza parametrului max_age, care define\u0219te timpul maxim de via\u021b\u0103 al unui bloc.\n<li class=\"l\"> \u00cen dm_integrity <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/84597a44a9d86ac949900441cea7da0af0f2f473\">a fost ad\u0103ugat\u0103<\/a><\/noindex> suport pentru opera\u021bia \u201ediscard.\u201d\n<li class=\"l\"> \u00cen null_blk <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/596444e7570587867924c3ab025183b1a8726897\">a fost ad\u0103ugat\u0103<\/a><\/noindex> suport pentru simularea erorilor pentru simularea defectelor \u00een timpul test\u0103rii.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e598a72faeb543599bdf0d930df3a71906404e6f\">Ad\u0103ugat<\/a><\/noindex> posibilitatea de a trimite notific\u0103ri udev cu privire la modificarea dimensiunii dispozitivului bloc.\n<\/ul>\n<li class=\"l\"> <b>Subsystema de re\u021bea<\/b>\n<ul>\n<li class=\"l\"> \u00cen Netfilter au fost incluse <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52548\">modific\u0103ri<\/a><\/noindex>, acceler\u00e2nd semnificativ procesarea listelor mari de corelare (nftables set), \u00een care este necesar\u0103 verificarea combina\u021biei dintre subneturi, porturi de re\u021bea, protocol \u0219i adrese MAC.<br \/>\nOptimiz\u0103ri <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=7400b063969bdca4a06cd97f1294d765c8eecbe1\">s-au adus<\/a><\/noindex> \u00cen modulul nft_set_pipapo (PIle PAcket POlicies), care rezolv\u0103 problema corel\u0103rii con\u021binutului pachetului cu intervalele de st\u0103ri ale c\u00e2mpurilor aplicate \u00een regulile de filtrare, cum ar fi intervalele IP \u0219i porturile de re\u021bea (nft_set_rbtree \u0219i nft_set_hash manipuleaz\u0103 corelarea intervalelor \u0219i reflectarea direct\u0103 a valorilor). Versiunea pipapo vectorizat\u0103 cu instruc\u021biuni AVX2 de 256 de bi\u021bi pe un sistem cu procesor AMD Epyc 7402 a ar\u0103tat o cre\u0219tere a performan\u021bei de 420% la analiza a 30.000 de \u00eenregistr\u0103ri, incluz\u00e2nd ansambluri port-protocol. Cre\u0219terea corel\u0103rii ansamblului \u00eentre subnet \u0219i num\u0103rul portului la analiza a 1000 de \u00eenregistr\u0103ri a fost de 87% pentru IPv4 \u0219i 128% pentru IPv6. <\/p>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=571912c69f0ed731bd1e071ade9dc7ca4aa52065\">Ad\u0103ugat<\/a><\/noindex> Modulul bareudp, care permite encapsularea \u00een tunel UDP a diferitelor protocoale L3, cum ar fi MPLS, IP \u0219i NSH.\n<li class=\"l\"> Continua integrarea componentelor MPTCP (MultiPath TCP), o extensie a protocolului TCP pentru organizarea func\u021bion\u0103rii conexiunii TCP cu livrarea pachetelor simultan pe mai multe rute prin diferite interfe\u021be de re\u021bea, legate de adrese IP diferite.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=50ff477a8639fa1fbbeecb5a6f2f8b6c5557ecec\">Ad\u0103ugat<\/a><\/noindex> Suport pentru mecanismele de accelerare hardware pentru encapsularea cadrelor Ethernet \u00een 802.11 (Wi-Fi).\n<li class=\"l\"> Atunci c\u00e2nd un dispozitiv este mutat dintr-un spa\u021biu de nume al subsistemului re\u021belei (network namespace) \u00een altul, este asigurat\u0103 corectarea drepturilor de acces \u0219i a proprietarului fi\u0219ierelor corespunz\u0103toare \u00een sysfs.\n<li class=\"l\"> A fost oferit\u0103 posibilitatea utiliz\u0103rii flag-ului SO_BINDTODEVICE de c\u0103tre utilizatorii care nu de\u021bin privilegii de root.\n<li class=\"l\"> A fost acceptat\u0103 a treia parte a patch-urilor, care traduc instrumentele ethtool de la ioctl() la utilizarea interfe\u021bei netlink. Noua interfa\u021b\u0103 simplific\u0103 ad\u0103ugarea de extensii, \u00eembun\u0103t\u0103\u021be\u0219te gestionarea erorilor, permite trimiterea de notific\u0103ri cu privire la schimbarea st\u0103rii, simplific\u0103 interac\u021biunea \u00eentre kernel \u0219i spa\u021biul utilizatorului \u0219i reduce num\u0103rul listelor nominalizate care trebuie sincronizate.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 posibilitatea utiliz\u0103rii acceleratorilor hardware speciali pentru efectuarea opera\u021biunilor de urm\u0103rire a conexiunilor.\n<li class=\"l\"> \u00cen netfilter <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8537f78647c072bdb1a5dbe32e1c7e5b13ff1258\">ad\u0103ugat<\/a><\/noindex> hook pentru conectarea clasificatoarelor de pachete ie\u0219ite (egress), complet\u00e2nd hook-ul existent anterior pentru pachetele de intrare (ingress).\n<\/ul>\n<li class=\"l\"> <b>Virtualizare \u0219i securitate<\/b>\n<ul>\n<li class=\"l\"> A fost ad\u0103ugat\u0103 o implementare hardware a autentific\u0103rii pointerilor (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/718888\/\">Pointer Authentication<\/a><\/noindex>), care utiliz\u00e2nd instruc\u021biuni CPU ARM64 specializate pentru a proteja \u00eempotriva atacurilor care folosesc tehnici de programare orientat\u0103 spre retur (ROP), \u00een care atacatorul nu \u00eencearc\u0103 s\u0103 plaseze codul s\u0103u \u00een memorie, ci opereaz\u0103 cu buc\u0103\u021bi existente de instruc\u021biuni ma\u0219in\u0103 din bibliotecile \u00eenc\u0103rcate, termin\u00e2nd cu o instruc\u021biune de retur al controlului. Protec\u021bia const\u0103 \u00een utilizarea semn\u0103turilor digitale pentru a verifica adresele de retur la nivel de nucleu. Semn\u0103tura este stocat\u0103 \u00een bi\u021bii superiori neutiliza\u021bi ai pointerului. Spre deosebire de implement\u0103rile software, crearea \u0219i verificarea semn\u0103turilor digitale se face cu ajutorul unor instruc\u021biuni speciale ale CPU.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=57e5d4f278b9522646b49a3a97ebf5f2b8f9d4cf\">Ad\u0103ugat<\/a><\/noindex> capacitatea de a proteja zona de memorie \u00eempotriva scrierii prin intermediul apelului de sistem userfaultfd(), destinat gestion\u0103rii erorilor de pagin\u0103 (accesarea paginilor de memorie nealocate) \u00een spa\u021biul utilizatorului. Ideea este de a folosi userfaultfd() \u0219i pentru a urm\u0103ri viol\u0103rile accesului la paginile marcate ca protejate \u00eempotriva scrierii, \u0219i de a apela un handler care poate reac\u021biona la astfel de \u00eencerc\u0103ri de scriere (de exemplu, pentru a gestiona modific\u0103rile \u00een procesul de creare a instantaneelor live ale proceselor \u00een execu\u021bie, a salva starea \u00een momentul \u00een care se descarc\u0103 dump-uri de memorie pe disc, implementarea memoriei partajate, urm\u0103rirea modific\u0103rilor din memorie). Func\u021bionalitatea <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/787308\/\">este echivalent\u0103<\/a><\/noindex> cu utilizarea mprotect() \u00een combina\u021bie cu handlerul semnalului SIGSEGV, dar func\u021bioneaz\u0103 semnificativ mai rapid.\n<li class=\"l\"> \u00cen SELinux, parametrul \u201echeckreqprot\u201d a fost declarat \u00eenvechit, permi\u021b\u00e2nd dezactivarea verific\u0103rii protec\u021biei memoriei \u00een procesarea regulilor (permi\u021b\u00e2nd utilizarea zonelor de memorie executabile, indiferent de instruc\u021biunile din regulile stabilite). Leg\u0103turile simbolice kernfs au fost autorizate s\u0103 mo\u0219teneasc\u0103 contextul directoarelor p\u0103rinte.\n<li class=\"l\"> Include <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/4dece7f3b925\">inclus<\/a><\/noindex> modul <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808048\/\">KRSI<\/a><\/noindex>, care permite ata\u0219area programelor BPF la orice hook-uri LSM din nucleu. Schimbarea permite crearea de module LSM (Linux Security Module) sub form\u0103 de programe BPF pentru a aborda sarcini de audit \u0219i control de acces mandat.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=31c0aa87ec8a30b1e9e4cf862905a369560f7705\">Realizat<\/a><\/noindex> optimizarea performan\u021bei \/dev\/random prin transmiterea \u00een loturi a valorilor CRNG \u00een loc de apeluri individuale ale instruc\u021biunilor RNG. A fost \u00eembun\u0103t\u0103\u021bit\u0103 func\u021bionarea getrandom \u0219i \/dev\/random pe sistemele ARM64 care ofer\u0103 instruc\u021biuni RNG.\n<li class=\"l\"> Implementarea curbei eliptice Curve25519 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=07b586fe06625b0b610dc3d3a969c51913d143d4\">a fost \u00eenlocuit\u0103<\/a><\/noindex> pe o variant\u0103 din biblioteca <noindex><a rel=\"nofollow\" href=\"https:\/\/hacl-star.github.io\/\">HACL<\/a><\/noindex>, pentru care <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50470\">sunt prezentate<\/a><\/noindex> demonstrarea matematic\u0103 a verific\u0103rii formale a fiabilit\u0103\u021bii.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1edca85e768a\">Ad\u0103ugat<\/a><\/noindex> mecanism de informare cu privire la paginile libere din memorie. Prin acest mecanism, sistemele gazd\u0103 pot transmite sistemului gazd\u0103 informa\u021bii despre paginile care nu mai sunt utilizate, iar sistemul gazd\u0103 poate recupera acele pagini.\n<li class=\"l\"> \u00een vfio\/pci <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=137e5531351db258eff58ea28f4dc8fdf7ca2990\">a fost ad\u0103ugat\u0103<\/a><\/noindex> suport pentru SR-IOV (Single-Root I\/O Virtualization).\n<\/ul>\n<li class=\"l\"> <b>Memorie \u0219i servicii de sistem<\/b>\n<ul>\n<li class=\"l\"> De la 80 la 100 de caractere <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=bdc48fa11e46\">a fost crescut<\/a><\/noindex> o limitare a lungimii maxime a liniei \u00een fi\u0219ierele surs\u0103. De asemenea, dezvoltatorii sunt \u00een continuare sf\u0103tui\u021bi s\u0103 se men\u021bin\u0103 \u00een limitele a 80 de caractere pe linie, dar aceasta nu mai este o limit\u0103 strict\u0103. \u00cen plus, dep\u0103\u0219irea limitei de dimensiune a liniei va genera acum un avertisment la compilare doar dac\u0103 utilitarul checkpatch este rulat cu op\u021biunea \u201e--strict\u201d. Aceast\u0103 modificare va permite evitarea distragerii aten\u021biei dezvoltatorilor de la <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/28\/1245\">cu CSS,<\/a><\/noindex> spa\u021bii \u0219i s\u0103 se simt\u0103 mai liberi \u00een alinierea codului, precum \u0219i  <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/28\/1237\">va preveni<\/a><\/noindex> fragmentarea excesiv\u0103 a liniilor, <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/29\/1038\">ce obstacoleaz\u0103<\/a><\/noindex> \u00een\u021belegerea codului \u0219i c\u0103utarea.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=17054f492dfd4d91e093ebb87013807812ec42a4\">Ad\u0103ugat<\/a><\/noindex> suport pentru modul mixt de boot EFI, care permite pornirea unui nucleu pe 64 de bi\u021bi dintr-o firmware pe 32 de bi\u021bi, executat pe un CPU pe 64 de bi\u021bi.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=6650cdd9a8ccf00555dbbe743d58541ad8feb6a7\">Activat<\/a><\/noindex> sistemul de detectare \u0219i depanare a blocajelor fragmentate (\u201e<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/806466\/\">split lock<\/a><\/noindex>\u201e) care apar la accesarea datelor nealiniate \u00een memorie, deoarece, \u00een timpul execu\u021biei unei instruc\u021biuni atomice, datele traverseaz\u0103 dou\u0103 linii de cache CPU. Blocajele de acest tip duc la o sc\u0103dere semnificativ\u0103 a performan\u021bei (cu 1000 de cicluri mai lent dec\u00e2t opera\u021bia atomic\u0103 cu date care se afl\u0103 \u00eentr-o singur\u0103 linie de cache). \u00cen func\u021bie de parametrul de boot \u201esplit_lock_detect\u201d, nucleul poate detecta \u00een timp real blocajele de acest tip \u0219i poate genera avertismente sau trimite un semnal SIGBUS aplica\u021biei care a cauzat blocajul.\n<li class=\"l\"> \u00cen planificatorul de sarcini, este asigurat urm\u0103rirea indicatorilor senzorilor de temperatur\u0103 (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/788380\/\">Thermal Pressure<\/a><\/noindex>) \u0219i a fost implementat monitorizarea supra\u00eenc\u0103lzirii atunci c\u00e2nd se plaseaz\u0103 sarcini. Folosind statisticile furnizate, gestionarul de temperatur\u0103 (thermal governor) poate ajusta frecven\u021ba maxim\u0103 a CPU-ului \u00een caz de supra\u00eenc\u0103lzire, iar planificatorul de sarcini ia acum \u00een considerare reducerea puterii de calcul din cauza reducerii frecven\u021bei atunci c\u00e2nd planific\u0103 execu\u021bia sarcinilor (anterior, planificatorul reac\u021biona la schimb\u0103rile de frecven\u021b\u0103 cu o \u00eent\u00e2rziere, f\u0103c\u00e2nd ini\u021bial decizii bazate pe estim\u0103ri exagerate ale resurselor de calcul disponibile).\n<li class=\"l\"> \u00cen planificatorul de sarcini sunt implicate <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/816388\/\">indicatori invariabili<\/a><\/noindex> ai monitoriz\u0103rii sarcinii, ce permit evaluarea corect\u0103 a sarcinii, indiferent de frecven\u021ba actual\u0103 de func\u021bionare a CPU-ului. Schimbarea permite previziuni mai precise ale comportamentului sarcinilor \u00een condi\u021bii de varia\u021bie dinamic\u0103 a tensiunii \u0219i frecven\u021bei CPU-ului. De exemplu, o sarcin\u0103 care consuma 1\/3 din resursele CPU la o frecven\u021b\u0103 de 1000 MHz va consuma 2\/3 din resurse la reducerea frecven\u021bei la 500 MHz, ceea ce anterior crea o presupunere fals\u0103 despre func\u021bionarea la capacitate maxim\u0103 (adic\u0103, sarcinile pentru planificator p\u0103reau mai mari doar din cauza reducerii frecven\u021bei, ceea ce ducea la luarea unor decizii gre\u0219ite \u00een schedutil cpufreq governor).\n<li class=\"l\"> Driverul Intel P-state, responsabil pentru alegerea modurilor de performan\u021b\u0103, a fost actualizat pentru a utiliza <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/cpu-freq\/governors.txt\">schedutil<\/a><\/noindex>.\n<li class=\"l\"> S-a implementat posibilitatea utiliz\u0103rii subsistemului BPF \u00een modul de func\u021bionare a nucleului \u00een timp real (PREEMPT_RT). Anterior, activarea PREEMPT_RT impunea dezactivarea BPF.\n<li class=\"l\"> A fost ad\u0103ugat un nou tip de programe BPF \u2014 BPF_MODIFY_RETURN, care pot fi ata\u0219ate la o func\u021bie \u00een nucleu \u0219i pot modifica valoarea returnat\u0103 de aceast\u0103 func\u021bie.\n<li class=\"l\"> Ad\u0103ugat <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/807882\/\">posibilitatea<\/a><\/noindex> utilizarea apelului de sistem clone3() pentru a crea un proces \u00een cgroup diferit de cgroup-ul p\u0103rinte, ceea ce permite procesului p\u0103rinte s\u0103 aplice restric\u021bii \u0219i s\u0103 activeze contabilizarea imediat dup\u0103 crearea unui nou proces sau fir. De exemplu, managerul de servicii poate aloca direct noi servicii \u00een cgroup-uri separate, iar noile procese, atunci c\u00e2nd sunt plasate \u00een \u201e\u00eenghe\u021bate\u201d cgroup-uri, vor fi imediat oprite.\n<li class=\"l\"> \u00een Kbuild <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a0d1c951ef08ed24f35129267e3595d86f57f5d3\">a fost ad\u0103ugat\u0103<\/a><\/noindex> suportul pentru variabila de mediu \u201eLLVM=1\u201d pentru a comuta la instrumentul Clang\/LLVM la compilarea nucleului. Cerin\u021bele pentru versiunea binutils au fost ridicate (2.23).\n<li class=\"l\"> \u00cen debugfs a fost ad\u0103ugat\u0103 o sec\u021biune \/sys\/kernel\/debug\/kunit\/ cu rezultatele testelor kunit.\n<li class=\"l\"> A fost ad\u0103ugat parametrul de \u00eenc\u0103rcare a nucleului pm_debug_messages (analog \/sys\/power\/pm_debug_messages), care include ie\u0219irea de informa\u021bii de depanare despre sistemul de gestionare a energiei (util \u00een depanarea problemelor cu modul de somn \u0219i a\u0219teptare).\n<li class=\"l\"> \u00cen interfa\u021ba de intrare\/ie\u0219ire asincron\u0103 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50631#io_uring\">io_uring<\/a><\/noindex> s-a ad\u0103ugat suport pentru  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.man7.org\/linux\/man-pages\/man2\/splice.2.html\">splice()<\/a><\/noindex> \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/815491\/\">selec\u021bia atomic\u0103 a bufferelor<\/a><\/noindex>.\n<li class=\"l\"> Profilarea cgroup a fost \u00eembun\u0103t\u0103\u021bit\u0103 cu ajutorul instrumentului perf. Anterior, perf putea profila sarcini doar \u00eentr-un anumit cgroup \u0219i nu putea determina la ce cgroup apar\u021bine mostrele curente. Acum, perf ob\u021bine informa\u021bii despre cgroup pentru fiecare mostr\u0103, permi\u021b\u00e2nd profilarea mai multor cgroup-uri \u0219i aplicarea ordon\u0103rii pe<br \/>\ncgroup \u00een rapoarte.<\/p>\n<li class=\"l\"> \u00cen cgroupfs, sistemul de fi\u0219iere pseudo pentru gestionarea cgroups, a fost ad\u0103ugat suport pentru atribute extinse (xattrs) prin care, de exemplu, se poate l\u0103sa informa\u021bii suplimentare pentru handlerii \u00een spa\u021biul utilizatorului.\n<li class=\"l\"> \u00cen cgroup memory controller <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8a931f801340\">ad\u0103ugat<\/a><\/noindex>\u0219i suportul pentru protec\u021bia recursiv\u0103 a valorii \u201ememory.low\u201d, care regleaz\u0103 cantitatea minim\u0103 de memorie RAM alocat\u0103 participan\u021bilor la grup. La montarea ierarhiei cgroup cu op\u021biunea \u201ememory_recursiveprot\u201d, valoarea \u201ememory.low\u201d stabilit\u0103 pentru nodurile inferioare va fi distribuit\u0103 automat pentru toate nodurile fiice.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/aa017ab97a22\">Ad\u0103ugat<\/a><\/noindex>  framework-ul Uacce (Unified\/User-space-access-intended Accelerator Framework) pentru partajarea adreselor virtuale (SVA, Shared Virtual Addressing) \u00eentre CPU \u0219i dispozitive periferice, permi\u021b\u00e2nd acceleratoarelor hardware accesul la structurile de date din CPU-ul principal.\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"l\"> <b>Arhitecturi hardware<\/b>\n<ul>\n<li class=\"l\"> Pentru arhitectura ARM a fost implementat\u0103 posibilitatea extragerii calde a memoriei.\n<li class=\"l\"> Pentru arhitectura RISC-V a fost ad\u0103ugat suportul pentru conectarea \u0219i extragerea cald\u0103 a CPU-ului (CPU hotplug). Pentru RISC-V pe 32 de bi\u021bi a fost implementat eBPF JIT.\n<li class=\"l\"> S-a eliminat posibilitatea utiliz\u0103rii sistemelor ARM pe 32 de bi\u021bi pentru rularea mediilor guest KVM.\n<li class=\"l\"> A fost eliminat\u0103 implementarea \u201efictive\u201d NUMA pentru arhitectura s390, pentru care nu au fost g\u0103site scenarii de utilizare care s\u0103 \u00eembun\u0103t\u0103\u021beasc\u0103 performan\u021ba.\n<li class=\"l\"> Pentru ARM64 a fost ad\u0103ugat suportul pentru extensia AMU (Activity Monitors Unit), definit\u0103 \u00een ARMv8.4, care ofer\u0103 contoare de performan\u021b\u0103 folosite pentru calcularea coeficientului de corec\u021bie a scal\u0103rii frecven\u021bei \u00een planificatorul de sarcini.\n<\/ul>\n<li class=\"l\"> <b>Echipament<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=961e9c84077f\">Ad\u0103ugat<\/a><\/noindex> suport pentru dispozitive vDPA, care folosesc un canal de transfer de date conform specifica\u021biilor virtio. Dispozitivele vDPA pot fi at\u00e2t hardware fizic conectat, c\u00e2t \u0219i dispozitive virtuale emulate software.\n<li class=\"l\"> \u00cen subsistemul GPIO <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=51c1064e82e7\">a ap\u0103rut<\/a><\/noindex> o nou\u0103 comand\u0103 ioctl() pentru monitorizarea schimb\u0103rilor, permi\u021b\u00e2nd notificarea procesului asupra modific\u0103rii st\u0103rii oric\u0103rei linii GPIO. Ca exemplu de utilizare a noii comenzi <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=33f0c47b8fb4\">propus\u0103<\/a><\/noindex> utilitarul gpio-watch.\n<li class=\"l\"> \u00cen driverul DRM i915 pentru pl\u0103cile grafice Intel <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f365ab31efacb70bed1e821f7435626e0b2528a6\">sistemul de compozitare<\/a><\/noindex> \u00een mod implicit, suportul pentru cipurile Tigerlake (\u201eGen12\u201d) \u0219i a fost ad\u0103ugat suport ini\u021bial pentru controlul ilumin\u0103rii OLED. A fost \u00eembun\u0103t\u0103\u021bit suportul pentru cipurile Ice Lake, Elkhart Lake, Baytrail \u0219i Haswell.\n<li class=\"l\"> \u00cen driverul amdgpu <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f365ab31efacb70bed1e821f7435626e0b2528a6\">a fost ad\u0103ugat\u0103<\/a><\/noindex> posibilitatea de a \u00eenc\u0103rca firmware-uri \u00een cipul USBC pentru ASIC. A fost \u00eembun\u0103t\u0103\u021bit suportul pentru cipurile AMD Ryzen 4000 \u201eRenoir\u201d. A fost ad\u0103ugat suport pentru controlul panourilor OLED. A fost asigurat\u0103 afi\u0219area st\u0103rii firmware-ului \u00een debugfs.\n<li class=\"l\"> \u00cen driverul DRM vmwgfx pentru sistemele de virtualizare VMware a fost ad\u0103ugat\u0103 posibilitatea utiliz\u0103rii OpenGL 4 \u00een sistemele guest (anterior era suportat OpenGL 3.3).\n<li class=\"l\"> A fost ad\u0103ugat un nou driver DRM tidss pentru sistemul de afi\u0219are al platformei TI Keystone.\n<li class=\"l\"> Au fost ad\u0103ugate drivere pentru panouri LCD: Feixin K101 IM2BA02, Samsung s6e88a0-ams452ef01, Novatek NT35510, Elida KD35T133, EDT, NewEast Optoelectronics WJFH116008A, Rocktech RK101II01D-CT, Frida FRD350H54004.\n<li class=\"l\"> \u00cen sistemul de gestionare a energiei <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/16292bed9c56a20715d942fd5d9e025f01fa65fe\">a fost ad\u0103ugat\u0103<\/a><\/noindex> suport pentru platforma Intel Jasper Lake (JSL) bazat\u0103 pe Atom.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru laptopul Pinebook Pro bazat pe Rockchip RK3399, tableta Pine64 PineTab \u0219i smartphone-ul <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52662\">PinePhone<\/a><\/noindex>  bazat pe Allwinner A64.\n<li class=\"l\"> Au fost ad\u0103ugate suport pentru noi codecuri audio \u0219i cipuri:<br \/>\n Amlogic AIU, Amlogic T9015, Texas Instruments TLV320ADCX140, Realtek RT5682, ALC245, Broadcom BCM63XX I2S, Maxim MAX98360A, Presonus Studio 1810c, MOTU MicroBook IIc.<\/p>\n<li class=\"l\"> A fost ad\u0103ugat suport pentru pl\u0103ci ARM \u0219i platformele Qualcomm Snapdragon 865 (SM8250), IPQ6018, NXP i.MX8M Plus, Kontron \u201esl28\u201d, 11 variante de plac\u0103 i.MX6 TechNexion Pico, trei variante noi Toradex Colibri, Samsung S7710 Galaxy Xcover 2 bazat pe ST-Ericsson u8500, DH Electronics DHCOM SoM \u0219i PDK2, Renesas M3ULCB, Hoperun HiHope, Linutronix Testbox v2, PocketBook Touch Lux 3.\n<\/ul>\n<\/ul>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Sursa: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53062\">opennet.ro<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.7. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u043d\u043e\u0432\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0424\u0421 exFAT, \u043c\u043e\u0434\u0443\u043b\u044c bareudp \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f UDP-\u0442\u0443\u043d\u043d\u0435\u043b\u0435\u0439, \u0437\u0430\u0449\u0438\u0442\u0430 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u0443\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043b\u044f ARM64, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u0440\u0438\u043a\u0440\u0435\u043f\u043b\u0435\u043d\u0438\u044f BPF-\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u043a LSM-\u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c, \u043d\u043e\u0432\u0430\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Curve25519, \u0434\u0435\u0442\u0435\u043a\u0442\u043e\u0440 &#171;split-lock&#187;, \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c BPF \u0441 PREEMPT_RT, \u0441\u043d\u044f\u0442\u0438\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 80-\u0441\u0438\u043c\u0432\u043e\u043b\u044c\u043d\u044b\u0439 \u0440\u0430\u0437\u043c\u0435\u0440 \u0441\u0442\u0440\u043e\u043a\u0438 \u0432 \u043a\u043e\u0434\u0435, \u0443\u0447\u0451\u0442 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-83515","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-7\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.7 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-7\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-06-01T11:41:56+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-06-01T11:41:56+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lansarea nucleului Linux 5.7 | ProHoster","description":"Dup\u0103 dou\u0103 luni de dezvoltare, Linus Torvalds a prezentat lansarea nucleului Linux.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-7","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 5.7 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux.","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/reliz-yadra-linux-5-7","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-06-01T11:41:56+00:00","article:modified_time":"2020-06-01T11:41:56+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"83515","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 15:16:22","updated":"2022-10-03 19:48:18","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/83515","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=83515"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/83515\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=83515"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=83515"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=83515"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}