1. Introdução
Linux é um sistema operacional no estilo UNIX, desenvolvido inicialmente por Linus Torvalds. Ele é distribuído sobre os termos da licença GPL (General Public License), o que o torna um software livre, cujo código fonte deve ser sempre disponibilizado.
O Linux em si é o núcleo do sistema operacional (kernel), responsável pela abstração do hardware para um nível passível de fácil utilização para os demais programas. Interfaces gráficas, editores de texto e vários outros aplicativos que normalmente são disponíveis juntamente com os sistemas operacionais (como o Windows) não são parte do kernel. No caso do Linux, sistemas desta natureza estão disponíveis sob a forma de distribuições.
1.1 Características do Linux
A seguir temos uma pequena lista de características do Linux:
#
Multitarefa: vários programas podem ser executados ao mesmo tempo.
#
Multiusuário: vários usuários podem utilizar o sistema simultaneamente.
#
Multi-plataforma: roda em vários tipos de CPUs.
#
Possui proteção de memória entre os processos, o que o torna muito estável.
#
Compatível com POSIX, System V e BSD.
#
Suporte a sistemas de arquivos do Windows (FAT32, NTFS,...) e de outros sitemas.
#
Sistema de arquivos UMSDOS, que permite a instalação do Linux em partições FAT e DOS.
#
Suporte a vários protocolos de rede, como TCP, IPv4, IPv6, IPX, SMB e outros.
1.2 Distribuições
As distribuições são coleções de aplicativos, na grande maioria provenientes do projeto GNU, que somados ao kernel oferecem sistemas que são utilizados desde grandes servidores até computadores pessoais. São exemplos de distribuições o Red Hat, SuSE, Debian e Slackware, além da distribuição nacional, o Conectiva Linux.
As distribuições vêm com programas de instalação próprios, e algumas ainda disponibilizam programas para auxiliar na configuração e manutenção dos sistemas depois de instalados. Geralmente as empresas vendem suas distribuições em CDs, e ao mesmo tempo colocam todos os arquivos disponíveis para download pela Internet, sem custo nenhum. A vantagem de se comprar uma distribuição é que muitas vezes elas vêm acompanhadas de manuais e suporte técnico, além, é claro, do caso em que o usuário não tem acesso à Internet.
Como as distribuições são uma grande coleção de aplicativos, existem algumas diferenças na forma em que o sistema é organizado. Apesar disso, as diferenças não chegam a torná-las incompatíveis, uma vez que todas utilizam o kernel do Linux, e aplicativos como o compilador GNU-GCC, a biblioteca glibc e o ambiente gráfico Xfree86, só para citar alguns exemplos, estão presentes em todas elas.
1.3 Aplicativos
A seguir uma lista de aplicativos existentes para o Linux:
#
GNU-GCC: compilador C/C++ e outras linguagens.
#
Bash: interpretador de comandos.
#
XFree86: implementação de um servidor X Window.
#
Gnome, KDE, Window Maker: ambientes gráficos (desktop environments).
#
Apache: servidor de páginas responsável por mais de 60% dos sites da Internet.
#
Sendmail: servidor de e-mail.
#
Nescape, Mozilla, Konqueror, Nautilus: navegadores.
#
Vim, GNU-Emacs: poderosos editores de texto para programadores.
#
StarOffice: ferramenta de escritório com editor de textos, planilha, apresentação
#
Scilab: ferramenta para cálculos baseados em matrizes, como o Matlab.
#
MySQL, Postgress: banco de dados.
#
Conjunto completo de ferramentas para edição com LaTEX.