Revisão...Níveis de RAID - Nível 0 (Striping) •O RAID nível 0 não constitui de fato um membro...
Embed Size (px)
Transcript of Revisão...Níveis de RAID - Nível 0 (Striping) •O RAID nível 0 não constitui de fato um membro...
-
Revisão
Prof. Marciano dos Santos Dionizio
-
• Originalmente, os discos magnéticos do HD são um terreno inexplorado.
• Para que os dados possam ser armazenados e lidos de forma organizada, é necessário que o HD seja previamente formatado.
• Em primeiro lugar, temos a formatação física, na qual os discos são divididos em trilhas, setores e cilindros e são gravadas as marcações, que permitem que a placa lógica posicione corretamente as cabeças de leitura.
Formatação Física
-
Formatação Física
• Nos HDs atuais, a formatação física é feita em fábrica, durante a fabricação dos discos.
• O processo envolve o uso de máquinas especiais e, apenas para garantir, restrições são adicionadas no firmware do drive, para que a placa lógica seja realmente impedida de fazer qualquer modificação nas áreas reservadas.
• Graças a isso, é impossível reformatar fisicamente um drive atual, independentemente do software usado.
-
Formatação Física
-
Formatação Física
-
Formatação lógica
• Em seguida, temos a formatação lógica, que adiciona as estruturas utilizadas pelo sistema operacional.
• Ao contrário da formatação física, ela é feita via software e pode ser refeita quantas vezes você quiser.
• O único problema é que, ao reformatar o HD, você perde o acesso aos dados armazenados, embora ainda seja possível recuperá-los usando as ferramentas apropriadas, como veremos mais adiante.
-
Formatação lógica
• Chegamos então ao sistema de arquivos, que pode ser definido como o conjunto de estruturas lógicas que permitem ao sistema operacional organizar e otimizar o acesso ao HD.
• Conforme cresce a capacidade dos discos e aumenta o volume de arquivos e acessos, esta tarefa torna-se mais e mais complicada, exigindo o uso de sistemas de arquivos cada vez mais complexos e robustos.
-
Formatação lógica
• Existem diversos sistemas de arquivos diferentes, que vão desde sistemas simples como o FAT16, que utilizamos em cartões de memória, até sistemas como o NTFS, EXT3 e ReiserFS, que incorporam recursos muito mais avançados.
• A formatação do HD é feita em duas etapas.
-
Formatação lógica
• A primeira é o particionamento, onde você define em quantas partições o HD será dividido e o tamanho de cada uma.
• Mesmo que você não pretenda instalar dois sistemas em dual boot, é sempre interessante dividir o HD em duas partições, uma menor, para o sistema operacional, e outra maior, englobando o restante do disco para armazenar seus arquivos.
-
Formatação lógica
-
Formatação lógica
-
Formatação lógica
• Com isso, você pode reinstalar o sistema quantas vezes precisar, sem o risco de perder junto todos os seus arquivos.
• Podemos ter um total de 4 partições primárias ou três partições primárias e mais uma partição estendida, que pode englobar até 255 partições lógicas.
• É justamente a partição lógica que permite dividir o HD em mais de 4 partições.
-
Estruturas Lógicas
• Tudo começa com o setor de boot, que é lido pelo BIOS da placa-mãe no início do boot, logo após a contagem de memória e outros procedimentos executados durante o POST.
• O setor de boot, também chamado de MBR ou trilha zero, contém dois componentes essenciais.
• O primeiro é um bootstrap, o software responsável por iniciar o carregamento do sistema operacional.
-
Estruturas Lógicas
• Tipicamente, é utilizado um gerenciador de boot, como o NTLDR (usado pelo Windows XP) ou o Grub (usado pela maior parte das distribuições Linux).
• A função do gerenciador de boot é mostrar uma lista com os sistemas operacionais instalados no início do boot e carregar o sistema escolhido.
-
Estruturas Lógicas
• O bootstrap ocupa os primeiros 446 bytes do MBR. Os 66 bytes restantes são usados para armazenar a tabela de partições, que guarda informações sobre onde cada partição começa e termina.
• Alguns vírus, além de acidentes em geral, podem danificar os dados armazenados na tabela de partição, fazendo com que pareça que o HD foi formatado.
• Mas, na maioria dos casos, os dados continuam lá, intactos, e podem ser recuperados.
-
Estruturas Lógicas
• Depois que o disco rígido foi formatado e dividido em clusters, mais alguns setores são reservados para guardar a FAT ("file allocation table" ou "tabela de alocação de arquivos").
• A função da FAT é servir como um índice, armazenando informações sobre cada cluster do disco.
• Através da FAT, o sistema sabe se uma determinada área do disco está ocupada ou livre e pode localizar qualquer arquivo armazenado.
-
Estruturas Lógicas
• Cada vez que um novo arquivo é gravado ou apagado, o sistema operacional altera a FAT, mantendo-a sempre atualizada.
• A FAT é tão importante que, além da tabela principal, é armazenada também uma cópia de segurança, que é usada sempre que a tabela principal é danificada de alguma maneira.
• Todos os demais sistemas de arquivos utilizam algum tipo de índice, similar à FAT.
-
Estruturas Lógicas
• Quando o HD é reformatado, este índice é apagado e substituído por uma tabela em branco.
• Apesar disso, os arquivos continuam gravados nas mesmas posições, embora inacessíveis.
• Enquanto eles não forem realmente sobrescritos por outros, é possível recuperá-los usando um programa de recuperação de dados, como veremos em detalhes mais adiante.
-
Estruturas Lógicas
• Em seguida, temos o diretório raiz.
• Se fôssemos comparar um disco rígido, formatado em FAT16 ou FAT32 com um livro, as páginas seriam os clusters, a FAT serviria como as legendas e numeração das páginas, enquanto o diretório raiz seria o índice, com o nome de cada capítulo e a página onde ele começa.
-
Estruturas Lógicas
• O diretório raiz ocupa mais alguns setores no disco, logo após os setores ocupados pela FAT.
• Cada arquivo ou diretório do disco rígido possui uma entrada no diretório raiz, com o nome do arquivo, a extensão, a data de quando foi criado ou quando foi feita a última modificação, o tamanho em bytes e o número do cluster onde o arquivo começa.
-
Estruturas Lógicas
• Um arquivo pequeno pode ser armazenado em um único cluster, enquanto um arquivo grande é "quebrado" e armazenado ocupando vários clusters. Nesse caso, haverá no final de cada cluster uma marcação, indicando o próximo cluster ocupado pelo arquivo. No último cluster ocupado, temos um código que marca o fim do arquivo.
-
Estruturas Lógicas
• Quando um arquivo é deletado, simplesmente é removida sua entrada no diretório raiz, fazendo com que os clusters ocupados por ele pareçam vagos para o sistema operacional.
• Ao gravar um novo arquivo no disco, o sistema simplesmente procura o primeiro setor livre, continuando a gravá-lo nos setores livres seguintes, mesmo que estejam muito distantes uns dos outros.
-
Estruturas Lógicas
• Surge então o problema da fragmentação, que reduz consideravelmente a velocidade de acesso, já que dados espalhados significam mais movimentos da cabeça de leitura.
• Ao contrário de outros sistemas de arquivos mais modernos, o sistema FAT (tanto o FAT16 quanto o FAT32) não possui nenhum mecanismo que impeça, ou pelo menos diminua a fragmentação, daí a necessidade de rodar o defrag ou outro programa desfragmentador periodicamente.
• A função deles é mover os arquivos, de forma que eles fiquem gravados em clusters sequenciais.
-
Estruturas Lógicas
-
Conceitos de RAID
• Redundant Array of Independent Drives, mais conhecido como RAID ou em português: Conjunto Redundante de Discos Independentes, é um meio de se criar um sub-sistema de armazenamento composta por vários discos individuais, com a finalidade de ganhar segurança e desempenho.
• Desenvolvida pela IBM em 1978, para melhorar a confiabilidade e segurança de sistemas através de redundância.
-
Conceitos de RAID
• Trata-se de uma tecnologia e emprego de múltiplos discos rígidos e de paralelismo cujo propósito básico é usar redundância para aumento de confiabilidade e do desempenho de sistemas que operam grandes volumes de dados e exigem baixos tempos de transferência.
-
Conceitos de RAID
• Podemos usar a tecnologia RAID para se alcançar 2 (dois) objetivos:
• Combinar vários discos a se constituírem em uma única unidade lógica, onde os mesmos dados podem ser armazenados em todos eles, o que caracteriza redundância.
-
Conceitos de RAID
• Dividir o armazenamento em um grande volume de dados em mais de um disco, reduzindo o tempo de transferência, por usar múltiplos discos em paralelo, com se fosse um só.
-
Conceitos de RAID
• Apesar do RAID oferecer segurança e confiabilidade na adição de redundância com o objetivo de evitar falhas dos discos, o RAID não protege contra falhas de energia ou erros de operação.
• Falhas de energia, código errado de kernel ou erros operacionais podem danificar os dados de forma irrecuperável.
-
Conceitos de RAID
• Definições básicas:
• Array – É um agrupamento de discos ou “conjunto”, ou seja, ao se configurar dois ou mais discos, eles passam a formar um “conjunto” de discos, comumente chamado de apenas “ARRAY”.
-
Conceitos de RAID
• Hot-Swap – Ou “troca a quente”, é a possibilidade de adicionar ou remover um dispositivo sem a necessidade de desligar o computador. É o que acontece com pen drive, iPod, câmeras fotográficas, etc.
-
Conceitos de RAID
• Paridade é o método mais simples de verificar se um dado foi transmitido ou não corretamente. Consiste em adicionar um bit adicional para cada grupo de bits. É um método matemático para a recriação de dados perdidos de um único disco, o que aumenta a tolerância a falhas.
-
Níveis de RAID
• A tecnologia RAID tem possibilidade de ser implementada em várias condições e combinações diferentes, as quais já foram definidas como padrão, sendo denominadas por sete níveis diferentes, numerados de 0 (zero) a 6 (seis).
• Este níveis não implicam em uma relação hierárquica, mas designam diferentes arquiteturas de projeto e compartilham 3 características comuns:
-
Níveis de RAID
• O agrupamento de unidades de discos físicos, visto pelo sistema operacional como uma única unidade de disco lógico.
• Os dados são distribuídos pelas unidades de discos físicos do agrupamento.
• A capacidade de armazenamento redundante é utilizada para armazenar informação de paridade, garantindo a recuperação dos dados em caso de falha em algum disco.
-
Níveis de RAID
• Trataremos neste tópico os 3 níveis mais importantes e utilizados atualmente.
• RAID Nível 0 (Zero)
• RAID Nível 1 (Um)
• RAID Nível 5 (Cinco)
-
Níveis de RAID - Nível 0 (Striping)
• O RAID nível 0 não constitui de fato um membro da família RAID, uma vez que não inclui Redundância para melhora do desempenho, contudo, ele é utilizado em poucas aplicações, nos quais o desempenho e capacidade constituem requisitos primordiais e o baixo custo é mais importante do que a maior confiabilidade.
-
Níveis de RAID - Nível 0 (Striping)
• Consiste no uso de múltiplos Discos Físicos para a formação de um único Disco lógico.
• Esta técnica de armazenamento por dois ou mais discos chama-se STRIPING (que pode significar fracionamento).
-
Níveis de RAID - Nível 0 (Striping)
• Deve ser observado que este nível de RAID não aplica o conceito de redundância, pois não está colocando a mesma parte do arquivo em “mais de um disco”, mas partes diferentes.
• No striping, os dados do usuário e de sistema são distribuídos em todos os discos do agrupamento, ou seja, fragmenta-o ou fraciona-o em várias partes e cada uma é armazenada em um disco diferente, sendo todos eles acionados simultaneamente em uma transferência.
-
Níveis de RAID - Nível 0 (Striping)
DF = Disco Rígido Físico
DL = Disco Lógico
DL 1
DF 5
DF 4
DF 3
DF 2
DF 1
-
Níveis de RAID - Nível 0 (Striping)
Dados
DL 1
DF 4
DF 1
Um único disco falhou
TODOS OS DADOS FORAM PERDIDOS
DF 2
DF 3
DF 5
DF 6
-
Níveis de RAID – Nível 1 (mirroring)
• É o nível de RAID que consiste na implementação de outro objetivo da tecnologia RAID, a REDUNDÂNCIA, a qual é utilizada através de duplicação, triplicação ou mais de um determinado volume de dados por vários discos.
• Esta técnica é denominada de Mirroring ou ESPELHAMENTO de disco, sendo que para esta implementação são necessários no mínimo dois discos.
-
Níveis de RAID – Nível 1 (mirroring)
• No funcionamento deste nível de RAID cada transação de gravação de dados de um disco é realizada também no outro ou outros definidos no espelhamento, ou seja, todos os dados são gravados em dois discos diferentes; se um disco falhar ou for removido, os dados preservados no outro disco permitem a não descontinuidade da operação do sistema.
-
Níveis de RAID – Nível 1 (mirroring)
DF 1
DF 2
Um dos discos falhou
Os dados são mantidos no
outro disco (espelho)
Cópia
(Espelho)
Dados
(Primário)
=
-
Níveis de RAID – Nível 5
• Utilizam a técnica de acesso independente (cada disco opera independentemente), permitindo que requisições e E/S distintas possam ser atendidas em paralelo e com paridade.
-
Níveis de RAID – Nível 5
• A paridade se destina a toda matriz de discos e não apenas a um só disco onde todos os dados são gravados em dois discos diferentes, caso um disco falhar ou for removido, os dados preservados no outro disco permitem a não descontinuidade da operação do sistema.
• É necessário no mínimo 3 discos para se obter um agrupamento RAID 5.
-
Níveis de RAID – Nível 5
• A informação sobre paridade é distribuída por todos os discos; perdendo-se um, reduz-se a disponibilidade de ambos os dados e a paridade, até à recuperação do disco que falhou.
• Isto causa degradação do desempenho de leitura e de escrita.
-
Níveis de RAID – Nível 5
P 9-11
Bloco 6
Bloco 3
Bloco 0
Bloco 9
P 6-8
Bloco 4
Bloco 1
Bloco 10
Bloco 7
P 3-5
Bloco 2
Bloco 11
Bloco 8
Bloco 5
P 0-2
Dados (com paridade)
-
Níveis de RAID – Nível 5
Um dos discos falhou Os dados permanecem Salvos Um segundo disco falhou !!!
TODOS OS DADOS SÃO PERDIDOS
Paridade Hot Spare
Substituição
On-line Dados
-
Arquiteturas RAID
• Uma tecnologia RAID pode ser implementado tanto através de software quanto através de hardware.
-
Arquitetura via software
• Na implementação via software, o sistema operacional gerencia o RAID através da controladora de discos, sem a necessidade de um controlador de RAIDs, tornando-a seu custo menor.
• Nesse tipo de implementação, todo o processamento necessário para o gerenciamento do RAID é feito pela CPU.
-
Arquitetura via software
• Toda movimentação de dados (leitura e escrita) é feita por uma camada de software que faz a abstração entre a operação lógica (RAID) e os discos físicos, e é controlada pelo sistema operacional.
• A configuração do RAID via software é feita pelo sistema operacional, que precisa ter implementado no próprio kernel a utilização de RAIDs via software.
-
Arquitetura via hardware
• Controladoras RAID em hardware usam layouts de disco proprietários (e diferentes). Por isso, normalmente não é possível misturar controladoras de fabricantes diferentes.
• Eles não utilizam recursos do processador. A BIOS pode iniciar (dar boot) por ela, e um integração maior com o driver de dispositivo pode oferecer um melhor tratamento de erros.
-
Arquitetura via hardware
• A maioria das implementações em hardware também suporta o "hot-swapping", permitindo que discos com falha sejam substituídos enquanto o sistema está sendo executado
-
Arquitetura via hardware
• Um implementação de RAID em hardware requer pelo menos uma controladora especialmente dedicada para isso.
• Implementações em hardware proveem performance garantida, não sobrecarregam o processador e podem suportar vários sistemas operacionais, já que a controladora apresentará ao sistema operacional um disco simples.
-
Arquitetura via hardware
-
Arquitetura via software
-
Arquitetura via software
-
Sistemas Operacionais
• Os sistemas operacionais são softwares que gerenciam o hardware (todos os elementos), outros softwares e aplicativos, a fim de que todos esses elementos trabalhem em conjunto.
-
Sistemas Operacionais
• Por isso, é comum definir a função dos sistemas operacionais para:
Controlar o hardware;
Controlar o software;
Fornecer a interface gráfica;
Controlar os sistemas de arquivos;
-
Sistemas Operacionais
• O sistema operacional está no nosso computador, no tablet, celular, gps, cabine de avião, entre outros.
• Fazendo a interação das aplicações como os componentes eletrônicos.
-
Sistemas Operacionais
• Realmente não é possível conceber que os sistemas operacionais de antes seriam iguais aos de hoje, mas ele ainda tem essa função crucial de fazer a comunicação homem e máquina.
• Ou melhor dizer, aplicativo e máquina.
-
Sistemas Operacionais
• Ou seja, agora o Sistema Operacional deve também “administrar” vários hardwares e softwares que trabalham ao mesmo tempo, muitas vezes compartilhando de um mesmo recurso, um de cada vez, cabendo ao sistema operacional organizar todas essas operações para o bom funcionamento do todo, com eficiência e segurança. Assim “sistemas operacionais são, primordialmente, gerenciadores de recursos”.
-
Sistemas Operacionais
• Isso também por conta do sistema operacional fazer interação com memória, processador e demais periféricos permitindo que os desenvolvedores em geral focassem nos principais requisitos do software em desenvolvimento.
-
Sistemas Operacionais
• Uma das razões do sucesso do MS-DOS foi oferecer um ambiente propício para desenvolvimento.
• Com vários aplicativos desenvolvidos para MS-DOS, muitas pessoas adquiriram este sistema operacional e, consequentemente, o Personal Computer.
• Com essa base de aplicação estabelecida, tem-se uma gama de usuários fidelizados, em outras palavras, com grande resistência para mudar de plataforma.
-
Sistemas Operacionais
• Para fazer todas as suas tarefas, o sistema operacional consiste em um conjunto de rotinas que, como qualquer outro programa, é executado pelo processador.
• A diferença é que no Sistema Operacional, essa atividade é realizada de forma assíncrona, ou seja, não é executada de uma forma linear, mas executadas concorrentemente conforme a realização dos eventos externos.
-
Características Esperadas no Sistema Operacional
• Eficiência
• É bem comum se dizer que um sistema é eficiente ou não é eficiente, ou ainda que se tornou mais eficiente.
• Essa é uma forma de dizer quanto tempo o processador leva para concluir determinada tarefa.
-
• Robustez
• Quando se diz que um sistema operacional é robusto, significa que ele resiste a falhas, tornando-se confiável.
• Quando o sistema não é robusto, costuma travar por pequenas falhas.
-
• Escalabidade
• Sistemas assim podem receber upgrade, acrescentado recursos.
• Extensibilidade
• Capta as novas tecnologias executando tarefas que vão além do seu projeto original.
-
• Portabilidade
• Permite que sistema rode em várias configurações de hardware.
• Segurança
• Protege recursos de invasores.
-
• Interatividade
• Reponde com agilidade às ações do usuário
• Usabilidade
• Que tem base para receber vários grupos de usuários.