Introdução ao Sistema Operacional Linux

De MediaWiki do Campus São José
Ir para: navegação, pesquisa

O que é um sistema operacional ?

Um computador por si só é apenas um conjunto de circuitos lógicos complexos. Para ter alguma utilidade, essa máquina deve ser usada para executar programas. Programas são parecidos com receitas, contendo instruções que envolvem cálculos, cópia de dados entre componentes dentro (ex: memória, placa de video, discos) e fora do computador (ex: impressora, teclado, monitor, rede) e temporização. O principal programa executado em um computador é o sistema operacional. Esse programa especial tem por finalidade facilitar o uso do computador pelos usuários, além de aproveitar de forma eficiente seus recursos. Sem um sistema operacional um computador se torna completamente inútil.


Na área de Telecomunicações predominam sistemas operacionais da família Unix, o que inclui o Linux. Porém o conceito de sistema operacional inclui também o Windows, Mac OS X, FreeBSD, Android, iOS, e (muitos, muitos !) outros. Essa variedade tem razões históricas e tecnológicas, pois com o tempo criaram-se sistemas operacionais que exploraram novas ideias, atendiam novas necessidades e se adequavam a novos tipos de computadores.


Apesar de existirem muitos diferentes sistemas operacionais, eles compartilham algumas características. Esta animação se baseia no antigo sistema operacional Windows 95, porém revela atribuições elementares de um sistema operacional ...

A Saga do Windows


Não há um video tão direto e divertido como esse que se baseie no Linux. Mas alguns documentários podem contextualizar o Linux e contar um pouco de sua história, como estes videos:

Revolution OS: A História do Linux, GNU e software livre

The Code Linux - documentário sobre Linux


O que esses videos procuram revelar é que o sistema operacional é um programa que articula os recursos do computador (hardware) para que usuários possam executar programas (software). O sistema operacional por si só não tem utilidade, pois ele existe para viabilizar o uso de aplicativos, e esses sim são úteis para os usuários. Costuma-se dizer também que um sistema operacional pode ser visto como uma plataforma de software sobre a qual podem-se criar e utilizar programas.


Pji-So1.png
Um sistema computacional é formado por hardware e software, e é utilizado por pessoas ou mesmo outros sistemas


Alguns conceitos são comuns ao projeto de sistemas operacionais:

  • Interface com o usuário, tanto gráfica quanto via terminal com o interpretador de comandos (shell)
  • Processos (programas em execução), sendo usual hoje em dia que múltiplos processos possam coexistir em um sistema operacional
  • Gerenciamento dos recursos do computador (memória, discos, ...), de forma a tirar melhor proveito de suas capacidades
  • Arquivos e diretórios, para facilitar o armazenamento de dados e sua organização
  • Rede (comunicação com outros computadores), uma vez que hoje em dia é inconcebível que um dispositivo computacional não possa se comunicar com outros dispositivos


O sistema operacional Linux

O sistema operacional Linux nasceu de um projeto do então estudante Linus Torvalds, no início da década de 1990. Na verdade, Linux o nome do núcleo do sistema operacional, que é seu componente fundamental responsável por controlar o hardware e oferecer um conjunto de abstrações, mecanismos e facilidades para sua utilização por programadores e usuários. O desenvolvimento do Linux, desde sua origem, se dá pela colaboração de diversos programadores ao redor do mundo, tendo também a participação de empresas em tempos recentes. Todas as contribuições são abertas e gratuitas, independente se vindas de pessoas ou empresas.


O sistema operacional que se utiliza em computadores se compõe do núcleo Linux e um conjunto de programas e demais arquivos para formar um ambiente de trabalho. Essa combinação de diferentes programas, e as facilidades para instalá-los e mantê-los, se chama distribuição Linux. Existem muitas distribuições Linux, sendo algumas das mais conhecidas Ubuntu, Fedora, Debian, Linux Mint, ArchLinux e OpenSuSE. A escolha da distribuição a ser usada depende do gosto e conhecimento do usuário e, em certos casos, do uso específico que se pretende.


Pji1-Tux-2.png
Tux, o mascote Linux, caracterizado para as distribuições Mint, Ubuntu e Fedora.


Tradicionalmente, um sistema operacional Linux oferece uma interface de usuário baseada em linha de comando. Essa interface em modo texto está sempre disponível, sendo apresentada pelo menos durante a inicialização do sistema. Em seus primórdios havia apenas essa interface, porém uma interface gráfica também foi desenvolvida e incorporada às distribuições Linux. Essa interface gráfica é implementada por um conjunto de programas, diferente de sistemas Windows, em que ela faz parte do núcleo do sistema. Com isso, podem-se usar diferentes interfaces gráficas em um mesmo sistema operacional Linux.


Pji1-Linux-cli.png
A interface de linha de comando do Linux


Pji1-Linux-gui-1.png
A interface gráfica Unity do Ubuntu Linux


Pji1-Linux-gui-2.png
A interface gráfica Mate do Ubuntu Mate

Curiosidade: sistemas operacionais usados em equipamentos de rede

Equipamentos de rede como roteadores, pontos de acesso, modems adsl, switches ethernet e mesmo centrais telefônicas podem ser considerados computadores especializados. Todos possuem algum sistema operacional sobre o qual outros softwares são usados para implementar as funções de cada equipamento.

A carga do sistema operacional (boot)


A carga do sistema operacional corresponde ao início de sua execução. Quando o computador é ligado, o sistema operacional deve ser iniciado e isso depende do carregador de boot (boot loader), ou simplesmente boot. O boot é um programa que carrega para a memória RAM o núcleo do sistema operacional, chamado de kernel, e o executa. Lembre que o sistema operacional também é um programa ! Uma vez em execução, o sistema operacional toma conta do computador. A figura a seguir ilustra todo esse processo em um computador do tipo PC.

Pji-Boot1.gif
O processo de boot em um computador do tipo PC


Existem diferentes boot loaders, porém o mais utilizado atualmente é o Grub. Esse boot é bastante flexível, e também complexo ! Normalmente a instalação do sistema operacional cuida dos detalhes para a correta instalação do Grub, e existem ferramentas administrativas que possibilitam sua manutenção após instalado (ex: quando se deseja ter mais de um sistema operacional no computador). Mas quando ocorrem problemas mais complicados, inevitavelmente deve-se restaurá-lo manualmente. E aí valem os tutoriais descritos nesta seção.