Fundamentos e Prática em Informática Ensino Médio Integrado em Informática Lara Popov Zambiasi Bazzi Oberderfer Interface amigável e de fácil instalação; Maior compatibilidade de programas e aplicações; Maior gama de jogos, ferramentas de sistema e segurança, programas e aplicações. Código é apenas de propriedade da Microsoft; É mais caro, caro tanto na altura de adquirir o SO como também nos programas e outros softwares; Bem mais inseguro, mais propício a contrair vírus e outros malwares. malwares Proprietários Freeware Adware Shareware Opensource É aquele cuja cópia, redistribuição ou modificação são proibidos pelo autor em determinado grau. É necessário solicitar permissão ou pagar para utilizar. Pode ser freeware, shareware, trial ou demo. Software proprietário que é disponibilizado gratuitamente, mas não pode ser modificado. É o software disponibilizado gratuitamente por um período de tempo ou com algumas funções abertas, mas que implica no posterior pagamento pela sua licença. Versão de teste de vários softwares. É disponibilizada algumas funções, geralmente por 30 dias, para que o usuário experimente o programa para saber se ele atende às suas necessidades. Versão de demonstração, semelhante ao Trial. É possível usar o programa por um tempo ou com apenas algumas funções disponíveis. É o software desenvolvido com o objetivo de lucrar. UNIX é um dos sistemas operacionais mais populares do mundo devido à enorme base instalada nele. Apesar de sua interface confusa e não padronizada é um dos sistemas operacionais mais utilizados no mundo. É o tipo de aplicativo (programa) que possui suas linhas de código (código fonte) abertas para que outros programadores as altere e produza uma nova versão do programa! Richard Matthew Stallman trabalhava no MIT (Instituto de Tecnologia de Massachusetts) desde 1971. Anos 80, softwares passam a ser proprietários. Stallman abondona o emprego e inicia um movimento para criar um sistema operacional livre. A iniciativa resultou na criação do FSF (Free Software Foundation), amparada juridicamente pela GNU – GPL (General Public License) O movimento se intensifica mais tarde, em 1991, com o lançamento do Linux. Stallman desenvolve a licença CopyLeft em oposição a CopyRight: CopyRight ◦ "Copyleft Copyleft: reversed (Esquerdos autorais: Copyleft: all rights reversed" todos os direitos invertidos) ◦ "Copyright: Copyright: all rights reserved" reserved (Direitos autorais: todos os direitos reservados). Se refere à liberdade dos usuários executarem, copiarem, distribuírem, estudarem, modificarem e aperfeiçoarem programas e contempla quatro tipos de liberdade: ◦ liberdade 0: pode-se executar o programa, para qualquer propósito; ◦ liberdade 1: pode-se estudar como o programa funciona, e adaptá-lo para as próprias necessidades; ◦ liberdade 2: pode-se redistribuir cópias a quem as deseje; e ◦ liberdade 3: pode-se aperfeiçoar o programa, e liberar os aperfeiçoamentos, para que toda a comunidade se beneficie. Pode ser vendido ou disponibilizado gratuitamente. Um caso é o da Red Hat que comercializa o Red Hat Enterprise Linux. A possibilidade de modificações implica na abertura de seu código fonte. A maioria dos softwares livres é licenciada como GNU GPL ou BSD. O autor do software relega a propriedade do programa e este se torna bem comum, ou seja, não possui copyright. Entretanto, o autor pode restringir que modificações sejam feitas. O software de código aberto é aquele que disponibiliza seu código fonte e restringe-se aos termos técnicos da questão. Pode ser livre, ou proprietário. Algumas empresas como IBM, HP, Intel e Nokia investem em software de código aberto. Vídeo: Vídeo Software Livre – Apresentação em massinha Vídeo: Vídeo Software Livre – Apresentação do ITI Sistema operacional com código aberto; Criado pelo Finlandês Linus Torvalds; Foi desenvolvido em cima do UNIX; LINUX = Linus + UNIX; O Linux nasceu de um projeto particular de criar um Minix melhorado. Quando ele finalmente atingiu a maturidade do código, ele o disponibilizou em 05/Oct/1991; Algumas das principais funcionalidades são: ◦ Sistema Multiusuário nativo; ◦ Módulos/Drivers de dispositivos podem ser dinâmicos; ◦ Portabilidade para muitos dispositivos; Está sob a licença GPL v. 2; Por que o símbolo do pinguim Tux ? Vantagens do Linux ◦ É livre: livre pode-se baixar o Linux da Internet, pedir uma cópia a um amigo ou ainda comprar uma caixa; ◦ MultiMulti-tarefa: tarefa vários programas podem funcionar ao mesmo tempo e os recursos do computador são bem gerenciados pelo Linux; ◦ Sistema gráfico X Windows: é usado em computadores UNIX, suporta todo o tipo de programas e é um standard universal. 41 Vantagens do Linux ◦ Memória virtual: virtual o Linux pode usar parte do disco rígido como memória “virtual”, o que permite carregar o Linux em computadores com pouca memória RAM; ◦ Código fonte aberto: aberto pode-se analisar como está programada uma aplicação e fazer modificações, ao mesmo nível de outros programadores, empresas, etc. 42 Vantagens do Linux ◦ Velocidade: Velocidade o Linux é muito rápido porque é eficiente para gerenciar a memória, o processador, o disco rígido, etc; ◦ Estabilidade: Estabilidade computadores com Linux podem funcionar durante meses ou anos seguidos sem “travar” ou precisar de ser reiniciado (ao contrário do Windows); ◦ Utilização: Utilização um computador com Linux pode ser usado por vários usuários ao mesmo tempo (e não apenas um de cada vez). 43 Kernel é o coração do SO; Controla os dispositivos e demais periféricos do sistema, como: placas de som, vídeo, discos rígidos, disquetes, CDs, DVDs, sistemas de arquivos, redes, e possibilita que todos os processos sejam executados pela CPU e que estes consigam compartilhar a memória do computador, além de outros recursos disponíveis; Projeto GNU, GNU em computação, é um projeto iniciado por Richard Stallman em 1984, com o objetivo de criar um sistema operacional totalmente livre, que qualquer pessoa teria direito de usar, estudar, modificar e redistribuir o programa e seu código fonte, desde que garantindo para todos os mesmos direitos. Este sistema operacional GNU deveria ser compatível com o sistema operacional UNIX, porém não deveria utilizar-se do código fonte do UNIX. A partir de 1984 Stallman e vários programadores, que abraçaram a causa, vieram desenvolvendo as peças principais de um sistema operacional, como compilador de linguagem C, editores de texto, etc. Em 1991 o sistema operacional já estava quase pronto, mas faltava o principal, que é o núcleo do sistema operacional. O grupo liderado por Stallman estava desenvolvendo um núcleo chamado Hurd. Porém, em 1991, Linus Torvalds havia criado onúcleo que poderia usar todas as peças do sistema operacional GNU. Linux é somente o núcleo (kernel) do Sistema Operacional; GNU é o conjunto de softwares que torna esse kernel “útil”; GNU/Linux e Linux tornaram-se sinônimos; hoje há mais de 500 distribuições ativamente mantidas; 20 são mais populares; Contando com as descontinuadas, pode chegar a 2000; Por que existem tantas distribuições? Fáceis: Ubuntu, Linux Mint e PCLinuxOS. Intermediárias: OpenSUSE, Fedora, Debian e Mandriva; Avançadas: Slackware, Gentoo e FreeBSD. Entretanto, a variedade caracteriza as distros: ◦ Algumas ocupam apenas um disquete e outras precisam de vários CD-ROMs. ◦ Algumas podem funcionar em computadores bem antigos, com pouquíssimos recursos de hardware. ◦ Há distribuições que são usadas por poucas pessoas. E há outras que tem muitos usuários e espalhados por toda a Terra. ◦ Distribuições diferentes podem estar presente em vídeojogos, handhelds, laptops ou em mainframes. ◦ E podem utilizar muitas arquiteturas de computadores: x86 (Intel, AMD), x86-64 (Intel EM64T, AMD64), ARM, PowerPC, Alpha etc... CLI - Command Line Interface GUI – Graphical User Interface ◦ GNOME, KDE, XFCE, Windowmaker, Fluxbox, Blanes, Blackbox, Afterstep, Enlightenment, IceWM, FVWM, Kahakai, ZappWM, dwm, SithWM, Whim, Karmen, Sawfish, XIGE, Framer, Mavosxwm, WindowLab, OpenBox Interface gráfica no Linux: ◦ Os Window Managers definem o modo como a interface gráfica e a interação ocorrem; ◦ Esta flexibilidade não existe nos sistemas operacionais Windows, os quais incluem uma interface gráfica embarcada e que impede a personalização total do ambiente gráfico; ◦ O Linux pode funcionar só em modo texto. O que se pode fazer com o Linux TUDO! 56 Aplicações “didáticas” de Linux ◦ Reaproveitar computadores antigos ◦ Explorar tecnologias e software sem custos ◦ Montar redes em casa (exemplo): 57 O shell (concha) é um camada um volta do kernel que serve para interação com o usuário. Quando abrimos um terminal e digitamos o comando rm text.txt, o shell se encarrega de traduzir esse comando para o kernel que por sua vez se encarrega de apagar o arquivo texto.txt. Como foi falado o GNU/Linux é baseado no UNIX, e com isso devemos aprender alguns conceitos básicos do sistema. Um deles é a estrutura de diretórios. O GNU/Linux segue o File Hierarchy System (FHS), ou seja, é quem define quais são os diretórios que deverão existir, a localização dos arquivos de configuração etc, com o intuito de padronizar o sistema, a fim de conseguir compatibilidade entre as distribuições de GNU/Linux. para definir o que cada ramo da estrutura deve armazenar. Entre os ramos essenciais podemos citar: / - raiz, a base da estrutura /boot – guarda os arquivos para o boot de sistema, o kernel inclusive /proc – diretório virtual, ele é criado toda a vez que o sistema inicializa, guarda informações do kernel e dos processos /dev – arquivos de dispositivos e hardware. Os dispositivos tem arquivo neste diretório /tmp – arquivos temporários /etc – arquivos de configuração /lib – bibliotecas compartilhadas essenciais /mnt – pontos de montagem /media – pontos de montagem também /root – diretório do superusuário /home – diretórios dos usuários comuns /home/viniciustc – diretório do usuário viniciustc. Note que este diretório esta dentro de /home /bin – comandos essenciais do sistema /sbin – comandos essenciais do superusuário /usr – hierarquia secundaria /usr/bin – comandos não essenciais /usr/sbin – comandos não essenciais de superusuário /var – dados variáveis /var/cache – cache de dados das aplicações /opt - Diretório destinado à instalação de binários pré-compilados e programas proprietários. Entender o que cada diretório armazena facilita na solução de problemas, e elaboração de um sistemas mais otimizado. O /home, como foi mostrado, é a raiz para os diretórios dos usuários. Cada usuário criado no sistema tem um diretório no /home. Dentro deles estão armazenados os arquivos, documentos, perfil nos programas, etc. Dependendo da politica usada, somente o usuário pode acessar esse diretório, salvo o usuário root que pode acessar qualquer coisa. História do Linux. Disponível em: http://www.brasilescola.com/informatica/his toria-do-linux.htm. Acesso em: 19/11/2012. História do Linux. Disponível em: http://www.infowester.com/historia_linux.ph p. Acesso em: 19/11/2012. Wikipedia. Disponível em: http://pt.wikipedia.org/wiki/Hist%C3%B3ria_d o_Linux. Acesso em: 19/11/2012.