Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] História dos sistemas operacionais No início da computação os primeiros "sistemas operacionais" eram únicos, pois cada mainframe vendido necessitava de um sistema operacional específico. Esse problema era resultado de arquiteturas diferentes e da linguagem utilizada — no caso, assembly (linguagem de baixo nível). Após essa fase, iniciou-se a pesquisa de sistemas operacionais que automatizassem a troca de tarefas (jobs), pois os sistemas eram mono-usuário e tinham cartões perfurados como entrada (eliminando, assim, o trabalho de pessoas que eram contratadas apenas para trocar os cartões perfurados). Mainframe Um dos primeiros sistemas operacionais de propósito geral foi o CTSS, desenvolvido no MIT. Após o CTSS, o MIT, os laboratórios Bell da AT&T e a General Eletric desenvolveram o Multics, cujo objetivo era suportar centenas de usuários. Apesar do fracasso comercial, o Multics serviu como base para o estudo e desenvolvimento de sistemas operacionais. Um dos desenvolvedores do Multics, que trabalhava para a Bell, Ken Thompson, começou a rescrever o Multics num conceito menos ambicioso, criando o Unics (em 1969), que mais tarde passou a chamar-se Unix. Os sistemas operacionais eram geralmente programandos em assembly, até mesmo o Unix em seu início. Então, Dennis Ritchie (também da Bell) criou a linguagem C a partir da linguagem B, que havia sido criada por Thompson. Finalmente, Thompson e Ritchie reescreveram o Unix em C. O Unix criou um ecossistema de versões, onde destacam-se: System V e derivados (HP-UX, AIX); família BSD (FreeBSD, NetBSD, OpenBSD, etc.), Linux e até o Mac OS X (que deriva do Mach e FreeBSD). UNIX Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] MAC OS X Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Na década de 1970, quando começaram a aparecer os computadores pessoais, houve a necessidade de um sistema operacional de utilização mais fácil. Em 1980, William (Bill) Gates e seu colega de faculdade, Paul Allen, fundadores da Microsoft, compram o sistema QDOS ("Quick and Dirty Operating System") de Tim Paterson por $50.000, batizam-no de DOS (Disk Operating System) e vendem licenças à IBM. O DOS vendeu muitas cópias, como o sistema operacional padrão para os computadores pessoais desenvolvidos pela IBM. No começo da década de 1990, um estudante de computação finlandês postou um comentário numa lista de discussão da Usenet dizendo que estava desenvolvendo um kernel de sistema operacional e perguntou se alguém gostaria de auxiliá-lo na tarefa. Este estudante chamava-se Linus Torvalds e o primeiro passo em direção ao tão conhecido Linux foi dado naquele momento. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 3 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Sistema Operativo Um sistema operativo pode ser visto como um programa de grande complexidade que é responsável por todo o funcionamento de uma máquina desde o software a todo hardware instalado na máquina. Todos os processos de um computador estão por de trás de uma programação complexa que comanda todas a funções que um utilizador impõe à máquina. Existem vários sistemas operativos entre eles os mais utilizados no dia a dia, normalmente os mais utilizados em computadores domésticos são o Windows, Linux e Macintosh. Num computador com o Sistema Operativo instalado poderá não dar acesso a todo o seu conteúdo dependendo do utilizador que está a utilizar. Com um Sistema Operativo, podemos estabelecer permissões a vários utilizadores que trabalham com este. Existem dois tipos de contas que podemos criar num Sistema Operativo, as contas de Administrador e as contas Limitadas. A conta Administrador, é uma conta que oferece todo o acesso à máquina, desde a gestão de pastas, ficheiros e software de trabalho ou entretenimento como também ao controlo de todo o seu Hardware instalado. A conta Limitada é uma conta que não tem permissões para aceder a algumas pastas ou instalar software que seja instalado na raiz do sistema ou então que tenha ligação com algum Hardware que altere o seu funcionamento normal ou personalizado pelo Administrador, para que este tipo de conta poderá ter acesso a outros conteúdos do disco ou de software, o administrador poderá personalizar a conta oferecendo permissões a algumas funções do sistema como também poderá retirar acessos a certas áreas do sistema. O sistema operativo funciona com a iniciação de processos que este irá precisar para funcionar correctamente, estes processos poderão ser ficheiros que necessitam de ser frequentemente actualizados, ou ficheiros que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operativo a partir do gestor de tarefas, no gestor de tarefas encontramos todos os processos que estão em funcionamento desde o arranque do sistema operativo até a sua utilização actual, podemos também visualizar a utilização da memória por cada processo, no caso de o sistema Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 4 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] operativo começar a mostrar erros ou falhas de acesso a programas tornandose lento, podemos verificar no gestor de tarefas qual dos processos estará bloqueado ou com elevado número de processamento que está a afectar o funcionamento normal da memória. Estrutura Um sistema operacional (ou seu kernel), possui as seguintes funções: (i) agendamento de processos; (ii) gerenciamento de memória; (iii) sistema de arquivos; (iv) disponibilização de entrada e saída de dados. FAMILIA MICROSOFT Microsoft Windows é uma popular família de sistemas operacionais criados pela Microsoft, empresa fundada por Bill Gates e Paul Allen. O Windows é um produto comercial, com preços diferenciados para cada uma de suas versões, embora haja uma enorme quantidade de cópias ilegais instaladas, ele é o sistema operacional mais usado do mundo. Apesar do sistema ser conhecido pelas suas falhas críticas na segurança e como plataforma de vírus de computador e programas-espiões (spywares), o impacto deste sistema no mundo atual é simplesmente incalculável devido ao enorme número de cópias instaladas. Conhecimentos mínimos desse sistema, do seu funcionamento, da sua história e do seu contexto são, na visão de muitos, indispensáveis, mesmo para os leigos em informática. Significado do nome A palavra windows em inglês significa janelas. A sua interface é baseada num padrão de janelas que exibem informações e recebem respostas dos utilizadores através de um teclado ou de cliques do mouse. Este padrão de interface não foi, no entanto, criado pela Microsoft, como veremos adiante. O registro da marca Windows foi legalmente complicado, pelo fato de essa palavra ser de uso corrente em inglês. Necessidade de um sistema operacional Podemos dizer que um computador não possui nenhuma utilidade prática sem pelo menos um sistema operacional instalado. Resumidamente, ele é responsável pelo funcionamento do computador, controle dos periféricos, execução de aplicativos, gerência de memória, rede, etc. Mais detalhes podem ser vistos no artigo específico de sistemas operacionais. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 5 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] As versões do Windows estão preocupadas em atender essas necessidades no mercado empresarial e doméstico. Origem e história A Microsoft começou o desenvolvimento de um Gerenciador de Interface (Subseqüente renomeado de Microsoft Windows) em setembro de 1981. O Windows só começa a ser tecnicamente considerado como um SO a partir da versão Windows NT, lançada em Agosto de 1993. O que havia antes eram sistemas gráficos sendo executados sobre alguma versão dos sistemas compatíveis com DOS, como MS-DOS, PC-DOS ou DR-DOS. Somente o MSDOS era produzido pela própria Microsoft. O MS-DOS é um sistema operativo que não dispõe de interface gráfica, funciona através de comandos de texto introduzidos no teclado pelo utilizador. O Windows surgiu inicialmente como uma interface gráfica para MS-DOS, que permitia correr programas em modo gráfico, o que permitiu a utilização do mouse, que até à altura era considerado supérfluo em computadores de tipo IBM-PC. Principais versões Windows 1.01 Windows 1.01 era uma interface gráfica bidimensional para o MS-DOS e foi lançado em 20 de Novembro de 1985. Era necessário o MS-DOS 2.0, 256 KB RAM e um disco rígido. Naquela altura, o MS-DOS só consegue suportar 1 MB de aplicações. Era uma primeira tentativa de criar um sistema multitarefa. Nessa época, instalado em computadores XTs que tinham apenas 512Kb de memória, ocupava praticamente toda a memória disponível. O Windows 1.01 não foi nenhum grande sucesso comparado com seus sucessores da década de 1990, devido à limitação do hardware da época. Inicialmente, ele foi lançado em quatro disquetes de 5.25 polegadas de 360 KB cada um. Continha o Reversi (jogo), um calendário, bloco de notas, calculadora, relógio, “command prompt”, Write, Control Panel, Paint e programas de comunicação. Permite a utilização de mouse, janelas e ícones. Nesta versão ainda não havia sobreposição de janelas. Windows 2.03 Windows 2.0. O Windows 2.03 foi lançado em 1 de Novembro de 1987 e praticamente tem a mesma interface do Windows 1.01, com a diferença de apresentar mais recursos, ferramentas e maior paleta de cores, embora os computadores daquela época eram ainda muito lentos quando estes utilizavam uma interface gráfica de boa qualidade. Permite a sobreposição de janelas e estas podem maximizar e minimizar. Era apresentado em oito disquetes de alta densidade de 5,25" de 360 KB cada um. Windows 2.1 Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 6 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Em 27 de Maio de 1988, foi lançado o Windows 2.1, que era apresentado em sete disquetes de dupla densidade de 3,5" de 720 KB cada um, e era nada mais do que o Windows 2.03 reformulado. Existem duas versões especiais do Windows 2.1: • • Windows 2.1/286 foi lançada para aproveitar todos os recursos dos microprocessadores 286; Windows 2.1/386 foi lançada para aproveitar todo o potencial dos microprocessadores 386. Existe uma outra versão da família Windows 2.xx, o Windows 2.11, que foi lançada em Março de 1989, com pequenas mudanças em gerenciamento de memória, melhor impressão e drivers Postscript. Windows 3.x Windows 3.x. O Windows 3.0 foi o primeiro sucesso amplo da Microsoft e foi lançado em 22 de Maio de 1990. Ao contrário das versões anteriores, ele era um Windows completamente novo. Tecnicamente, esta versão é considerada o primeiro sistema gráfico da empresa. Era um sistema gráfico de 16 bits, mas ainda precisava ativar primeiro o MS-DOS para ativar o Windows. Substituiu o MSDOS Executive pelo Gerenciador de Programas e o Gerenciador de Arquivos que simplificavam as aplicações e tornava o sistema mais prático. Melhorou bastante a interface, o gerenciamento de memória e o sistema multitarefa. Conseguiu ultrapassar o limite de 1 MB do MS-DOS e permitiu a utilização máxima de 16 MB de aplicações. Naquela época era o único possível de compatibilizar todos os programas das versões anteriores. Utilizava o CPU Intel 80286 e Intel 80386. Também existe a versão 3.0a, que foi lançada em 31 de Outubro de 1990. Pode ter sido responsável pela saída do mercado de empresas como Novell e Lantastic, que dominavam como fornecedoras de NOSes (sistemas operacionais para redes) em plataformas cliente-servidor e ponto a ponto, respectivamente. Existem cinco versões especiais do Windows 3.0: • • Windows with Multimedia Extensions - foi lançada por vários fabricantes de periféricos multimídia, por isso ela não tem uma certa data de lançamento. Tinha recursos multimídia (semelhantes aos do Windows 3.1) e era um pouco mais estável. Windows 3.1 - foi lançada em 18 de Março de 1992 e tinha softwares para multimédia e fontes TrueType (aumenta muito o número de tipos de letras disponíveis) e era mais estável do que o Windows 3.0. Ele era apresentado em oito disquetes de alta densidade de 3,5" de 1,44 MB cada um. Nesta versão permitiu o uso de um maior número de línguas de trabalho, incluindo o Cirílico e o Japonês. O Minesweeper substituiu o Reversi. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 7 Sistema Operacional – Mediador: Gardem Luiz • • • • [email protected] – [email protected] Windows for Workgroups 3.1 - foi lançada em Outubro de 1992, e era praticamente o Windows 3.1 com suporte a rede, fax-modem e correio eletrônico. Ele era apresentado em nove disquetes de alta densidade de 3,5" de 1,44 MB cada um. Windows for Workgroups 3.11 - foi lançada em Dezembro de 1993 e era praticamente a revisão da versão anterior. Windows for Pen Computing - foi lançada em Abril de 1994 e tinha todos os recursos do Windows for Workgroups 3.11 mais o suporte a canetas para PCs. Windows 3.2 - nesta versão limitou-se em acrescentar o Chinês como uma língua de trabalho. Windows 95 Windows 95. É o primeiro S.O. de 32 bits e foi lançada em 24 de Agosto de 1995. Ele era um Windows completamente novo, e de nada lembra os Windows da família 3.xx. O salto do Windows 3.0 ao Windows 95 era muito grande e ocorreu uma mudança radical na forma da apresentação do interface. Introduziu o Menu Iniciar e a Barra de Tarefas. Nesta versão, o MS-DOS perdeu parte da sua importância visto que o Windows já consegue activar-se sem precisar da dependência prévia do MS-DOS. As limitações de memória oferecidas ainda pelo Windows 3.0 foram praticamente eliminadas nesta versão. O sistema multitarefa tornou-se mais eficaz. Utilizava o sistema de ficheiros FAT-16 (VFAT). Os ficheiros (arquivos) puderam a partir de então ter 255 caracteres de nome (mais uma extensão de três caracteres que indica o programa que abre o arquivo). Existe uma outra versão do Windows 95, lançada no início de 1996, chamada de Windows 95 OEM Service Release 2 (OSR 2), com suporte nativo ao sistema de arquivos FAT32. Já o Windows 95, a partir da revisão OSR 2.1, incluía o suporte nativo ao Barramento Serial Universal (USB). Windows NT Windows NT. O Windows NT foi lançado pela primeira vez pela Microsoft em 1993 com o objectivo principal de fornecer mais segurança e comodidade aos utilizadores de empresas e lojas (meio corporativo), pois as versões do Windows disponíveis até então não eram suficientemente estáveis e confiáveis. Foi um sistema operativo de 32 bits, multitarefa e multiutilizador. A sigla NT significa New Tecnology (nova tecnologia em inglês). Trazia a funcionalidade de trabalhar como um servidor de arquivos. Os NTs têm uma grande estabilidade e têm a vantagem de não ter o MS-DOS. A arquitectura desta versão é fortemente baseada no microkernel. Assim, em teoria, pode-se remover, actualizar ou substituir qualquer módulo sem a necessidade de alterar o resto do sistema. Foi criado com base no sistema operacional OS/2 da IBM - que havia deixado de ser comercializado e não representava mais um competidor no mercado, VMS e Lan Manager. Ele não era muito popularizado até ao aparecimento do Windows 2000 (NT 5.0). O Windows NT aceita três tipos de Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 8 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] sistemas de arquivos: FAT 16 (Windows NT 3.xx e Windows NT 4.0); FAT 32 (Windows 2000, Windows XP e Windows 2003); NTFS (Windows NT 4.0, Windows 2000, Windows XP e Windows 2003). Existem edições especiais: • • • • • NT 3.1 era muito semelhante ao Windows 3.1. Foi lançado em 1993. Pode ser utilizado no Intel x86, DEC Alpha e MIPS CPUs. NT 3.5 foi lançado em 1994 e era semelhante ao NT 3.1. NT 3.51 foi lançado em 1995 e tinha uma interface semelhante ao Windows 3.1 e trouxe algumas inovações nas áreas de gestão e distribuição de energia, podia executar um grande número de aplicações Win 32 do Windows 95. Mas foi rapidamente ultrapassado porque não oferecia bons serviços de Internet. NT 4.0 foi lançado em 1996 tinha uma interface semelhante ao Windows 95 e era mais estável mas menos fléxivel do que o Windows 95. Introduziu o Web Server, o Microsoft FrontPage, softwares de criação e gestão de web sites, o Microsoft Transaction Server e o Microsoft Message Queuing (o MSMQ melhora a comunicação). NT 5.0 só foi produzido em versão Beta e posteriormente foi mudado para Windows 2000. Tinha uma interface semelhante ao Windows 98. Este Windows permaneceu sem popularidade até o fim da era 9x/ME, quando lançaram o Windows 2000. Nesta edição também foi implementado a idéia de Serviços (ou Processos), no qual o sistema operacional trabalha a partir de serviços, tendo assim menores chances de travar, pois era possível reinicializar apenas um serviço do que a máquina por inteiro. Estas versões do Windows aceitam quatro tipos de sistemas de arquivos: • • • FAT 12 e 16 - Windows 1.0x, Windows 2.xx, Windows 3.xx, Windows 95, Windows 98, Windows ME, Windows NT 3.xx e Windows NT 4.0; FAT 32 - Windows NT 3.51 (com o PowerPack), Windows 95 OSR 2.x, Windows 98, Windows 2000, Windows XP e Windows Server 2003; NTFS - Windows NT 3.xx, Windows NT 4.0, Windows 2000, Windows XP e Windows Server 2003. Windows 98 Windows 98. Esta versão foi lançada em 25 de Junho de 1998. Foram corrigidas muitas das falhas do seu antecessor. A maior novidade desta versão era a completa integração do S.O. com a Internet. Utilizava o Internet Explorer 4. Introduziu o sistema de arquivos FAT 32 e começou a introduzir o teletrabalho (só foi possível devido à integração do Web). Melhorou bastante a interface gráfica. Incluiu o suporte a muitos monitores e ao USB (Universal Serial Bus). Mas, por ser maior do que o Windows 95 e possuir mais funções, era também mais lento e mais instável. Existe uma versão especial, conhecida como Windows 98 Segunda Edição (Windows 98 SE). Foi lançada em 1999 e esta versão visava corrigir as falhas Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 9 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] (bugs) e resolver os problemas de instabilidade do Windows 98. Incluía drivers e programas novos. Substituiu o Internet Explorer 4 pela versão 5, que era mais rápida, e introduziu a Internet Connection Sharing, que permite a partilha de uma “rede de internet” para muitos computadores. Acrescentou também o NetMeeting 3 e suporte a DVD. Muitos utilizadores classificam este sistema como um dos melhores da Microsoft, apesar de ser tratar de um sistema operacional sem suporte a multitarefa real, e ainda tendo o DOS como o seu núcleo principal. Windows ME Windows ME. Foi lançado pela Microsoft em 14 de Setembro de 2000, sendo esta a última tentativa de disponibilizar um sistema baseado, ainda, no antigo Windows 95. Essa versão trouxe algumas inovações, como o suporte às máquinas fotográficas digitais, aos jogos multi jogador na Internet e à criação de redes domésticas (home networking). Introduziu o Movie Maker e o Windows Media Player 7 (para competir com o Real Player) e atualizou alguns programas. Possuía a Restauração de Sistema (um programa que resolvia problemas e corrigia bugs). Introduziu o Internet Explorer 5.5. Algumas pessoas crêem que este foi apenas uma terceira edição do Windows 98 e que foi apenas um produto para dar resposta aos clientes que esperavam por uma nova versão. Muitas pessoas achavam-no defeituoso e instável, o que seria mais tarde comprovado pelo abandono deste segmento em função da linha OS/2-NT42000-XP, criada originalmente pela IBM e posteriormente adquirida pela Microsoft. Na mesma época, foi lançada uma nova versão do Mac OS X e a Microsoft, com receio de perder clientes, lançou o Windows ME para que os fãs aguardassem o lançamento do Windows XP. Windows 2000 Windows 2000. O lançamento desse Windows, em Fevereiro de 2000 (apesar do sistema estar datado 1999), que também era chamado de Windows NT 5.0 na sua fase Beta, marcou o começo da era NT (Nova Tecnologia) para usuários comuns. Ainda com falhas de segurança, como, por exemplo, o armazenamento de senhas em um arquivo próprio e visível, o que facilitava a ação de hackers e invasores. Ainda não apresentava muita semelhança com o XP no visual, que até então ainda era o mesmo do ME. Trata-se de um sistema operacional bastante estável, multiusuário e multitarefa real. Nesta versão foi iniciada a criação e utilização de um novo sistema de gerenciamento, baseado em LDAP, chamado pela Microsoft de Active Directory, o que trazia diversas funções, como suporte a administração de usuários e grupos (como no NT 3.51 e 4.0) além das novas opções como computadores, periféricos (impressoras, etc. Versões: Professional, Server, Advanced Server, Datacenter Server e Small Business Server. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] WIndows XP Windows XP. É a versão mais recente lançada em 25 de Outubro de 2001 e é também conhecida como Windows NT 5.1. Roda em formatações FAT 32 ou NTFS. A sigla XP deriva da palavra eXPeriência. Uma das principais diferenças em relação às versões anteriores é quanto à interface. Trata-se da primeira mudança radical desde o lançamento do Windows 95. Baseada no antigo OS/2 da IBM, cujos direitos foram comprados pela Microsoft, e, seguindo a linha OS/2-NT-2000-XP, a partir deste Windows, surgiu uma nova interface, abandonando o antigo formato 3D acinzentado. Nota-se uma melhoria em termos de velocidade em relação às versões anteriores, especialmente na inicialização da máquina. O suporte a hardware também foi melhorado em relação às versões 9x-Millenium, abandonada definitivamente. Esta versão do Windows foi considerada como a melhor versão já lançada pela Microsoft para usuários domésticos, possui uma interface totalmente simples a inovadora. Um dos problemas é seu consumo, ele só pode ser instalado em estações com mais de 128Mb de memória, e cada vez que a Microsoft lança uma nova versão, é cada vez maior e mais abstraido do hardware. Versões: Home, Professional, Tablet PC, Media Center Edition, Embedded, Starter Edition, Windows XP 64-bit Edition e VISTA O nome de código desta versão, antes do lançamento era Whistler. Windows Server 2003 Windows Server 2003. Versão do Windows lançada em 24 de Abril de 2003, e é também conhecida como Windows NT 5.2, e é o sucessor do Windows 2000 para o ambiente corporativo. Novidades na área administrativa, Active Directory, e automatização de operações. Esta versão do Windows é voltada principalmente para servidores e empresas de grande porte, possui recursos de servidores na ativa e garante a segurança de dados. Versões: Web Edition, Standard Edition, Enterprise Edition, Data Center Edition e Small Business Server (32 e 64 bits). Windows Vista Windows Vista. Também conhecido como Windows NT 6.0, pelo nome de código Longhorn e pelo proprio nome oficial Vista, é o mais novo S.O da Microsoft,e que terá seis versões, uma delas simplificada e destinada aos países em desenvolvimento. O Windows Vista começou a ser vendido em 29 de Janeiro de 2007. As seis edições diferentes do Windows Vista foram projetadas para se ajustar ao modo Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] como você pretende usar seu PC. Ele tem uma interface intitulada Aero,com recursos de transparência,que não tem na Versão Starter e um sistema de alternância 3D de janelas chamado Flip 3D,que é ativado pelo atalho Tab + Windows. A versão básica e popular do Windows Vista (Limitada): • Vista Starter Edition, destinado aos mercados emergentes e paises em desenvolvimento. São duas versões destinadas ao usuário doméstico: • • Vista Home Basic Vista Home Premium As duas versões voltadas para o público corporativo são: • • Vista Business Edition (projetado para atender às necessidades de empresas de todos os portes) Vista Enterprise Edition (necessidades de grandes empresas globais) A versão Ultimate é a edição mais abrangente do Windows Vista. Reúne todos os recursos de infra-estrutura avançados de um sistema operacional empresarial, todos os recursos de gerenciamento e eficiência de um sistema operacional móvel, e todos os recursos de entretenimento digital de um sistema operacional voltado ao consumidor • Vista Ultimate Edition O Vista é o mais pesado e mais novo (é serio?)S.O da família Windows ,que usa +ou- 1Gb de memória e 1Ghz de processador(se vc quer que ele rode "bem") e entre os 128 MB de video,e claro uma boa placa 3D. Windows Seven Windows Vienna. Anteriormente com o codinome Vienna,esse será o sucessor do Windows Vista,onde se incluirão alguns aplicativos que não se encontram no Vista Previsto para 2011. Windows CE Windows CE. Versão minimalista que equipa dispositivos com sistemas embarcados como rádios automotivos,consolas de videojogos (Dreamcast), celulares, PDAs, robôs e TVs. Compatibilidade Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Os primeiros Windows, como o 1.0, 2.0 e 3.x, só são compatíveis em partições formatadas com o sistema de ficheiros FAT, ou como é chamado, FAT 16. No salto do 3.1 para o 95B (Windows 95 OSR 2/OSR 2.1), os HD's poderiam ser formatados em FAT 32. Inicialmente lançado com o Windows NT, a tecnologia NTFS é agora o padrão de facto para esta classe. Com a convergência de ambos sistemas, o Windows XP passou também a preferir este formato. Características técnicas A principal linguagem de programação usada para escrever o código-fonte das várias versões do Windows é a linguagem C. Até à versão 3.11, o sistema rodava em 16 bits (apesar de poder instalar um update chamado Win32s para adicionar suporte a programas 32 bits), daí em diante, em 32 bits. As últimas versões (como o XP, o 2003 Server e o Windows Vista (nome de código Longhorn) está preparado para a tecnologia 64 bits. Esse sistema deveria incluir o sistema de arquivos WinFS, que acabou retirado do Windows Vista. CONHECENDO O KERNEL Fonte:http://pt.wikipedia.org/wiki/Kernel Edição: Gardem Luiz Responsabilidades do kernel As responsabilidades do kernel consistem, genericamente, em abstrair interfaces de hardware diversas e gerir os recursos do computador, permitindo que os programas vulgares utilizem estes recursos concorrentemente de forma segura e padronizada, fornecendo a estes uma interface unificada para os diversos componentes do sistema computacional. Em um computador, a parte central é a CPU: o dispositivo que "executa" os diferentes programas. A memória RAM é o outro recurso crucial do computador: o conjunto de chips onde os programas são carregados para execução e onde são armazenados os seus dados de acesso rápido [1]. Estes são os principais recursos que o kernel gere e divide entre as aplicações. O kernel deve também gerir a entrada e saída, de modo a assegurar que apenas um programa acede a determinado dispositivo a dada altura. Finalmente, o kernel deve disponibilizar aos programas ordinários, executados em espaço do usuário, uma interface uniforme para aceder aos seus serviços. Gerenciamento de processos A principal tarefa do kernel de um sistema operacional (SO) é permitir a execução de aplicações e dar suporte a elas através de níveis de abstração sobre o hardware. Para executar uma aplicação, o kernel precisa carregar na memória o arquivo que contém o código da aplicação (e eventualmente inicializar o seu próprio espaço de endereçamento), inicializar a pilha de execução do programa e assim iniciar a sua execução. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Um kernel multitarefa é preparado para dar ao usuário a ilusão que o número de processos em execução simultânea no computador é maior que o número máximo de processos que o computador é capaz de executar simultaneamente. Tipicamente, o número de processos que um sistema pode executar simultanemamente é igual ao número de CPUs instaladas. Em um sistema multitarefa, o kernel dá a cada programa uma fatia do tempo e alterna de processo para processo tão rapidamente que o usuário pensa que estes processos são executados simultaneamente. O kernel utiliza algoritmos de agendamento para determinar qual processo será executado na sequência e quanto tempo ele terá, ele também considera que um processo pode ter uma prioridade maior em relação aos outros. O kernel deve disponibilizar aos processos um modo para que se comuniquem; isto é conhecido como InterProcess Communication e é obtido através de pipes, memória compartilhada e/ou interrupções de software. O sistema operacional, normalmente, deve suportar multiprocessamento (SMP ou NUMA). Neste caso, programas diferentes e threads de programas podem ser executados em diferentes processadores. Para que um kernel suporte este tipo de sistema, ele deve ser amplamente modificado para ser "re-entrante" e "interruptível", o que significa que ele pode ser interrompido no meio da execução de uma tarefa. Se esta funcionalidade estiver presente, os programas executados ao mesmo tempo em processadores diferentes podem chamar o kernel de maneira segura. O kernel também deve disponibilizar um modo de sincronizar o acesso à memória em processadores diferentes, fazendo com que o gerenciamento de memória e de processos sejam tópicos altamente relacionados. ALGORITIMO: Um algoritmo é uma sequência não ambígua de instruções que é executada até que determinada condição se verifique. Mais especificamente, em matemática, constitui o conjunto de processos (e símbolos que os representam) para efectuar um cálculo. O conceito de algoritmo é freqüentemente ilustrado pelo exemplo de uma receita, embora muitos algoritmos sejam mais complexos. Eles podem repetir passos (fazer iterações) ou necessitar de decisões (tais como comparações ou lógica) até que a tarefa seja completada. Um algoritmo corretamente executado não irá resolver um problema se estiver implementado incorretamente ou se não for apropriado ao problema. EXEMPLO ALGORITIMO 1 Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Um algoritmo não representa, necessariamente, um programa de computador, e sim os passos necessários para realizar uma tarefa. Sua implementação pode ser feita por um computador, por outro tipo de autômato ou mesmo por um ser humano. Gerenciamento de memória O kernel tem acesso completo à memória do sistema e deve permitir que os programas do espaço do usuário tenham acesso seguro à memória quando o requisitam. O primeiro passo para permitir esta funcionalidade é o endereçamento virtual, usualmente obtido através da paginação ou segmentação. O endereçamento virtual permite ao kernel fazer com que um dado endereço apareça como outro, o endereço virtual. Isto permite ao programa acreditar que ele é o único em execução (com exceção do kernel) e assim previne que as aplicações colidam umas com as outras. Um endereço virtual de um programa pode ser uma referência a dados que não estão na memória RAM. O nível de abstração disponibilizado pela memória virtual permite ao sistema operacional o uso de outros repositórios de dados, como discos rígidos, para armazenar aquilo que, de outra forma, seria armazenado na memória principal do sistema. Como resultado, os sistemas operacionais permitem que um programa utilize mais memória que aquela disponível fisicamente no sistema. Quando um programa necessita de dados que não estão na memória naquele momento, o SO escreve no disco os dados encontrados numa porção de memória não utilizada e substituí-a com os dados que o programa requisitou (lê do disco). Além disso, o endereçamento virtual permite a criação de partições virtuais da memória, na forma de duas áreas separadas, uma reservada para o kernel (espaço do kernel) e outra para as aplicações (espaço do usuário). Gerenciamento de dispositivo Para realizar algum trabalho real, o SO precisa acessar os periféricos conectados ao computador, que são controlados por drivers de dispositivo disponibilizados por desenvolvedores e/ou fabricantes deste dispositivo (hardware). Por exemplo, para mostrar algo na tela, o kernel delega o trabalho Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] ao driver de monitor (VGA ou VESA) que fica responsável por mostrar os caracteres. Inicialmente, um gerenciador de dispositivo realiza uma busca nos diferentes barramentos existentes (como PCI ou USB) para descobrir dispositivos instalados, e então procura pelos drivers apropriados. Como o gerenciamento de dispositivo é um assunto especificamente de sistemas operacionais, estes drivers são manipulados de maneira diferente em cada projeto de kernel, mas em todos os casos, o kernel deve disponibilizar a I/O para permitir que estes drivers acessem fisicamente os dispositivos através de alguma porta ou locação de memória. Decisões muito importantes devem ser tomadas em um projeto de um sistema de gerenciamento de dispositivos, já que todo acesso envolve trocas de contexto, fazendo com que esta operação utilize a CPU muito intensamente, causando possíveis problemas de desempenho. Obs: I/O é um sigla para Input/Output, em português E/S ou Entrada/Saída. Este termo é utilizado quase que exclusivamente no ramo da computação (ou informática), indicando entrada (inserção) de dados por meio de algum código ou programa, para algum outro programa ou hardware, bem como a sua saída (obtenção de dados) ou retorno de dados, como resultado de alguma operação de algum programa, conseqüentemente resultado de algum input. São exemplos de unidades de entrada de um computador: disco rígido, microfone, teclado, mouse, Tela Sensível ao toque, Scanner de Mão, Scanner de Mesa, Celular, Pendrive, Câmera Fotógrafica Digital, Webcam, joysticks e outros acessorios de jogos. São exemplos de unidades de saída de um computador: monitor, caixas de som, impressora, disco rígido. Algumas unidades são de entrada e saída de dados ou também chamados Dispositivos Híbridos: disco rígido, disco flexível ou disquete, monitor sensível a toques, joystick vibratório. Chamadas de sistema Para que seja possível realizar algum trabalho útil, um programa no espaço do usuário deve ter acesso a todos os serviços disponibilizados pelo kernel. Esta implementação é diferente em cada kernel, mas deve disponibilizar uma API Application Programming Interface (ou Interface de Programação de Aplicativos) ao programa, que por sua vez invoca as funções do kernel relacionadas, memória compartilhada ou interrupções. Abordagens de projeto de kernel Kernel monolítico Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Diagrama de interação de um kernel monolítico (ou mono-bloco). Kernel monolítico ou mono-bloco é um kernel que implementa uma interface de alto nível para possibilitar chamadas de sistema específicas para gestão de processos, concorrência e gestão de memória por parte de módulos dedicados que são executados com privilégios especiais. Alguns exemplos deste tipo de kernel: • • • • BSD Linux MS-DOS e derivados, incluindo Windows 95, Windows 98 e Windows ME Solaris Micro-kernel Diagrama de interacção de um micro-kernel. Micro-kernel é um termo usado para caracterizar o sistema cujas funcionalidades do sistema saíram do kernel e foram para servidores, que se comunicam com um núcleo mínimo, usando o mínimo possível o "espaço do sistema" (nesse local o programa tem acesso a todas as instruções e a todo o hardware) e deixando o máximo de recursos rodando no "espaço do usuário" (no espaço do usuário, o software sofre algumas restrições, não podendo acessar alguns hardwares, nem tem acesso a todas as instruções). • • Hurd Minix Kernel híbrido Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Diagrama de interacção de um kernel híbrido. Kernel híbrido define um kernel baseado em microkernel no qual módulos externos a ele podem executar operações em modo kernel (protegido), a fim de evitar trocas de contexto e melhorar o desempenho geral do sistema. • • • BeOS / Haiku Microsoft Windows NT, Microsoft Windows Vista XNU (núcleo do Darwin utilizado no Mac OS X) GNU/LINUX Se você chegou até aqui, é obvio que já ouviu falar muito sobre o Linux, então acho desnecessário repetir mais uma vez aquela história açucarada de um finlandês que resolveu criar seu próprio sistema operacional. A verdade é que o Linux tornou-se uma realidade por existir uma grande demanda por um sistema operacional aberto. A Free Software Fundation já existia desde o início da década de 80, aplicativos como o EMacs e o compilador GCC já haviam formado um grupo de programadores interessados em desenvolver aplicativos open source e isto estava em expansão graças à Internet. O Linux surgiu então na hora certa, atraindo o trabalho desta comunidade em desenvolvimento. Não é à toa que muitos chama o Linux de "GNU/Linux" já que desde os estágios iniciais de desenvolvimento o Linux foi amparado pelo trabalho da Free Software Fundation. O Linux não é o trabalho de um homem só, mas o fruto dos esforços colaborativos de uma grande comunidade, a prova de que o ser humano, ou pelo menos os seres humanos mais inteligentes, são movidos à desafios. Para estas pessoas, o dinheiro acaba sendo um coadjuvante e, como os envolvidos trabalham por algum ideal e não por obrigação, cada um acaba dando o melhor de sí em seu trabalho. Hoje em dia muitas grandes empresas contribuem no desenvolvimento do Linux, a maioria claro, movidas apenas pelo interesse econômico. Mas, isso não é ruim, pois permite que as empresas atinjam seus objetivos e façam a economia crescer ao mesmo tempo em que trabalham no desenvolvimento contínuo do sistema. A troca acaba sendo benéfica para os dois lados. No final das contas parece claro que para continuar crescendo o Linux precisa mesmo do apoio das empresas. Os programadores voluntários são uma elite numericamente limitada, extremamente eficiente para cuidar do desenvolvimento do kernel e outros aspectos técnicos do sistema, mas nem sempre interessada em desenvolver interfaces, documentação, aplicativos fáceis de usar, etc. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] É aí que entram as empresas, transformando todo este esforço em produtos bem acabados, capazes de ganhar participação no mercado. Os dois grupos são respectivamente o Back end e o Front end do sistema, a parte mecânica e a parte estética que precisam caminhar juntas. Imagine um Audi com cara de Brasília, ou um Fiat 147 com mecânica de Honda Civic. Certamente nenhum dos dois venderia bem não é mesmo? Vale lembrar que a licença GNU não impede ninguém de ganhar dinheiro com o sistema, apenas impede que algum espertalhão possa se apoderar do trabalho já feito. A liberdade reside no código aberto, não necessariamente na gratuidade. É possível cobrar pelo desenvolvimento de soluções, pelo suporte ou mesmo criar um sistema de licenças para o uso do software, como algumas distribuições Linux vêm fazendo. Este é um ponto importante, pois sem dinheiro, o Front End do desenvolvimento do Linux (feita pelas empresas) não funciona e o sistema não sai do lugar. Um exemplo disso é a Loki, que portou vários bons jogos para o Linux, fazendo um trabalho extremamente competente, mas acabou fechando pois as vendas foram bem abaixo do esperado. Muitos usuários não queriam pagar 70 reais pelos jogos, queriam de graça... No final ficaram sem nada. Um alerta para quem acredita no futuro do Linux. Um sistema de arquivos é um conjunto de estruturas lógicas e de rotinas, que permitem ao sistema operacional controlar o acesso ao disco rígido. Diferentes sistemas operacionais usam diferentes sistemas de arquivos. O Windows 98 por exemplo suporta apenas os sistemas FAT 16 e FAT 32, o Windows 2000 suporta também o NTFS, que é seu sistema de arquivos nativo. O Linux utiliza o EXT2 como sistema nativo, mas também também suporta outros sistemas. Assim como os sistemas operacionais, os sistemas de arquivos estão em constante evolução. O NTFS do Windows 2000 traz recursos que não existem no NTFS do Windows NT 4, enquanto o EXT2 do Linux em breve dará lugar ao EXT3, que traz vários recursos novos além de ter um melhor desempenho. NT File System. Sistema de arquivos usado pelo Windows NT e Windows 2000. Oferece vários recursos, entre eles a possibilidade de compactar arquivos e pastas individualmente, corrigir erros automaticamente e (no NTFS 5 usado no Windows 2000) criptografar arquivos e pastas, impedindo o acesso de pessoas não autorizadas com um bom nível de segurança. O NTFS apresenta uma confiabilidade muito superior à FAT 32 utilizada pelo Windows 98. Linux refere-se a qualquer sistema operacional do tipo Unix que utiliza o núcleo Linux. É um dos mais proeminentes exemplos de desenvolvimento com código aberto e de software livre conhecidos: seu código fonte está disponível para qualquer pessoa utilizar, estudar, modificar e distribuir livremente. GNU/Linux refere-se a qualquer sistema operacional do tipo Unix que utiliza o núcleo Linux e também os programas de sistema GNU. Como os casos de sistemas de núcleo Linux sem os programas de sistema GNU são raros, freqüentemente GNU/Linux e Linux são sinônimos. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 1 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Inicialmente desenvolvido e utilizado por nichos de entusiastas em computadores pessoais, o sistema Linux passou a ter a colaboração de grandes empresas, como a IBM, a Sun Microsystems, a Hewlett-Packard, e a Novell, ascendendo como principal sistema operacional para servidores -- oito dos dez serviços de hospedagem mais confiáveis da Internet utilizam o sistema Linux em seus servidores web.[1] Linux tornou-se o sistema capaz de funcionar no maior número de arquiteturas computacionais possíveis. É utilizado em aparelhos variando desde supercomputadores, até celulares, e vem ganhando popularidade no mercado de computadores pessoais.[2] Núcleo vs. Sistema operacional O Linux é, geralmente, considerado o Núcleo (ou "cerne", "coração", do inglês kernel) do sistema operacional (SO). Entretanto, segundo Tanenbaum e Schilberschatz, pode ser considerado o próprio SO, quando este é definido como gerenciador de recursos de hardware. Nos meios de comunicação, Linux refere-se ao sistema completo, incluindo o núcleo Linux e outros programas de sistema. Sistemas completos construídos em torno do kernel Linux maioritariamente utilizam o sistema GNU que oferece um interpretador de comandos, utilitários, bibliotecas, compiladores. Richard M. Stallman, criador e líder do projeto GNU, solicita aos utilizadores que se refiram a sistemas baseados no Linux como o sistema completo GNU/Linux. A maioria dos sistemas também inclui ferramentas e utilitários baseados no BSD e tipicamente usam XFree86 ou X.Org para oferecer a funcionalidade do sistemas de janelas X — interface gráfica. O Linux hoje funciona em dezenas de plataformas, desde mainframes até um relógio de pulso, passando por várias arquitecturas: x86 (Intel, AMD), x86-64 (Intel EM64T, AMD64), StrongARM, PowerPC, Alpha etc., com grande penetração também em sistema embutidos, como handheld, PVR, vídeo-jogos e centros multimedia, entre outros. História do Linux Richard Stallman, fundador do projeto GNU para um sistema operacional livre. Em computação, o projecto GNU é 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 e distribuir sem ter que pagar licenças de uso. 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. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Stallman escolheu o nome GNU porque este nome, além do significado original do mamífero Gnu, é um acrônimo recursivo de: GNU is Not Unix (em português: GNU não é 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 kernel do sistema operacional. O grupo liderado por Stallman estava desenvolvendo um kernel chamado Hurd. O Kernel do Linux foi, originalmente, escrito por Linus Torvalds do Departamento de Ciência da Computação da Universidade de Helsinki, Finlândia, com a ajuda de vários programadores voluntários através da Usenet. Linus Torvalds começou o desenvolvimento do kernel como um projeto particular, inspirado pelo seu interesse no Minix, um pequeno sistema UNIX desenvolvido por Andrew S. Tanenbaum. Ele limitou-se a criar, nas suas próprias palavras, "um Minix melhor que o Minix" ("a better Minix than Minix"). E depois de algum tempo de trabalho no projecto, sozinho, ele enviou a seguinte mensagem para comp.os.minix: Você suspira pelos bons tempos do Minix-1.1, quando os homens eram homens e escreviam seus próprios "device drivers"?[3] Você está sem um bom projeto em mãos e está desejando trabalhar num S.O. que você possa modificar de acordo com as suas necessidades? Está achando frustrante quando tudo funciona no Minix? Chega de noite ao computador para conseguir que os programas funcionem? Então esta mensagem pode ser exatamente para você. Como eu mencionei há um mês atrás, estou trabalhando numa versão independente de um S.O. similar ao Minix para computadores AT-386. Ele está, finalmente, próximo do estado em que poderá ser utilizado (embora possa não ser o que você está esperando), e eu estou disposto a disponibilizar o código-fonte para ampla distribuição. Ele está na versão 0.02... contudo eu tive sucesso ao executar bash, gcc, gnu-make, gnu-sed, compressão, etc. nele. No dia 5 de outubro de 1991 Linus Torvalds anunciou a primeira versão "oficial" do Linux, versão 0.02. Desde então muitos programadores têm respondido ao seu chamado, e têm ajudado a fazer do Linux o sistema operativo/operacional que é hoje... Kernel Linux Núcleo do Linux. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Linus Torvalds, principal criador do Kernel Linux. O Kernel do Linux foi inicialmente desenvolvido pelo estudante finlandês Linus Torvalds numa tentativa de conseguir o seu próprio sistema operativo semelhante ao Unix (Unix-like) que corresse em processadores Intel 80386. Linus obteve uma cópia do Minix e estudou-o, mas não ficou satisfeito com sua arquitectura. O projecto foi lançado em 1991 numa famosa mensagem para a Usenet. Curiosamente, o nome Linux foi criado por Ari Lemmke, administrador do site ftp.funet.fi que deu esse nome ao diretório FTP onde o kernel do linux estava inicialmente disponível [4] (Linus tinha-o baptizado como "Freax", inicialmente). Logo desde o princípio, ele recebeu a ajuda de hackers do Minix, e hoje recebe contribuições de milhares de programadores de todo mundo. Arquitetura O Linux é um kernel monolítico. Isto significa que as funções do kernel (agendamento de processos, gerenciamento de memória, operações de entrada e saída, acesso ao sistema de arquivos) são executadas no espaço do kernel. Uma característica do Linux é que algumas das funções (drivers de dispositivos, suporte à rede, sistemas de arquivo, por exemplo) podem ser compiladas e executadas como módulos (LKM - loadable kernel modules), que são bibliotecas compiladas separadamente da parte principal do kernel e podem ser carregadas e descarregadas após o kernel estar em execução. Portabilidade Embora Linus Torvalds não tenha tido como objetivo inicial tornar o Linux um sistema portável, ele evoluiu nessa direção. Linux é hoje, na verdade, um dos núcleos (kernels) de sistema operacional com mais portabilidade, correndo em sistemas desde o iPaq (um computador portátil) até o IBM S/390 (um denso e altamente custoso mainframe) De qualquer modo, é importante notar que os esforços de Linus foram também dirigidos a um diferente tipo de portabilidade. Portabilidade, de acordo com Linus, era a habilidade de facilmente compilar aplicações de uma variedade de Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] fontes no seu sistema; portanto o Linux originalmente tornou-se popular em parte devido ao esforço para que as fontes GPL ou outras favoritas de todos corressem em Linux. Termos de Licenciamento Inicialmente, Torvalds lançou o Linux sob uma licença que proibia qualquer uso comercial. Isso foi mudado de imediato para a Licença Pública Geral GNU. Essa licença permite a distribuição e mesmo a venda de versões possivelmente modificadas do Linux mas requer que todas as cópias sejam lançadas dentro da mesma licença e acompanhadas do código fonte. Apesar de alguns dos programadores que contribuem para o kernel permitirem que o seu código seja licenciado com GPL versão 2 ou posterior, grande parte do código (incluído as contribuições de Torvalds) menciona apenas a GPL versão 2. Isto faz com que o kernel como um todo esteja sob a versão 2 exclusivamente, não sendo de prever a adopção da nova GPLv3. Sistema operacional GNU/Linux Logo que Linus Torvalds passou a disponibilizar o Linux, ele apenas disponibilizava o núcleo com alguns comandos básicos. O próprio usuário devia encontrar os outros programas, compilá-los e configurá-los e, talvez por isso, o Linux tenha carregado consigo a etiqueta de sistema operativo apenas para técnicos. Foi neste ambiente que surgiu a MCC (Manchester Computer Centre), a primeira distribuição Linux, feita pela Universidade de Manchester, na tentativa de poupar algum esforço na instalação do Linux. Desde o começo, o núcleo Linux era inútil sem os utilitários GNU. De facto, o núcleo é apenas uma parte de um sistema operacional utilizável: são necessários também vários outros componentes como bibliotecas de funções, interpretadores de comandos, utilitários e mesmo, em última instância, aplicativos como compiladores e editores de texto. Todos esses já vinham sendo reunidos pelo Projeto GNU da Free Software Foundation (‘Fundação Software Livre’), que embarcara num subprojeto que ainda continua para obter um núcleo, o Hurd. Dada a demora no subprojeto do núcleo GNU, o Linux veio a constituir um sistema operacional completo híbrido, o GNU/Linux. Distribuições Distribuições de Linux. Actualmente, um Sistema Operacional (em Portugal Sistema Operativo) GNU/Linux completo (uma "distribuição de GNU/Linux") é uma coleção de software livre (e por vezes não-livres) criados por indivíduos, grupos e organizações de todo o mundo, tendo o Linux como seu núcleo. Companhias como a Red Hat, a SuSE, a Mandriva (união da Mandrake com a Conectiva), bem como projetos de comunidades como o Debian ou o Gentoo, compilam o software e fornecem um sistema completo, pronto para instalação e uso. Patrick Volkerding também fornece uma distribuição Linux, o Slackware. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] As distribuições de GNU/Linux começaram a receber uma popularidade limitada desde a segunda metade dos anos 90, como uma alternativa livre para os sistemas operacionais Microsoft Windows e Mac OS, principalmente por parte de pessoas acostumadas com o Unix na escola e no trabalho. O sistema tornou-se popular no mercado de Desktops e servidores, principalmente para a Web e servidores de bancos de dados. No decorrer do tempo, várias distribuições surgiram e desapareceram, cada qual com sua característica. Algumas distribuições são maiores outras menores, dependendo do número de aplicações e sua finalidade. Algumas distribuições de tamanhos menores cabem num disquete com 1,44 MB, outras precisam de vários CDs, existindo até algumas versões em DVD. Todas elas tem o seu público e sua finalidade, as pequenas (que ocupam poucos disquetes) são usadas para recuperação de sistemas danificados ou em monitorizações de redes de computadores. Existem as versões de 64 bits do Linux, otimizadas para correr em microcomputadores com microprocessadores de 64 bits. De entre as maiores, distribuídas em CDs, podem-se citar: Slackware, Debian, Suse e Conectiva. O que faz a diferença é como estão organizadas e préconfiguradas as aplicações. A distribuição Conectiva Linux, por exemplo, tinha as suas aplicações traduzidas em português, o que facilitou que usuários que falam a Língua Portuguesa tenham aderido melhor a esta distribuição. Hoje esta distribuição foi incorporada à Mandrake, o que resultou na Mandriva. Para o português, existe também a distribuição brasileira Kurumin, construída sobre Knoppix e Debian. Existem distribuições com ferramentas para configuração que facilitam a administração do sistema. As principais diferenças entre as distribuições estão nos seus sistemas de pacotes, nas estruturas dos diretórios e na sua biblioteca básica. Por mais que a estrutura dos diretórios siga o mesmo padrão, o FSSTND é um padrão muito relaxado, principalmente em arquivos onde as configurações são diferentes entre as distribuições. Então normalmente todos seguem o padrão FHS (File Hierarchy System), que é o padrão mais novo . Quanto à biblioteca, é usada a Biblioteca libc, contendo funções básicas para o sistema Operacional Linux. O problema está quando do lançamento de uma nova versão da Biblioteca libc, algumas das distribuições colocam logo a nova versão, enquanto outras aguardam um pouco. Por isso, alguns programas funcionam numa distribuição e noutras não. Existe um movimento LSB (Linux Standard Base) que proporciona uma maior padronização. Auxilia principalmente vendedores de software que não liberam para distribuição do código fonte, sem tirar características das distribuições. O sistemas de pacotes não é padronizado. Caixa Mágica, Debian, Dual OS, Fedora, Freedows, Kurumin, Mandriva, Slackware, SuSE, Ubuntu Linux e e são algumas das distribuições mais utilizadas actualmente, listadas aqui por ordem alfabética. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] A distribuição de Linux portuguesa é a Caixa Mágica, estando preparada para as especificidades do país como Teclado, localização de aplicações e suporte de modems (Speedtouch, Santis,...). Um exemplo de distribuição que corre num CD é o Kurumin Linux, criado por Carlos E. Morimoto, baseada no Knoppix. De entre as distribuições consideradas mais difíceis de gerir (por preferirem assegurar a estabilidade tecnológica em detrimento da interface de utilizador), destacam-se a Debian, Gentoo e Slackware. Distribuições de propósito geral • • • • • • • • Fedora Gentoo Linux GoboLinux • Knoppix • • Arch Linux BigLinux Caixa Mágica Conectiva • • • • • • [5] Cytrun Linux Debian DebianBR-CDD Kake Linux Kalango Linux Kurumin Linux Famelix Lycoris Mandriva • • • • RXART Linux Skolelinu x Slackwar e Linux Sorcerer GNU/Lin ux [5] • Muriqui Linux • Red Hat Linux • • • • • • • • TechLinux tsl linux Kurumim Ubuntu Linux Kubuntu White Box Caixa Mágica SuSE Alguns grupos compilam distribuições Linux para propósitos especiais como firewalls, etc. Distribuições LiveCD Estas distribuições correm (rodam) directamente do CDROM, sem necessidade de instalação. • • • • Knoppix Kurumin Kalango Resulinu x • • • • • Kake Linux Kanotix Rxart linux Big Linux Kalang o Linux • • • Fameli x Quantix SLAX • Goblin X • Dizinha Linux • • • Gentoo Linux Arco Debi an Linu x • • GoblinX Ubuntu Linux • Caixa Mágica Litrix Linu x Distribuições de propósitos especiais • Cytrun Linux - Security Server Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] • • • • • • • • • Embedded Debian UcLinux Arm-Linux Bootable Business Card Dyne:Bolic GeexBox Sentry Firewall The Linux Router Project Ubuntu Linux Desktops Ambiente gráfico KDE Ambiente gráfico GNOME Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2 Sistema Operacional – Mediador: Gardem Luiz [email protected] – [email protected] Com ambientes gráficos como KDE e GNOME , Linux oferece um interface gráfica de usuário mais como Mac OS/Windows que a tradicional interface de linha de comando do Unix, e muitos pacotes open source (embora nem sempre software livre) oferecem a funcionalidade de programas disponíveis em desktops de outros sistemas operacionais. A organização Linux Simples para o Usuário Final (SEUL), é um grupo que defende a adoção do Linux e programas de usuário final para esse sistema operacional. • Ao contrário do que alguns pensam, GNOME não é um gerenciador de janelas, e sim uma plataforma para aplicações que utiliza serviços de outros gerenciadores de janelas, como o Metacity. Fonte:http://pt.wikipedia.org/wiki/Linux#N.C3.BAcleo_vs._Sistema_operac ional Edição: Gardem Luiz 1. ↑ Rackspace Most Reliable Hoster in September. Netcraft (7 de Outubro 2006). Acessado em 2006-11-01. 2. ↑ Burke, Steven. "Red Hat looks to boost channel sales", CRN, 2006-0320. Acesso em 2006-04-01. 3. ↑ Primeiro período do original, em inglês — Do you pine for the nice days of minix-1.1, when men were men and wrote their own device drivers? 4. ↑ Linux Anecdotes. Lars Wirzenius (27 de Abril de 1998). Acessado em 2006-12-31. 5. ↑ 5,0 5,1 As empresas Conectiva e Mandrake se uniram e deram origem à distribuição Mandriva. Gardem Luiz – Consultor Técnico em TI – 9202-5096 / 3225-1503 2