Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar...
-
Upload
marco-filipe-castilhos -
Category
Documents
-
view
235 -
download
5
Transcript of Sistemas Operacionais Multimídia. Sistemas de Arquivos Multimídia Duas abordagens para tratar...
Sistemas Operacionais Multimídia
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
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)
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
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
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
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
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
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
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
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)
• 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
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
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
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]
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
Operações de Manipulação de Strands
• PlayStrandSequence• RecordStrand• StopStrand: termina um
PlayStrandSequence ou RecordStrand• DeleteStrand
Outras considerações de sistemas operacionais
• Comunicação entre processos e sincronização
• Gerência de memória• Gerência de dispositivo
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
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
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)
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