{"id":76046,"date":"2020-03-30T19:42:02","date_gmt":"2020-03-30T17:42:02","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-5-6"},"modified":"2020-03-30T19:42:02","modified_gmt":"2020-03-30T17:42:02","slug":"reliz-yadra-linux-5-6","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/reliz-yadra-linux-5-6","title":{"rendered":"Lan\u00e7amento do n\u00facleo do Linux 5.6","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Ap\u00f3s dois meses de desenvolvimento, Linus Torvalds <noindex><a rel=\"nofollow\" href=\"https:\/\/lkml.org\/lkml\/2020\/3\/29\/379\">apresentou<\/a><\/noindex> lan\u00e7amento do n\u00facleo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.kernel.org\/\">Linux 5.6<\/a><\/noindex>. Entre as mudan\u00e7as mais not\u00e1veis est\u00e3o: integra\u00e7\u00e3o da interface VPN WireGuard, suporte a USB4, namespaces para tempo, a possibilidade de criar manipuladores de sobrecarga TCP usando BPF, suporte inicial para MultiPath TCP, resolu\u00e7\u00e3o do problema do ano 2038 no n\u00facleo, mecanismo 'bootconfig', e o sistema de arquivos ZoneFS.<\/p>\n<p>A nova vers\u00e3o incluiu 13702 corre\u00e7\u00f5es de 1810 desenvolvedores,<br \/>\ntamanho do patch \u2014 40 MB (as altera\u00e7\u00f5es afetaram 11577 arquivos, foram adicionadas 610012 linhas de c\u00f3digo,<br \/>\nremovidas 294828 linhas). Cerca de 45% de todas as altera\u00e7\u00f5es apresentadas em 5.6<br \/>\nest\u00e3o relacionadas a drivers de dispositivos, cerca de 15% das mudan\u00e7as t\u00eam<br \/>\nrelacionam-se com a atualiza\u00e7\u00e3o de c\u00f3digo espec\u00edfico para arquiteturas de hardware, 12%<br \/>\nrelacionado \u00e0 pilha de rede, 4% \u2014 com sistemas de arquivos e 3% com internos<br \/>\nsubsistemas do n\u00facleo. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/kernelnewbies.org\/Linux_5.6\">Principais<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/811230\/\">novidades<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> <b>Subsistema de Rede<\/b>\n<ul>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=51997\">Adicionada<\/a><\/noindex> implementa\u00e7\u00e3o da interface VPN  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.wireguard.io\/\">WireGuard<\/a><\/noindex>, que \u00e9 baseada em m\u00e9todos modernos de criptografia (ChaCha20, Poly1305, Curve25519, BLAKE2s), \u00e9 f\u00e1cil de usar, descomplicada, bem testada em v\u00e1rias implementa\u00e7\u00f5es grandes e oferece um desempenho muito alto (3,9 vezes superior ao OpenVPN em capacidade de tr\u00e1fego). No WireGuard, \u00e9 aplicada a concep\u00e7\u00e3o de roteamento por chaves de criptografia, que envolve a liga\u00e7\u00e3o de uma chave privada a cada interface de rede e a utiliza\u00e7\u00e3o de chaves p\u00fablicas para a conex\u00e3o. A troca de chaves p\u00fablicas para estabelecer a conex\u00e3o \u00e9 feita de forma semelhante ao SSH. Os primitivas criptogr\u00e1ficas necess\u00e1rias para o funcionamento do WireGuard <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0ed42a6f431e930b2e8fae21955406e09fe75d70\">eram<\/a><\/noindex> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=66d7fb94e4ffe5acc589e0b2b4710aecc1f07a28\">foram transferidos<\/a><\/noindex> s\u00e3o da biblioteca  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=49064\">Zinc<\/a><\/noindex> integradas ao Crypto API padr\u00e3o e <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=ed20078b7e3331e82828be357147af6a3282e4ce\">est\u00e3o inclu\u00eddas<\/a><\/noindex> ao n\u00facleo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52256\">5.5<\/a><\/noindex>.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=bd2463ac7d7ec51d432f23bf0e893fb371a908cd\">Come\u00e7ou<\/a><\/noindex> integra\u00e7\u00e3o de componentes necess\u00e1rios para suportar MPTCP (MultiPath TCP), uma extens\u00e3o do protocolo TCP para permitir que as conex\u00f5es TCP entreguem pacotes simultaneamente por v\u00e1rios caminhos atrav\u00e9s de diferentes interfaces de rede, cada uma ligada a diferentes endere\u00e7os IP. Para aplica\u00e7\u00f5es de rede, essa conex\u00e3o agregada se comporta como uma conex\u00e3o TCP normal, enquanto toda a l\u00f3gica de divis\u00e3o de fluxos \u00e9 gerida pelo MPTCP. O Multipath TCP pode ser utilizado tanto para aumentar a capacidade quanto para melhorar a confiabilidade. Por exemplo, o MPTCP pode ser aplicado para transmitir dados em um smartphone usando simultaneamente links WiFi e 4G ou para reduzir custos ao conectar um servidor usando v\u00e1rias links baratos em vez de um \u00fanico link caro.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=dcc68b4d8084\">Adicionada<\/a><\/noindex> suporte \u00e0 disciplina de gerenciamento de filas de rede sch_ets (<noindex><a rel=\"nofollow\" href=\"https:\/\/1.ieee802.org\/dcb\/802-1qaz\/\">Enhanced Transmission Selection<\/a><\/noindex>, IEEE 802.1Qaz), que oferece a possibilidade de distribuir a largura de banda entre diferentes classes de tr\u00e1fego. Se a carga em uma determinada classe de tr\u00e1fego estiver abaixo da largura de banda fornecida, o ETS permite que outras classes de tr\u00e1fego utilizem a largura de banda dispon\u00edvel (n\u00e3o utilizada). O Qdisc sch_ets \u00e9 configurado como uma disciplina PRIO e utiliza classes de tr\u00e1fego para determinar as restri\u00e7\u00f5es de largura de banda estritas e compartilhadas. O ETS funciona como uma combina\u00e7\u00e3o de disciplinas. <noindex><a rel=\"nofollow\" href=\"https:\/\/linux.die.net\/man\/8\/tc-prio\">PRIO<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"http:\/\/man7.org\/linux\/man-pages\/man8\/tc-drr.8.html\">DRR<\/a><\/noindex> \u2014 na presen\u00e7a de classes de tr\u00e1fego rigidamente limitadas, utiliza-se PRIO, mas se n\u00e3o houver nada na fila de tr\u00e1fego, opera como DRR.\n<li class=\"l\"> Foi adicionado um novo tipo de programas BPF <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=27ae7997a661\">BPF_PROG_TYPE_STRUCT_OPS<\/a><\/noindex>, permitindo a implementa\u00e7\u00e3o de manipuladores de fun\u00e7\u00f5es do kernel atrav\u00e9s do BPF. Atualmente, essa funcionalidade j\u00e1 pode ser usada para implementar algoritmos de controle de congestionamento TCP na forma de programas BPF. Como exemplo, <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=09903869f69f\">foi proposta<\/a><\/noindex> um programa BPF com a implementa\u00e7\u00e3o do algoritmo <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc8257\">DCTCP<\/a><\/noindex>.\n<li class=\"l\"> Foi aceito no kernel <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1b3b289fd8da\">mudan\u00e7as<\/a><\/noindex>, que converte as ferramentas  <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Ethtool\">ethtool<\/a><\/noindex> de ioctl() para o uso <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=2b4a8990b7df\">da interface netlink<\/a><\/noindex>. A nova interface facilita a adi\u00e7\u00e3o de extens\u00f5es, melhora o tratamento de erros, permite o envio de notifica\u00e7\u00f5es ao alterar o estado, simplifica a intera\u00e7\u00e3o entre o kernel e o espa\u00e7o do usu\u00e1rio e reduz o n\u00famero de listas nomeadas que precisam ser sincronizadas.\n<li class=\"l\"> Foi adicionada a implementa\u00e7\u00e3o do algoritmo de controle de filas de rede FQ-PIE (Flow Queue PIE), visando reduzir o impacto negativo do buffer de pacotes em equipamentos de rede na borda (bufferbloat). O FQ-PIE demonstra alta efici\u00eancia em sistemas com modems a cabo.\n<\/ul>\n<li class=\"l\"> <b>Subsistema de disco, entrada\/sa\u00edda e sistemas de arquivos<\/b>\n<ul>\n<li class=\"l\"> Para o sistema de arquivos Btrfs <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52228\">foi adicionada<\/a><\/noindex> a implementa\u00e7\u00e3o ass\u00edncrona da opera\u00e7\u00e3o DISCARD (marca\u00e7\u00f5es de blocos liberados que j\u00e1 podem n\u00e3o ser mantidos fisicamente). Inicialmente, as opera\u00e7\u00f5es DISCARD eram executadas de forma s\u00edncrona, o que poderia resultar em queda de desempenho devido \u00e0 espera pela conclus\u00e3o dos comandos correspondentes pelos dispositivos de armazenamento. A implementa\u00e7\u00e3o ass\u00edncrona permite que n\u00e3o se espere a conclus\u00e3o do DISCARD pelo dispositivo e execute essa opera\u00e7\u00e3o em segundo plano.\n<li class=\"l\"> No XFS <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=91f1a9566f387137f2da1957792a8f9f07cd058f\">foi realizada<\/a><\/noindex> limpeza do c\u00f3digo que usava contadores de tempo de 32 bits (o tipo time_t foi substitu\u00eddo por time64_t), que causavam o problema de 2038. Erros e danos \u00e0 mem\u00f3ria que surgiam em plataformas de 32 bits foram corrigidos. O c\u00f3digo foi reformulado para trabalhar com atributos expandidos.\n<li class=\"l\"> No sistema de arquivos ext4 <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=e5da4c933c50d98d7990a7c1ca0bbf8946e80c4a\">foram feitas<\/a><\/noindex> otimiza\u00e7\u00f5es de desempenho relacionadas ao tratamento de bloqueios de inode durante opera\u00e7\u00f5es de leitura e grava\u00e7\u00e3o. A performance de grava\u00e7\u00e3o em modo de entrada\/sa\u00edda direta (Direct I\/O) foi melhorada. Para facilitar o diagn\u00f3stico de problemas, foi implementada a preserva\u00e7\u00e3o dos primeiros e \u00faltimos c\u00f3digos de erro no superblock.\n<li class=\"l\"> No sistema de arquivos F2FS <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=4c8ff7095bef\">s\u00e3o implementadas<\/a><\/noindex> possibilidade de armazenar dados de forma compactada. Para um arquivo ou diret\u00f3rio espec\u00edfico, a compacta\u00e7\u00e3o pode ser ativada usando o comando 'chattr +c file' ou 'chattr +c dir; touch dir\/file'. Para compactar toda a parti\u00e7\u00e3o, na ferramenta mount pode-se usar a op\u00e7\u00e3o '-o compress_extension=ext'.\n<li class=\"l\"> Foi aceita como parte do n\u00facleo do sistema de arquivos <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52092\">ZoneFS<\/a><\/noindex>, que simplifica o trabalho de baixo n\u00edvel com dispositivos de armazenamento zonados. Dispositivos de armazenamento zonados referem-se a dispositivos de discos magn\u00e9ticos r\u00edgidos ou SSDs NVMe, onde o espa\u00e7o de armazenamento \u00e9 dividido em zonas, que consistem em grupos de blocos ou setores, onde somente a adi\u00e7\u00e3o sequencial de dados \u00e9 permitida, atualizando todo o grupo de blocos. O FS ZoneFS foi desenvolvido pela Western Digital e associa cada zona no dispositivo a um arquivo separado, que pode ser usado para armazenar dados em modo raw sem manipula\u00e7\u00e3o em n\u00edvel de setores e blocos, ou seja, permite que os aplicativos usem a API de arquivos em vez de acesso direto ao dispositivo de bloco via ioctl.\n<li class=\"l\"> No NFS, o montagem de parti\u00e7\u00f5es sobre UDP est\u00e1 desativado por padr\u00e3o. Foi adicionada a op\u00e7\u00e3o de copiar arquivos diretamente entre servidores conforme especificado na NFS 4.2. Uma nova op\u00e7\u00e3o de montagem 'softreval' foi introduzida, permitindo o uso de valores de atributos armazenados em cache em caso de falha do servidor. Por exemplo, ao especificar esta op\u00e7\u00e3o, ap\u00f3s a indisponibilidade do servidor, ainda \u00e9 poss\u00edvel navegar por caminhos na parti\u00e7\u00e3o NFS e acessar informa\u00e7\u00f5es que permaneceram no cache.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=c8994374d90b5823b3b29a5e5d8648ac418b57b4\">Realizada<\/a><\/noindex> otimiza\u00e7\u00e3o do desempenho do mecanismo fs-verity, usado para controle de integridade e verifica\u00e7\u00e3o da autenticidade de arquivos individuais. A velocidade de leitura sequencial foi aumentada devido ao uso de \u00e1rvores de Merkle. Aumentada a efici\u00eancia do FS_IOC_ENABLE_VERITY em condi\u00e7\u00f5es de aus\u00eancia de dados no cache (implementa\u00e7\u00e3o de leitura antecipada de p\u00e1ginas com dados).\n<\/ul>\n<li class=\"l\"> <b>Virtualiza\u00e7\u00e3o e seguran\u00e7a<\/b>\n<ul>\n<li class=\"l\"> Foi declarado obsoleto o ato de desabilitar o m\u00f3dulo SELinux durante a opera\u00e7\u00e3o, e no futuro, a descarregamento do SELinux j\u00e1 ativado ser\u00e1 proibido. Para desativar o SELinux, ser\u00e1 necess\u00e1rio passar o par\u00e2metro 'selinux=0' na linha de comando do n\u00facleo.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=769071ac9f20\">Adicionada<\/a><\/noindex> suporte a namespaces de tempo (time namespaces), permitindo vincular ao container o estado dos rel\u00f3gios do sistema (CLOCK_REALTIME,<br \/>\nCLOCK_MONOTONIC, CLOCK_BOOTTIME), usar o seu pr\u00f3prio tempo dentro do container e garantir a imutabilidade das leituras de CLOCK_MONOTONIC e CLOCK_BOOTTIME ao migrar o container para outro host (considerando o tempo ap\u00f3s a inicializa\u00e7\u00e3o com ou sem o estado de suspens\u00e3o).<\/p>\n<li class=\"l\"> Removido o pool bloqueado \/dev\/random. O comportamento de \/dev\/random foi aproximado ao de \/dev\/urandom em termos de preven\u00e7\u00e3o de bloqueio de entropia ap\u00f3s a inicializa\u00e7\u00e3o do pool.\n<li class=\"l\"> O n\u00facleo agora inclui um driver que permite que sistemas convidados que operam sob VirtualBox montem diret\u00f3rios exportados pelo ambiente host (VirtualBox Shared Folder).\n<li class=\"l\"> Um conjunto de patches foi adicionado ao subsistema BPF (<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808503\/\">BPF dispatcher<\/a><\/noindex>), em condi\u00e7\u00f5es de aplica\u00e7\u00e3o do mecanismo Retpoline para prote\u00e7\u00e3o contra ataques do tipo Spectre V2, permitindo aumentar a efici\u00eancia da chamada de programas BPF quando os eventos correspondentes ocorrem (por exemplo, possibilita acelerar a chamada dos manipuladores XDP quando um pacote de rede chega).\n<li class=\"l\"> Adicionado driver para suporte a ambientes TEE (Trusted Execution Environment) integrados em APU AMD.\n<\/ul>\n<li class=\"l\"> <b>Mem\u00f3ria e servi\u00e7os do sistema<\/b>\n<ul>\n<li class=\"l\"> O BPF agora suporta fun\u00e7\u00f5es globais. O desenvolvimento est\u00e1 sendo realizado no \u00e2mbito da iniciativa para adicionar suporte a bibliotecas de fun\u00e7\u00f5es que podem ser integradas em programas BPF. O pr\u00f3ximo passo ser\u00e1 o suporte a extens\u00f5es din\u00e2micas, permitindo o carregamento de fun\u00e7\u00f5es globais, incluindo a substitui\u00e7\u00e3o de fun\u00e7\u00f5es globais existentes durante seu uso. Tamb\u00e9m foi adicionado ao subsistema BPF suporte a uma variante da opera\u00e7\u00e3o map (usada para armazenar dados permanentes), que suporta execu\u00e7\u00e3o em modo em lote.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0a1990a2d1f2\">Adicionado<\/a><\/noindex> dispositivo 'cpu_cooling' que permite resfriar um CPU superaquecido colocando-o em estado de ociosidade (idle) por curtos per\u00edodos.\n<li class=\"l\"> Chamada de sistema adicionada <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/796868\/\">openat2()<\/a><\/noindex>, oferecendo um conjunto de flags adicionais para restringir a resolu\u00e7\u00e3o do caminho do arquivo (evitando a interse\u00e7\u00e3o de pontos de montagem, links simb\u00f3licos, links m\u00e1gicos (\/proc\/PID\/fd), e componentes '..'.\n<li class=\"l\"> Para sistemas heterog\u00eaneos baseados na arquitetura big.LITTLE, que combinam n\u00facleos de CPU poderosos e menos eficientes energeticamente em um \u00fanico chip, ao executar tarefas em tempo real, o par\u00e2metro uclamp_min \u00e9 garantido (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50201\">introduzido<\/a><\/noindex> no n\u00facleo 5.3 para fixa\u00e7\u00e3o da carga). O par\u00e2metro especificado garante que a tarefa ser\u00e1 alocada pelo planejador em um n\u00facleo de CPU com desempenho adequado.\n<li class=\"l\"> O n\u00facleo foi livre de <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_2038_%D0%B3%D0%BE%D0%B4%D0%B0\">o problema do ano 2038<\/a><\/noindex>. Os \u00faltimos manipuladores restantes, onde um tipo de time_t de 32 bits (signed int) foi usado para o contador de tempo epochal, que considerando o relat\u00f3rio de 1970 deve transbordar em 2038.\n<li class=\"l\"> A melhoria da interface de entrada\/sa\u00edda ass\u00edncrona foi continuada <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50631#io_uring\">io_uring<\/a><\/noindex>, na qual  <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/810414\/\">foi garantido<\/a><\/noindex> suporte a novas opera\u00e7\u00f5es: IORING_OP_FALLOCATE (reservar \u00e1reas vazias), IORING_OP_OPENAT,<br \/>\n    IORING_OP_OPENAT2,<br \/>\n    IORING_OP_CLOSE (abertura e fechamento de arquivos),<br \/>\n    IORING_OP_FILES_UPDATE (adi\u00e7\u00e3o e remo\u00e7\u00e3o de arquivos da lista de acesso r\u00e1pido),<br \/>\n IORING_OP_STATX (requisi\u00e7\u00e3o de informa\u00e7\u00f5es sobre arquivo),<br \/>\n    IORING_OP_READ,<br \/>\n    IORING_OP_WRITE (an\u00e1logos simplificados de IORING_OP_READV e IORING_OP_WRITEV),<br \/>\n    IORING_OP_FADVISE,<br \/>\n    IORING_OP_MADVISE (varia\u00e7\u00f5es ass\u00edncronas das chamadas posix_fadvise e madvise), IORING_OP_SEND,<br \/>\n    IORING_OP_RECV (envio e recebimento de dados de rede),<br \/>\n    IORING_OP_EPOLL_CTL (execu\u00e7\u00e3o de opera\u00e7\u00f5es em descritores de arquivos epoll).<\/p>\n<li class=\"l\"> Chamada de sistema adicionada <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/808997\/\">pidfd_getfd()<\/a><\/noindex>, permitindo que um processo extraia de outro processo o descritor de arquivo de um arquivo aberto.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/linus\/7b9b816f4b9a\">o operador de sequ\u00eancia opcional<\/a><\/noindex> mecanismo 'bootconfig', que permite, al\u00e9m das op\u00e7\u00f5es de linha de comando, definir par\u00e2metros de opera\u00e7\u00e3o do n\u00facleo atrav\u00e9s de um arquivo de configura\u00e7\u00e3o. Para adicionar esses arquivos \u00e0 imagem do initramfs, foi proposta a ferramenta bootconfig. Poder\u00e1 ser aplicada, por exemplo, para configurar kprobes durante a inicializa\u00e7\u00e3o.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=0ddad21d3e99\">Revisado<\/a><\/noindex> mecanismo de espera para grava\u00e7\u00e3o e leitura de dados em canais an\u00f4nimos (pipe). A altera\u00e7\u00e3o permitiu acelerar a execu\u00e7\u00e3o de tarefas como a compila\u00e7\u00e3o paralela de grandes projetos. No entanto, a otimiza\u00e7\u00e3o pode levar a condi\u00e7\u00f5es de corrida no GNU make devido a um erro na vers\u00e3o 4.2.1, que foi corrigido na vers\u00e3o 4.3.\n<li class=\"l\"> Foi adicionado o sinalizador PR_SET_IO_FLUSHER ao prctl(), que pode ser usado para marcar processos que est\u00e3o liberando mem\u00f3ria, para os quais n\u00e3o devem ser aplicados limites em situa\u00e7\u00f5es de escassez de mem\u00f3ria no sistema.\n<li class=\"l\"> Baseada no sistema de gerenciamento de mem\u00f3ria ION utilizado no Android, foi implementada uma subsistema <noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/792733\/\">heaps dma-buf<\/a><\/noindex>, que permite gerenciar a aloca\u00e7\u00e3o de buffers DMA para compartilhamento de \u00e1reas de mem\u00f3ria entre drivers, aplicativos e diversas subsistemas.\n<\/ul>\n<li class=\"l\"> <b>Arquiteturas de hardware<\/b>\n<ul>\n<li class=\"l\"> Foi adicionada a suporte \u00e0 extens\u00e3o E0PD, introduzida no ARMv8.5, que possibilita implementar prote\u00e7\u00e3o contra ataques relacionados \u00e0 execu\u00e7\u00e3o especulativa de instru\u00e7\u00f5es na CPU. A prote\u00e7\u00e3o baseada no E0PD acarreta menos sobrecarga do que a prote\u00e7\u00e3o KPTI (Kernel Page Table Isolation).\n<li class=\"l\"> Para sistemas baseados na arquitetura ARMv8.5, foi adicionada a instru\u00e7\u00e3o RNG, que fornece acesso ao gerador de n\u00fameros pseudorrand\u00f4micos em hardware. No kernel, a instru\u00e7\u00e3o RNG \u00e9 utilizada para gerar entropia ao inicializar o gerador de n\u00fameros pseudorrand\u00f4micos fornecido pelo kernel.\n<li class=\"l\"> O suporte \u00e0s extens\u00f5es MPX (Memory Protection Extensions), que foi adicionado no kernel <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=41634\">3.19<\/a><\/noindex> e permite a verifica\u00e7\u00e3o de ponteiros para garantir que respeitem os limites das \u00e1reas de mem\u00f3ria, foi removido. Essa tecnologia n\u00e3o ganhou popularidade entre compiladores e foi exclu\u00edda do GCC.\n<li class=\"l\"> Para a arquitetura RISC-V, foi implementado o suporte \u00e0 ferramenta de depura\u00e7\u00e3o KASan (Kernel address sanitizer), que ajuda na identifica\u00e7\u00e3o de erros relacionados ao uso de mem\u00f3ria.\n<\/ul>\n<li class=\"l\"> <b>Hardware<\/b>\n<ul>\n<li class=\"l\"> Foi implementado o suporte \u00e0 especifica\u00e7\u00e3o <noindex><a rel=\"nofollow\" href=\"https:\/\/www.usb.org\/document-library\/usb4tm-specification\">USB 4.0<\/a><\/noindex>, que \u00e9 baseada no protocolo Thunderbolt 3 e oferece largura de banda de at\u00e9 40 Gbps, enquanto mant\u00e9m compatibilidade reversa com USB 2.0 e USB 3.2. Assim como o <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Thunderbolt\">Thunderbolt<\/a><\/noindex> , a interface USB 4.0 permite o tunelamento de v\u00e1rios protocolos por um \u00fanico cabo com conector <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/USB_Type-C\">Type-C<\/a><\/noindex>, incluindo PCIe, Display Port e USB 3.x, assim como implementa\u00e7\u00f5es de software de protocolos, por exemplo, para organizar conex\u00f5es de rede entre hosts. A implementa\u00e7\u00e3o \u00e9 baseada no driver Thunderbolt j\u00e1 presente no n\u00facleo do Linux e adapta-o para funcionar com hosts e dispositivos compat\u00edveis com USB4. As altera\u00e7\u00f5es tamb\u00e9m adicionam suporte a dispositivos Thunderbolt 3 na implementa\u00e7\u00e3o de software do Gerenciador de Conex\u00f5es, que \u00e9 respons\u00e1vel pela cria\u00e7\u00e3o de t\u00faneis para conectar m\u00faltiplos dispositivos atrav\u00e9s de uma \u00fanica porta.\n<li class=\"l\"> No driver amdgpu <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">foi adicionada<\/a><\/noindex> , foi adicionada a suporte inicial para a tecnologia de prote\u00e7\u00e3o contra c\u00f3pias HDCP 2.x (High-bandwidth Digital Content Protection). Adicionado suporte para o chip ASIC AMD Pollock, baseado na arquitetura Raven 2. Implementada a possibilidade de redefinir a GPU para as fam\u00edlias Renoir e Navi.\n<li class=\"l\"> No driver DRM para placas gr\u00e1ficas Intel <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">foi adicionada<\/a><\/noindex> , suporte DSI VDSC para chips baseados na microarquitetura Ice Lake e Tiger Lake, implementa\u00e7\u00e3o de LMEM mmap (mem\u00f3ria local do dispositivo), aprimoramento do parsing VBT (Video BIOS Table), suporte HDCP 2.2 para chips Coffee Lake.\n<li class=\"l\"> Continua o trabalho de unifica\u00e7\u00e3o do c\u00f3digo do driver amdkfd (para GPUs discretas, como Fiji, Tonga, Polaris) com o driver amdgpu.\n<li class=\"l\"> O driver k10temp foi reestruturado, com suporte para exibir os par\u00e2metros de tens\u00e3o e corrente para CPU AMD Zen, al\u00e9m de informa\u00e7\u00f5es detalhadas dos sensores de temperatura utilizados em CPUs Zen e Zen 2.\n<li class=\"l\"> No driver nouveau <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">foi adicionada<\/a><\/noindex> , suporte para o modo de verifica\u00e7\u00e3o da carga de firmware para GPUs NVIDIA baseadas na microarquitetura Turing (GeForce RTX 2000), permitindo suporte para acelera\u00e7\u00e3o 3D para essas placas (requer carregamento de firmwares oficiais com assinatura digital da NVIDIA). Adicionado suporte para o motor gr\u00e1fico TU10x. Problemas com HD Audio foram resolvidos.\n<li class=\"l\"> Adicionado suporte para compress\u00e3o de dados durante a transmiss\u00e3o via DisplayPort MST (Multi-Stream Transport).\n<li class=\"l\"> Um novo driver foi adicionado '<noindex><a rel=\"nofollow\" href=\"https:\/\/lwn.net\/Articles\/796850\/\">ath11k<\/a><\/noindex>\u00bb para chips sem fio Qualcomm com suporte a 802.11ax.<br \/>\nO driver \u00e9 baseado na pilha mac80211 e suporta modos de ponto de acesso, esta\u00e7\u00e3o de trabalho e n\u00f3 de rede Mesh.<\/p>\n<li class=\"l\"> Acesso \u00e0s leituras dos sensores de temperatura usados em discos r\u00edgidos modernos e SSDs \u00e9 fornecido atrav\u00e9s do sysfs.\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=80fe7430c708\">Realizadas<\/a><\/noindex> Mudan\u00e7as significativas no sistema de som ALSA visando remover c\u00f3digo de <noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9F%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D0%B0_2038_%D0%B3%D0%BE%D0%B4%D0%B0\">o problema do ano 2038<\/a><\/noindex> (abandonando o uso do tipo time_t de 32 bits nas interfaces snd_pcm_mmap_status e snd_pcm_mmap_control). Suporte adicionado para novos codecs de \u00e1udio<br \/>\n Qualcomm WCD9340\/WCD9341, Realtek RT700, RT711, RT715, RT1308, Ingenic JZ4770.<\/p>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=9f68e3655aae6d49d6ba05dd263f99f33c2567af\">Adicionados<\/a><\/noindex> drivers para pain\u00e9is LCD Logic PD 28, Jimax8729d MIPI-DSI, igenic JZ4770, Sony acx424AKP, Leadtek LTK500HD1829, Xinpeng XPP055C272, AUO B116XAK01, GiantPlus GPM940B0,<br \/>\n    BOE NV140FHM-N49,<br \/>\n    Satoz SAT050AT40H12R2,<br \/>\n    Sharp LS020B1DD01D.<\/p>\n<li class=\"l\"> <noindex><a rel=\"nofollow\" href=\"https:\/\/git.kernel.org\/pub\/scm\/linux\/kernel\/git\/torvalds\/linux.git\/commit\/?id=1afa9c3b7c9bdcb562e2afe9f58cc99d0b071cdc\">Adicionada<\/a><\/noindex> suporte a plataformas ARM e Gen1 Amazon Echo (baseado em OMAP3630), Samsung Galaxy S III mini (GT-I8190), Allwinner Emlid Neutis, Libre Computer ALL-H3-IT, PineH64 Model B, Aibretech Amlogic GX PC,<br \/>\n Armada SolidRun Clearfog GTR, NXPGateworks GW59xx,<br \/>\nLeitor de eBook Tolino Shine 3,<br \/>\n Embedded Artists COM (i.MX7ULP), SolidRun Clearfog CX\/ITX e HoneyComb (LX2160A), Google Coral Edge TPU (i.MX8MQ),<br \/>\n Rockchip Radxa Dalang Carrier, Radxa Rock Pi N10, VMARC RK3399Pro SOM<br \/>\nST Ericsson HREF520, Inforce 6640, SC7180 IDP, Atmel\/Microchip AM9X60 (SoC ARM926, Kizboxmini), ST stm32mp15, AM3703\/AM3715\/DM3725, ST Ericsson ab8505, Unisoc SC9863A, Qualcomm SC7180. Suporte adicionado para o controlador PCIe usado no Raspberry Pi 4.<\/p>\n<\/ul>\n<\/ul>\n<p>Ao mesmo tempo, a Funda\u00e7\u00e3o Latino-Americana de Software Livre <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">formou<\/a><\/noindex><br \/>\numa variante <noindex><a rel=\"nofollow\" href=\"http:\/\/www.fsfla.org\/ikiwiki\/selibre\/linux-libre\/\">kernel totalmente livre 5.6<\/a><\/noindex> \u2014 <noindex><a rel=\"nofollow\" href=\"http:\/\/linux-libre.fsfla.org\/pub\/linux-libre\/releases\/5.6-gnu\/\">Linux-libre 5.6-gnu<\/a><\/noindex>, livre de elementos de firmware e drivers que cont\u00eam componentes ou trechos de c\u00f3digo n\u00e3o livres, cuja aplica\u00e7\u00e3o \u00e9 limitada pelo fabricante. Na nova vers\u00e3o, o carregamento de blobs nos drivers para AMD TEE, ATH11K e Mediatek SCP foi desativado. O c\u00f3digo de limpeza de blobs nos drivers e subsistemas AMD PSP, amdgpu e nouveau foi atualizado.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Fonte: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52632\">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.6. \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: \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f VPN-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 WireGuard, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 USB4, \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0438\u043c\u0451\u043d \u0434\u043b\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432 \u043f\u0435\u0440\u0435\u0433\u0440\u0443\u0437\u043a\u0438 TCP \u043f\u0440\u0438 \u043f\u043e\u043c\u043e\u0449\u0438 BPF, \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 MultiPath TCP, \u0438\u0437\u0431\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u044f\u0434\u0440\u0430 \u043e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b 2038 \u0433\u043e\u0434\u0430, \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c &#171;bootconfig&#187;, \u0424\u0421 ZoneFS. \u0412 \u043d\u043e\u0432\u0443\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u043f\u0440\u0438\u043d\u044f\u0442\u043e 13702 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0439 \u043e\u0442 1810 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432, [&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-76046","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - 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\/pt\/blog\/news\/reliz-yadra-linux-5-6\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\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.6 | 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\/pt\/blog\/news\/reliz-yadra-linux-5-6\" \/>\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-03-30T17:42:02+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-03-30T17:42:02+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\udd47Lan\u00e7amento do kernel Linux 5.6 | ProHoster","description":"Ap\u00f3s dois meses de desenvolvimento, Linus Torvalds apresentou o lan\u00e7amento do n\u00facleo Linux.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/reliz-yadra-linux-5-6","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","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.6 | 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\/pt\/blog\/news\/reliz-yadra-linux-5-6","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-03-30T17:42:02+00:00","article:modified_time":"2020-03-30T17:42:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"76046","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 17:44:27","updated":"2022-10-03 19:48:02","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/76046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=76046"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/76046\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=76046"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=76046"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=76046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}