Sei sulla pagina 1di 32

Sistemas Operacionais:

Introduo
MsC. Douglas Santiago Kridi
Disciplina:
Bacharelado em Cincia da Computao
Universidade Estadual do Piau
Roteiro
Fundamentos tericos
Organizao bsica
Tipos

UESPI - Piripiri 2
Sistemas de Computao
Hardware
Prov os recursos bsicos de computao (UCP,
memria, dispositivos de E/S).
Programas de aplicao
Definem as maneiras pelas quais os recursos do
sistema so usados para resolver os problemas
computacionais dos usurios (compiladores,
sistemas de banco de dados, vdeo games,
programas financeiros, etc.).
Usurios
Pessoas, mquinas, outros computadores.
UESPI - Piripiri 3
Sistemas de Computao
Usurio
1
Usurio
2
Usurio
3 ... Usurio
n

Compilador Editor de Browser Game


texto

Sistema operacional

Hardware

UESPI - Piripiri 4
Definies
Um SO...
... possibilita o uso eficiente e controlado dos
diversos componentes de hardware do
computador (unidade central de
processamento, memria, dispositivos de
entrada e sada).
... implementa polticas e estruturas de software
de modo a assegurar um melhor desempenho
do sistema de computao como um todo.

UESPI - Piripiri 5
Definies
A program that controls the execution of
application programs.
An interface between applications and hardware.
Resource allocator
Manages and allocates resources.
Control program
Controls the execution of user programs and operations
of I/O devices.
Kernel
The one program running at all times.

UESPI - Piripiri 6
Funes
A principal funo de um sistema operacional
prover um ambiente no qual os programas dos
usurios (aplicaes) possam rodar.
Isso envolve:
Definir um framework bsico para a execuo dos
programas
Prover uma srie de servios (ex: sistema de arquivos,
sistema de E/S)
Uma interface de programao para acesso aos
mesmos.

UESPI - Piripiri 7
Organizao tpica
Ncleo (kernel)
Responsvel pela gerncia do processador, tratamento de
interrupes, comunicao e sincronizao entre processos.
Gerncia de Memria
Responsvel pelo controle e alocao de memria aos
processos ativos.
Sistema de E/S
Responsvel pelo controle e execuo de operaes de E/S e
otimizao do uso dos perifricos.
Sistema de Arquivos
Responsvel pelo acesso e integridade dos dados residentes
na memria secundria.
Processador de Comandos / Interface com o Usurio
Responsvel pela interface de comunicao com o usurio.

UESPI - Piripiri 8
Organizao tpica
Camadas de um SO:

Usurios

Shell

Kernel

Hardware

UESPI - Piripiri 9
Histrico
No incio ... (inexistncia de S.O.)
O usurio programador e operador da mquina ao
mesmo tempo. Muita interveno humana no
processamento das tarefas.
O Setup inclua carregar o compilador e o programa
fonte, salvar o programa compilado, carregar e linkeditar
o programa executvel.
O sistema operacional surge com o objetivo bsico
de automatizar a preparao, carga e execuo de
programas.
A esse objetivo se somou, em seguida, um
segundo, de fundamental importncia: a
otimizao do uso dos recursos de hardware pelos
programas.
Ligado a evoluo
UESPI - Piripiri 10
Histrico
Tal como nas arquiteturas de hardware, os sistemas
operacionais tambm passam por um processo
evolutivo, classificado em geraes.
O surgimento dos SOs data da segunda gerao de
computadores, na dcada de 50.

UESPI - Piripiri 11
Histrico
1 Gerao (~dec 50)
Vlvulas.
2 Gerao (~dec 60)
Transistores e batch

Downsizing
3 Gerao (decs 60 e 70)
Multiprogramao e ci
4 Gerao (decs 70 em diante)
Computadores pessoais
Computadores mveis
Computao em nuvem
Ubiquidade

UESPI - Piripiri 12
Tipos de SOs
Sistemas de Lotes (Batch)
Sistemas de Tempo Compartilhado (Time Sharing)
Sistemas de Tempo Real (Real-Time)

Sistemas Distribudos
Sistemas Paralelos
Sistemas Handheld (mobile devices)
Sistemas embarcados/computao ubqua/redes
ad hoc
UESPI - Piripiri 13
Sistemas de Lotes
Primeiro tipo de sistema operacional (usurio e
operador passam a ser entidades diferentes).
Job o conceito bsico num sistema de lotes, sendo
constitudo do programa a ser compilado e executado,
acompanhado dos dados.
Jobs semelhantes so organizados em lotes, de modo a
reduzir o tempo de setup.
Sequenciamento automtico de jobs, com transferncia
automtica de controle de um job para outro
(processamento sequencial).
Inexistncia de computao interativa.
Nmero de tarefas processadas por unidade de tempo
alta devido sequencialidade, sem interrupo.
Tempo mdio de resposta pode ser muito alto (ex:
presena de jobs grandes frente de jobs pequenos).

UESPI - Piripiri 14
Sistemas de Lotes

(a) O programador insere (c) O operador leva a fita (e) O operador leva a fita
cartes no 1401 de entrada para o de sada para o 1401
(b) O 1401 l o lote e 7094 (f) O 1401 imprime as
grava em uma fita. (d) O 7094 executa o sadas
processamento

UESPI - Piripiri 15
Sistemas de Lotes

Processamento em batch: Sequencia de cartes perfurados contendo instrues,


cdigos e dados a serem manipulados pelo SO.

UESPI - Piripiri 16
Sistemas de tempo compartilhado
A capacidade e o tempo de processamento da mquina
dividida entre mltiplos processos.
Uso da tcnica de multiprogramao para a manipulao de
mltiplos jobs interativos.
Jobs so constantemente trocados entre memria e disco
(swap).
Tempo de resposta baixo.
Arquitetura mais complexa e de propsitos gerais.

UESPI - Piripiri 17
Sistemas de tempo real
Sistemas dedicados a uma classe de aplicaes,
tipicamente de controle e medio, que exigem
monitoramento contnuo de instrumentos.
Ex: sistemas de controle industriais, sistemas robticos,
sistemas de realidade virtual, automao domstica, etc.
Possuem restries temporais bem definidas (o
tempo de resposta considerado crtico).
Pode ser hard ou soft real-time.

UESPI - Piripiri 18
Sistemas de tempo real
Controlador Lgico Programvel

Computador
CLP especializado

Operaes Ambientes
industriais industriais

SOs de Condies
tempo real extremas

Preempo Temperatura
Time-sharing Umidade
Presso
Etc...
UESPI - Piripiri 19
Sistemas Distribudos
Distribuir a realizao de uma tarefa entre vrios
computadores
Sistemas fracamente acoplados
Mquinas independentes
Comunicao feita atravs de troca de mensagens
entre processos
Sistema distribudo:
Conjunto de computadores autnomos interconectados
de forma a possibilitar a execuo de um servio
Existncia de vrias mquinas transparente
Software fornece uma viso nica do sistema
Palavra-chave: transparncia

UESPI - Piripiri 20
Sistemas Paralelos
Mquinas multiprocessadoras, possuem mais de
um processador
Sistemas fortemente acoplados
Processadores compartilham memoria e relgio comuns
Comunicao realizada atravs da memria
Vantagens:
Aumento de throughput (nmero de processos
executados)
Aspectos econmicos
Aumento de confiabilidade
Tolerncia a falhas

UESPI - Piripiri 21
Sistemas Handheld
Sistemas operacionais adaptados para dispositivos
mveis, como Smartphones e Tablets...
No incio... memria limitada, processador mais
lento e display de pequenas dimenses.
S.O. e aplicaes projetadas para minimizar o uso
do processador (reduo do consumo da bateria).
Uso possvel de tecnologias wireless, como
Bluetooth e wi-fi, para acesso remoto a outros
dispositivos e internet.

UESPI - Piripiri 22
Sistemas Embarcados
Limitaes ainda maiores de memria,
processamento, consumo de energia e
confiabilidade.
Ex: Roteador, Smart TV, Controlador Lgico
Programvel (CLP), Cmeras, etc

UESPI - Piripiri 23
Classificao
Quanto ao nmero de usurios:
Monousurio:
Projetados para suportar um nico usurio
Multiusurio:
Projetados para suportar vrias sesses de usurios
Quanto ao nmero de tarefas:
Monotarefa:
Capazes de executar apenas uma tarefa (um aplicativo) de cada
vez.
Multitarefa:
Capazes de executar vrias atividades simultaneamente, como
uma compilao e um processamento de texto.

UESPI - Piripiri 24
Monoprogramao
Os recursos computacionais esto inteiramente
dedicados a um nico programa/tarefa.
A UCP fica ociosa durante muito tempo enquanto o
programa aguarda por um evento (digitao de um
dado, leitura do disco, etc.).
A memria principal subutilizada caso o programa
no a preencha totalmente.
A complexidade de implementao relativamente
baixa.

UESPI - Piripiri 25
Multiprogramao
O objetivo manter mais de um programa em
execuo simultaneamente, dando a iluso de
que cada programa/usurio tem a mquina
dedicada para si.
A ideia tirar proveito do tempo ocioso da UCP
durante as operaes de E/S. Enquanto um
programa espera por uma operao de leitura ou
escrita os outros podem estar sendo processados
no mesmo intervalo.
Maximizao do uso do processador e da memria.
Maior taxa de utilizao do sistema como um todo
(reduo do custo total mquina/homem).

UESPI - Piripiri 26
Interrupes e Excees
Enquanto um programa executado, podem
ocorrer alguns eventos inesperados, ocasionando
um desvio forado do seu fluxo de execuo.
A estes eventos, denomina-se de interrupo ou
exceo.
Tanto a interrupo como a exceo podem ocorrer
em consequncia da sinalizao de algum
dispositivo de hardware externo CPU ou da
execuo de instrues do prprio programa.

UESPI - Piripiri 27
Interrupes e Excees

UESPI - Piripiri 28
Interrupes e Excees
Uma exceo bastante semelhante a uma
interrupo, sendo o que diferencia uma da outra
o motivo pelo qual o evento gerado.
Uma exceo pode ocorrer atravs de uma
instruo do prprio software, como por exemplo,
a diviso de um nmero por zero, entre outros.
A exceo diferentemente da interrupo gerada
por um evento sncrono (resultado direto da
execuo do programa corrente).

UESPI - Piripiri 29
Interrupes e Excees
Na grande maioria das vezes, uma exceo provoca
um erro fatal no sistema, causando o trmino
anormal do programa. Recomenda-se que a
exceo deve ser tratada dentro do prprio
programa, com instrues escritas pelo
programador.

UESPI - Piripiri 30
Atividades
Lista no Trello.

UESPI - Piripiri 31
Referncias Bibliogrficas
[1] SILBERSCHATZ, Abraham; GALVIN, Peter; GAGNE, Greg.
Fundamentos de sistemas operacionais. 7. ed. Rio de Janeiro: LTC, 2013

[2] TANENBAUM, Andrew. S.


Sistemas Operacionais modernos. 4. ed. So Paulo: Pearson, 2016.

[3] MACHADO, F. B.; MAIA, L. P.


Arquitetura de Sistemas Operacionais. 5. ed. Rio de Janeiro: LTC, 2013.

UESPI - Piripiri 32

Potrebbero piacerti anche