{"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\/es\/blog\/news\/reliz-yadra-linux-5-7","title":{"rendered":"Lanzamiento del n\u00facleo de Linux 5.7","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Despu\u00e9s de dos meses de desarrollo, Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/31\/326\">present\u00f3<\/a><\/noindex> el lanzamiento del n\u00facleo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.7<\/a><\/noindex>. Entre los cambios m\u00e1s notables: una nueva implementaci\u00f3n del sistema de archivos exFAT, el m\u00f3dulo bareudp para crear t\u00faneles UDP, protecci\u00f3n basada en la autenticaci\u00f3n de punteros para ARM64, la capacidad de adjuntar programas BPF a controladores LSM, una nueva implementaci\u00f3n de Curve25519, un detector de 'split-lock', compatibilidad de BPF con PREEMPT_RT, eliminaci\u00f3n del l\u00edmite de 80 caracteres en el c\u00f3digo, consideraci\u00f3n de las m\u00e9tricas de temperatura del CPU en el planificador de tareas, y la posibilidad de usar clone() para crear procesos en otro cgroup, as\u00ed como protecci\u00f3n contra escritura en memoria mediante userfaultfd.<\/p>\n<p>En la nueva versi\u00f3n, se han aceptado 15033 correcciones de 1961 desarrolladores,<br \/>\nel tama\u00f1o del parche \u2014 39 MB (los cambios afectaron 11590 archivos, se agregaron 570560 l\u00edneas de c\u00f3digo,<br \/>\nse eliminaron 297401 l\u00edneas). Aproximadamente el 41% de todos los cambios presentados en 5.7<br \/>\nse relacionan con controladores de dispositivos, aproximadamente el 16% de los cambios est\u00e1n<br \/>\nrelaci\u00f3n con la actualizaci\u00f3n de c\u00f3digo espec\u00edfico para arquitecturas de hardware, el 13% est\u00e1<br \/>\nrelacionados con la pila de red, 4% \u2014 con sistemas de archivos y 4% con internos<br \/>\ndel n\u00facleo. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.6\">Principales<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/816934\/\">novedades<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Subsistema de disco, entrada\/salida y sistemas de archivos<\/b>\n<ul>\n<li class=\"l\"> Se ha a\u00f1adido una nueva implementaci\u00f3n del controlador exFAT, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52222\">basada<\/a><\/noindex> en la base de c\u00f3digo actual 'sdfat' (2.x), desarrollada por Samsung para sus smartphones Android. El controlador a\u00f1adido anteriormente al n\u00facleo se basaba en un c\u00f3digo obsoleto de Samsung (versi\u00f3n 1.2.9) y ten\u00eda un rendimiento inferior en aproximadamente un 10% al nuevo controlador. Recordemos que la adici\u00f3n del soporte para exFAT en el n\u00facleo fue posible despu\u00e9s de que Microsoft <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51374\">ha publicado<\/a><\/noindex> publicara especificaciones p\u00fablicas y ofreciera la posibilidad de uso gratuito de las patentes de exFAT en Linux.\n<li class=\"l\"> En Btrfs se ha implementado un nuevo comando ioctl() \u2014 BTRFS_IOC_SNAP_DESTROY_V2, que permite eliminar un subvolumen por su identificador. Se garantiza soporte completo para clonar extensiones en l\u00ednea. Se ha ampliado el n\u00famero de puntos de cancelaci\u00f3n de las operaciones de redistribuci\u00f3n, lo que ha permitido reducir los largos tiempos de espera al ejecutar el comando 'balance cancel'. Se ha acelerado la determinaci\u00f3n de referencias inversas a las extensiones (por ejemplo, el tiempo de ejecuci\u00f3n del escenario de prueba se redujo de una hora a unos minutos). Se ha a\u00f1adido la posibilidad de adjuntar a cada inode del \u00e1rbol de extensiones del archivo. Se ha revisado el esquema de bloqueo utilizado al escribir en subvol\u00famenes y al excluir NOCOW. Se ha mejorado la eficiencia de la operaci\u00f3n fsync para los rangos.\n<li class=\"l\"> En XFS se ha mejorado la verificaci\u00f3n de metadatos y la ejecuci\u00f3n de fsck para particiones activas. Se ha propuesto una biblioteca para reconstruir estructuras btree, que se utilizar\u00e1 en el futuro para reorganizar xfs_repair e implementar la posibilidad de recuperaci\u00f3n sin desmontar la partici\u00f3n.\n<li class=\"l\"> En CIFS se ha a\u00f1adido soporte experimental para la ubicaci\u00f3n de la partici\u00f3n de intercambio en almacenes SMB3. Se han implementado extensiones POSIX en readdir, definidas en la especificaci\u00f3n SMB3.1.1. Se ha mejorado el rendimiento de escritura para p\u00e1ginas de 64 KB al habilitar el modo cache=strict y utilizar versiones del protocolo 2.1+.\n<li class=\"l\"> El sistema de archivos EXT4 ha sido migrado de bmap e iopoll al uso de iomap.\n<li class=\"l\"> En F2FS se ha implementado soporte opcional para la compresi\u00f3n de datos utilizando el algoritmo zstd. Por defecto, se utiliza el algoritmo LZ4 para la compresi\u00f3n. Se ha a\u00f1adido soporte para el comando 'chattr -c commit'. Se proporciona la visualizaci\u00f3n del tiempo de montaje. Se ha a\u00f1adido ioctl F2FS_IOC_GET_COMPRESS_BLOCKS para obtener informaci\u00f3n sobre el n\u00famero de bloques comprimidos. Se han a\u00f1adido datos sobre la compresi\u00f3n que se muestran a trav\u00e9s de statx.\n<li class=\"l\"> En el sistema de archivos Ceph se ha a\u00f1adido la capacidad de ejecutar localmente operaciones de creaci\u00f3n y eliminaci\u00f3n (unlink) de archivos sin esperar respuesta del servidor (funcionamiento en modo as\u00edncrono). Este cambio, por ejemplo, permite aumentar significativamente el rendimiento al utilizar la herramienta rsync.\n<li class=\"l\"> En OVERLAYFS se ha a\u00f1adido la posibilidad de usar virtiofs como sistema de archivos de nivel superior.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/2\/22\/317\">Reescrito<\/a><\/noindex> el c\u00f3digo de recorrido de rutas en VFS, se ha reformulado el c\u00f3digo de an\u00e1lisis de enlaces simb\u00f3licos y se ha unificado el recorrido de puntos de montaje.\n<li class=\"l\"> En la subcadena scsi, los usuarios no privilegiados <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/6fdb79ff27ee0d385ec8481458d2fd1d69fec50b\">se permite<\/a><\/noindex> pueden ejecutar comandos ZBC.\n<li class=\"l\"> En dm_writecache <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/3923d4854e189d84c6ec22e66d536d3498f2747c\">se ha implementado<\/a><\/noindex> se ha a\u00f1adido la capacidad de limpiar progresivamente la cach\u00e9 bas\u00e1ndose en el par\u00e1metro max_age, que define la duraci\u00f3n m\u00e1xima de un bloque.\n<li class=\"l\"> En dm_integrity <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/84597a44a9d86ac949900441cea7da0af0f2f473\">se ha a\u00f1adido<\/a><\/noindex> soporte para la operaci\u00f3n 'discard'.\n<li class=\"l\"> En null_blk <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/596444e7570587867924c3ab025183b1a8726897\">se ha a\u00f1adido<\/a><\/noindex> se ha implementado soporte para la inyecci\u00f3n de errores para simular fallos durante las pruebas.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e598a72faeb543599bdf0d930df3a71906404e6f\">Se ha a\u00f1adido<\/a><\/noindex> se ha a\u00f1adido la capacidad de enviar notificaciones udev sobre cambios en el tama\u00f1o del dispositivo de bloque.\n<\/ul>\n<li class=\"l\"> <b>Subsistema de red<\/b>\n<ul>\n<li class=\"l\"> En Netfilter se han incluido <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52548\">cambios<\/a><\/noindex>, que aceleran significativamente el procesamiento de grandes listas de coincidencias (nftables set), que requieren la verificaci\u00f3n de combinaciones de subredes, puertos de red, protocolos y direcciones MAC.<br \/>\nOptimizaciones <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=7400b063969bdca4a06cd97f1294d765c8eecbe1\">han realizado<\/a><\/noindex> En el m\u00f3dulo nft_set_pipapo (PIle PAcket POlicies), que resuelve la tarea de emparejar el contenido del paquete con rangos de estado de campo arbitrarios aplicados en las reglas de filtrado, como los rangos IP y puertos de red (nft_set_rbtree y nft_set_hash manipulan el emparejamiento de intervalos y la reflexi\u00f3n directa de valores). La versi\u00f3n pipapo vectorizada con instrucciones AVX2 de 256 bits en un sistema con procesador AMD Epyc 7402 mostr\u00f3 un aumento del rendimiento del 420% al analizar 30,000 registros que inclu\u00edan pares de puerto-protocolo. El incremento al emparejar un par de subred y n\u00famero de puerto al analizar 1,000 registros fue del 87% para IPv4 y del 128% para 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\">Se a\u00f1adi\u00f3<\/a><\/noindex> El m\u00f3dulo bareudp, que permite encapsular diversos protocolos L3 en un t\u00fanel UDP, como MPLS, IP y NSH.\n<li class=\"l\"> Se ha continuado la integraci\u00f3n de componentes MPTCP (MultiPath TCP), una extensi\u00f3n del protocolo TCP para organizar el funcionamiento de una conexi\u00f3n TCP que entrega paquetes simult\u00e1neamente a trav\u00e9s de m\u00faltiples rutas a trav\u00e9s de diferentes interfaces de red vinculadas a diferentes direcciones IP.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=50ff477a8639fa1fbbeecb5a6f2f8b6c5557ecec\">Se ha a\u00f1adido<\/a><\/noindex> Soporte para mecanismos de aceleraci\u00f3n de hardware para la encapsulaci\u00f3n de tramas Ethernet en 802.11 (Wi-Fi).\n<li class=\"l\"> Al mover un dispositivo de un espacio de nombres de red (network namespace) a otro, se garantiza la correcci\u00f3n de los derechos de acceso y el propietario de los archivos correspondientes en sysfs.\n<li class=\"l\"> Se ha a\u00f1adido la capacidad de usar la bandera SO_BINDTODEVICE para usuarios sin privilegios de root.\n<li class=\"l\"> Se ha adoptado la tercera parte de los parches que traducen las herramientas ethtool de ioctl() a la utilizaci\u00f3n de la interfaz netlink. La nueva interfaz simplifica la adici\u00f3n de extensiones, mejora el manejo de errores, permite enviar notificaciones al cambiar el estado, facilita la interacci\u00f3n entre el n\u00facleo y el espacio de usuario, y reduce el n\u00famero de listas nombradas sincronizadas.\n<li class=\"l\"> Se ha agregado la capacidad de utilizar aceleradores de hardware especiales para llevar a cabo operaciones de seguimiento de conexiones.\n<li class=\"l\"> En netfilter <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8537f78647c072bdb1a5dbe32e1c7e5b13ff1258\">se ha agregado<\/a><\/noindex> un gancho para conectar clasificadores de paquetes salientes (egress), complementando al gancho previamente existente para paquetes entrantes (ingress).\n<\/ul>\n<li class=\"l\"> <b>Virtualizaci\u00f3n y seguridad<\/b>\n<ul>\n<li class=\"l\"> Se ha a\u00f1adido una implementaci\u00f3n de hardware para la autenticaci\u00f3n de punteros (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/718888\/\">Autenticaci\u00f3n de Puntero<\/a><\/noindex>), que utiliza instrucciones especializadas de CPU ARM64 para protegerse contra ataques que emplean t\u00e9cnicas de programaci\u00f3n orientada a retornos (ROP), donde el atacante no intenta colocar su c\u00f3digo en memoria, sino que utiliza fragmentos existentes de instrucciones de m\u00e1quina en las bibliotecas cargadas que terminan con una instrucci\u00f3n de retorno de control. La protecci\u00f3n consiste en utilizar firmas digitales para verificar direcciones de retorno a nivel del n\u00facleo. La firma se almacena en los bits superiores no utilizados del propio puntero. A diferencia de las implementaciones de software, la creaci\u00f3n y verificaci\u00f3n de firmas digitales se realiza mediante instrucciones especiales de la 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\">Se ha a\u00f1adido<\/a><\/noindex> la capacidad de proteger un \u00e1rea de memoria de escritura mediante la llamada al sistema userfaultfd(), destinada a manejar fallos de p\u00e1gina (acceso a p\u00e1ginas de memoria no asignadas) en el espacio de usuario. La idea es usar userfaultfd() tambi\u00e9n para rastrear violaciones de acceso a p\u00e1ginas marcadas como protegidas contra escritura, y llamar a un manejador que pueda reaccionar ante tales intentos de escritura (por ejemplo, para manejar cambios durante la creaci\u00f3n de instant\u00e1neas en vivo de procesos en ejecuci\u00f3n, fijar el estado al volcar los volcado de memoria en disco, implementar memoria compartida, rastrear cambios en la memoria). La funcionalidad <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/787308\/\">es equivalente<\/a><\/noindex> a la aplicaci\u00f3n de mprotect() en conjunto con un manejador de se\u00f1ales SIGSEGV, pero funciona notablemente m\u00e1s r\u00e1pido.\n<li class=\"l\"> En SELinux, se ha declarado obsoleto el par\u00e1metro &#171;checkreqprot&#187;, que permit\u00eda desactivar la verificaci\u00f3n de protecci\u00f3n de memoria al procesar reglas (autorizaba el uso de \u00e1reas de memoria ejecutables, independientemente de las directivas establecidas en las reglas). Se permite la herencia del contexto de directorios padres para enlaces simb\u00f3licos en kernfs.\n<li class=\"l\"> En la composici\u00f3n <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/4dece7f3b925\">activado<\/a><\/noindex> m\u00f3dulo <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808048\/\">KRSI<\/a><\/noindex>, que permite adjuntar programas BPF a cualquier gancho LSM en el n\u00facleo. El cambio permite crear m\u00f3dulos LSM (M\u00f3dulo de Seguridad de Linux) en forma de programas BPF para abordar tareas de auditor\u00eda y control de acceso mandatorio.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=31c0aa87ec8a30b1e9e4cf862905a369560f7705\">Se ha realizado<\/a><\/noindex> optimizaci\u00f3n del rendimiento de \/dev\/random mediante la transmisi\u00f3n por lotes de valores CRNG en lugar de llamadas individuales a las instrucciones RNG. Se ha mejorado el funcionamiento de getrandom y \/dev\/random en sistemas ARM64 que proporcionan instrucciones RNG.\n<li class=\"l\"> Implementaci\u00f3n de la curva el\u00edptica Curve25519 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=07b586fe06625b0b610dc3d3a969c51913d143d4\">se ha reemplazado<\/a><\/noindex> a una variante de la biblioteca <noindex><a rel=\"nofollow\" href=\"https:\/\/hacl-star.github.io\/\">HACL<\/a><\/noindex>, para la cual <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50470\">se ha proporcionado<\/a><\/noindex> demostraci\u00f3n matem\u00e1tica de la verificaci\u00f3n formal de la fiabilidad.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1edca85e768a\">Se a\u00f1adi\u00f3<\/a><\/noindex> mecanismo de notificaci\u00f3n sobre las p\u00e1ginas de memoria libres. Con este mecanismo, los sistemas invitados pueden enviar a la m\u00e1quina host informaci\u00f3n sobre las p\u00e1ginas que ya no se utilizan, y la m\u00e1quina host puede recuperar esas p\u00e1ginas.\n<li class=\"l\"> en vfio\/pci <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=137e5531351db258eff58ea28f4dc8fdf7ca2990\">se ha a\u00f1adido<\/a><\/noindex> soporte para SR-IOV (Virtualizaci\u00f3n de Entrada\/Salida de Un Solo Ra\u00edz).\n<\/ul>\n<li class=\"l\"> <b>Memoria y servicios del sistema<\/b>\n<ul>\n<li class=\"l\"> De 80 a 100 caracteres <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=bdc48fa11e46\">se ha incrementado<\/a><\/noindex> la restricci\u00f3n sobre la longitud m\u00e1xima de l\u00ednea en los textos fuente. Sin embargo, se recomienda a los desarrolladores que se mantengan dentro del l\u00edmite de 80 caracteres por l\u00ednea, aunque ahora no es un l\u00edmite estricto. Adem\u00e1s, exceder el l\u00edmite de tama\u00f1o de l\u00ednea solo generar\u00e1 una advertencia durante la compilaci\u00f3n si la utilidad checkpatch se ejecuta con la opci\u00f3n &#171;&#8212;strict&#8217;. Este cambio evitar\u00e1 distraer a los desarrolladores en <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/28\/1245\">manipulaci\u00f3n<\/a><\/noindex> los espacios y sentirse m\u00e1s libres al alinear el c\u00f3digo, as\u00ed como  <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/28\/1237\">prevenir<\/a><\/noindex> una fragmentaci\u00f3n excesiva de las l\u00edneas, <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/5\/29\/1038\">que interfiere con<\/a><\/noindex> la percepci\u00f3n del c\u00f3digo y la b\u00fasqueda.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=17054f492dfd4d91e093ebb87013807812ec42a4\">Se ha a\u00f1adido<\/a><\/noindex> soporte para el modo de arranque mixto EFI, que permite arrancar un n\u00facleo de 64 bits desde un firmware de 32 bits en ejecuci\u00f3n en un CPU de 64 bits sin un cargador de arranque especializado.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=6650cdd9a8ccf00555dbbe743d58541ad8feb6a7\">Activado<\/a><\/noindex> sistema para detectar y depurar bloqueos divididos (&#171;<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/806466\/\">split lock<\/a><\/noindex>&#171;), que ocurren al acceder a datos no alineados en la memoria debido a que durante la ejecuci\u00f3n de una instrucci\u00f3n at\u00f3mica, los datos cruzan dos l\u00edneas de cach\u00e9 de la CPU. Dichos bloqueos conducen a una disminuci\u00f3n significativa del rendimiento (1000 ciclos m\u00e1s lentos que una operaci\u00f3n at\u00f3mica con datos que caen en una sola l\u00ednea de cach\u00e9). Dependiendo del par\u00e1metro de arranque &#171;split_lock_detect&#187;, el n\u00facleo puede detectar tales bloqueos sobre la marcha y emitir advertencias o enviar una se\u00f1al SIGBUS a la aplicaci\u00f3n que caus\u00f3 el bloqueo.\n<li class=\"l\"> En el programador de tareas se ha incorporado el seguimiento de los indicadores de los sensores de temperatura (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/788380\/\">Presi\u00f3n T\u00e9rmica<\/a><\/noindex>) y se ha implementado el seguimiento de sobrecalentamiento al programar tareas. Usando la estad\u00edstica proporcionada, el controlador de temperatura (thermal governor) puede ajustar la frecuencia m\u00e1xima del CPU en caso de sobrecalentamiento, y el planificador de tareas ahora considera la disminuci\u00f3n de la potencia computacional debido a esta reducci\u00f3n de frecuencia al planificar la ejecuci\u00f3n de tareas (anteriormente, el planificador reaccionaba al cambio de frecuencia con cierto retraso, tomando decisiones basadas en supuestos elevados sobre los recursos computacionales disponibles).\n<li class=\"l\"> En el planificador de tareas se emplean <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/816388\/\">indicadores invariantes<\/a><\/noindex> de seguimiento de carga, que permiten evaluar correctamente la carga, independientemente de la frecuencia de operaci\u00f3n actual del CPU. Este cambio permite predecir m\u00e1s precisamente el comportamiento de las tareas en condiciones de variaci\u00f3n din\u00e1mica de voltaje y frecuencia del CPU. Por ejemplo, una tarea que consume 1\/3 de los recursos del CPU a 1000 MHz, comenzar\u00e1 a consumir 2\/3 de los recursos al reducir la frecuencia a 500 MHz, lo que anteriormente creaba una falsa suposici\u00f3n sobre la operaci\u00f3n a plena capacidad (es decir, las tareas para el planificador parec\u00edan m\u00e1s grandes simplemente debido a la reducci\u00f3n de frecuencia, lo que llevaba a la toma de decisiones incorrectas en el gobernante de frecuencia cpufreq de schedutil).\n<li class=\"l\"> El controlador Intel P-state, responsable de seleccionar modos de rendimiento, ha sido cambiado para utilizar <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/doc\/Documentation\/cpu-freq\/governors.txt\">schedutil<\/a><\/noindex>.\n<li class=\"l\"> Se ha implementado la posibilidad de usar el subsistema BPF mientras el n\u00facleo opera en modo de tiempo real (PREEMPT_RT). Anteriormente, al activar PREEMPT_RT se requer\u00eda desactivar BPF.\n<li class=\"l\"> Se ha a\u00f1adido un nuevo tipo de programas BPF &#8212; BPF_MODIFY_RETURN, que pueden adjuntarse a funciones en el n\u00facleo y modificar el valor devuelto por dicha funci\u00f3n.\n<li class=\"l\"> Se ha a\u00f1adido <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/807882\/\">la posibilidad<\/a><\/noindex> uso de la llamada al sistema clone3() para crear un proceso en una cgroup diferente de la cgroup padre, lo que permite al proceso padre aplicar restricciones e incluir contabilidad inmediatamente despu\u00e9s de crear un nuevo proceso o hilo. Por ejemplo, un gestor de servicios puede asignar nuevos servicios directamente a cgroups separados, y nuevos procesos al ser colocados en cgroups &#171;congelados&#187; ser\u00e1n detenidos de inmediato.\n<li class=\"l\"> en Kbuild <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=a0d1c951ef08ed24f35129267e3595d86f57f5d3\">se ha a\u00f1adido<\/a><\/noindex> soporte para la variable de entorno &#171;LLVM=1&#187; para cambiar a la herramienta Clang\/LLVM al compilar el n\u00facleo. Se han elevado los requisitos para la versi\u00f3n de binutils (2.23).\n<li class=\"l\"> Se ha a\u00f1adido en debugfs la secci\u00f3n \/sys\/kernel\/debug\/kunit\/ con los resultados de las pruebas de kunit.\n<li class=\"l\"> Se ha a\u00f1adido el par\u00e1metro de carga del n\u00facleo pm_debug_messages (an\u00e1logo a \/sys\/power\/pm_debug_messages), que incluye la salida de informaci\u00f3n de depuraci\u00f3n sobre el funcionamiento del sistema de gesti\u00f3n de energ\u00eda (\u00fatil para depurar problemas con los modos de suspensi\u00f3n y espera).\n<li class=\"l\"> En la interfaz de entrada\/salida as\u00edncrona <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50631#io_uring\">io_uring<\/a><\/noindex> se ha a\u00f1adido soporte para  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.man7.org\/linux\/man-pages\/man2\/splice.2.html\">splice()<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/815491\/\">selecci\u00f3n at\u00f3mica de b\u00faferes<\/a><\/noindex>.\n<li class=\"l\"> Se ha mejorado el perfilado de cgroup mediante la herramienta perf. Anteriormente, perf solo pod\u00eda perfilar tareas en un cgroup espec\u00edfico y no pod\u00eda determinar a qu\u00e9 cgroup pertenec\u00eda la muestra actual. Ahora, perf obtiene informaci\u00f3n sobre cgroup para cada muestra, lo que permite perfilar m\u00e1s de un cgroup y aplicar la ordenaci\u00f3n por<br \/>\ncgroup en los informes.<\/p>\n<li class=\"l\"> En cgroupfs, el pseudo-sistema de archivos para gestionar cgroups, se ha a\u00f1adido soporte para atributos extendidos (xattrs) mediante los cuales, por ejemplo, se puede dejar informaci\u00f3n adicional para los controladores en el espacio de usuario.\n<li class=\"l\"> En el controlador de memoria de cgroup <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=8a931f801340\">se ha agregado<\/a><\/noindex>la soporte de la protecci\u00f3n recursiva del valor \u00abmemory.low\u00bb, que regula la cantidad m\u00ednima de memoria RAM proporcionada a los miembros del grupo. Al montar la jerarqu\u00eda cgroup con la opci\u00f3n \u00abmemory_recursiveprot\u00bb, el valor \u00abmemory.low\u00bb, que se establece para los nodos inferiores, se distribuir\u00e1 autom\u00e1ticamente a todos los nodos hijos.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/aa017ab97a22\">Se a\u00f1adi\u00f3<\/a><\/noindex>  el marco Uacce (Unified\/User-space-access-intended Accelerator Framework) para compartir direcciones virtuales (SVA, Shared Virtual Addressing) entre CPU y dispositivos perif\u00e9ricos, permitiendo a los aceleradores de hardware acceder a estructuras de datos en la CPU principal.\n<\/li>\n<\/ul>\n<\/li>\n<li class=\"l\"> <b>Arquitecturas de hardware<\/b>\n<ul>\n<li class=\"l\"> Para la arquitectura ARM, se ha implementado la capacidad de extracci\u00f3n en caliente de memoria.\n<li class=\"l\"> Para la arquitectura RISC-V, se ha a\u00f1adido soporte para la conexi\u00f3n y desconexi\u00f3n en caliente de la CPU (CPU hotplug). Para RISC-V de 32 bits, se ha implementado eBPF JIT.\n<li class=\"l\"> Se ha eliminado la capacidad de utilizar sistemas ARM de 32 bits para ejecutar entornos de invitados KVM.\n<li class=\"l\"> Se elimin\u00f3 la implementaci\u00f3n \u00abficticia\u00bb de NUMA para la arquitectura s390, para la que no se encontraron escenarios de uso que permitieran mejoras en el rendimiento.\n<li class=\"l\"> Para ARM64, se ha a\u00f1adido soporte para la extensi\u00f3n AMU (Activity Monitors Unit), definida en ARMv8.4 y que proporciona contadores de rendimiento utilizados para calcular los coeficientes de correcci\u00f3n de escalado de frecuencia en el programador de tareas.\n<\/ul>\n<li class=\"l\"> <b>Hardware<\/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\">Se ha a\u00f1adido<\/a><\/noindex> soporte para dispositivos vDPA que utilizan un canal de intercambio de datos conforme a las especificaciones de virtio. Los dispositivos vDPA pueden ser hardware f\u00edsicamente conectado o dispositivos virtuales emulados por software.\n<li class=\"l\"> En el subsistema GPIO <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=51c1064e82e7\">se ha a\u00f1adido<\/a><\/noindex> nuevo comando ioctl() para monitorizar cambios, que permite informar al proceso sobre el cambio de estado de cualquier l\u00ednea GPIO. Como ejemplo de uso del nuevo comando <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=33f0c47b8fb4\">una t\u00e9cnica similar de sustituci\u00f3n de solicitudes<\/a><\/noindex> la utilidad gpio-watch.\n<li class=\"l\"> En el controlador DRM i915 para tarjetas gr\u00e1ficas Intel <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f365ab31efacb70bed1e821f7435626e0b2528a6\">incluida<\/a><\/noindex> por defecto se a\u00f1ade soporte para chips Tigerlake (\u00abGen12\u00bb) y se agrega soporte inicial para la gesti\u00f3n del retroiluminaci\u00f3n OLED. Se mejora el soporte para chips Ice Lake, Elkhart Lake, Baytrail y Haswell.\n<li class=\"l\"> En el controlador amdgpu <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=f365ab31efacb70bed1e821f7435626e0b2528a6\">se ha a\u00f1adido<\/a><\/noindex> la capacidad de cargar firmware en el chip USBC para ASIC. Se mejora el soporte para chips AMD Ryzen 4000 \u00abRenoir\u00bb. Se a\u00f1ade soporte para la gesti\u00f3n de pantallas OLED. Se proporciona informaci\u00f3n sobre el estado del firmware en debugfs.\n<li class=\"l\"> En el controlador DRM vmwgfx para sistemas de virtualizaci\u00f3n VMware se a\u00f1adi\u00f3 la posibilidad de usar OpenGL 4 en sistemas invitados (antes solo se soportaba OpenGL 3.3).\n<li class=\"l\"> Se a\u00f1adi\u00f3 un nuevo controlador DRM tidss para el sistema de visualizaci\u00f3n de la plataforma TI Keystone.\n<li class=\"l\"> Se a\u00f1adieron controladores para paneles LCD: Feixin K101 IM2BA02, Samsung s6e88a0-ams452ef01, Novatek NT35510, Elida KD35T133, EDT, NewEast Optoelectronics WJFH116008A, Rocktech RK101II01D-CT, Frida FRD350H54004.\n<li class=\"l\"> En el sistema de gesti\u00f3n de energ\u00eda <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/16292bed9c56a20715d942fd5d9e025f01fa65fe\">se ha a\u00f1adido<\/a><\/noindex> soporte para la plataforma Intel Jasper Lake (JSL) basada en Atom.\n<li class=\"l\"> Se a\u00f1adi\u00f3 soporte para la laptop Pinebook Pro basada en Rockchip RK3399, la tableta Pine64 PineTab y el smartphone <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52662\">PinePhone<\/a><\/noindex>  basado en Allwinner A64.\n<li class=\"l\"> Se a\u00f1adieron soportes para nuevos c\u00f3decs y chips de audio:<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\"> Se a\u00f1adi\u00f3 soporte para plataformas ARM y plataformas Qualcomm Snapdragon 865 (SM8250), IPQ6018, NXP i.MX8M Plus, Kontron \u00absl28\u00bb, 11 variantes de la placa i.MX6 TechNexion Pico, tres nuevas variantes de Toradex Colibri, Samsung S7710 Galaxy Xcover 2 basado en ST-Ericsson u8500, DH Electronics DHCOM SoM y 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>Fuente: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=53062\">opennet.ru<\/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 - 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\/es\/blog\/news\/reliz-yadra-linux-5-7\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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\udd47Lanzamiento del n\u00facleo Linux 5.7 | ProHoster","description":"Despu\u00e9s de dos meses de desarrollo, Linus Torvalds present\u00f3 el lanzamiento del n\u00facleo Linux.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/reliz-yadra-linux-5-7","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/83515","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=83515"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/83515\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=83515"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=83515"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=83515"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}