Introdução

Este documento enfoca os seguintes tópicos:

  • Notas Relacionadas à Instalação

  • Amostras de Tecnologia

  • Problemas Conhecidos

  • Informações Gerais

  • Internacionalização

  • Notas do Kernel

Para as últimas informações sobre o Red Hat Enterprise Linux 4.92 omitidas nestas notas de lançamento, consulte a Base de Dados da Red Hat na seguinte URL:

http://kbase.redhat.com/faq/topten_105_0.shtm

Notas Relacionadas à Instalação

A próxima seção contém informações específicas sobre a instalação do Red Hat Enterprise Linux e do programa de instalação Anaconda.

Nota

Para poder atualizar um Red Hat Enterprise Linux já instalado, você tem que usar o Red Hat Network para atualizar aqueles pacotes que tenham sido modificados.

Você pode usar o Anaconda para executar uma nova instalação do Red Hat Enterprise Linux 4.92 ou para executar uma atualização da última versão atualizada do Red Hat Enterprise Linux 4 ao Red Hat Enterprise Linux 4.92.

Se você estiver copiando o conteúdo dos CD-ROMs do Red Hat Enterprise Linux 4.92 (em preparação para uma instalação através de rede, por exemplo), copie apenas os CD-ROMs para o sistema operacional. Não copie o CD-ROM Supplementary, ou qualquer um dos CD-ROMs de produtos, uma vez que isto sobrescreverá arquivos necessários para a operação adequada do Anaconda. Estes CD-ROMs devem ser instalados após a instalação do Red Hat Enterprise Linux.

Note that the minimum RAM required to install Red Hat Enterprise Linux 4.92 has been raised to 1GB; the recommended RAM is 2GB. If a machine has less than 1GB RAM, the installation process may hang.

Conteúdo e Registro das ISOs

O formato do kit de mídia no Red Hat Enterprise Linux 4.92 mudou em comparação à versões anteriores do Red Hat Enterprise Linux. O número de variantes e imagens ISO foram reduzidos para dois:

  • Red Hat Enterprise Linux 4.92 Server

  • Red Hat Enterprise Linux 4.92 Client

As árvores contém repositórios com uma série de opções que estendem a funcionalidade da distribuição base:

Red Hat Enterprise Linux 4.92 Server

  • Red Hat Enterprise Linux — sistema operacional polivalente padrão contendo virtualização com suporte para até 4 instâncias virtuais.

  • Red Hat Enterprise Linux Virtualization Platform (Plataforma de Virtualização) — sistema operacional de virtualização de central de dados incluindo clustering e armazenamento em cluster

Red Hat Enterprise Linux 4.92 Client

  • Red Hat Enterprise Linux Desktop — o produto Knowledge-worker Desktop

  • Opção Workstation — opção complementar para estações de trabalho engineering e development

  • Virtualization Option — add-on option for virtualization support

Com conteúdo opcional na mesma árvore ou imagem ISO, é importante evitar a incompatibilidade entre componentes oferecidos para a instalação e aqueles cobertos pela subscrição. Tal incompatibilidade resultaria em um aumento na exposição a riscos de erros e vulnerabilidade.

A fim de garantir que os componentes oferecidos estejam sincronizados com a subscrição, o Red Hat Enterprise Linux 4.92 requer um Número de Instalação (Installation Number) que será usado para configurar o instalador para oferecer o conjunto de pacotes adequado.

Se você pular o passo referente a entrada do Número de Instalação, isto resultará em uma instalação Server ou Desktop. Funcionalidades adicionais podem então ser manualmente adicionadas futuramente.

Os seguintes números padrão podem ser usados:

Server

  • Red Hat Enterprise Linux (Server ): 31cfdaf1358c25da

  • Red Hat Enterprise Linux (Server + Virtualization): 2515dd4e215225dd

  • Red Hat Enterprise Linux Virtualization Platform: 49af89414d147589

Client

  • Red Hat Enterprise Linux Desktop: 660266e267419c67

  • Red Hat Enterprise Linux Desktop / Virtualization Option: fed67649ff918c77

  • Red Hat Enterprise Linux com opção Desktop/Workstation: da3122afdb7edd23

  • Red Hat Enterprise Linux Desktop / Workstation / Virtualization Option: 7fcc43557e9bbc42

Subversion

No Red Hat Enterprise Linux 4.92, o sistema de controle de sub-versões Subversion contém links para o Berkeley DB 4.3. Se você estiver atualizando a partir do Red Hat Enterprise Linux 4 e quaisquer repositórios de sub-versões que tenham sido criados no sistema que usa o Berkeley DB back-end "BDB" (ao invés do "FSFS" back-end baseado puramente em sistemas de arquivos), cuidado especial deve ser tomado para ter certeza de que os repositórios possam ser acessados após a atualização. O seguinte processo deve ser executado no sistema Red Hat Enterprise Linux 4 antes da atualização para o Red Hat Enterprise Linux 4.92:

  1. Encerre quaisquer processos que estejam rodando e certifique-se de que nenhum processo pode acessar o repositório (por exemplo, httpd, svnserve, ou quaisquer usuários locais com acesso direto).

  2. Crie um backup do repositório; por exemplo:

    
    svnadmin dump caminho/para/o/repositório | gzip 
    > repository-backup.gz
                                    
  3. Execute o comando svnadmin recover no repositório:

    
    svnadmin recover caminho/para/o/repositório
                                    
  4. Remova quaisquer arquivos de log no repositório:

    
    svnadmin list-unused-dblogs caminho/para/o/repositório | xargs rm -vf
                                    
  5. Remova quaisquer arquivos de memória compartilhada restantes no repositório:

    
    rm -f caminho/para/o/repositório/db/__db.0*
                                    

Amostras de Tecnologia

Amostras de tecnologia são funcionalidades que não são suportadas atualmente, mas que mesmo assim são disponibilizadas em um lançamento. Estas funcionalidades podem ser testadas, entretanto o único tipo de suporte a ser oferecido para amostras de tecnologia são erratas para questões de segurança de alta prioridade.

Partes adicionais de uma amostra de tecnologia podem também ser disponibilizadas para teste por parte do público durante o seu desenvolvimento. A intenção da Red Hat é oferecer completo suporte à uma amostra de tecnologia em lançamentos subseqüentes.

Stateless Linux

Incluídos nesta versão beta do Red Hat Enterprise Linux 4.92 estão algumas partes capacitadoras da infra-estrutura do Stateless Linux. O Stateless Linux representa uma nova maneira de conceitualizar a forma como um sistema deve ser executado e gerenciado, criado para simplificar a disponibilização e o gerenciamento de grandes quantidades de sistemas fazendo com que estes possam ser facilmente substituídos. Isso é realizado principalmente através do estabelecimento de imagens de sistemas replicadas e gerenciadas através de uma grande quantidade de sistemas stateless rodando o sistema operacional em modo somente leitura.

Em seu estado atual de desenvolvimento, os recursos stateless representam apenas uma parte dos objetivos almejados. Assim sendo, esta função encontra-se em status de amostra de tecnologia.

A lista a seguir contém as funções iniciais incluídas no Red Hat Enterprise Linux 4.92 beta:

  • Execução de uma imagem stateless através do NFS

  • Execução de uma imagem stateless via retorno de laço através do NFS

  • Execução em iSCSI

Atualmente ainda não é possível rodar o Stateless Linux em um sistema de arquivos local com mudanças sincronizadas a partir de um servidor mestre, devido à necessidade de mudanças no kernel.

É altamente recomendável que aqueles interessados em testar código stateless leiam o HOWTO em http://fedoraproject.org/wiki/StatelessLinuxHOWTO e inscrevam-se na lista stateless-list@redhat.com.

GFS2

O GFS2 é um avanço evolucionário baseado no sistema de arquivos GFS. Apesar de ser totalmente operacional, o GFS2 ainda não é considerado pronto para ambientes de produção. O GFS, o qual tem sido usado em ambientes de produção por 5 anos, está sendo fornecido com este lançamento e é totalmente suportado para sistemas de arquivos não-cluster (exceto para root e boot), assim como em configurações de sistemas de arquivos em cluster em armazenamento compartilhado quando a infra-estrutura em cluster estiver presente. O GFS2 deve ter seu status promovido para totalmente suportado em uma atualização subseqüente do Red Hat Enterprise Linux 4.92. Há também um utilitário de conversão disponível, o gfs2_convert, o qual pode atualizar os metadados de um sistema de arquivos GFS, convertendo-os para um sistema de arquivos GFS2.

FS-Cache

O FS-Cache é um recurso local de caching para sistemas de arquivos remotos. O FS-Cache permite que usuários façam o caching de dados do NFS em um disco montado localmente. Para habilitar este recurso, instale o RPM cachefilesd e consulte as instruções no /usr/share/doc/cachefilesd-<version>/README.

Substitua <version> pela versão correspondente do pacote cachefilesd instalado.

Compiz

O Compiz é um gerenciador de janelas baseado no OpenGL. Além do típico gerenciamento de janelas, o compiz também serve como um gerenciador de composição. Nesta função, o compiz coordena e sincroniza a renovação de imagem da área de trabalho para proporcionar uma experiência mais agradável com menos oscilação e com uma maior impressão de solidez.

O compiz usa aceleração de hardware 3D para renderizar efeitos como janelas de miniaturas dinâmicas e sombras projetadas de janelas, bem como minimização animada de janelas e transições entre áreas de trabalho virtuais.

Devido à limitações na arquitetura de renderização atual, o compiz não pode trabalhar corretamente com a renderização direta de aplicativos em OpenGL ou de aplicativos que usem a extensão Xv. Tais aplicativos exibirão problemas de renderização (inofensivos), e por isso atualmente o compiz não é integralmente suportado.

Melhorias para ext3

No Red Hat Enterprise Linux 4.92, a capacidade do sistema de arquivos ext3 foi extendida de 8TB para um máximo de 16TB. Esta funcionalidade está sendo incluída em caráter de amostra de tecnologia, e deverá ser totalmente suportada em uma futura versão do Red Hat Enterprise Linux 4.92.

Problemas Conhecidos

  • Erro de atualização do bind: ao atualizar o bind, é possível que um erro do tipo no such file or directory ocorra. Isto é causado por um erro no seqüenciamento da instalação que será consertado antes do lançamento da versão final. Para driblar este problema, autentique-se como root e execute /usr/sbin/bind-chroot-admin --enable (se você instalou o pacote bind-chroot) ou /usr/sbin/bind-chroot-admin --sync (se você instalou o pacote caching-nameserver).

  • Erro de atualização do caching-nameserver: ao atualizar o caching-nameserver, é possível que uma mensagem do tipo invalid context apareça. Isto é devido a um problema de dependência do pacote selinux-policy, e que será consertado antes do lançamento da versão final. Para resolver este problema, autentique-se como root e execute /usr/sbin/bind-chroot-admin --sync.

  • Pacotes de módulos de kernel (kmods) só podem ser construídos com dependências kABI se forem construídos em um sistema no qual ambos o kernel-devel e o pacote do kernel correspondente estejam instalados. Sendo assim, atualmente ainda não é possível construir kmods com dependências kABI de kernels que não estejam instalados. Esta limitação será acomodada antes do lançamento da versão final.

  • Adaptadores de barramento do host usando o driver MegaRAID devem ser configurados para operar em modo de emulação de "Mass Storage", e não em modo de emulação "I2O". Para fazer isto, execute os seguintes passos:

    1. Inicie o BIOS Set Up Utility do MegaRAID.

    2. Entre no Adapter settings menu.

    3. Em Other Adapter Options, selecione Emulation e escolha Mass Storage.

    Se o adaptador estiver incorretamente configurado para emulação "I2O", o sistema tentará carregar o driver i2o. Isto falhará, e tornará o adaptador inoperante.

    Versões anteriores do Red Hat Enterprise Linux geralmente não tentam carregar o driver i2o antes do driver MegaRAID. Independentemente disto, o hardware deve sempre ser configurado para modo de emulação "Mass Storage" quando usado com o Linux.

  • ext3/jbd pânico do kernel: execução intensa de E/S para sistemas de arquivos onde o tamanho de bloco seja menor do que o tamanho de página podem fazer com que o jbd trave.

    Esta questão está sendo investigada e deverá ser resolvida para o lançamento da versão final.

  • Erro de instalação do convidado de virtualização: a instalação de um convidado paravirt em um sistema com uma conexão ethernet padrão em eth1 resulta em um erro No Driver Found. Para driblar este problema, configure a conexão ethernet padrão para eth0.

    Esta questão está sendo investigada e deverá ser resolvida para o lançamento da versão final.

  • Anaconda incorrectly selects vesa driver: when Red Hat Enterprise Linux 4.92 is installed in text-only mode on a system with a geforce 5200-based video card, the vesa driver will be selected. This is incorrect, and will cause the screen to go blank once you run system-config-display. This issue will be resolved in GA.

    To work around this, open xorg.conf and change the line Driver "vesa" to Driver "nv".

  • Virtualization paravirt guest installation failure: attempting to install a paravirt guest on a system where SELinux is enabled will fail. This issue is being investigated and will be resolved in GA.

    To work around this, turn off SELinux before installing a paravirt guest.

  • Virtualization guest boot bug: when you install a fully virtualized guest configured with vcpus=2, the fully virtualized guest may take an unreasonably long time to boot up. This issue is being investigated and will be resolved in GA.

    To work around this, disable the guest ACPI by using the kernel parameters acpi=strict or acpi=static for the virtualized kernel during grub boot.

Informações Gerais

Esta seção contém informações que não sejam específicas para nenhuma outra seção deste documento.

Virtualization

O Red Hat Enterprise Linux 4.92 inclui recursos de virtualização para i686 e x86-64, assim como a infra-estrutura de software necessária para gerenciar um ambiente virtualizado.

A implementação da virtualização no Red Hat Enterprise Linux 4.92 baseia-se no hypervisor, o que o que facilita a implementação da virtualização com sobrecarga computacional extremamente baixa através da paravirtualização. Com processadores Intel Virtualization Technology ou AMD-V, a virtualização no Red Hat Enterprise Linux 4.92 permite a execução de sistemas operacionais não modificados em modo de virtualização total.

A virtualização no Red Hat Enterprise Linux 4.92 também traz:

  • Libvirt, uma biblioteca que oferece uma API portátil e consistente para o gerenciamento de máquinas virtuais

  • Virtual Machine Manager (Gerenciador de Máquina Virtual), um utilitário gráfico para o monitoramento e gerenciamento de máquinas virtuais

  • Suporte à máquinas virtuais no instalador, incluindo a habilidade de executar o kickstart de máquinas virtuais.

O Red Hat Network também suporta máquinas virtuais.

Mudanças nos Pacotes do Servidor de Rede

O Red Hat Enterprise Linux 4.92 agora inclui a versão 2.2 do Servidor HTTP Apache. Esta versão traz uma série de melhoramentos sobre a versão 2.0, incluindo:

  • Melhores modules de cache (mod_cache, mod_disk_cache, e mod_mem_cache)

  • Uma nova estrutura para suporte de autenticação e autorização, no lugar dos módulos de segurança incluídos em versões anteriores

  • Suporte para balanço de carga do proxy (mod_proxy_balancer)

  • Suporte para o manuseio de grandes arquivos (maiores do que 2GB) em plataformas de 32 bits

As seguintes mudanças foram efetuadas à configuração padrão do httpd:

  • A configuração padrão não carrega mais os módulos mod_cern_meta e mod_asis modules

  • O módulo mod_ext_filter é agora carregado como parte da configuração padrão

Para atualizações a partir de versões anteriores do Red Hat Enterprise Linux, a configuração do httpd precisará ser atualizada para httpd 2.2. Para maiores informações, consulte http://httpd.apache.org/docs/2.2/upgrading.html.

Módulos de Terceiros

Quaisquer módulos de terceiros compilados para httpd 2.0 devem ser recompilados para httpd 2.2.

PHP

A versão 5.1 do PHP agora faz parte do Red Hat Enterprise Linux 4.92. Esta versão introduz uma série de mudanças à linguagem, assim como melhorias de desempenho significantes. É possível que alguns scripts tenham que ser adaptados para que possam ser usados com a nova versão. Por favor consulte o link abaixo para maiores informações sobre a migração do PHP 4.3 para o PHP 5.1:

http://www.php.net/manual/en/migration5.php

O executável /usr/bin/php é agora compilado usando a linha de comando SAPI CLI, ao invés do SAPI CGI. Use /usr/bin/php-cgi para SAPI CGI. O executável php-cgi também inclui suporte para FastCGI.

Os seguintes módulos de extensão foram adicionados:

  • A extensão mysqli, uma nova interface criada especialmente para o MySQL 4.1. Esta extensão está incluída no pacote php-mysql.

  • date, hash, Reflection, SPL e SimpleXML (incluídos no pacote php)

  • pdo e pdo_psqlite (no pacote php-pdo)

  • pdo_mysql (no pacote php-mysql)

  • pdo_pgsql (no pacote php-pgsql)

  • pdo_odbc (no pacote php-odbc)

  • soap (no pacote php-soap)

  • xmlreader e xmlwriter (no pacote php-xml)

  • dom (substituindo a extensão domxml; no pacote php-xml)

Os seguintes módulos de extensão não são mais incluídos:

  • dbx

  • dio

  • yp

  • overload

  • domxml

O Sistema PEAR

O sistema PEAR agora é incluído no pacote php-pear. Somente os seguintes componentes do PEAR estão incluídos no Red Hat Enterprise Linux 4.92:

  • Archive_Tar

  • Console_Getopt

  • XML_RPC

Construindo pacotes de módulos de kernel com rastreamento de dependências ABI

No Red Hat Enterprise Linux 4.92, é possível construir pacotes atualizados de módulos de kernel que dependam da ABI atual do kernel, e não de um número de versão específico do kernel. Isto facilita a construção de kernels que possam ser usados com uma variedade de kernels do Red Hat Enterprise Linux 4.92, ao invés de com apenas uma única versão. O website http://www.kerneldrivers.org/ contém mais informações sobre o processo de empacotamento, assim como vários exemplos.

Partições de troca e sistemas de arquivos não-root criptografados

O Red Hat Enterprise Linux 4.92 agora oferece suporte básico à partições de troca (swap) e sistemas de arquivos não-root criptografados. Para usar estas funcionalidades, adicione as entradas apropriadas em /etc/crypttab e referencie os dispositivos criados em /etc/fstab.

Abaixo encontra-se um exemplo de entrada em /etc/crypttab:

my_swap /dev/hdb1 /dev/urandom swap,cipher=aes-cbc-essiv:sha256
                        

Isto cria o bloco de dispositivo criptografado /dev/mapper/my_swap, o qual pode ser referenciado em /etc/fstab.

Abaixo encontra-se um exemplo de entrada em /etc/crypttab para um volume de sistemas de arquivos:

my_volume /dev/hda5 /etc/volume_key cipher=aes-cbc-essiv:sha256
                        

O arquivo /etc/volume_key contém uma chave criptográfica no formato texto sem formatação. Você também pode especificar none como o nome do arquivo da chave, o que fará com que o sistema requisite a chave criptográfica durante a inicialização.

É recomendável que o LUKS seja usado para configurar volumes de arquivos de sistemas. Para fazer isto, siga os seguintes passos:

  1. Crie o volume criptografado usando cryptsetup luksFormat

  2. Adicione a entrada necessária em /etc/crypttab

  3. Configure o volume manualmente usando cryptsetup luksOpen (ou reinicialize o sistema)

  4. Crie um sistema de arquivos no volume criptografado

  5. Adicione a entrada necessária em /etc/fstab

O mount e o umount

Os comandos mount e umount não suportam mais o NFS diretamente. Não há mais um cliente NFS incorporado. Um pacote independente, nfs-utils, o qual oferece suporte para /sbin/mount.nfs e /sbin/umount.nfs deve ser instalado para esta finalidade.

CUPS printer browsing

O CUPS printer browsing em uma sub-rede local pode ser configurado através da ferramenta gráfica system-config-printer, ou através da interface Web do CUPS, em http://localhost:631/.

Para usar difusões direcionadas para printer browsing entre sub-redes, abra o /etc/cups/cupsd.conf nos clientes e modifique BrowseAllow @LOCAL para BrowseAllow ALL.

Internacionalização

Esta seção contém informações sobre o suporte a idiomas no Red Hat Enterprise Linux 4.92.

Métodos de Entrada

Neste lançamento, o SCIM (Smart Common Input Method) substituiu o IIIMF como método de entrada para idiomas Asiáticos assim como para outros idiomas. O módulo de método de entrada padrão do GTK para o SCIM é o scim-bridge, e para o Qt é o scim-qtimm.

As teclas de atalho para ativar os diversos idiomas estão listadas abaixo:

  • Todos os idiomas: Ctrl-Espaço

  • Japonês: Zenkaku-Hankaku ou Alt-`

  • Coreano: Shift-Espaço

Se o SCIM estiver instalado, ele executa como opção padrão para todos os usuários.

Instalação de Idiomas

O SCIM faz parte da instalação padrão para a maioria das instalações Asiáticas. Alternativamente, você pode usar o gerenciador de pacotes (pirut) para instalar suporte adicional a idiomas usando o componente "Languages", ou executando este comando:


su -c 'yum groupinstall <language>-support'
                        

No comando acima, <language> pode ser Assamese, Bengali, Chinese, Gujarati, Hindi, Japanese, Kannada, Korean, Malayalam, Marathi, Oriya,Punjabi, Sinhala, Tamil, Thai, ou Telugu.

im-chooser

Uma nova ferramenta de configuração de usuários chamada im-chooser foi adicionada, e permite que você facilmente desabilite ou habilite o uso de métodos de entrada na sua área de trabalho. Se o SCIM estiver instalado mas você não quiser que ele rode na sua área de trabalho, você pode desabilitá-lo usando o im-chooser.

xinputrc

Durante a inicialização do X, xinput.sh agora lê ~/.xinputrc ou /etc/X11/xinit/xinputrc ao invés de efetuar buscas em arquivos de configuração em ~/.xinput.d/ ou /etc/xinit/xinput.d/.

Suporte para o Pango no Firefox

A versão do Firefox no Red Hat Enterprise Linux 4.92 é compilada com o Pango, o qual proporciona melhor suporte para certos alfabetos Índicos e também alguns alfabetos CJK (sigla em Inglês que significa Chinês, Japonês e Coreano).

Para desabilitar o uso do Pango, defina MOZ_DISABLE_PANGO=1 em seu ambiente antes de lançar o Firefox.

Fontes

Agora existe suporte para o efeito negrito artificial em fontes que não possuam o efeito negrito como padrão.

Novas fontes para o Chinês foram adicionadas: AR PL ShanHeiSun Uni (uming.ttf) e AR PL ZenKai Uni (ukai.ttf). A fonte padrão é a AR PL ShanHeiSun Uni, a qual contém mapa de bits incorporado. Se você preferir fontes delineadas, adicione a seguinte seção ao seu arquivo ~/.font.conf:

<fontconfig>
  <match target="font">
    <test name="family" compare="eq">
      <string>AR PL ShanHeiSun Uni</string>
    </test>
    <edit name="embeddedbitmap" mode="assign">
      <bool>false</bool>
    </edit>
  </match>
</fontconfig>                                
                        

Submenu IM do Gtk2

O submenu IM do menu de contexto do Gtk2 não aparece mais como padrão. Entretanto, você pode habilitá-lo através do seguinte comando:


gconftool-2 --type bool --set '/desktop/gnome/interface/show_input_method_menu' true
                        

Suporte para instalação em modo texto em CJK

Suporte à renderização de CJK (Chinês, Japonês, e Coreano) foi removido da instalação em modo texto do Anaconda. A instalação instalação em modo texto será aposentada no futuro, uma vez que os métodos de instalação por GUI, VNC ou kickstart são preferidos.

gtk2 stack

Os seguintes pacotes estão obsoletos e agendados para remoção no Red Hat Enterprise Linux:

  • gtk+

  • gdk-pixbuf

  • glib

Estes pacotes estão sendo removidos em favor da gtk2 stack, a qual oferece melhor funcionalidade, especialmente em termos de internacionalização e manuseio de fontes.

CJK input on console

If you need to display Chinese, Japanese, or Korean on the console, you need to setup a framebuffer. To do this, install bogl and bogl-bterm, and run bterm on the framebuffer. Note that the kernel framebuffer module depends on the graphics chipset in your machine.

Notas do Kernel

Esta seção aponta as diferenças entre as versões 2.6.9 (na qual o Red Hat Enterprise Linux 4 é baseado) e 2.6.18 (a qual o Red Hat Enterprise Linux 4.92 irá herdar) efetivas a partir do dia 12 de Julho de 2006. Funções adicionais nas quais estamos trabalhando atualmente (por exemplo, virtualização) e que irão aparecer mais tarde nas versões 2.6.18 ou 2.6.19 não são abordadas aqui. Ou seja, esta lista mostra somente o que já está incluído na árvore do Linus, e não o que ainda está em desenvolvimento. Conseqüentemente, esta listagem não engloba todas as novas funcionalidades do Red Hat Enterprise Linux 4.92, embora ofereça uma boa visão geral do que pode ser esperado. Além disso, note também que esta seção destaca apenas as mudanças mais significativas, e assim sendo, não é totalmente abrangente. A listagem não menciona uma série de melhorias ao suporte de hardware em baixo nível, nem informações sobre drivers de dispositivos.

Informações mais detalhadas podem ser obtidas no seguinte endereço:

http://kernelnewbies.org/LinuxChanges

Desempenho e Escalabilidade
  • Preempção do Big Kernel Lock (2.6.10)

  • Atualizações de preempção voluntária (2.6.13) (subconjunto do Red Hat Enterprise Linux 4)

  • Suporte para herança de prioridades (priority inheritance, ou PI) em espaço de usuário para futexes, útil para aplicativos rodando em tempo real (2.6.18)

  • Nova primitiva de bloqueio de mutex (2.6.16)

  • Timers de alta resolução (2.6.16)

    • Ao contrário da API de tempo limite de baixa resolução implementada no kernel/timer.c, hrtimers oferece maior resolução e precisão dependendo da configuração e recursos do sistema. Estes timers são atualmente usados para itimers, POSIX timers, nanosleep e precise in-kernel timing.

  • Escalonadores de E/S modulares e comutáveis dinamicamente (2.6.10)

    • Este recurso era dinâmico somente através de uma opção de inicialização no Red Hat Enterprise Linux 4, além de ser disponível somente no âmbito do sistema inteiro, ao invés de individualmente por fila.

  • Conversão para tabela de páginas de quatro níveis (2.6.11)

    • Possibilita aumento de 512GB para 128TB de memória em arquiteturas x86-64

  • Nova implementação de Canalização (2.6.11)

    • Melhoria de 30-90% na largura da banda de canalização

    • Buffer circular possibilita maior armazenamento temporário

  • "Big Kernel Semaphore": transforma o Big Kernel Lock em um semáforo

    • Reduz latência através da subdivisão de longos períodos de espera de bloqueio e através da inclusão da preempção voluntária

  • X86 "SMP alternatives"

  • Pacote kernel-headers

    • Substitui o pacote glibc-kernheaders

    • Oferece melhor compatibilidade com a nova funcionalidade headers_install do kernel 2.6.18

    • Notáveis mudanças relacionadas ao kernel header:

      • Arquivo de cabeçalho <linux/compiler.h> foi removido, uma vez que não é mais utilizado

      • Macros _syscallX() foram removidas; espaço de usuário deve usar syscall() da biblioteca do C em seu lugar

      • Arquivos de cabeçalho <asm/atomic.h> e <asm/bitops.h> foram removidos. O compilador C oferece as suas próprias funções atomic embutidas que são mais adequadas para programas de espaço de usuário.

      • Conteúdo previamente protegido com #ifdef __KERNEL__ é agora removido completamente com a ferramenta unifdef. Sendo assim, não é mais eficaz definir __KERNEL__ para visualizar partes que não deveriam ser visualizadas em espaço de usuário.

      • A macro PAGE_SIZE foi removida de algumas arquiteturas devido à variação em tamanhos de páginas (page sizes). Espaço de usuário deveria estar usando sysconf (_SC_PAGE_SIZE) ou getpagesize().

    • Vários arquivos de cabeçalho foram removidos para oferecer melhor integração com o espaço de usuário

Funções Adicionais Genéricas

  • kexec e kdump (2.6.13)

    • O netdump foi substituído pelo kexec e pelo kdump, os quais garantem uma inicialização mais rápida e a criação de kernel vmcores confiáveis para fins de diagnóstico. Para maiores informações e instruções de configuração, por favor consulte /usr/share/doc/kexec-tools-<version>/kexec-kdump-howto.txt (substitua <version> pela versão correspondente do pacote kexec-tools instalado).

  • inotify (2.6.13)

    • As seguintes syscalls fornecem a interface de usuário para este comando: sys_inotify_init, sys_inotify_add_watch, e sys_inotify_rm_watch.

  • Conector de Eventos de Processos (2.6.15)

    • Notifica eventos fork, exec, id change, e exit para espaço de usuário para todos os processos.

    • Estes eventos podem ser relevantes para aplicativos de contabilidade/auditoria (por exemplo, ELSA), monitoramento de atividades do sistema (por exemplo, top), segurança, e gerenciamento de recursos (por exemplo, CKRM). A semântica proporciona as partes integrantes de recursos como espaço de nomes por usuário, "arquivos como diretórios" e sistemas de arquivos versionados.

  • Subsistema RTC (RealTime Clock) genérico (2.6.17)

  • splice (2.6.17)

  • Suporte ao rastreamento de E/S da fila de bloco (blktrace): permite que usuários vejam qualquer tráfego que ocorra em uma fila de dispositivo de bloco. Ou seja, você pode obter estatísticas bem detalhadas a respeito do que os seus discos estão fazendo (2.6.17)

Sistema de Arquivos/LVM

  • ext3

    • Reserva de bloco ext3 (2.6.10) (no Red Hat Enterprise Linux 4)

    • Correções de redimensionamento online em ext3 (2.6.10) (no Red Hat Enterprise Linux 4)

    • Suporte para atributos extendidos em inodes grandes em ext3: economiza espaço e melhora o rendimento em alguns casos (2.6.11)

  • Suporte de caminhos múltiplos para mapeadores de dispositivos (Red Hat Enterprise Linux 4)

  • Suporte ACL para NFSv3 e NFSv4 (2.6.13)

  • NFS: suporta leituras em grande escala e escritas através da rede (2.6.16)

    • O cliente NFS Linux agora suporta transferências de até 1MB

  • FUSE (2.6.14)

    • Permite a implementação de um sistema totalmente operacional em um programa de espaço de usuário

  • Mudanças ao VFS

  • Atualização Big CIFS (2.6.16)

    • Traz várias melhorias de desempenho assim como suporte para Kerberos e CIFS ACL

  • autofs4: atualizado para proporcionar suporte de montagem direta para autofs de espaço de usuário (2.6.18)

  • Ativadores principais do cachefs (2.6.18)

Segurança

  • Randomização de espaços de endereços

    • Com a aplicação destas atualizações, a pilha de cada processo começará em um endereço aleatório, e o começo da área de memória usada pelo mmap() (que é onde, entre outras coisas, as bibliotecas compartilhadas são colocadas) também será atribuído aleatoriamente (2.6.12)

  • Implementação de segurança multinível para o SELinux (2.6.12)

  • Subsistema de auditoria

    • Suporte para filtragem baseada em processo-contexto (2.6.17)

    • Mais comparadores de filter rule (2.6.17)

  • TCP/UDP getpeersec: permite que aplicações com enfoque em segurança obtenham o contexto de segurança de um associação segura de IPSec sendo usada por um soquete TCP ou UDP (2.6.17)

Rede

  • Vários módulos de congestionamento de TCP foram adicionados (2.6.13)

  • IPv6: suporte a vários novos dados sockopt/auxiliares em API avançada (2.6.14)

  • IPv4/IPv6 - UFO (UDP Fragmentation Offload) Abordagem espalha-junta (2.6.15)

    • O UFO é um recurso onde a pilha do kernel do Linux passa a funcionalidade de fragmentação de IP de grandes datagramas UDP para o hardware. Isto reduz a sobrecarga da pilha em relação à fragmentação de grandes datagramas UDP para pacotes de tamanho MTU.

  • Inclusão do subsistema nf_conntrack (2.6.15)

    • O subsistema existente de rastreamento de conexões no netfilter só pode lidar com IPv4. Existem duas alternativas para incluir o suporte para rastreamento de conexões para IPv6; ou duplicar todo o código de rastreamento de conexões para IPv6, ou (a alternativa adotada por estas atualizações) criar uma camada genérica para lidar com ambos IPv4 and IPv6 e portanto precisar criar somente um módulo de ajuda de rastreamento de conexão de sub-protocolo (TCP, UDP, etc.). Na verdade, nf_conntrack é capaz de trabalhar com qualquer protocolo de três camadas.

  • IPv6

    • Seleção de endereço fonte em conformidade com RFC 3484 (2.6.15)

    • Inclusão de suporte para preferência de roteador (RFC4191) (2.6.17)

    • Inclusão de sondagem de alcance de roteador (RFC4191) (2.6.17)

  • Atualizações para redes sem fio

    • Suporte para criptografia e descarga de fragmentação de hardware

    • Suporte para QoS (WME), "wireless spy support"

    • PTK/GTK mesclados

    • Suporte para CCMP/TKIP e WE-19 HostAP

    • Driver BCM43xx wireless

    • Driver ZD1211 wireless

    • WE-20, versão 20 das extensões wireless (2.6.17)

    • Inclusão do software independente de hardware da camada MAC, "Soft MAC" (2.6.17)

    • Inclusão de autenticação do tipo LEAP

  • Inclusão de descarga de segmentação genérica (GSO) (2.6.18)

    • Pode melhorar o rendimento em alguns casos, embora precise ser habilitado através do ethtool

  • Inclusão de novos controles de acesso por pacote ao SELinux, substituindo os antigos controles de pacotes

  • Incluiu suporte secmark à funcionalidade essencial de rede, para permitir que subsistemas coloquem marcações de segurança em pacotes de rede (2.6.18)

  • DCCPv6 (2.6.16)

Itens de Suporte a Hardware Adicionados

Nota

Esta seção enumera apenas as funções mais genéricas.

  • Suporte para x86-64 APIC em cluster (2.6.10)

  • Suporte para Infiniband (no Red Hat Enterprise Linux 4) (2.6.11)

  • Hot plug

    • Inclusão de funções genéricas de adição/remoção de memória e funções de suporte para o hot plug de memória (2.6.15)

  • Melhorias de SATA/libata, suporte adicional a hardware (no Red Hat Enterprise Linux 4)

    • Um manipulador de erros libata totalmente reconstruído, devendo resultar em um subsistema SATA mais robusto podendo recuperar-se de uma gama mais variada de erros

    • Enfileiramento de Comandos Nativos (Native Command Queuing - NCQ). NCQ é a versão SATA do enfileiramento de comandos etiquetado - a habilidade de poder ter vários pedidos de E/S pendentes ao mesmo tempo para o mesmo drive (2.6.18).

    • Suporte para hot plug (2.6.18)

  • Suporte para EDAC (no Red Hat Enterprise Linux 4)

    • O objetivo do EDAC é detectar e relatar erros que venham a ocorrer no sistema computacional

  • Incluiu um novo driver para o mecanismo Intel(R) I/OAT DMA (2.6.18)

NUMA (Non-Uniform Memory Access)/Multi-core

  • Cpusets (2.6.12)

    • Cpusets agora oferecem um mecanismo para atribuir um grupo de CPUs e nós de memória a um grupo de tarefas. Cpusets restringem a alocação de CPU e memória de tarefas apenas aos recursos disponíveis através do atual cpuset de uma tarefa, um recurso essencial no gerenciamento do despacho dinâmico de tarefas em grandes sistemas.

  • Alocador de blocos NUMA-aware (2.6.14)

    • Cria blocos em múltiplos nós e os gerencia de uma forma que a localização das alocações é otimizada. Cada nó tem sua própria lista de blocos vazios, usados, e totalmente usados. Todas as alocações de objetos para um nó acontecem a partir de listas específicas de cada nó.

  • Migração de swap (2.6.16)

    • A migração swap permite a mudança da localização física de páginas entre nós em um sistema NUMA durante a execução do processo

  • Huge pages (2.6.16)

    • Inclusão de suporte à diretivas NUMA para huge pages: a função huge_zonelist() na camada de diretivas de memória oferece uma lista de zonas ordenadas por distâncias NUMA. A camada hugetlb procura nesta lista uma zona com páginas enormes atualmente disponíveis, mas que também encontra-se na lista de nós do cpuset atual.

    • Huge pages agora obedecem aos cpusets

  • Contadores VM por zona

    • Oferece estatísticas de VM por zona, necessárias para determinar o estado de memória de uma zona

  • Netfilter ip_tables: Alocação NUMA-aware (2.6.16).

  • Multi-core

    • Incluiu um novo domínio de agendador para representar multi-núcleos com caches compartilhadas entre eles. Isto possibilita decisões de escalonamento de CPU mais inteligentes, melhorando bastante o desempenho do sistema em alguns casos (2.6.17).

    • Diretiva de economia de energia para o escalonador de CPU: em CPUs multicore/smt, o consumo de energia pode ser melhorado deixando alguns pacotes inativos enquanto outros ficam com todo a carga, ao invés de distribuir tarefas para todos os CPUs.

( amd64 )



[1] Este material pode ser distribuído apenas sujeito aos termos e condições estipulados na Open Publication License, v 1.0, disponível em http://www.opencontent.org/openpub/.