Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar...

22
Sistemas Operacionais Multimídia

Transcript of Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar...

Page 1: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Sistemas Operacionais Multimídia

Page 2: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Sistemas de Arquivos Multimídia• Duas abordagens para tratar mídias contínuas em

sistemas de arquivos:– 1a.:

• organização dos arquivos em disco com em sistemas convencionais

• suporte de tempo-real através de algoritmos de escalonamento de disco especial

• buffer suficiente para evitar jitter– 2a.:

• organização de arquivos de áudio e vídeo em disco é otimizado

Page 3: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Dispositivos de Armazenamento• O sub-sistema de armazenamento é um dos componentes

mais importantes de qualquer sistema de informação• Em geral, o armazenamento é feito em discos, que são

caracterizados de 2 formas:– Como a informação é armazenada: re-writable, write-once,

read-only (CD-ROM)– Método de gravação: principais diferenças

• tempo de acesso (disco magnético ~10ms, CD ~200ms)• capacidade de trilha (magnético: densidade variável; CD: mesma

densidade em todas as trilhas do disco)

Page 4: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Estrutura de Arquivo

• Em sistemas de arquivos convencionais, o principal objetivo da organização de arquivo é fazer uso eficiente da capacidade de armazenamento

• Em sistemas multimídia, o principal objetivo é recuperar dados de forma constante e baseada em tempo

Page 5: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Estrutura de Arquivo (cont.)

• Para atingir os objetivos de sistemas de arquivos multimídia deve-se– ter buffer suficiente para cada stream de dados

• os buffers devem ser grandes o suficiente para amenizar o jitter, mas....

– grande atraso inicial

– aplicar algoritmos de escalonamento de disco, otimizados para armazenamento e recuperação de dados em tempo-real

Page 6: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Localização de arquivos em disco• O tamanho grande dos arquivos de mídias contínuas e• a recuperação normalmente sequancial (por causa da

natureza das operações mais comuns sobre mídias contínuas - play, pause, fast forward, etc.)

são razões para otimização do layout de discos– mídia contínua deve ser armazenada em em grandes blocos

de dados contíguos no disco– arquivos que são prováveis de serem recuperados juntos devem ser

agrupados juntos no disco– este layout de disco reduz os requisitos de buffer e os tempos de busca

Page 7: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Tratamento de mídias contínuas (cont.)

• Para servir aos requisitos de continuidade, leitura antecipada e buffering de um determinado número de blocos devem existir

Page 8: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Algoritmos de escalonamento de discos

• Sistemas sem layout de disco otimizado para o tratamento de mídias contínuas dependem muito mais de algoritmos de escalonamento de discos eficientes e confiáveis

• No caso de armazenamento contíguo, o escalonamento só é necessário para tratar de streams múltiplos e concorrentes

Page 9: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Escalonamento de discos (cont.)

• Principal objetivo em sistemas multimídia: atender os deadlines de tarefas de tempo-crítico

• Também importante: manter os requisitos de espaço em buffer baixos

• Além de servir a streams concorrentes, pedidos aperiódicos devem ser escalonados sem grandes atrasos/prejuízos

Page 10: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Algoritmo: SCAN-Earliest Deadline First

• A otimização de busca do algoritmo SCAN combinada com as garantias de tempo-real do algoritmo EDF

• EDF: o pedido com o deadline mais próximo é servido primeiro

• Entre pedidos com o mesmo deadline, o primeiro de acordo com a direção do scan é servido primeiro

Page 11: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Algoritmo: Estratégia Mista• Objetivos:

– Maximizar a eficiência da transferência minimizando o tempo de busca e latência (algoritmo shortest seek - o processo com o bloco de dados mais próximo é servido primeiro)

– Atender requisitos de processos com espaço de buffer limitado (algoritmo balanced strategy - escolhe o processo com a menor quantidade de dados em buffer porque isto pode significar que o processo está acabando os seus dados)

Page 12: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

• Para quaisquer estratégias de escalonamento de disco, a eficiência

depende do design de todo o sistema de arquivos, do layout de disco, do grau de

tolerância de dealines e da aplicação

Page 13: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Estruturação de Dados Multimídia

• Strand: sequência imutável de frames de vídeo ou amostras de áudio, ou ambos, gravados continuamente

• Strands que juntos formam um entidade lógica de informação (ex.: vídeo e áudio de um filme) são ligados por sincronização para formar um rope multimídia

Page 14: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Estruturação (cont.)

• Para cada media strand em um rope, o strand ID, a taxa de gravação e a granularidade de armazenamento são armazenados

• Operações de edição em ropes apenas manipulam ponteiros para strands

• Strands não referenciados por qualquer rope podem ser deletados

Page 15: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Operações de Manipulação de Ropes

• RECORD [media] [requestID, mmRopeID]• PLAY [mmRopeID, interval, media] requestID• STOP [requestID]• INSERT [baseRope, position, media, withRope, withInterval]• REPLACE [baseRope, media, baseInterval, withRope,

withInterval]• SUBSTRING [baseRope, media, interval]• CONCATENATE [mmRopeID1, mmRopeID2]• DELETE [baseRope, media, interval]

Page 16: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Sistema de Armazenamento

• Duas camadas:– Rope server:

• comunica-se com as aplicações, permite a manipulação de ropes e se comunica com o storage manager (camada de baixo) para gravar e tocar multimedia strands

• provê a abstração rope para a aplicação– Storage manager:

• responsável pela manipulação de strands em disco para assegurar gravação e playback contínuos

Page 17: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Operações de Manipulação de Strands

• PlayStrandSequence• RecordStrand• StopStrand: termina um

PlayStrandSequence ou RecordStrand• DeleteStrand

Page 18: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Outras considerações de sistemas operacionais

• Comunicação entre processos e sincronização

• Gerência de memória• Gerência de dispositivo

Page 19: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Gerência de Memória

• Paginação: dados usados menos frequentemente são trocados (swapped) entre as memórias principal e secundária

• Não se deve retirar dados de mídias contínuas da memória principal - page faults afetam o desempenho de aplicações multimídia (tempo-real) seriamente

Page 20: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Gerência de Memória (cont.)

• A alternativa: a real implementação se dá em dispositivos externos e hardware dedicado

• A gerência de memória, neste caso, tem apenas uma função de switching para controlar um componente externo

Page 21: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Gerência de Dispositivo

• O gerenciamento de dispositivo permite integrar todos os componentes de hardware

• O dispositivo físico é representado por um device driver (abstração - as caracterísiticas físicas do dispositivo são escondidas)

Page 22: Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar mídias contínuas em sistemas de arquivos: –1a.: organização.

Gerência de Dispositivo (cont.)

• Ex:– para mudar a posição de uma câmera, a

aplicação especifica coordenadas• a direção pode ser para esquerda, para direita, para

cima, para baixo• pode haver diferentes velocidades

– é tarefa do driver da câmera realizar o mapeamento de coordenadas para o posicionamento