Você está na página 1de 1

Regio crtica: parte do cdigo que deve ser Quais desvantagens ou limitaes de Software localizado entre a aplicacao e o SO

executada com excluso mtua. somente uma semforos? responsavel por resolver a lacuna entre as
thread por vez; outras thread precisam esperar aplicacoes e a infraestrutura de
sua vez; ao sair outra thread pode entrar. No so muito elegantes ou intuitivas; software/hardware [Schmidt 2003]
So variveis globais do sistema;
Lock uma objeto em memria com duas No h conexo entre varivel e cdigo Oferece servicos que suportam o
operaes. sendo protegido; desenvolvimento e a execucao de aplicacoes
Usada para regio crtica (excluso distribuidas. Localizado entre o sistema
Acquire(): chamada antes de entrar na rc. mtua) e coordenao; operacional e a aplicacao. Utiliza-se dos
Uso muito livre, mais difceis de usar e mecanismos de comunicacao de baixo nivel
susceptvel a bugs. para fornecer uma comunicacao de alto
Release(): chamada depois de sair da rc. nivel para as aplicacoes distribuidas.

Excluso mtua (sem concorrncia, uma Arquitetura de Sistemas Quatro grandes


abordagens: Serve como elemento que aglutina e da
thread de cada vez (como em probabilidade)) concorrencias a um conjunto de aplicacoes e
uma tcnica usada em programao ambiente.
concorrente para evitar que dois processos ou baseada em camadas (mais antiga);
threads tenham acesso simultaneamente a um baseada em objetos;
um programa de computacao que faz a
recurso compartilhado, acesso esse baseada em eventos;
medicao entre outros softwares. Utilizado para
denominado por seo crtica. centrada em dados (mais nova).
mover informacoes entre programas,
ocultando as diferenas de protocolos de
Threads-Estado de uma linha de execuo. Sistemas Distribudos - Uma coleo de comunicao, protocolos de dependncias do
computadores independentes que aparece aos sistema operacional.
Threads Ideia: separar conceito de processo seus usurios como um nico sistema
do estado de execuo permitir processos a coerente.
Tipos de comunicao
executarem em mais de um lugar mltiplas
linhas de execuo. Desvantagens dos Sistemas Distribudos Sncrono: transmissor passivo at a
mensagem chegar ao receptor. Ex.: Chat,
Escalonamento processo pelo qual Hardware maduro, o Software ainda Facebook, Skype ,Mdias sociais.
determina qual thread vai ser colocada em est evoluindo;
execuo. Poucos softwares disponveis;
Assncrono: transmissor ativo o tempo
Falta experincia no projeto,
inteiro. Ex.: E-mail, Site da
Tipos de Escalonamento implementao e uso de software cienciacomputacao.com.br, Frum.
distribudo.
No preemptivo: thread explicitamente Funcoes
libera a CPU, devolvendo o controle Quanto deve o sistema fazer e quanto deve
biblioteca thread que roda para sempre o usurio fazer ?
trava as outras! Facilitar o desenvolvimento de aplicacoes
distribuidas;
Preemptivo: thread interrompida Redes de interconexo
durante sua excuo, assincronamente, Coordenar como as partes da aplicacao
devolvendo controle biblioteca Como distribuida interoperam;
Perda de mensagens Permitir e simplificar a integracao de
fazer isto? Sinais. Enviar sinal de alarme
Sobrecarga na rede componentes desenvolvidos em multiplas
ao processo, signal handler pertence a
biblioteca. tecnologias.
Segurana.
Monitores-funcionalidade da linguagem de O que so SOCKETS?
programao para acessar dados Vantagens dos Sistemas Distribudos
compartilhados. O acesso aos servios da camada de transporte
J que os PCs ficaram to bratos porque no pode ser feito por primitivas de transporte,
Atomicidade (aka. linearizable, indivisible, dar um para cada usurio trabalhar de forma essas primitivas so denominadas SOCKET.
uninterruptable) conjunto de instrues que independente ? No, devido:
parece acontecer instantaneamente nada pode Canalizao (em ingls: pipe), em
aconceter no meio, onde todas as linhas de necesidade de se compartilhar dados; informtica o redirecionamento da sada
execuo ficam sabendo dos resultados. necessidade de compartilhar padro de um programa para a entrada padro
perifricos caros; de outro. Veja um exemplo, vindo dos
Semforos estrutura de dados que permite necessidade de comunicao pessoa a sistemas operacionais Unix e similares: pipes
acesso mtuo a regio crtica. pessoa; no caso so vetores de duas posies
flexibilidade de poder espalhar o chamados este de file description onde um
trabalho existente em diversas mquinas, lado entra as informaes e com o processo de
Tipo de Semforo balanceando a carga de trabalho. espelhamento o outro lado do vetor
visualizado (sada) por um outro processo ou
Semforo mutex um acesso por vez (o Aquitetura de Sistemas Distribudos
thread. No necessrio que mude a entrada
que estamos usando) garante acesso padro ou sada padro para us-lo.
exclusivo regio crtica.
Semforo contador mltiplos acessos Duas grandes abordagens
por vez, recurso que pode ser utilizado
de forma concorrente mltiplas threads Cliente/Servidor: clssica e mais usada;
podem passar pelo semforo ao mesmo P2P: nova e mais difcil.
tempo.
Middleware
Leitores com escritor, e Produtores-
Consumidores so instncias de problemas Um conjunto de servicos que ajuda a resolver
recorrentes sempre podem ser resolvidos com problemas de heterogeneidade e distribuicao
semforos. [Bernstein 1996]

Sincronizao de alto nvel que permite: Software projetado para ajudar a gerenciar a
bloquear as threads que aguardam acesso complexidade e a heterogeneidade inerente
permitir interrupes dentro da regio crtica. dos sistemas distribuidos [Bakken 2001]