4 de outubro de 2012

Versão 3.6 do kernel do Linux



Linus Torvalds publicou no dia 02/10 a versão 3.6 do kernel do Linux, que se chama Terrified Chipmunk, após dez semanas de desenvolvimento. A nova versão oferece uma série de novos recursos para usuários finais, profissionais e administradores do sistema Linux.

Armazenamento
Uma nova interface, usada pelo programa resizepart, incluído na recém-lançada versão prévia do util-linux 2.22-rc2, permite que programas no espaço de usuário notifiquem o kernel quando o tamanho de uma partição que estejam usando muda, permitindo que o kernel seja informado de mudanças no tamanho de partições montadas ou outras durante a execução e agindo de acordo.
Mudanças no código do software RAID no subsistema MD deve melhorar o desempenho de conjuntos RAID em que um ou todos os dispositivos de armazenamento sejam SSDs. Os desenvolvedores do kernel agregaram o driver tcm_vhost, que está classificado como staging, mas não está vivendo no ramo de desenvolvimento staging do kernel. Ele permite que dispositivos SCSI em um sistema host para ser usado com um overhead mínimo por sistemas convidados usando KVM.

Drivers
Desenvolvedores do Linux agregaram uma série de acréscimos e correções no Linux 3.6 destinadas a melhorar o suporte aos laptops Apple MacBook que foram lançados em juhlo (como o MacBook Pro Retina). Porém, nem todo o necessário para os novos MacBooks foi acrescentado ao novo kernel. Além disso, em alguns modelos, essa versão ainda exibe problemas durante a inicialização ou no uso do hardware gráfico.

O driver gráfico Radeon agora ativa os modos mais rápidos de transferência do PCIe 2.0, quando eles são suportados pelo hardware. Os drivers de áudio agora suportam o processadores Haswell da Intel e as plataformas de hubs controladores (platform controller hubs, ou PCHs) Lynx Point, que a Intel planeja lançar no próximo ano. Um driver para o teclado com trackpoint USB do ThinkPad, da Lenovo, foi integrado ao subsistema input. O driver bnx2x, que lida com diversos chips Ethernet da Broadcom, agora suporta o padrão Energy-Efficient Ethernet (EEE) que é especificado no documento IEEE 802.3az. Usuários podem elr ou definir parâmetros EEE através do recém-lançado ethtool 3.5.

Gerenciamento de energia
O novo recurso de Suspend to Both dará ao Linux 3.6 capacidade de entrar em modo standby híbrido. O Mac OS X e o Windows já oferecem esse recurso há algum tempo; ele envolve fazer com que o computador armazene o conteúdo de sua memória tanto na RAM como no disco do sistema durante a hibernação. Um sistema que hiberna dessa maneira deve acordar em questão de poucos segundos, como se estivesse acordando de um Suspend-to-RAM (ACPI S3); contudo, se a energia for terminada durante essa hibernação, por exemplo caso a bateria acabe, o sistema vai restaurar o conteúdo da memória a partir do disco como faria após um Suspend-to-Disc (Hibernate). Em um breve teste realizado em um sistema relativamente antigo, com um disco de 250GB, o Suspend-to-Both levou em torno de 16 segundos para suspender atividades -- quatro vezes mais demorado do que com o Suspend-to-RAM e o mesmo tempo necessário para um Suspend-to-Disk.

Essa versão do kernel Linux também podem colocar os dispositivos PCIe no estado de suspensão profunda "D3cold"; essa tecnologia é atualmente suportada por alguns computadores modernos e pode desligar completamente dispositivos PCIe individuais.

Redes
O recurso TCP Small Queues (TSQ) faz com que o Linux 3.6 use de pequenos buffers de até 128KB por saída de rede como padrão. Como diversas outras mudanças recentes no kernel, essa medida foi tomada para evitar o bufferbloat -- um termo usado para problemas como grandes latências de rede e conexões interrompidas causadas por excesso de buffering durante transferências de dados. De acordo com resultados de teste fornecidos pelos desenvolvedores responsáveis, os buffers menores por conexão não afetam a transmissão de dados; se necessário, administradores podem usar o arquivo /proc/sys/net/ipv4/tcp_limit_output_bytes para ajustar o valor do buffer durante a execução do sistema.

O kernel agora inclui suporte para cliente do TCP Fast Open (TFO), o suporte para servidores deve seguir com o Linux 3.7. O TFO é uma extensão experimental TCP que ainda não foi aprovada pela Internet Assigned Numbers Authority (IANA). Ela foi desenvolvida para reduzir o overhead quando estabelecendo uma conexão, que deve acelerar consideravelmente conexões HTTP.

Sistemas de arquivos
O sistema de arquivo Btrfs, ainda em estágio experimental, agora suporta cotas para subvolumes (áreas separadas dentro de um sistema de arquivos), definindo quanto espaço eles podem ocupar. Outro novo recurso no Btrfs é o "enviar/receber" (send/receive). Isso permite que programas no userspace determinem a diferença entre dois instantâneos, salvar essas diferenças em um arquivo e restaurar esses backups quando necessário. Isso é particularmente útil para backups incrementais e atomizados. Uma explicação mais detalhada dessa função, que também está disponível no ZFS, podem ser encontradas em um artigo na LWN.net.

Uma das novas funções implementaradas no Linux 3.6 é baseada em uma ideia que data de 1996 -- o kernel pode ser agora configurado para não seguir hardlinks e softlinks em diretórios com um bit de configuração "sticky" (como o /tmp/), quando esses links apontam para algum ponto superior na árvore de diretórios. Conforme a LWN.net explica neste artigo, esse recurso, que pode ser ativado através do sysctl, põe um fim a um truque comum usado por invasores para escalar seus privilégios ao usar serviços operando em background como root.

Virtualização
O KVM agora inclui diversas modificações que reduzem a carga de trabalho para manipulação de interrupções e portanto melhorando seu desempenho. Outro acréscimo ao kernel é o IOMMU Groups, que aprimora o isolamento de dispositivos PCI e PCIe usando tecnologias de virtualização de entrada e saída (I/O) como o AMD-Vi e VT-d da Intel. O recurso IOMMU Groups também é a base para o framework do driver de userspace VFIO (Virtual Function I/O); pensado principalmente para o KVM, esse recurso é usado para transpor dispositivos PCI e PCIe para máquinas convidadas, permitindo que acessem esses dispositivos com baixa latência e altos níveis de transmissão de dados, sem qualquer risco para o hospedeiro. Detalhes sobre o VFIO estão disponíveis na documentação e em um artigo da LWN.net. Extensões para oferecer VFIO através do QEMU ainda estão em desenvolvimento.

Sumário
O kernel tem avançado consideravelmente em todos os campos de tecnologia. O Btrfs já deu um grande passo à frente, e o suporte à suspensão híbrida é um recursos há muito aguardado. Além disso, vimos uma alteração que encerrou um popular vetor de ataque à segurança do Linux.

No total o kernel já soma 15.868.036 linhas de código, num total de 39.733 arquivos. Seu código-fonte pode ser baixado diretamente do site kernel.org e em breve estará disponível em inúmeros servidores que espelham o site. A autenticidade do arquivo baixado pode ser verificado com um arquivo de assinatura que também está disponível.

Fonte: linuxmagazine.

Nenhum comentário: