Universidade Federal
Rural de Pernambuco
Departamento de Física e Matemática
Aspectos do Sistema
Operacional FreeBSD 5.0:
Gerência de Processos,
de memória, entrada e saída e sistema de arquivos
1.Introdução
O FreeBSD é um sistema
operacional completo para as plataformas de hardware conhecidas com x86
compatíveis (Intel, AMD e outras), COMPAQ/Digital Equipament Corporation Alpha
e para a arquitetura PC98. O FreeBSD é um sistema operacional Unix baseado no
U.C. Berkley 4.4 Release para a plataforma i386. Este sistema é suportado e
aperfeiçoado por grande número de desenvolvedores. As inovações abrangem desde
tecnologias fundamentais como sistemas de arquivos, gerenciamento de memória,
multiprocessamento simétrico, gerenciamento de discos, critpografia e firewall,
até novidades à nível de usuário, como atualização do formato padrão de
compressão de arquivos na coleção de pacotes binários do FreeBSD
.
Todo o código fonte do sistema esta disponível, com as menores restrições de
uso, distribuição e utilização para diversas finalidades, comerciais ou não.
Toda modificação ou aperfeiçoamento poderá ser submetido à análise de Berkley
para posterior incorporação ao código fonte. E essas podem ser mantidas como
propriedade intelectual do autor. Sob todos os aspectos o FreeBSD é
"livre" e pode ser utilizado sem restrições.
Um
dos grandes diferenciais do FreeBSD é o seu modelo de licença. Pois a licença
BSD preserva a propriedade intelectual , o que permite que os interesses
comerciais sejam protegidos sem deixar de dar suporte à comunidade de software
livre.
2.Histórico
O Unix foi inicialmente desenvolvido nos Laboratórios Bell da AT&T em 1969. Mas, por motivos políticos, não quis comercializar o software. O Unix foi então distribuído para diversas instituições educacionais através de um acordo de licenciamento. Na Universidade de Berkley, na Califórnia, a disciplina de Sistemas Operacionais apresentava o código fonte do Unix e projetos de estudantes implementavam melhoramentos e novas características ao código base.
Ao longo dos anos foram implementadas características
tais como: memória virtual, identificação de sockets, protocolos de comunicação
TCP/IP etc. E as licenças Unix puderam obter estes melhoramentos da Universidade
de Berkley. Esses melhoramentos ficaram conhecidos como "Berkeley Software
Distribution" (BSD).
O BSD desenvolvido em Berkley foi escolhido pela DARPA (Defence Advanced
Research Projects Agency) para receber a primeira implementação, em um sistema
operacional, da especificação do protocolo TCP/IP. A escolha aconteceu devido à
performance e à estabilidade apresentada. Além disso, o BSD de Berkley foi
escolhido para ser o "sistema computacional universal" da ARPANET
(Advanced Research Projects Agency Network), a sucessora da DARPA.
Em resumo, o BSD foi a peça vital da infra-estrutura que deu origem à Internet.
Duane Adams, o responsável na DARPA pela contratação de Berkley, garantiu que
uma das razões que mais pesaram na escolha do Unix foi a disponibilidade do seu
código fonte.
3.Gerenciamento de processos
O suporte à Multiprocessamentro Simétrico no FreeBSD
foi completamente reescrito à partir da estaca zero. Agora o FreeBSD não é mais
um sistema com suporte à Múltiplos Processadores, é um sistema com o nível de
kernel e nível de usuário construídos desde sua essência com a expectativa de
um ambiente SMP. O (nome do projeto) SMPng (SMP Next Generation) conta com
características inovadoras como o KSE (entidades de agendamento de tarefas no
kernel) e garante aproveitamento muito maior no processamento de instruções por
ciclo de clock em sistema com múltiplas CPU’s.
O SMPng consegue proveito comparável e não raramente superior ao
conseguido nos principais sistemas de multiprocessamento simétrico da
atualidade, isso levando em consideração ainda as diferenças de poder
computacional entre arquiteturas distintas de processadores. Em outras
palavras, garante maior poder computacional ao investimento de hardware SMP
existente, especialmente em arquiteturas i386.
4.Gerenciamento de memória
O projeto do FreeBSD está
voltado para atender a quatro requisitos básicos: estabilidade, facilidade de
uso, confiabilidade e desempenho. Mas merecem destaque também: a performance
superior, a compatibilidade com outros sistemas operacionais e o menor custo de
administração. O sistema conjugado de memória virtual e cache de sistema de
arquivos, ajustam continuamente a quantidade de memória utilizada por programas
e pelo cache de disco. Dessa forma, as aplicações têm um excelente
gerenciamento de memória e um acesso a sistemas de arquivos de alta
performance, dispensando o Administrador de Sistema da gerência e otimização do
dimensionamento de caches.
O subsistema de "jail", já conhecido por vários usuários avançados,
que permite o uso de múltiplas instâncias distintas do sistema operacional, em
ambientes sendo executados de forma lógica independentemente entre sí, em uma
mesma estação em comum, foi completamente aperfeiçoado. Agora o
"jail" permite, por exemplo, que os níveis de segurança do kernel
sejam definidos em uma base por-jail. Mais características de limitação
de recursos também foram adicionadas ao subsistema.
5.Gerenciamento de Entrada e Saída
Com o acréscimo do
número de equipamentos
(hardware) suportados pelo FreeBSD 5.0. É muito provável que a
maioria dos dispositivos USB agora funcionem no FreeBSD sem a necessidade de
compilações de diretivas especiais no kernel do sistema. Isso inclui
computadores móveis de assistência pessoal (PDAs), como o Handspring
Visor, que fazem uso do USB para sincronização de dados e
informações com outras unidades computacionais.
Mas o USB não é o
único padrão de interconexão de dispositivos que ganhou melhorias e melhor
suporte. Agora as tecnologias Firewire e
Bloetooth também são suportadas no
FreeBSD. O Firewire garante suporte à equipamentos, móveis ou não, sob um
barramento de altíssima velocidade. Existe uma série de equipamentos fabricados
por várias empresas que fazem uso desse barramento de alta velocidade, e agora
boa parte desses equipamentos são suportados no
FreeBSD; o Bluetooth é o padrão para a comunicação de periféricos
sem fio, originalmente criado pela IBM e que vem sendo largamento suportado por
outros fabricantes de hardware. Esses dois padrões abrem para o FreeBSD as
portas para a utilização de uma série de equipamentos de rede, de armazenamento
e multimídia, fabricados por diversas
empresas que adotam tais tecnologias.
O FreeBSD em computadores móveis (notebooks e
laptops) dá suporte ao barramento Cardbus incorporado na série 5 do sistema,
bem como as contínuas novidades implementadas no sistema ACPI,
garantindo que o FreeBSD responde de forma mais adequada às baixas de
performance da velocidade do processador ou quando o uso do sistema for
suspendido. Ainda para esses usuários, o NEWCARD vai oferecer melhor suporte à
equipamentos pcmcia, como já vimos anteriormente na seção sobre os
administradores de sistemas.
6.Gerenciamento do Sistema de Arquivos
O sistema de arquivos do FreeBSD 5.0 é outra novidade que merece atenção. Além do novo sistema agora operar em 64bits ele (UFS2) ainda oferece uma série de melhorias como a implementação de snapshots e a possibilidade de fazer a verificação de integridade do sistema de arquivos em segundo plano, o background fsck . Isso implica em um FreeBSD com tempo de inicialização mais rápido, mesmo sob ambiente de retomada de produção, e que oferece ainda a possibilidade de efetuar cópias de segurança (backup) consistentes do sistema de arquivos, sem a necessidade de garantia que o mesmo esteja marcado como íntegro, garantindo maior confiabilidade à manipulação dos dados.
O suporte à RAID por software
no FreeBSD 5.0 também foi aperfeiçoado. Ele conta agora com o framework RAIDFrame,
que foi alvo de uma grande reengenharia, especialmente provocada pelo GEOMETRY
DEVICE (GEOM), devfs e outras novidades; ele permite ao administrador
configurar/construir sistemas com ambientes de armazenamento de dados mais
confiáveis.
O TrustedBSD provavelmente é a
maior referência sobre novas tecnologias relacionadas à segurança. O projeto
inclui a adição de listas de controle de acesso, que permite a redefinição de
prioridades e extensibilidade das configurações de acesso à arquivos. Permite a
criação de políticas de acesso que vão além dos conceitos atuais de
owner/group/other . E as listas mandatórias de controle de acesso, que permite
a definição de inúmeras características de segurança e prioridade à nivel de
kernel. O GEOM representa uma nova forma de reconhecer, gerenciar
e utilizar unidades de armazenamento em disco. É uma grande nova tecnologia que
propicia benefícios desde aos frameworks RAID, mirroring e INTERLEAVE até o
mais tradicional uso de unidades de disco. O preceito que setores primários de
inicialização de disco devem reconhecer os disklabels dos diferentes tipos de
sistema de arquivo para que apenas depois o kernel possa gerenciar corretamente
cada dispositivo de controle
No ramo das inovações inerentes ao
sistema de arquivos, e mais especificamente à constante aproximação entre o
kernel e as unidades de armazenamento em disco, os administradores de sistemas
vão contar com o Device File System, o devfs; completamente integrado ao
FreeBSD, o devfs age em conjunto com o GEOM, é capaz de criar e destruir
devices por demanda, sem a intervenção do usuário quando os dispositivos já
forem suportados pelo kernel. Ainda provê extensões para manipulação de
dispositivos desconhecidos, que podem ser criados sob recomendações do GEOM. O
devfs permite acesso de leitura e escrita ao espaço de dispositivos reservado
ao kernel, e por isso pode realizar tarefas úteis como realizar uma nova
varredura por modificações de dispositivos; por exemplo, quando uma placa
pcmcia SCSI for adicionada e mesmo executar o /etc/pccard_ether quando um
dispositivo ethernet for adicionado.
7.Conclusão
O FreeBSD,
bem como os sistemas BSD
em geral são conhecidos pelo número de inovações que eles proporcionam ao mundo
da tecnologia. Um dos princípios do
desenvolvimento do FreeBSD é que novas soluções sejam estudadas à
fundo, em contraposição à adição de várias soluções "temporárias" que
posteriormente são abandonadas ou substituídas. É o que a filosofia BSD chama
de "fazer as coisas do jeito certo". São novos padrões,
novos conceitos de tecnologia agregados ao sistema operacional. Projetos como o
TrustedBSD, que definirão novos padrões para as definições de segurança de
sistemas de informação como se conhece hoje, ou o GEOM, que oferece
flexibilidade e possibilidades à manipulação de unidades de disco, e
implementações complexas como o SMPng e o KSE, que oferecem hoje um ambiente de
multiprocessamento simétrico e agendamento de threads cuja performance só é
comparável ao Solaris em sua arquitetura nativa; e que por isso cria grandes
expectativas sobre sua conclusão.
8.Referências Bibliográficas
Introdução ao FreeBSD 5.0 Release – www.freebsdbrasil.com.br
O que é o FreeBSD – www.samabsd.com.br