(Parte 1 de 2)

Universidade Independente de Angola

Faculdade de Ciência de Engenharia e Tecnologia

Sala: A.2.7

Turma: A.1

Ano: I

Turno: Manhã

Curso: Engenharia Informática

Cadeira: Introdução à Informática

DocenteAntónio da Costa

Luanda, 2016

Integrantes do Grupo

Afonso José Nzuzi Vilhena

Amilton S. Dias

Djamila W. Xavier Cunga

Eduardo Simão da Costa

Francisco Janota Anastácio

Jéssica Sanga

Joice José Ginga

Juelma Catualile

Márcia Pedro Manuel

Wilson Tchingala

Índice

Luanda, 2016 1

Integrantes do Grupo 2

Índice 3

1.Introdução 4

2.Breve Historial Sobre Sistema Operativo 5

2.1.Para que Serve um Sistema Operativo 7

2.2.Principais Tarefas de um Sistema Operativo 8

2.3.Componentes de um Sistema Operativo 8

2.4.Serviços de um Sistema Operacional 9

2.5.Funcionamento do Sistema Operativo 11

3.Classificação dos Sistemas Operativos 13

3.1.Os sistemas operativos mais utilizados no Mundo 15

3.1. Outros sistemas operativos livres 15

Conclusão 16

Bibliografia 17

  1. Introdução

No presente trabalho abordaremos sobre Sistema Operativo, dizer que é um conjunto de programas e dados concebidos especificamente para gerir os recursos de Hardware e facilitar a criação e execução de Software. Ele actua como uma plataforma que age como base entre os hardwares e os softwares do seu computador, sendo responsável pelo agenciamento geral da máquina.

  1. Breve Historial Sobre Sistema Operativo

O computador como conhecido hoje surgiu após a segunda guerra mundial na década de 40. Naqueles anos não havia sequer o conceito de sistema operacional e programadores a interagir directamente com o hardware do computador que trabalha em linguagem de máquina ou seja em binário programando unicamente com 01.

Em 1964 uma equipa de programadores, naquela época engenheiros das empresas AT&T e General Eletronic, liderados pela universidade Massachusetts Institute of Tecnology desenvolveram o Multics, cujo objectivo era suportar centenas de usuários. Apesar do fracasso comercial, o Multics serviu como base para o estudo e desenvolvimento de sistemas operacionais.

Em 1969 Um dos desenvolvedores do Multics, que trabalhava para a Bell, Ken Thompson, começou a reescrever o Multics num conceito menos ambicioso, criando o Unics, que mais tarde passou a chamar-se Unix. Os sistemas operacionais eram geralmente programados em assembly, até mesmo o Unix em seu início. Dennis Ritchie criou a linguagem C a partir da linguagem B, que havia sido criada por Thompson. Em 1973 Thompson e Ritchie reescreveram o Unix em linguagem C.

Em 1976 Steve Jobs o guru da Apple, tem uma ideia que revolucionou o mundo, criando um computador pequeno, portátil e barato o suficiente para que, qualquer pessoa pudesse ter um, o Apple 2, (o Apple 1 era apenas uma placa de computador ligada a um teclado).

Em 1980 a gigante dos computadores de grande porte, a IBM (International Business Machines), decide entrar para o mercado dos computadores pessoais, mas seu computador pessoal, o PC (Personal Computer) assim baptizado pela IBM, não possuía nenhum programa para rodar nele. A IBM fechou contrato com a Microsoft de Bill Gates, para ela fornecer o Sistema Operacional de seu PC's. Bill Gates, um visionário homem de negócios, fechou na época o que é considerado por muitos o melhor negócio de todos os tempos: vendeu para a IBM o que não tinha, um Sistema Operacional. Bill Gates procurou Tim Paterson que desenvolveu o QDOS_ e comprou dele por míseros US$50.000; rebaptizou o sistema de MS-DOS e vendia a licença de uso para os computadores da IBM. A rápida popularização dos PC's provocou um crescimento meteórico da pequena Microsoft. Mais tarde Bill Gates contratou Tim Paterson para trabalhar na Microsoft: Tim Paterson, que podia ter se tornado o homem mais rico do mundo, por ironia, trabalhava para Bill Gates. Ao contrário do Unix, o MS-DOS é um sistema operacional pensado para ser simples, único usuário, só funciona nos processadores Intel, só executa um programa por vez, originalmente não trabalhava em rede.

Em 1984 Steve Jobs Rouba da Xerox, como ele mesmo admite, a ideia de um sistema operacional baseado em objectos clicáveis com um rato, e a Apple lança no mercado o Machintosh ou para os mais íntimos simplesmente Mac. O Mac OS, possui seu código desenvolvido pela Apple é fechado e proprietário. O Mac OS foi desenvolvido do zero, desta forma era incompatível com os programas feitos para a Apple 2, o Macintosh tornou a Apple 2 obsoleta.

Em 1986 a Microsoft lança o Windows 1, este nem mesmo era um sistema operativo. Era um aplicativo de janelas que rodava em cima do MS-DOS. O lançamento do Windows manteve compatibilidade dos programas feitos para o MS-DOS, e adicionou a interface clicável com rato.

Em 1987 Andrew Stuart Tanenbaum cria o Minix para demonstrar seu livro "Operating Systems Design and Implementation". O Minix é um Unix-like compacto escrito em 12.000 linhas de código, gratuito e com o código fonte conhecido, roda até mesmo em um 286 com apenas 16mb de memória RAM, e é possível rodar através de um "live-CD" sem necessidade de instalação.

Em 1991 Linus Torvalds, inspirado pelo Minix, lança publicamente como software livre o Linux. Posteriormente, faz tão grande sucesso que recebe contribuição de milhares de programadores ao redor do mundo, grandes empresas também contribuem na programação de seu código como IBM, Sun Microsystems, Hewlett-Packard (HP), Red Hat, Novell, Oracle, Google, Mandriva e Canonical, e actualmente o Linux é o kernel mais utilizado, desde computadores de grande porte, passando por computadores pessoais, DVD player, roteadores, celulares e etc.

Em 1993 a Microsoft lança o Windows NT. Sistema Operativo da família Windows, é o primeiro a pensar no ambiente de rede e ser independente do MS-DOS. Ele possui um emulador de MS-DOS em janela, onde também é possível passar comandos para o sistema operativo. O Windows NT trouxe o sistema de arquivos NTFS, o sistema anterior (FAT) é funcional e relativamente simples, porém com o uso provoca fragmentação dos arquivos gravados. O sistema de arquivos NTFS foi pensado para suprir as deficiências do sistema FAT, bem como passa a trabalhar com criptografia nativa de dados, múltiplos usuários e suporta tamanhos maiores de discos.

Em 1994 é lançado Mac's com processadores Power-PC da IBM, de arquitectura RISC. Essas máquinas surgem de uma aliança entre Apple, IBM eMotorola; devido a mudança de plataforma, o Mac inteiro teve que ser reescrito; para manter a compatibilidade com programas escritos para o antigo Mac foi usado um emulador que provocava lentidão; à medida que os aplicativos foram sendo reescritos para o novo padrão, o emulador deixou de ser usado.

Logo do ReactOS Um grupo de colaboradores, que em 1996 fazem uma tentativa frustrada de produzir um clone livre do MS Windows 95, reiniciam o trabalho, porém agora tendo como meta o MS Windows NT. É um sistema operacional livre que se beneficiou de bastante código do projecto Wine ("Wine Is Not an Emulator), outro projecto de software livre.

Em 2001 é lançado o Windows XP; as implementação do Windows NT direccionadas ao ambiente corporativo chegam ao usuário doméstico; o MS Windows XP mantém compatibilidade de software com todas as versões anteriores: essa escolha por parte dos programadores deste só resultou em seu sucesso. O Windows foi e é actualmente o sistema operacional mais utilizado em Desktops e Laptops; neste sector é o SO que tem a maior variedade de aplicativos.

Em 2006 os Mac's passaram a utilizar os processadores Intel, a mudança de plataforma exigiu mais uma vez a mudança de sistema operativo. A Apple passou a utilizar o núcleo open-source Darwin, um comprovado estável kernel Unix-like.

Em 2008 a Google lança no mercado o Sistema Operacional open-source Andróide, com seu núcleo em Linux.

    1. Para que Serve um Sistema Operativo

Agora que você já sabe o que é sistema operacional, é importante saber para que serve. O sistema operacional actua como uma plataforma que age como base entre os hardwares e os softwares do seu computador, sendo responsável pelo agenciamento geral da máquina.

Na prática, ele é que permite a inicialização do computador ou outro equipamento electrónico. Uma vez accionado, ele é o responsável pelo funcionamento da máquina e todos os seus componentes e demais programas.

    1. Principais Tarefas de um Sistema Operativo

As principais tarefas de um sistema operativo são:

Execução de Programas: É necessário realizar um conjunto de tarefas para a execução de um programa. Instruções e dados têm de ser carregados em memória, dispositivos de I/O (Entrada/Saída) e ficheiros têm de ser inicializados. Mecanismos de partilha prontos.

Acesso a dispositivos de Entrada e Saída: Cada dispositivo de I/O tem o seu conjunto de instruções, sinais de controlo e operação. O sistema operativo torna transparentes as particularidades dos vários periféricos.

Acesso controlado a ficheiros: No caso dos ficheiros, para além da natureza do dispositivo de I/O, o SO deve permitir ler ficheiros em vários formatos e protege-los de acordo com o tipo de acesso permitido aos vários utilizadores.

Criação de Programas: O sistema operativo disponibiliza facilidades e serviços, como editores e debuggers, que se encontram na forma de utilitários que não fazem verdadeiramente parte do sistema operativo.

Acesso ao sistema: No caso de um sistema partilhado, deve ser controlado o acesso ao sistema como um todo e especificamente a cada recurso.

Detecção de erros e resposta: O sistema deve dar resposta a uma grande variedade de erros que podem acontecer tanto no hardware como no software.

Registo de parâmetros: Um bom sistema operativo permite registar estatísticas relativas a vários recursos e monitorizar parâmetros de desempenho. Esta informação permite o ajuste do sistema aumentando o seu desempenho.

    1. Componentes de um Sistema Operativo

Gestão de Processos: Sendo um processo um programa em execução, devem ser disponibilizadas sobre eles as seguintes funções básicas: criação, eliminação, suspensão, activação, sincronização e comunicação. Adicionalmente o sistema operativo deve garantir uma partilha correcta do tempo de CPU entre os vários processos.

Gestão de Memória: Sendo a memória o dispositivo onde são carregados os processos em execução e o próprio sistema operativo, este deve permitir a reserva, libertação e monitorização do espaço em memória. Se o sistema operativo dispuser de um mecanismo de memória virtual então o espaço disponível para os processos poderá exceder a memória física (RAM) disponível no sistema.

Gestão de I/O (Entrada/Saída): Um sistema computacional dispõe de vários periféricos sobre os quais são possíveis operações de leitura (entrada) e/ou de escrita (saída). Então para cada dispositivo (ou grupos de dispositivos) o SO dispõe de módulos que lidam especificamente com cada tipo de dispositivos (défice drivers).

Gestão de Ficheiros: Sendo um ficheiro uma colecção de informação relacionada, devem ser disponibilizadas sobre eles as seguintes funções básicas: criação, eliminação e manipulação. Adicionalmente deve existir a possibilidade de organizar os ficheiros (em directorias) e de realizar cópias de segurança (backups).

Protecção: O sistema operativo poderá disponibilizar mecanismos de protecção para controlar os acessos dos processos aos recursos e dos utilizadores ao sistema.

Interpretador de comandos: Muitos dos comandos passados ao sistema operativo são instruções de controlo que lidam com os mecanismos de gestão do sistema operativo. O programa que lê e interpreta essas instruções de controlo é o interpretador de comandos.

Chamadas de sistema: A comunicação entre os processos e o sistema operativo é realizada através de chamadas de sistema (system calls). Estas são funções disponibilizadas através de bibliotecas (APIs-Application Programming Interfaces) pelo sistema operativo e podem ser utilizadas em qualquer programa. A chamadas do sistema criam, apagam e utilizam vários objectos de software e estruturas de dados geridos pelo sistema operativo. Os mais importantes destes objectos são os processos e os arquivos.

    1. Serviços de um Sistema Operacional

Vamos falar um pouco sobre os serviços que um sistema operativo pode oferecer. Este conteúdo vai lhe dar uma visão geral do que um sistema operativo deve fazer ou fornecer ao usuário e ao sistema.

O sistema operativo deve permitir a execução de programas. Contudo, ele não faz apenas isso. Ele também fornece serviços para o usuário e para o próprio sistema.

Tipicamente, são eles:

  • Interface com usuário

  • Execução propriamente dita dos programas

  • Operações de I/O

  • Manipulação do Sistema de Arquivos

  • Comunicações entre processos

  • Detecção de erros

  • Alocação de recursos

  • Contabilização

  • Protecção e segurança

Estudar sistemas operacionais consiste basicamente em entender como estes serviços são oferecidos.

A interface de usuário é forma como  o sistema operacional se apresenta. Ele pode ser de três tipos:

  1. Gráfica (GUI - graphical user interface) como no Windows;

  2. Linha de comandado (CLI - command-line interface) como no prompt do Windows (ou do antigo MS-DOS) ou shell do Linux;

  3. De lote (batch), onde os comandos são lidos de um arquivo

A execução de programas significa que o sistema operativo pode iniciar, executar e encerrar programas. As operações de I/O são serviços que permitem que um processo acesse dispositivos de I/O. Além disso, no caso de arquivos, tipicamente existe um serviço de manipulação de sistema de arquivos. Normalmente um programar de alto nível não tem que se preocupar como ler e gravar arquivos no sistema. Essa é função é do sistema operativo e é disponibilizada por uma chamada de sistema (SystemCall). Portanto, o serviço de manipulação de arquivos (ler, gravar, organizar, pesquisar, apagar.) é função do sistema operativo.

Muitas vezes, um processo  precisa conversar com outro para trocar dados. Essa comunicação entre processos deve ser suportada pelo sistema operacional. Essa comunicação é feita por troca de mensagens ou memória compartilhada.

Outra função do sistema operativo é detectar erros. Por exemplo, imagine que você está gravando um arquivo no HD externo e alguém puxa o cabo da USB sistema operativo deve ser capaz de identificar isso e no mínimo dizer ao usuário que ele deve fazer uma nova gravação. Outro exemplo, é se você puxar o cabo de rede, ora o sistema operativo deve ser capaz de perceber essa perda de conexão, o sistema operativo deve ser capaz de detectar erros no HD da máquina.

(Parte 1 de 2)

Comentários