280 likes | 380 Views
Linux Caixa Mágica. Um Conceito de Software Livre. Software Livre. A essência de um movimento Algumas notas Históricas O Linux As Suas Características. Definição.
E N D
LinuxCaixa Mágica Um Conceito de Software Livre
Software Livre • A essência de um movimento • Algumas notas Históricas • O Linux • As Suas Características
Definição • O movimento “Open Source” promete democratizar o mundo da informática, libertando os utilizadores da opressão virtual, causada pelos grandes produtores de software que hoje ditam integralmente as regras neste mundo.
Definição • O conceito de “Open Source” ou “FreeWare” está estreitamente ligado a uma licença de utilização chamada GPL (General Public Licence). • A GPL é um sistema livre de direitos • Garante a qualquer pessoa o direito e a liberdade de utilizar, modificar, melhorar, corrigir erros, e até mesmo, o direito a distribuir e a comercializar qualquer produto licenciado por esta licença. • www.opensource.org
Restrições GPL • Sempre que alguém fornece um produto licenciado pela GPL a uma terceira pessoa, quer seja de forma gratuita ou comercial, a terceira pessoa deve ser sempre informada acerca das condições da GPL. • Deve poder aceder a todo o código fonte desse mesmo produto. • a GPL não pode insistir em que outros programas distribuídos conjuntamente também sejam Open Source. • Permite modificações e trabalhos derivados e estes têm que ser distribuídos nos mesmos termos da licença original.
Historial • Tudo começou no início dos anos 80 com o aparecimento da famosa FSF, ou “Free Software Foundation”. • Esta associação de pessoas dedicava-se à produção de software livre, assim como à posterior protecção legal deste software e dos seus autores. • Os fundadores da FSF (Free Software Foundation) tinham um sonho: criar um novo ambiente de trabalho, integralmente construído sobre “FreeWare”.
HistorialAmbiente de Trabalho FreeWare • Por esse motivo, entre os primeiros projectos lançados pela FSF, aparecem principalmente ferramentas de desenvolvimento de software. Exemplos: compiladores, debuggers, etc. • Entre estas ferramentas destacam-se os compiladores de C e C++, “gcc” e “g++”, que hoje são consideradas uma referência no seu campo. • Estas ferramentas serviram depois como base para o desenvolvimento de muitos outros produtos de software, quer seja Open Source ou Comercial.
A Internet • As ideias de liberdade de software e democracia propagados pela FSF rapidamente se disseminaram por todo o mundo, especialmente dentro da comunidade científica e universitária. • Durante os anos 80, quando toda a comunidade científica já se encontrava ligada através da Internet, o movimento “Open Source” recebeu um grande impulso, pois a Internet veio facilitar a troca de software e ideias entre pessoas afastadas por enormes distâncias. • As equipas de desenvolvimento de projectos de Software “Open Source” podiam estar dispersas por diversos continentes.
Historial • Tudo começou em 1985 com o aparecimento da famosa FSF, ou “Free Software Foundation”. • Esta associação de pessoas dedica-se à produção de software livre, assim como à posterior protecção legal deste software e dos seus autores. • Os fundadores da FSF (Free Software Foundation) tinham um sonho: criar um novo ambiente de trabalho, integralmente construído sobre “FreeWare”.
Historial - Internet • A própria Internet beneficiou bastante com este movimento, pois grande parte do software que permite o seu funcionamento, foi desenvolvido pela comunidade “Open Source”. • Um bom exemplo é o programa “sendmail” que está encarregue de encaminhar as mensagens de email por dentro da internet, garantindo que chegam ao seu destino.
Surgem os Browsers • Os primeiros servidores e Browsers de WEB, como o servidor NCSA e o browser Mosaic, foram também eles, projectos “Open Source”. Só mais tarde vieram as companhias de software comercial corromper o espírito inicial. • O uso da Internet banalizou-se e a quantidade de pessoas que dedicam os seus tempos livres a desenvolver e a melhorar software “open-source”, cresceu exponencialmente. • A quantidade de novos projectos multiplicou-se e a qualidade dos mesmos, melhorou de forma apreciável.
Historial – Aumento da qualidade • Actualmente, muitos dos projectos “Open Source” já atingiram níveis de qualidade muito superiores aos produtos comerciais que com eles concorrem. • Este facto deve-se à enorme dimensão das equipas de desenvolvimento. • Em muitos casos conseguem congregar em vários milhares de programadores em todo o mundo, o que seria impossível de suportar por qualquer empresa privada de software.
Resolução de Problemas • O modelo de distribuição deste software, em que o código fonte está sempre acessível, faz com que os problemas sejam resolvidos muito mais rapidamente. • Por exemplo, qualquer utilizador com capacidades razoáveis de programação, que se depare com um problema ou “bug”, num produto “Open Source”. • É muitas vezes capaz de resolver o problema por ele próprio e de seguida enviar o “patch” (correcção) para os responsáveis desse produto. • Assim, na semana seguinte, a próxima versão que sair, já tem mais um problema resolvido.
Linux • O culminar de todo o movimento “Open Source” chama-se “Linux”. • Tudo começou com um estudante de ciência dos computadores Finlandês em 1991, chamado Linus Torvalds: Não estava satisfeito com os sistemas operativos para PC que existiam. • Resolveu começar a escrever o seu próprio kernel (núcleo) de sistema operativo, nas horas vagas. • Baseou-se no kernel do Minix, pequeno sistema UNIX de Andy Tannembaun • Até então, esta tarefa era considerada muito difícil de elaborar. • Afirmava-se que só uma larga equipa de programadores experientes teria capacidade para a levar a bom termo.
Linux • Seis meses após ter começado a trabalhar, já existia a primeira versão de Linux, com capacidade para realizar algumas tarefas úteis. • Na verdade, quando Linus Torvalds resolveu fazer “post” da primeira versão do Linux (ainda uma versão pré-alfa) para a Internet, o sistema praticamente ainda só era capaz de correr o famoso compilador da linguagem C “gcc”, desenvolvido pelos colaboradores da FSF.
Linux e a Adesão • Foi precisamente esse compilador que veio permitir a todas as pessoas que fizeram download da primeira versão do Linux, começarem de imediato a desenvolver novas aplicações neste novo sistema operativo. • Também adaptaram ao Linux muitas outras aplicações, que tinham sido feitas noutros sistemas operativos (na altura já existiam dezenas de programas “Open Source”).
Linux • O aspecto mais importante do Linux está no facto de ter sido, desde o início, licenciado sob a licença GPL. • Isto possibilitou que muitas pessoas pudessem começar a modificar o sistema e a adicionar cada vez mais características novas, bem como novos drivers para cada vez mais hardware.
Linux • Nos primeiros tempos, sempre que alguém tinha necessidade de uma característica nova, ou possuía alguma placa de hardware que ainda não era suportada pelo sistema, só tinha uma solução: • Entregava-se ao trabalho e implementava tudo por si próprio. • Se alguém encontrasse um erro, ou falha no sistema, apenas tinha que corrigir o problema e enviar o “patch” para as mailing-lists do “Linux”. • A próxima versão (que saía no dia seguinte) já iria incluir o seu “patch” e o seu nome aparecia na lista de menções honrosas dos contribuidores.
Linux • Actualmente ainda é possível a qualquer pessoa (programador) contribuir para o kernel do Linux ou para qualquer um dos muitos outros programas que fazem parte de qualquer distribuição de Linux. • O Kernel do sistema cresceu tanto e foram corrigidos tantos erros, que hoje é considerado como um dos sistemas operativos mais estáveis e fiáveis que alguma vez existiu. • A probabilidade de encontrar erros num kernel de “produção” é quase nula.
Linux-Características • Sistema Operativo (V 0.01 em 1991) • É um programa que serve como inteface mais amigável para utilizar o computador. • Fiabilidade • Segurança • Permite matar(kill) processos evitando a necessidade de reiniciar a máquina. • Protecção a nível de ficheiros de uma forma muito simples • Mais difícil de se propagarem virus • Disponibilidade • Qualquer problema que surja pode ser resolvido, não só pelo código fonte diponível como também pela comunidade Linux na Internet • Multitarefa • Executa mais que um “processo” ao mesmo tempo • MultiUtilizador • Podem estar vários utilizadores ligados ao sistema(Maquina) em simultâneo. • MultiProcessador • Podem ser utilizados vários Processadores(CPUs) ao mesmo tempo • Flexibilidade • MultiArquitectura • Pode ser utilizado em várias plataformas: Intel e compatíveis, Motorola, Power PC, Digital Alpha, Spark, Mips,PDAs • Económico • Grátis • Código Aberto (Open Source)
Desvantagens • Alguns Programas do Windows não podem ser executados em Linux • Como a maioria das aplicações a nível de utilizador de PCs estão desenvolvidas em Windows, algum hardware antigo e mesmo algum mais recente pode não ter compatibilidade com Linux
Arquitectura do Linux • Núcleo- Kernel • Interface com o computador • Shell • Interface entre aplicações e Núcleo • Aplicações • Programas editores de texto, video, som, etc
Kernel – Núcleo do Sistema • Parte do sistema operativo, • Gere a memória do sistema, • Gere discos rígidos e ficheiros, • Executa comunicações com outros computadores utilizando os protocolos de rede, • verifica que cada utilizador apenas acede aos dispositivos, ficheiros e outros recursos a que lhe foi dado acesso pelo administrador do sistema. • Quando existem várias tarefas para executar em simultâneo (possivelmente de utilizadores diferentes), é também o kernel que garante que o tempo disponível ao CPU seja devidamente repartido por todas essas tarefas e utilizadores. • Ou seja: o kernel é uma parte do sistema operativo que está escondida por dentro do sistema e faz com que tudo funcione, mas um utilizador normal nunca deveria chegar a aperceber-se da sua existência. • Na verdade, é exactamente isto que costuma acontecer no Linux.
Shell • Interpreta e executa os comandos • Possibilidade de utilizar várias: • sh – A primeira de todas. Utilizada no UNIX • csh – Shell com sintaxe da linguagem C • tcsh – csh melhorada e com mais funcionalidades • bash – a mais utilizada em Linux, incluido o Caixa Mágica • bsh ou ash – primeira versão de bash • ksh – Korn shell, contemporânea da bsh, e também usada no UNIX
Ambiente Gráfico • XFree86 • Surgiu em 1986 • Derivou do X Windows(UNIX) sendo a sua versão Open Source • Vários Ambientes gráficos (Window Managers) • KDE • GNOME • Fvwm2 • ...
Sistemas GNU/Linux • Em 1984, Richard Stallman funda a GNU • GNU significa (GNU Not Unix) • Eram um conjunto de aplicações Open Source • Linux surge por Linus Benedict Torvalds • Criação apenas do núcleo do sistema (Kernel) • Conclusão • A combinação das Aplicações GNU com Linux é que originaram o que agora se chama Linux • No entanto o verdadeiro nome deveria ser GNU/Linux
Acesso ao Linux • Identificação do utilizador segundo 3 formas: • Login do Utilizador – designação que o utilizador tem no sistema. Em conjunto com a password permite o acesso • Nome do utilizador – Nome real do Utilizador • ID do utilizador – (User ID) é um numero atribuido ao utilizador no momento da criação da conta • Tal como em outros sistemas para se trabalhar no linux tem de se inserir o login e a palavra-chave ou senha (Password)
Tipo de utilizadores • O superutilizador (superuser) • Este será o administrador do sistema. O seu login de utilizador é root. O seu ID normalmente é zero ID=0 • Ele tem privilégios especiais sobre o sistema. É ele que cria os restantes utilizadores • Também será ele que deverá definir os privilégios de acesso que cada um poderá ter • O utilizador normal • Não tem privilégios especiais. • Em termos de segurança isso limita as hipóteses de cometer erros por forma a danificar o sistema ou a propagar virus Obs.: Mesmo o administrador deve evitar utilizar a conta de root para acessos normais