Sistema Operacional Linux
Por: granhokain • 23/5/2017 • Trabalho acadêmico • 1.198 Palavras (5 Páginas) • 422 Visualizações
Resumo
Durante as últimas duas décadas, o Linux, um sistema operacional desenvolvido para suprir as necessidades de seu criados e mantido como um hobby, evoluiu para um dos maiores Sistemas Operacionais recentes. Neste artigo, será abordado seu funcionamento e características.
Linux normalmente é utilizado para referenciar sistemas operacionais que utilizam o kernel (o núcleo do sistema operacional, programa responsável pelo funcionamento do computador) Linux. O núcleo Linux foi desenvolvido pelo programador finlandês Linus Torvalds, inspirado no sistema Minix. O seu código fonte está disponível sob a licença GPL versão 2 para que qualquer pessoa o possa utilizar, estudar, modificar e distribuir livremente de acordo com os termos da licença.
1. Introdução
O Linux começou a ser desenvolvido em 1991 quando o estudante da Universidade de Helsinki, Linus Torvalds, comprou um computador pessoal com um processador Intel 80386 da IBM e obtendo uma cópia do Minix. Linus, insatisfeito com os recursos que o Minix oferecia para acessar o servidor Unix da instituição de ensino a partir de seu próprio computador, decidiu implementar seu próprio terminal. A ideia original de Torvalds era criar um projeto para uso próprio, com o desenvolvimento sendo feito a partir do Minix. Porém, o trabalho acabou avançando de tal forma a chegar o momento em que Torvalds tinha um kernel funcional pronto.
Ainda em 1991, Linus decidiu divulgar abertamente o projeto, publicando mensagens na Usenet (uma espécie de fórum de discussão de sistemas Unix) pedindo sugestões e até mesmo colaboradores para sua inciativa. Em 1992, Andrew S. Tanenbaum, criador do Minix, criticou o Linux através da Usenet e chegou a discutir com Linus através dos fóruns. No ponto de vista do professor Tanenbaum, o Linux era obsoleto, argumentando que o núcleo monilítico utilizado pelo Linus era arcaico. Linus, porém, não deixou se abalar com as críticas e continuou a desenvolver seu projeto. Com o passar dos anos, o Linux juntou mais e mais apoiadores, chegando a ser portador para outras plataformas.
O projeto, porém, não possuia nome. No começo Torvalds havia chamado seu projeto de Freax, que seria uma fusão de free (grátis) com freak (mosntruoso), e um x no final do nome para lembrar o Unix. Ari Lemmke, um programador, havia sugerido que Torvalds colocasse o projeto em uma rede para facilitar sua distribuição, e decidiu criar no servidor de FTP uma pasta chamada "linux", um trocadilho com o nome de Linus, já que ele não gostava no nome dado por Torvalds. O nome Linux acabou se popularizando e, por fim, foi como o projeto foi nomeado.
2. Usabilidade
As interações humano-computador (IHC) definem algumas "regras" que podem ser seguidas. É preciso levar em consideração que nem sempre é possível aplicar todas na mesma interface, e é preciso julgar quais devem ser selecionadas. São elas:
Uso de metáforas: os diálogos devem ser facilmente compreendidos pelo usuário;
Eficiência: o usuário não deve ser forçado a memorizar informações ao ir de um diálogo a outro;
Consistência: deve existir uma padronização para que o usuário não fique em dúvida se diferentes palavras, situações ou ações significam ou não a mesma coisa;
Retorno: o sistema deve informar ao usuário continuamente sobre o que está sendo feito e como a entrada do usuário está sendo interpretada;
Prevenção de erros: As mensagens de erros devem ser escritas em linguagem clara, evitando o uso de códigos obscuros.
Ajuda e documentação: Ainda que seja preferível um sistema de fácil utilização, é necessária uma ajuda adicional ou documentação como complemento.
3. Gerência de Memória
No Linux, processos que estão em execução têm prioridade na memória. Quando termina um processo e houver espaço na memória, ficam resíduos desse processo na memória para uma futura volta desse processo ser mais rápida. Caso a RAM esteja lotada com processos em execução, um swap de memória é efetuado.
Em uma máquina Linux de 32bits, cada processos dispõe de 3GB de espaço de endereçamento virtual para si, e 1GB para suas tabelas de página e outros dados do núcleo. Este 1GB não é visível quando o processo é executado no modo usuário, mas torna-se visível quando o processo faz uma chamada ao núcleo. O espaço de endereçamento é gerado quando o processo é criado e sobrescrito em uma chamada ao sistema exec.
O espaço de endereçamento virtual é dividido em áreas ou regiões organizadas em páginas contíguas e homogêneas. Cada área consiste de uma série de páginas consecutivas com proteção e propriedades
...