Anda di halaman 1dari 14

Sistemas Operacionais - ACP

Aula 1

Sistemas Operacionais

(Ref. - Cap. 1 do livro)


Viso Geral; Evoluo; Arquiteturas

Aula 1

Aula 1 | Slide 1

Sumrio
O que um SO Funes e caractersticas de um SO Evoluo dos SOs Principais arquiteturas de SOs

Aula 1 | Slide 2

Prof. Glauco Marques

| Pg. 1

Sistemas Operacionais - ACP

Aula 1

Funes bsicas de um SO
O SO composto por uma camada de software especial que se interpe entre os aplicativos de usurios e o hardware de um computador
O SO abstrai as especificidades e detalhes do hardware para o usurio final Existem duas formas de interao: CLI e GUI Desde a dcada de 60 o SO evoluiu a uma velocidade sem precedentes, juntamente com o hardware

O software que contem os componentes centrais do SO denominado ncleo (kernel) O SO gerencia os recursos de hardware (HW) e software (SW) de um sistema Primeiro programa a ser instalado
Aula 1 | Slide 3

Principais vertentes de SOs


Os principais sistemas de mercado seguem duas vertentes: Sistemas fechados e abertos Windows
Cdigo proprietrio (fechado) GUI mas cada vez mais oferecendo CLI Pago (licenciamento)

Linux
Cdigo disponibilizado livremente (aberto) CLI mas cada vez mais oferecendo GUI Gratuito

importante notar que os dois projetos seguem padres da indstria e a intercomunicao entre SOs diferentes torna-se cada vez mais comum nas empresas
Aula 1 | Slide 4

Prof. Glauco Marques

| Pg. 2

Sistemas Operacionais - ACP

Aula 1

Evoluo: Dcadas de 40 e 50
Os primeiros computadores digitais eletrnicos no tinham SOs e eram configurados atravs de lingugem de mquina e comutadores mecnicos Dadas as dificuldades do processo surgiram as perfuradoras de carto e a linguagem assembly No incio dos anos 50 surgiu o processamento em lote de fluxo nico (batch) para atender job O job um conjunto de instrues de programas correspondente a uma tarefa particular Os programadores precisavam controlar recursos diretamente, como memria e E/S Os primeiros SOs eram usados simplesmente para controlar jobs e exigiam de um programa fosse carregado por inteiro na memria para poder executar
Aula 1 | Slide 5

Evoluo: Dcada de 60
Carregamento e execuo simultnea de jobs orientados a processamento e E/S, servindo como base para a multiprogramao Surge a figura do usurio que interage um o computador central on-line atravs de terminais, servindo como base para os sistemas tempo compartilhado (time-sharing), reduzindo de modo drstico o tempo de retorno dos processos Surgem os conceitos de processo, multiprogramao e multiprocessamento Os SOs ganharam caractersticas de processo em lote e tempo real No final da dcada surgem os primeiro SOs que implementam memria virtual
Aula 1 | Slide 6

Prof. Glauco Marques

| Pg. 3

Sistemas Operacionais - ACP

Aula 1

Evoluo: Dcada de 70
Evoluo na eletrnica atravs de VLSI (very large scale integration) que permite miniaturizao e reduo de custos Protocolo TCP/IP se firmando como padro de comunicao por software Redes Ethernet se firmando como tecnologia base de hardware para rede Surgimento das LANs e implementao dos primeiros SORs A comunicao atravs de LAN e WANs chamou a ateno para os problemas de segurana em redes Surgiram as linguagens Pascal e C, empresas como Apple e Microsoft e o processador Intel 8080
Aula 1 | Slide 7

Evoluo: Dcada de 80
Surgimento do conceito de computador pessoal (PC) e estao de trabalho (Workstation) Surgiram as primeiras GUIs e, com isso, o uso e aprendizado do computador se tornou mais fcil Softwares como processador de texto, planilha, aplicativos de BD e aplicativos grficos ajudaram a popularizar o PC e lev-lo para as empresas Aparecimento da arquitetura cliente / servidor e dos primeiros sistemas distribudos SOs multiusurios comeam a aparecer

Aula 1 | Slide 8

Prof. Glauco Marques

| Pg. 4

Sistemas Operacionais - ACP

Aula 1

Evoluo: Internet e WWW


A evoluo da ARPAnet formou a Internet, e permitiu o surgimento de uma rede mundial de computadores baseada em TCP/IP A largura de banda cresceu e os custos de HW e comunicao caram vertiginosamente A World Wide Web (WWW) trouxe capacidades de grfico, udio e vdeo para aplicativos de rede O FTP possibilitou a troca de arquivos entre sistemas diferentes O correio eletrnico implemento um novo padro de comunicao mais gil e mais econmico A integrao entre SO e Internet passou a ser um fator chave nos projetos dos SOs modernos
Aula 1 | Slide 9

Evoluo: Dcada de 90
O desempenho continuou a melhorar de forma exponencial: O PC j ganha capacidades de armazenar 1 GB em disco rgido (HD) e executar milhes de instrues por segundo (MIPS) A computao distribuda em computadores de pequeno porte comeou a substituir os sistemas de grande porte, dado o seu alto custo Surgimento do DOS e Windows A tecnologia de orientao a objeto comeou a se tornar popular na programao e, com isso, surgiram os primeiros SOs orientados objetos Os aplicativos ficaram mais sofisticados Cresce o movimento em favor do software livre
Aula 1 | Slide 10

Prof. Glauco Marques

| Pg. 5

Sistemas Operacionais - ACP

Aula 1

Evoluo: 2000 em diante


Uso cada vez mais intensivo de middleware e servios web, por de conexes de banda larga Linguagens de programao sequencial so substitudas por linguagens concorrentes e o uso de threads nos aplicativos tornam-se comuns Os SOs do suporte vrios processadores e o uso de paralelismo macio vem aumentando Padronizao de interfaces grficas e APIs para melhorar a compatibilidade entres SOs Dispositivos mveis e redes wireless ganham cada vez mais espao no mundo da computao

Aula 1 | Slide 11

Classificao dos SOs


Quanto ao nmero de aplicativos
Monoprogramao (monotarefa) Multiprogramao (multitarefa)

Quanto ao nmero de usurios


Monousurio Multiusurio

Quanto a quantidade de processadores


Monoprocessado Multiprocessado (simtrico e assimtrico)
Fortemente acoplados Fracamente acoplados

Quanto ao tipo de trabalho


Lote (batch) Tempo compartilhado (time-sharing) Tempo real
Aula 1 | Slide 12

Prof. Glauco Marques

| Pg. 6

Sistemas Operacionais - ACP

Aula 1

Ambientes de SOs
Sistemas de uso geral Sistemas embarcados Sistemas de tempo real Ambientes de misso crtica Mquina virtual (VM) Mquina virtual Java (JVM)

Aula 1 | Slide 13

Contexto do SO
Atravs de uma aplicao, o usurio interage com o SO por meios de seu Shell (tambm conhecido com interpretador de comandos) O SO oferece uma srie de APIs que os aplicativos usam para realizar operaes detalhadas ao nvel de hardware, atravs do ncleo do SO O software que contem os componentes centrais de um SO conhecido como ncleo (ou kernel), sendo as principais rotinas:
Escalonador de Gerenciador de Gerenciador de Gerenciador do Gerenciador de processo memria E/S sistema de arquivos comunicao interprocessos (IPC)

Os componentes centrais do SO comunicam-se com o hardware, atravs de drivers de dispositivos

Aula 1 | Slide 14

Prof. Glauco Marques

| Pg. 7

Sistemas Operacionais - ACP

Aula 1

Metas de um SO
No projeto de um SO, alguns fatores podem ser conflitantes e o projetista preciso fazer opes Algumas das caractersticas mais desejadas nos SOs so listadas a seguir:
Baixo custo Estabilidade em condies extremas de uso (robustez) Segurana forte e rastreabilidade Alto desempenho e eficincia Escalabilidade Administrao, suporte e extensibilidade (manutenibilidade) Oferecimento de uma ampla gama de servios e aplicativos Disponibilidade dos servios incorporados (funcionamento redundante ou em cluster) Facilidade de uso e aprendizado (usabilidade) Facilidade para criao de aplicativos e drivers Portabilidade Conformidade com padres internacionais

Aula 1 | Slide 15

Arquiteturas de SO
A arquitetura do SO define como seus diversos componentes se relacionam e interagem O SO um software grande e complexo A arquitetura do SO permite aos projetistas gerenciar a complexidade, definindo a organizao de seus componentes e privilgios de execuo Um SO de mercado pode se enquadrar em uma ou mais dessas arquiteturas A principais arquiteturas encontradas so:
Monoltica Em camadas Microncleo Distribuda atravs de redes
Aula 1 | Slide 16

Prof. Glauco Marques

| Pg. 8

Sistemas Operacionais - ACP

Aula 1

Arquitetura monoltica
Arquitetura mais antiga e mais comum Os componentes do SO so contidos no ncleo e interagem livremente entre si As funes do ncleo tem acesso irrestrito ao hardware No h mudana de modo e, com isso, o sistema tende a ser por um lado mais eficiente mas, por outro lado, tambm mais suscetvel cdigos mal feitos ou maliciosos que esto rodando no modo usurio Difcil de isolar fontes de problemas e erros

Aula 1 | Slide 17

Arquitetura monoltica
Aplicativo Aplicativo Aplicativo

Modo usurio Modo kernel

System Call
Mdulo Mdulo Mdulo Mdulo Mdulo Mdulo Mdulo

Hardware

Aula 1 | Slide 18

Prof. Glauco Marques

| Pg. 9

Sistemas Operacionais - ACP

Aula 1

Arquitetura em camadas
Dada a complexidade da arquitetura monoltica, foi criada a arquitetura em camadas e organizar os componentes que realizam tarefas similares Uma camada comunica-se somente com a camada de cima e a camada de baixo Uma camada pode ser modificada sem causar efeitos em outras camadas Camadas de nvel mais baixo prestam servios s de nvel mais alto usando uma interface que oculta sua implementao A requisio de um processo pode ter que passar por vrias camadas, invocando mtodos adicionais de passagem de parmetros entre camadas e, com isso, degradando o desempenho
Aula 1 | Slide 19

Arquitetura em camadas
Aplicativo Aplicativo Aplicativo

Modo usurio Modo kernel

System Call
Gerenciamento de E/S Interpretador de mensagem Gerenciamento de memria Alocao de processador e escalonamento de processo

Hardware

Aula 1 | Slide 20

Prof. Glauco Marques

| Pg. 10

Sistemas Operacionais - ACP

Aula 1

Arquitetura de microncleo
Na tentativa de manter o ncleo pequeno e simples, seus servios so reduzidos ao mximo S as principais funes como o gerenciamento de memria e comunicao / sincronizao entre processos so mantidos no ncleo Gerenciamento de processos, dispositivos, rede e sistema de arquivos vo para fora do ncleo e rodam com privilgio mais baixo Como um componente no depende do outro, a falha em um deles menos perceptvel ao SO e aos aplicativos Essa arquitetura de microncleo exibe um alto grau de modularidade, o que a torna portvel, extensvel e escalvel Arquitetura pouco implementada na prtica
Aula 1 | Slide 21

Arquitetura de microncleo
Aplicativo Aplicativo Aplicativo Aplicativo

System Calls

Sistema de arquivos

Escalonador de processos

Gerenciador de dispositivos
Mensagens

GDI

Gerenciador de Rede

Mensagens

Mensagens

Mensagens

Modo usurio Modo kernel

Microkernel

Hardware

Aula 1 | Slide 22

Prof. Glauco Marques

| Pg. 11

Sistemas Operacionais - ACP

Aula 1

Arquitetura distribuda
Um sistema operacional distribudo gerencia recursos em mais de um sistema de computador Em vez de simplesmente cooperar com outros computadores em rede, como ocorre nos SORs, os sistemas distribudos, atravs de seus SOs, controlam vrios computadores de uma rede Passam a iluso de que vrios computadores compem um nico computador de grande poder Um processo poder acessar recursos em outros computadores pela rede, independente da sua localizao fsica Requerem algoritmos complicados para permitir comunicao e compartilhamento transparentes Arquitetura muito estudada atualmente

Aula 1 | Slide 23

Arquitetura distribuda

Aula 1 | Slide 24

Prof. Glauco Marques

| Pg. 12

Sistemas Operacionais - ACP

Exerccios
1. (Petrobras 2005) Na arquitetura de um sistema operacional em camadas, o sistema dividido em vrios nveis ou camadas, onde cada camada oferece um conjunto de funes que podem ser utilizadas apenas pelas camadas superiores. Para este tipo de estruturao so consideradas como vantagens: I - isolar as funes do sistema operacional, facilitando sua manuteno e depurao; II - criar uma hierarquia de nveis de modos de acesso, protegendo as camadas mais internas; III - criar um nvel intermedirio entre o hardware e o sistema operacional. Est(o) correta(s) a(s) afirmativa(s): (A) I, apenas. (B) II, apenas. (C) III, apenas. (D) I e II, apenas. (E) I, II e III.

Aula 1 modelos de hardware, suporta multitarefa, processamento multiusurio e redes. Indique a opo que contenha todas as afirmaes verdadeiras. a) I e II b) II e III c) III e IV d) I e III e) II e IV

2. (TCU 2002) Analise as seguintes afirmaes relativas a Sistemas Operacionais: I. O Windows 95 um sistema operacional de 32 bits com uma GUI simplificada, utiliza comandos textuais e limita o uso da memria a programas que requerem menos de 640 Kbytes. Seu substituto, o Windows 98, passou a suportar multitarefa, permitiu um melhor desempenho em rede e facilitou o acesso internet; II. O Windows NT surgiu como um sistema operacional de 32 bits, existente em duas verses, uma para servidor de rede e outra para computadores ligados rede, pode suportar mais de uma CPU e no est limitado a processadores da Intel; III. O DOS um sistema operacional para PCs IBM e compatveis. Pode beneficiar-se do multiprocessador de 32 bits, suporta multitarefas e redes, e pode executar grandes programas que exigem mais de 640 Kbytes de memria; IV. O UNIX um sistema operacional para PCs poderosos, workstations e minicomputadores, utilizvel em diferentes

3. (TCU 2002) Analise as seguintes afirmaes relativas a sistemas distribudos: I. Um sistema distribudo uma coleo de processadores que compartilham memria. II. Um sistema distribudo uma coleo de processadores fracamente acoplados interconectados por uma rede de comunicao. Do ponto de vista de um processador especfico em um sistema distribudo, os demais processadores e seus respectivos recursos so remotos, enquanto seus prprios recursos so locais. III. Em um sistema operacional distribudo, os usurios acessam recursos remotos da mesma forma que fazem com os recursos locais. IV. A grande desvantagem de um sistema distribudo que, como acontece na Internet, se um site falhar os outros sites envolvidos tambm iro parar. Indique a opo que contenha todas as afirmaes verdadeiras. a) I e II b) II e III c) III e IV d) I e III e) II e IV

4. (TCU 2002) Analise as seguintes afirmaes relativas a sistemas operacionais distribudos: I. Um sistema distribudo pode ser definido como uma coleo de processadores fracamente acoplados, interconectados por uma rede de comunicao.

Prof. Glauco Marques

| Pg. 13

Sistemas Operacionais - ACP II. Um sistema distribudo pode ser definido como uma coleo de processadores que no compartilham memria nem relgio. III. Um sistema distribudo pode ser definido pela capacidade que um nico processador tem para distribuir vrias tarefas simultaneamente. IV. Em um sistema operacional distribudo os usurios s podem acessar recursos locais. Indique a opo que contenha todas as afirmaes verdadeiras. a) I e II b) II e III c) III e IV d) I e III e) II e IV

Aula 1 7. Um sistema que apresenta paralelismo macio _____________ . a) possui um processador que executa partes distintas do processamento ao mesmo tempo b) possui um grande nmero de processadores que executam partes distintas do processamento de modo simultneo c) comunica-se atravs de uma rede e distribui as tarefas entre vrios computadores independentes d) NRA

5. So vantagens de um sistema distribudo: I. Eles comportam-se como se fossem um nico computador de grande desempenho II. Um processo poder acessar quaisquer recursos do sistema, independente de onde eles estiverem sendo executado II Sua implementao fcil e rpida Indique a opo que contenha todas as afirmaes verdadeiras. a) I ,II e III b) I e II c) I e III d) II e III

8. O conjunto de rotinas de software que contem as principais funes de um SO chamado de? a) controlador b) ULA c) kernel d) driver

6. Um sistema operacional _________ pode ser adaptado com facilidade s novas tecnologias e pode ser modificado para executar tarefas alm do seu projeto original; j um sistema operacional __________ projetado falhar o mnimo possvel e tambm no permitir que um programa mal comportado desestabilize seu funcionamento. a) robusto / portvel b) extensvel / portvel c) escalvel / extensvel d) extensvel / robusto

Gabarito
Exerccio 1 2 3 4 5 6 7 8 Resposta D E B A B D B C

Prof. Glauco Marques

| Pg. 14

Anda mungkin juga menyukai