Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução...

30
Sistemas Operacionais Multimídia Aula 11

Transcript of Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução...

Page 1: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Sistemas Operacionais Multimídia

Aula 11

Page 2: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Sistemas Operacionais MultimídiaIntrodução

• Processamento em tempo-real• Comunicação• Sincronização• Gerência de memória• Gerência de base de dados• Gerência de arquivos• Gerência de dispositivos

Page 3: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Introdução• Um dos mais importantes aspectos de sistemas

operacionais multimídia é o processamento em tempo-real de dados de mídias contínuas

• O gerenciamento de processos deve levar em conta os requisitos de tempo impostos pela manipulação de dados multimídia

• Métodos apropriados de escalonamento devem ser aplicados

Page 4: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Introdução (cont.)

• Para obedecer aos requisitos de tempo, componentes são concebidos como recursos que são reservados antes da execução

• Reserva de recursos cobre todos os recursos que lidam com mídias contínuas

Page 5: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Introdução (cont.)• A comunicação e a sincronização entre processos

devem atender as restrições dos requisitos de tempo-real e as relações temporais entre diferentes mídias

• Em sistemas multimídia, a gerência de memória tem que prover acesso a dados com atraso (máximo) garantido e funções de manipulação de dados eficientes– Ex.: operações de gerência de buffer em vez de operações de

cópia física de dados (menor desempenho)

Page 6: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Introdução (cont.)• Gerência de base de dados é um componente

importante em um sistema multimídia• Abstração dos detalhes de armazenamento de

dados em memória secundária• Para melhor desempenho, a gerência de base

de dados deve se basear em serviços de gerência de arquivos fornecido pelo sistema operacional multimídia

Page 7: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Introdução (cont.)

• Sistemas operacionais isolam as aplicações dos dispositivos

• Serviços de gerência de dispositivos são necessários

• Em sistemas multimídia, a integração de dispositivos de áudio e vídeo deve ser semelhante a qualquer outro dispositivo de entrada/saída

Page 8: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Tempo Real• O sistema de tempo-real possui a tarefa permanente de

receber informações do ambiente, espontaneamente ou em intervalos periódicos de tempo, e/ou de enviar informações ao ambiente dadas certas restrições de tempo

• A principal caraterística de sistemas de tempo-real é a corretude da computação

• Esta corretude não se aplica apenas a computação sem erro, mas também ao tempo em cujo resultado é apresentado

Page 9: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Tempo Real (cont.)

• Velocidade e eficiência não são as principais características de sistemas de tempo-real (mitos)

• Ex.: em uma apresentação de uma sequência de vídeo em um sistema multimídia, o único resultado aceitável é quando o vídeo é apresentado nem rápido demais nem devagar demais

Page 10: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Deadlines• Um deadline representa o último tempo

aceitável para a apresentação de um resultado

• É a fronteira entre o comportamento normal (correto) e anômalo (errado)

• Soft deadline• Hard deadline

Page 11: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Características de Sistemas de Tempo Real

• Resposta rápida previsível a eventos críticos em relação a tempo e informações de tempo apuradas

• Alto grau de escalonabilidade (schedulability)

• Estabilidade na presença de sobrecarga

Page 12: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Tempo Real e Multimídia

• Streams de áudio e vídeo consistem de valores de dados de mídias contínuas que mudam periodicamente (amostras de áudio e quadros de vídeo)

• Cada LDU deve ser apresentada até um deadline bem determinado

• Jitter só é permitido antes da apresentação final ao usuário

Page 13: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

T-R e Multimídia (cont.)

• Para satisfazer os requisitos de tempo de mídias contínuas, o S.O. deve usar técnicas de escalonamento de tempo-real

• Estas técnicas devem ser aplicadas a todos os recursos do sistema envolvidos no processamento de dados de mídias contínuas– CPU, memória principal, armazenamento,

dispositivos de E/S e redes

Page 14: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

T-R e Multimídia (cont.)• Sistemas multimídia que não são usados em

cenários tradicionais de tempo-real têm requisitos de tempo-real diferentes (mais simples)– Aplicações como automação industrial e

pilotagem de aviões têm grande demanda por segurança e tolerância a falhas

Page 15: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Requisitos de Tempo-Real

• Tolerância a falha: menos estrita do que em sistemas de tempo-real que têm impacto físico direto– Contra-ex.: suporte de cirurgia remota por vídeo e áudio

tem grande demanda por corretude• Para muitas aplicações de sistemas multimídia,

perder um deadline não é uma falha severa– requisitos de áudio são mais estritos, porque o ouvido

humano é mais sensível a audio gaps do que o olho é a video jitter

Page 16: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Requisitos de Tempo-Real (cont.)• Como alguns algoritmos de compressão são

capazes de usar diferentes fatores de compressão (diferentes qualidades) a banda (bandwidth) pode ser negociada– a qualidade pode ser ajustada dinamicamente à

banda disponível (ex. através da mudança de parâmetros) - vídeo escalável

Page 17: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Gerência de Recursos• Exemplo: uma imagem de vídeo não deveria ser apresentada

com atraso porque o sistema de comunicação está ocupado com uma transação de um sistema de gerenciamento de banco de dados

• Em qualquer cenário realista encontramos várias aplicações multimídia que concorrentemente usam recursos compartilhados

• O gerenciamento do sistema deve usar algoritmos de escalonamento adequados para servir aos requisitos das aplicações

Page 18: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Recursos• Um recurso pode ser

– ativo: fornece um serviço (ex.: CPU)– passivo: denota alguma capacidade do sistema

requisitada por um recurso ativo (exs.: memória principal, banda de comunicação, sistema de arquivo)

• Um recurso pode ser– usado exclusivamente por um processo a um tempo

(recursos ativos)– compartilhado por vários processos (recursos passivos)

Page 19: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Requisitos• Os requisitos de transmissão e processamento

de aplicações multimídia locais e distribuídas são especificados de acordo com as seguintes características:– O throughput é determinado pela taxa de

transferência de dados necessária para satisfazer os requisitos da aplicação

– Delay local: o tempo máximo para completar uma tarefa em um recurso

Page 20: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Requisitos - Características (cont.)– Delay fim-a-fim: atraso total para uma unidade de

dado ser transmitida da fonte ao destino– Jitter: variância máxima permitida na chegada de

dados no destino– A confiabilidade define mecanismos de detecção

e correção de erros• erros podem ser ignorados, indicados e/ou corrigidos• correção de erros através da retransmissão raramente é

apropriada para dados de tempo crítico porque os dados retransmitidos normalmente chegam atrasados

Page 21: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Requisitos (cont.)

• Em sistemas de comunicação, estes requisitos são também conhecidos como parâmetros de Qualidade de Serviço (QoS):– throughput (data rate)– local delay– (global) end-to-end delay– jitter– confiabilidade

Page 22: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Componentes e Fases• Alocação e gerência de recurso pode ser baseada na

interação entre clientes e seus respectivos gerentes de recursos– o cliente seleciona o recurso e pede uma alocação através da

especificação de requisitos (QoS specification)– o gerente do recurso checa sua utilização e decide se o pedido

de reserva pode ser atendido– todas as reservas existentes são armazenadas para que os

requisitos especificados sejam garantidos– se necessário, o cliente negocia o pedido de reserva com outros

gerentes de recursos

Page 23: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

• Um gerente de recursos fornece componentes para as diferentes fases do processo de gerência e alocação:– teste de escalonabilidade: checa com os parâmetros

de QoS (ex. throughput e confiabilidade) para determinar se a capacidade existente é suficiente para atender o novo pedido

– cálculo da QoS: o gerente de recurso calcula o melhor desempenho possível (ex. delay) que pode ser garantido para o novo pedido

– reserva de recurso: alocação da capacidade necessária para garantir a QoS de cada pedido

– escalonamento de recurso: mensagens são escalonadas de acordo com as garantias de QoS dadas

Page 24: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Esquema de Alocação• Abordagem pessimista: faz reserva para o pior

caso, evitando conflitos de recursos– QoS garantido– Sub-utilização potencial de recursos

• Abordagem otimista: reserva para uma carga de trabalho média– QoS: “o melhor possível”– Os recursos são altamente utilizados

• pode haver falha por sobrecarga

Page 25: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Modelo de Definição de Parâmetros de QoS

• Baseado no modelo Linear Bounded Arrival Processes (LBAP)

• Enxurrada (burst) de mensagens: mensagens chegadas a frente da escala

• LBAP é um processo de chegada de mensagens em um recurso definido por três parâmetros:– M = tamanho máximo da mensagem (bytes/msg)– R = taxa (rate) máxima de mensagens (msg/seg)– B = enxurrada (burstiness) máxima (msgs)

Page 26: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Modelo - Exemplo

• Amostra de sinal de áudio a uma frequência de 44,1 kHz

• Amostra de 16 bits• Taxa de transferência resultante:

– 44100Hz x (16bits / 8bits/byte) = 88200bytes/s

WS WSCD

LAN

Page 27: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

Exemplo (cont.)• As amostras são montadas em frames• 75 mensagens (frames) são

transmitidas por segundo (R) de acordo com o padrão de CD

• Assim, o tamanho máximo da mensagem é:– M = 88200bytes/s / 75mensagens/s =

1176bytes/msg• Em um pacote de 12000 bytes, temos

– B = 12000bytes / 1176bytes/msg = 10 mensagens

• Resultados:– M = 1176 bytes/msg– R = 75 msgs/s– B = 10 mensagens

Page 28: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

• Em um intervalo de tempo de duração t, o número máximo de mensagens que chegam em um recurso não deve exceder:– B + R x t– Exemplo:

• assumindo t = 1s,• 10 mensagens + 75 mensagens/s x 1s = 85

mensagens

• A introdução de enxurrada (burstiness) permite pequenas violações (por curtos períodos) da taxa de transferência assumida

Page 29: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

• Máxima Taxa Média de Transferência de Dados– M x R– Exemplo:

• 1176bytes/msg x 75mensagens/s = 88200 bytes/s

• Máximo Tamanho de Buffer– Mensagens que chegam “a frente da escala”

devem ser enfileiradas– M x (B + 1)– Exemplo:

• 1176bytes/msg x 11msg = 1293 6bytes

Page 30: Sistemas Operacionais Multimídia Aula 11. Sistemas Operacionais Multimídia Introdução Processamento em tempo-real Comunicação Sincronização Gerência de.

• Backlog Lógico– Número de mensagens que já chegaram “a frente da escala”

quando da chegada da mensagem m– Se uma mensagem é processada “a frente da escala” o backlog

lógico é maior do que o backlog real • Tempo de Chegada Lógico

– Define o tempo mais cedo que uma mensagem m pode chegar em um recurso quando todas as mensagens chegam de acordo com as suas taxas

– Uma mensagem é crítica se o seu tempo de chegada lógico já passou