Faculdade Pernambucana - FAPE Sistemas Operacionais Abertos.
Sistemas Operacionais Abertos - ifrn.edu.brslides_aula_sistemas_abertos_2011.2.pdf · Sistemas...
-
Upload
truongnhan -
Category
Documents
-
view
230 -
download
0
Transcript of Sistemas Operacionais Abertos - ifrn.edu.brslides_aula_sistemas_abertos_2011.2.pdf · Sistemas...
Sistemas Sistemas Sistemas Sistemas Operacionais AbertosOperacionais AbertosOperacionais AbertosOperacionais Abertos
Aula 02 - Introdução aos Sistemas Abertos
Prof. Jean Carlos da Silva Galdino
IFRN - Parnamirim
Introdução
• Todo computador precisa de um sistemaoperacional para funcionar.
• O sistema operacional é responsável por controlara utilização dos recursos fornecidos pela máquina,como processador, memória e discos.• MSDOS• WINDOWS• OS/2• UNIX
Sistema Operacional
• É o componente de software que faz a interfacebásica entre os programas do usuário e ocomputador, gerenciando itens como os recursos eperiféricos (memória, discos, arquivos, usuários,impressoras), segurança, privilégios, comunicação eoutros.
O CTSS
• O CTSS (Compatible Time-Sharing System) foi umdos primeiros sistemas operacionais a adotar atécnica de time-sharing.
• Essa técnica, empregada até hoje, permite quevários usuários possam, simultaneamente, utilizarum ambiente para executar programas.
• Tudo isso ocorre sobre o mesmo sistemaoperacional, rodando em uma máquina. Esse tipode sistema caracteriza o processo decompartilhamento de processador, memória edisco entre vários utilizadores.
UNIX
• Ken Thompson(PAI DO UNIX)• Sistema operacional.• Algumas aplicações em nível de usuário, todas
voltadas para cópia, impressão, remoção e ediçãode arquivos.
• Depois, desenvolveu um ambiente shell (ambientepróprio para a entrada de linhas de comandos,como, por exemplo, o prompt do MS-DOS).
• Com isso, o Unix começava a tomar forma.
Linguagem C
• A primeira versão do Unix foi escrita em Assembly,uma complicada linguagem de baixo nível.
• Thompson tinha a intenção de passar o Unix parauma linguagem de alto nível.
• A primeira tentativa foi utilizar a linguagemFortran, em 1971.
• Escreveu uma linguagem de programação simples,ainda no PDP-7, conhecida como B (umasimplificação do BCPL, o Basic CombinedProgramming Language, uma linguagem de altonível criada em 1967).
Linguagem C
• Dois problemas foram encontrados.• Lentidão, por ser de alto nível, deveria ser
interpretada.• PDP-7 tinha um processamento baseado em
palavra (word-oriented) e o PDP-11 em bytes(byte-oriented).
• O PDP-11 foi usado para adicionar funcionalidadesao B, que passou a chamar-se NB (New B).
• A seguir, começou a fazer um compilador para oNB. Acabava de nascer a famosa linguagem C.
Linguagem C
• O nome C vem da segunda letra do BCPL.• A primeira versão do Unix, uma versão ainda
interna ao MIT, foi lançada em novembro de 1971,na linguagem B.
• O Unix foi reescrito em C.,
Pipes |
• Uma grande inovação do Unix foram os pipes, quepermitem aos programadores a possibilidade deamarrar vários processos e gerar uma única saída.
• O pipe, que é representado pelo caractere barravertical (|), permite encadear comandos.
• comando1 | comando2 | comando3 | comando4• o resultado do comando1 será processado pelo
comando2, esse resultado será processado pelocomando3. Na seqüência, entra em ação ocomando4 e obtém-se, assim, um resultado final.
Difusão do Unix
• O Unix espalhou-se rapidamente pelo mundoacadêmico.
• poderia ser uma excepcional fonte de renda. Aprimeira ideia foi desenvolver programas para Unixpara uso comercial.
• O principal diferencial do Unix era o sistema detime-sharing, que permitia às pessoascompartilharem o mesmo computador ao mesmotempo, utilizando os seus vários terminais.
Difusão do Unix
• Várias versões de Unix foram produzidas. Muitasempresas passaram a vender máquinas projetadaspara o uso com o Unix, dentre elas a SunMicrosystems, a SGI, a Hewlett-Packard, a NCR e aIBM.
Evolução do UNIX
Software livre
• A expressão "software livre" (ou "free software") éalgo gratuito. O termo "free" está ligado a livre enão a gratuito.
• Software livre é um conceito especial. Esse conceitoprevê que todo software será distribuído com seucódigo-fonte, podendo ser alterado e até mesmoredistribuído depois de alterado.
• O software não precisa ser gratuito. O seupagamento pode se dar de várias formas.
Software livre
• Por exemplo: você produz um banco de dados e ovende por uma determinada quantia. Isso irácustear a mídia, a embalagem etc.
• Quem quiser, poderá copiar livremente ou alterar ocódigo e não terá de lhe pagar nada. No entanto,você pode cobrar pelo suporte técnico.
Projeto GNU
• O sistema operacional de Richard Stallman recebeuo nome de Projeto GNU ou sistema operacionalGNU.
• GNU é um trocadilho que significa "GNU’s NotUnix", ou seja, o projeto GNU é uma concepçãolivre, ao contrário do Unix e de outros softwares,que eram livres e deixaram de sê-lo.
• O projeto está hospedado em http://www.gnu.org.O símbolo do projeto é a caricatura da cabeça deum boi gnu.
http://www.gnu.org
Núcleo de um SO
• É interessante dizer que todo sistema operacionalpossui um núcleo de controle, denominado kernel.
• O sistema operacional em si é constituído dokernel e de programas como editores de texto eutilitários de cópia de arquivos etc.
• O projeto GNU já possui vários programas, amaioria testados em Unix. No entanto, ainda nãohá um kernel.
Kernel
• Kernel: é o componente central de qualquersistema operacional, contendo as principais tarefasde gerenciamento.
• O endereço do site da Free Software Foundation éhttp://www.fsf.org.
Linux
É um kernel desenvolvido a partir de 1991 por LinusTorvalds, unido a centenas de interessados(voluntários e empresas como a IBM, a HP eoutras), capaz de rodar em múltiplas arquiteturas(do palm ao mainframe) e que, aliado aferramentas providas por terceiros(e.g. GNU, KDE,Apache, PHP) forma um sistema operacionalrobusto e flexível.
Linux
• O sistema operacional resultante da união entre okernel do Linux e as ferramentas de terceiros podeser chamado de GNU/Linux ou apenas de Linux.
• Seu aniversário é comemorado em 05 de outubro.• A presença do nome do novo sistema: Linux. Linux
é a junção dos nomes Linus e Unix.
LSB
• LSB: Linux Standards Base (www.linuxbase.org) .Conjunto de padrões (facultativos) aos quais asdistribuições e as aplicações devem aderir de formaa facilitar o desenvolvimento de software que nãoseja específico de uma dada distribuição,maximizando os treinamentos, a documentação,etc.
Sr. Linux
Licenças
• Licenças: existe uma série de termos de uso queregulamentam os softwares. Cada autor de softwareé livre para escolher o tipo de licença adotada:licenças comerciais, shareware, etc. A licença típicado Linux é a GPL (General Public License), quepermite livre uso, alteração e redistribuição, desdeque as cópias redistribuídas adotem a mesmalicença do original.
Licença GNU
• A Licença GNU General Public License foidesenvolvida pela Free Software Foundation (FSF)para especificar se um software é livre ou não.
• Existem várias outras licenças, inclusivecompatíveis com a GNU GPL, mas essa é a maisrecomendada.
• Numa avaliação geral, a GNU GPL baseia-se nasquatro liberdades básicas: executar, estudar,modificar e redistribuir versões, originais oumodificadas, de um programa.
Licença GNU GPL
• A Licença GNU GPL está disponível emhttp://www.gnu.org/copyleft/gpl.html. Há umatradução para o português. No entanto, ela não éhomologada pela FSF. Emhttp://www.gnu.org/licenses/license-list.htmlestão disponíveis vários exemplos de licenças e osdevidos comentários por parte da Free SoftwareFoundation. Existe uma tradução para o portuguêsemhttp://www.gnu.org/licenses/licenselist.pt.html.
Licença
• Outra licença típica de sistemas abertos é a BSD,que permite livre uso e redistribuição, e dá a opçãopara que os interessados alterem os termos dalicença.
Licença GPL
• A licença GPL permite que o autor distribualivremente o seu código, oferecendo 4 liberdades:
• 1. executar o programa, para qualquer propósito;• 2. estudar como o programa funciona e adaptá-lo
para as suas necessidades;• 3. redistribuir cópias de modo que você possa
ajudar ao seu próximo;• 4. aperfeiçoar o programa, e liberar os seus
aperfeiçoamentos, de modo que toda acomunidade se beneficie deles
• .
Distribuição
• Reunião do kernel do Linux a um conjunto desoftware selecionado por terceiros, respeitando ostermos de licenciamento de cada um doscomponentes envolvidos.
• Qualquer interessado pode criar uma distribuição.• Existem várias distribuições. As maiores e mais
antigas ainda em produção são:• Slackware, Debian, SuSE e RedHat.• Muitas distribuições são derivadas dessas.
Distribuição
Dúvidas