curso de introdução ao software livre - aula de 23/09/2009

18
Introdução ao Software Livre Prof. Antônio F. C. Arapiraca aarapiraca@iff.edu.br [email protected] Monitor Magno Phelippe M. Simões [email protected]

Upload: antonio-arapiraca

Post on 27-May-2015

970 views

Category:

Education


4 download

DESCRIPTION

Curso de extensão em Introdução ao Software Livre ministrado no segundo semestre de 2009 no Instituto Federal Fluminense em Cabo Frio/RJ

TRANSCRIPT

Page 1: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Introdução ao Software Livre

Prof. Antônio F. C. [email protected]

[email protected]

Monitor Magno Phelippe M. Simõ[email protected]

Page 2: Curso de Introdução ao Software Livre - Aula de 23/09/2009
Page 3: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Formação

Licenciatura em Física – 2003 (UFBa);

Bacharelado em Física – 2005 (UFBa);

Mestrado Em Física – 2006 (UFBa);

Doutorado em Física – Início em 2006 (UFMG);

Linux System Administrator – 2009 (4 Linux/SP).

Experiência Profissional/Usuário

Atuando como usuário de sistemas like UNIX desde 2002;

Atuação em Computação Científica desde 2002;

Mestrado em Física Atômica e Molecular usando apenas free software;

Migração total para uso pessoal desde 2005;

Implementação de sub-rotinas científicas em programas rodando em plataforma livre;

Experiência de gerenciamento de estações de trabalho GNU/Linux e MAC OSx.

Page 4: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Habilidades a Desenvolver

Ao final deste curso o aluno deverá ser capaz de operar um computador pessoal usando um sistema operacional e uma suíte de aplicativos desenvolvida pela comunidade GNU/Linux;

Este curso não visa dar uma formação técnica ao aluno;

Capacitar o mesmo para iniciar uma migração do uso de software proprietário para o uso de software livre.

Page 5: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Conteúdo Programático: 24h Filosofia e conceitos: Código Proprietário, Código Aberto X Software Livre;

História do GNU/Linux;

Tipos de Licença em Software Livre;

Distribuições GNU/Linux;

Instalação, configuração e comandos básicos;

Interfaces gráficas;

Estrutura do GNU/Linux;

Vantagens da Migração para software livre;

Migrando: Programas básicos (calculadora, dicionário, impressão de arquivos, etc.);

Programas gráficos;

Programas de acesso à internet (navegador, e-mail, ftp, msn, skype);

Pacote Office (edição de texto, planilha eletrônica, apresentações multimídia);

Agenda e controle de tarefas;

Virtualização de sistemas operacionais.

Page 6: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Refletindo um Pouco

Page 7: Curso de Introdução ao Software Livre - Aula de 23/09/2009
Page 8: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Software?

Um software é um programa de computador escrito em uma linguagem de programação por uma equipe de programadores e analistas de sistemas;

Ele deve atender aos requisitos dos usuários;

Deve ter uma inteface amigável;

Dispor de manuais;

Deve realizar um conjunto de tarefas de forma a auxiliar e automatizar as tarefas a serem realizadas pelo usuário.

Software Livre? Livre significa poder fazer coisas;

O conceito de software livre foi desenvolvido, inicialmente, por Richard Stallman no início dos anos 80. Tudo começou quando Richard trabalhava noLaboratório de Inteligência Artificial do MIT e a impressora que ele utilizava quebrou, sendo necessário adquirir uma nova impressora;

Para continuar a realizar seu trabalho precisava conhecer o funcionamento desta nova impressora, no entanto suas solicitações ao fabricante para que este liberasse os códigos fontes do equipamento foram negadas

A partir deste momento Stallman passou a pensar em uma forma de tornar acessíveis os programas e códigos, surgindo a idéia de software livre.

Page 9: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Já o software proprietário é regido por uma série de normas que visam limitar o seu uso ao número de licenças adquiridas;

Fornece ao usuário apenas o direito de uso do programa em uma plataforma específica (Sistema Operacional) com um programa executável específico;

O usuário não pode ter acesso ao código fonte;

Não pode distribuir cópias do programa;

Nem emprestar ele pode!!!!!!!

Tudo isso se aplica aos manuais de uso dos programas;

Tudo deve ser pago $$$$$$$$$$$$$$$$.

Software Proprietário?

Sistema operacional é um software básico que permite aos programas executarem suas tarefas;

É o sistema operacional que fornece acesso ao hardware do computador (como a placa de som, placa de rede), a internet, aos arquivos que estão no nosso disco rígido, cdrom etc;

“Um Sistema Operacional nunca faz nada sozinho. Ele está apenas esperando pelos programas pedirem por certos recursos ou pedirem por um certo arquivo no disco ou pedirem para serem conectados à internet.” Linus Torvalds

Sistema Operacional?

Page 10: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Unix

UNIX é um sistema operacional portável, multitarefa, multiusuário, disponível para diversas plataformas de hardware originalmente criado por um grupo de programadores da AT&T da Bell Labs, General Electric (GE), que incluem Ken Thompson, Dennis Ritchie, Douglas McIlroye Peter Weiner;

Foi criado no final da década de 1960 e início da de 1970, em uma época que os computadores eram grandes, caros e de difícil acesso a pessoas comuns;

Na época, vários pesquisadores necessitavam de recursos desses computadores para desenvolverem seus trabalhos, mas os sistemas da época não satisfaziam às necessidades desses profissionais.

Era, então, necessário que se criasse um sistema operacional multitarefa, multiusuário pois permite que seja possível executar várias tarefas ao mesmo tempo como vários usuários;

As raízes do Unix datam dos meados dos anos 60, quando a AT&T, Honeywell, GE e o MIT embarcaram em um massivo projeto para desenvolvimento de um utilitário de informação, chamado Multics (Multiplexed Information and Computing Service);

Page 11: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Unix

Como a AT&T não estava no mercado de computadores, o Unix foi largamente usado pela própria AT&T e por várias Universidades que também tinham o direito de modificar o sistema.

Para novas empresas como a SUN, o Unix se mostrou a maneira ideal de fornecer novas máquinas com tecnologia de ponta. Nessa época, o Unix se tornou o produto mais vendido sob diversas marcas com variações e adaptações dos fornecedores.

Isso gerou duas consequências que foram fundamentais para a história do Linux:

1 - Como cada fornecedor fazia suas próprias modificações, acabou havendo uma grande falta de padronização do sistema;

2 - As empresas começaram a comercializar o Unix de tal modo que o preço subiu assustadoramente.

Page 12: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Unix

As turbulências do mundo Unix permitiram que, no final dos anos 90, o mercado redescobrisse o Unix através de um de seus “clones”, desenvolvido como reação a política vigente do Unix: o GNU/Linux.

Curiosidade:

Atualmente, Unix (ou *Nix) é nome dado a uma grande família de sistemas operacionais que partilham muitos conceitos dos sistemas Unix originais, sendo todos eles desenvolvidos no padrão POSIX (Portable Operating System Interface).

Sistemas operacionais Unix like (tipo Unix) atuais:

GNU/Linux

Família BSD (FreeBSD, OpenBSD, NetBSD)

Solaris, HP UX, AIX, IRIX

Mac OS X

Page 13: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Movimento pelo Software Livre?

Movimento surgido na década de 70 em consequência da crescente pressão recebida para a adoção de softwares proprietários e assinaturas de tratados de não divulgasção de informações sobre códigos fontes;

O movimento ganhou força a partir da década de 80 com o projeto GNU, que visava libertar os usuários dos sistemas proprietários que começavam a surgir;

Fundação da Free software Foundation www.fsf.org;

Richard M. Stallman – Princípal líder e ideologo do movimento;

Criação do Projeto GNU!

GNU GNU IS Not Unix!!! www.gnu.org;

Acrônimo recursivo ---------------------> Piada Hacker!!!!

Sistema operacional completo e compatível com UNIX;

Escrito a partir de 1983 por Stallman e inúmeros hackers da comunidade de software livre espalhados pela internet;

Consolidou-se a partir da década de 90 como um sistema completo e funcional, atingindo qualidade técnica comparável e em muitos casos superior a softwares propietários.

Page 14: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Movimento pelo Software Livre?

As 4 Liberdades Fundamentais A liberdade de executar o programa, para qualquer propósito;

A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades. O acesso ao código-fonte é um pré-requisito para esta liberdade;

A liberdade de redistribuir cópias de modo a ampliar as possibilidades de acesso de pessoas e instituições a tais programas;

A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie, sem gastos adicionais.

Page 15: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Muita Calma!!!!

Esses conceitos buscam garantir que o usuário possa executar, copiar, estudar, modificar o software, visando sempre à liberdade de produção (ou aperfeiçoamento) e utilização;

Software livre pressupõe a liberdade de utilização, por isso é melhor evitar termos como “de graça” ou “doado”, pois não se trata de uma questão de preço, mas sim de liberdade de acesso ao código-fonte e de uso;

Um usuário pode redistribuir as cópias do software de maneira gratuita ou cobrando uma taxa pela distribuição, as pessoas possuem livre escolha para decidir como distribuir um programa, alterá-lo, etc., sem ter que pedir permissão a ninguém;

Cabe observar que esta possibilidade de cobrança é secundária, não havendo obrigação de pagar as licenças de uso;

Assim sendo ao comprar um programa de um usuário que cobre pelo serviço de distribuição, o comprador passa a ter direitos de realizar o que quiser com o software, podendo alterá-lo e instalá-lo em outras máquinas sem que se tenha que pagar nada para ninguém.

Page 16: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Linux

Linus Torvalds, um aluno da Universidade de Helsinque, na Finlândia, no final da década de 80, estava disposto a construir um kernel clone do Unix. Era um trabalho gigantesco e na prática impossível para apenas uma pessoa concluí lo, mesmo entendendo muito de sistema operacional;

Em 1991, Linus iniciou um projeto particular inspirado no Minix de Tanenbaum. Ele queria criar “um Minix melhor que o Minix”. Depois de um certo tempo conseguiu fazer várias coisas funcionarem e reconhecendo que não conseguiria continuar sozinho desenvolvendo o projeto postou uma mensagem numa lista de discussão:

“Você suspira por melhores dias do Minix 1.1, quando os homens serão homens e escreverão seus próprios "device drivers"? Você está sem um bom projeto e está morrendo por colocar as mãos em um S.O. no qual você possa modificar de acordo com suas necessidades? Você está achando frustante quando tudo trabalha em Minix? ... Chega de atravessar noites para obter programas que trabalhem correto? Então esta mensagem pode ser extamente para você? Como eu mencionei a um mês atrás, estou trabalhando em uma versão independente de um S.O. similar ao Minix para computadores AT 386. Ele está finalmente, próximo ao estágio em que poderá ser utilizado (embora possa não ser o que você esteja esperando), eu estou disposto a colocar os fontes para ampla distribuição. Ele está na versão 0.02..., contudo, eu tive sucesso rodando o bash, gcc, gnu make, gnu sed, compressão, etc. nele.”

Linus Torvalds

Page 17: Curso de Introdução ao Software Livre - Aula de 23/09/2009

Linux

Em 5 de outubro de 1991, Linus lançou a primeira versão “oficial” do Linux: o Linux 0.02. Depois disso, programadores do mundo todo têm colaborado a fazer o Linux;

GNU + Linux

Page 18: Curso de Introdução ao Software Livre - Aula de 23/09/2009