11 Classe Turma: CNM 3 Disciplina: Tics: 11º Grupo
11 Classe Turma: CNM 3 Disciplina: Tics: 11º Grupo
11 Classe Turma: CNM 3 Disciplina: Tics: 11º Grupo
Classe
Turma: CNM 3
Disciplina: TICs
Tema: Sistemas Operativos
11º Grupo
Discentes:
Yuran João Edmundo Docente: Augusto
Rosa
Wilva
Índice
1. Introdução....................................................................................................................................................3
2. Sistema operativo........................................................................................................................................4
2.1. Definição do Sistema Operativo..............................................................................................................4
2.2. Os objectivos de um Sistema Operativos são:.........................................................................................4
2.3. Evolução dos Sistema Operativos............................................................................................................4
2.3.1. Os primeiros sistemas “bare machines”, antes dos anos 50 (1945–55)...............................................4
2.3.2. Sistemas Monoprogramados de tratamento por lotes (Batch Systems) -.............................................5
2.3.3. Sistemas Multiprogramados de tratamento por lotes (Multiprogrammed Batch Systems) - anos 50..5
2.3.4. Sistemas Multiprogramados Interactivos de partilha de tempo...........................................................5
2.3.5. Sistemas de Tempo Real - anos 60.......................................................................................................5
2.3.6. Sistemas Paralelos - anos 60................................................................................................................6
2.3.7. Sistemas Distribuídos - anos 80...........................................................................................................6
2.3.8. Sistemas Embutidos e dispositivos móveis. (Very Small Computers)................................................6
3. Tipos de sistemas operacionais....................................................................................................................6
3.1. Batch (de lote)..........................................................................................................................................6
3.2. De rede.....................................................................................................................................................6
3.4. Multiusuário.............................................................................................................................................7
3.5. Desktop....................................................................................................................................................7
3.7. Embutido..................................................................................................................................................7
3.8. Tempo real...............................................................................................................................................7
4. Estruturas do Sistemas Operativo...............................................................................................................8
4.1. Estrutura monolitica.................................................................................................................................8
4.3. Níveis do SO:...........................................................................................................................................9
4.4. Estrutura microkernel..............................................................................................................................9
4.5. Estrutura máquinas-virtuais..................................................................................................................10
2. Conclusão..................................................................................................................................................11
3. Referencias Bibliográficas.........................................................................................................................12
1. Introdução
3
2. Sistema operativo
Sistema operativo (português europeu) ou operacional (português brasileiro) é um programa ou um conjunto
de programas cuja função é gerenciar os recursos do sistema (definir qual programa recebe atenção do
processador, gerenciar memória, criar um sistema de arquivos, etc.), fornecendo uma interface entre o
computador e o usuário (português brasileiro) ou utilizador (português europeu). Embora possa ser
executado imediatamente após a máquina ser ligada, a maioria dos computadores pessoais de hoje o executa
através de outro programa armazenado em uma memória não-volátil ROM chamado BIOS num processo
chamado "bootstrapping", conceito em inglês usado para designar processos auto-sustentáveis, ou seja,
capazes de prosseguirem sem ajuda externa. Após executar testes e iniciar os componentes da máquina
(monitores, discos, etc), o BIOS procura pelo sistema operacional em alguma unidade de armazenamento,
geralmente o Disco Rígido, e a partir daí, o sistema operacional "toma" o controle da máquina. O sistema
operacional reveza sua execução com a de outros programas, como se estivesse vigiando, controlando e
orquestrando todo o processo computacional.
O software de qualquer computador ou sistema computacional pode ser dividido basicamente em dois tipos:
Software do sistema - programas que contribuem para o controlo e desempenho das operações do
computador e Software de aplicação - programas que resolvem os problemas dos usuários. O mais
fundamental dos programas do sistema é o sistema operativo. É este que controla todos os recursos do
computador e é este que fornece a base sobre a qual os programas de aplicação podem ser escritos.
2.1. Definição do Sistema Operativo
É um programa ou até um conjunto de programas que age como intermediário entre o utilizador e o hardware
ou máquina física.
2.2. Os objectivos de um Sistema Operativos são:
Executar programas do utilizador e tornar mais fácil a resolução de problemas.
Tornar fácil o uso da máquina e integre todos os componentes dum sistema de computação.
Utilizar o hardware do computador duma forma eficiente.
5
2.3.6. Sistemas Paralelos - anos 60
Estes surgiram como sequencia natural da tentativa de adicionar mais recursos ao sistema nomeadamente
mais processadores - duas ou mais CPU’s.
2.3.7. Sistemas Distribuídos - anos 80
Os SOs distribuídos apareceram na sequência do desenvolvimento dos mecanismos de interligação entre
computadores. A carga computacional é distribuída por vários computadores.
2.3.8. Sistemas Embutidos e dispositivos móveis. (Very Small Computers)
PDAs, STBs, Telemóveis, Touch Screen Devices etc.
Um Novo Class de Sistemas Operativos como :
PalmOS, PocketPC(WinCE), Symbian, Wmbedded Linux etc.
6
3.4. Multiusuário
Um sistema operacional multiusuário deve suportar a identificação do “dono” de cada recurso dentro do
sistema (arquivos, processos, áreas de memoria, conexões de rede) e impor regras de controle de acesso para
impedir o uso desses recursos por usuários não autorizados. Essa funcionalidade e fundamental para a
segurança dos sistemas operacionais de rede e distribuídos. Grande parte dos sistemas atuais sao
multiusuários.
3.5. Desktop
Um sistema operacional “de mesa” e voltado ao atendimento do usuário domestico e corporativo para a
realização de actividades corriqueiras, como edição de textos e gráficos, navegação na Internet e reprodução
de Mídias simples. Sua principais características são a interface gráfica, o suporte a interactividade e a
operação em rede.
Exemplos de sistemas desktop são o Windows XP, MacOS X e Linux.
3.6. Servidor
Um sistema operacional servidor deve permitir a gestão eficiente de grandes quantidades de recursos (disco,
memoria, processadores), impondo prioridades e limites sobre o uso dos recursos pelos usuários e seus
aplicativos. Normalmente um sistema operacional servidor também tem suporte a rede e multiusuários.
3.7. Embutido
Um sistema operacional e dito embutido (embedded) quando e construído para operar sobre um hardware
com poucos recursos de processamento, armazenamento e energia. Aplicações típicas desse tipo de sistema
aparecem em telefones celula res, controladores industriais e automotivos, equipamentos electrónicos de uso
domestico (leitores de DVD, TVs, fornos micro-ondas, centrais de alarme, etc.). Muitas vezes um sistema
operacional embutido se apresenta na forma de uma biblioteca a ser ligada ao programa da aplicação (que e
fixa). Exemplos de sistemas operacionais embutidos sao o μC/OS, Xylinx, LynxOS e VxWorks.
3.8. Tempo real
Ao contrario da concepção usual, um sistema operacional de tempo real não precisa ser necessariamente
ultra-rápido; sua característica essencial e ter um comportamento temporal previsível (ou seja, seu tempo de
resposta deve ser conhecido no melhor e pior caso de operação). A estrutura interna de um sistema
operacional de tempo real deve ser construída de forma a minimizar esperas e latencias imprevisíveis, como
tempos de acesso a disco e sincronizações excessivas.
Existem duas classificações de sistemas de tempo real: soft real-time systems, nos quais a perda de prazos
implica na degradação do serviço prestado. Um exemplo seria o suporte a gravação de CDs ou a reprodução
de musicas. Caso o sistema se atrase, pode ocorrer a perda da média em gravação ou falhas na musica que
esta sendo tocada. Por outro lado, nos hard real-time systems a perda de prazos pelo sistema pode perturbar o
7
objecto controlado, com graves consequências humanas, económicas ou ambientais. Exemplos desse tipo de
sistema seriam o controle de funcionamento de uma turbina de avião a jacto ou de uma caldeira industrial.
Exemplos de sistemas de tempo real incluem o QNX, RT-Linux e VxWorks.
4. Estruturas do Sistemas Operativo
Quando se constrói um sistema operativo, observam-se, pelo menos, dois tipos de requisitos:
Requisitos do Utilizador: Sistema Fácil de utilizar e aprender, rápido e adequado às tarefas para as quais se
destina.
Requisitos do Software: Manutenção, forma de funcionamento, restrições de utilização, eficiência,
tolerância aos erros e flexibilidade.
Quanto à forma como estão estruturados, um Sistema Operativo podem ter as seguintes Estruturas:
Monolítica;
Hierárquica (Dijkstra);
Máquina Virtual;
Cliente-Servidor.
Esta é a estrutura dos primeiros sistemas operativos. Esta estrutura é constituída, basicamente, por um único
programa dividido em sub-rotinas. As características fundamentais deste tipo de estrutura são:
Construção de um programa final, com base nos módulos compilados separadamente, que se unem
através de um ligador (linker);
Boa definição de parâmetros de ligação entre as diferentes rotinas existentes, baixando o nível de
interdependência entre os módulos dos programas;
Falta de protecções e privilégios ao executar as rotinas que permitem manejar diferentes aspectos dos
recursos do computador como a memória, o disco, ect.;
Geralmente são feitos à medida, pelo que são eficientes e rápidos na sua execução e gestão, mas
carecem de flexibilidade para suportar diferentes ambientes de trabalho ou tipos de aplicação
(monotarefa).
4.2. Estrutura hierárquica
Antes de mais, para entender melhor o porquê desta estrutura, vamos definir “Dijkstra”, que é aquilo que
revolucionou esta estrutura.
8
O algoritmo de Dijkstra, cujo nome se origina de seu inventor, o
cientista da computação Edsger Dijkstra, soluciona o problema do
caminho mais curto num grafo (conjunto de pontos, chamados
vértices conectados por linhas, chamadas de arestas)dirigido ou não
dirigido com arestas de peso não negativo, em tempo
computacional .
Um exemplo prático do problema que pode ser resolvido pelo
algoritmo de Dijkstra é: alguém precisa se deslocar de uma cidade para outra. Para isso, ela dispõe de várias
estradas, que passam por diversas cidades. Qual delas oferece uma trajectória de menor caminho?
Concluído isto, podemos avançar para a estrutura hierárquica: Conforme foram crescendo as
necessidades dos utilizadores e o aperfeiçoamento dos sistemas, tornou-se necessária uma maior organização
do software do sistema operativo. Então, desenvolveu-se um SO em que uma parte do sistema continha, por
sua vez, outras subpartes, organizadas em forma de níveis. Ou seja, dividiu-se o SO em pequenos blocos
muito bem definidos, com uma interface clara, para permitir a ligação com outros blocos (daí o tal algoritmo
de Dijkstra, onde eu posso escolher várias estradas para chegar ao destino).
Resultou então um SO com uma estrutura hierárquica, ou de níveis. Este SO foi pioneiro na Holanda por
Edsger Dijkstra, utilizado inicialmente para fins didácticos.
Trata-se de um tipo de sistema operativo que disponibiliza uma interface a cada processo, mostrando ao
utilizador uma máquina idêntica ao hardware existente. Tem como objectivo integrar diferentes sistemas
operativos (Windows XP, Mac, Linux) dando ao utilizador sensação de várias máquinas diferentes.
O núcleo destes sistemas operativos denomina-se monitor virtual e tem por objectivo a multiprogramação.
Apresenta aos níveis superiores tanto as máquinas virtuais quanto as que são solicitadas. Estas máquinas não
9
são mais que uma réplica da máquina real em que cada uma executa um S.O. diferente, a máquina estendida
do utilizador.
Este tipo de sistema é o mais recente, podendo ser executado na maioria dos computadores.
O núcleo kernel tem como missão estabelecer a comunicação entre os clientes e os servidores. Este modelo
oferece uma grande flexibilidade aos serviços fornecidos ao utilizador final, uma vez que o núcleo serve
apenas as funções mais básicas. Estes servidores devem ter mecanismos de segurança e de protecção, que
por sua vez serão filtrados pelo núcleo que controla o Hardware. A expressão Micro-kernel, em si,
caracteriza os sistemas cujas funcionalidades do sistema saíram do Kernel.
4.6. Visao do sistema operativo como interface entre utilizador e os recursos dos sistemas
10
2. Conclusão
Um sistema operacional e dito embutido (embedded) quando e construído para operar sobre
um hardware com poucos recursos de processamento, armazenamento e energia. Aplicações
típicas desse tipo de sistema aparecem em telefones celula res, controladores industriais e
automotivos, equipamentos electrónicos de uso domestico (leitores de DVD, TVs, fornos micro-
ondas, centrais de alarme, etc.). Embora possa ser executado imediatamente após a máquina ser
ligada, a maioria dos computadores pessoais de hoje o executa através de outro programa
armazenado em uma memória não-volátil ROM chamado BIOS num processo chamado
"bootstrapping", conceito em inglês usado para designar processos auto-sustentáveis, ou seja,
capazes de prosseguirem sem ajuda externa. Após executar testes e iniciar os componentes da
máquina (monitores, discos, etc), o BIOS procura pelo sistema operacional em alguma unidade
de armazenamento, geralmente o Disco Rígido, e a partir daí, o sistema operacional "toma" o
controle da máquina. O sistema operacional reveza sua execução com a de outros programas,
como se estivesse vigiando, controlando e orquestrando todo o processo computacional.
11
3. Referencias Bibliográficas
BACH, Maurice J. The design of the Unix operating system. Upper Saddle River: Prentice
Hall. 1990.
MCKUSICK, Marshall K.; NEVILLE-NEIL, George V. The design and implementation of the
FreeBSD operating system. Upper Saddle River: Addison-Wesley. 2004.
SILBERSCHATZ, Avi; GALVIN, Peter B.; GAGNE, Greg. Operating system concepts. 7.ed.
Hoboken: Wiley. 2005.
12