Buscar

Sistemas Operacionais II - aula06

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 7 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
53
Uma das principais e mais complicadas funções do sistema operacional é a 
implementação da gerência de dispositivo. Toda a sua implementação é feita por meio de 
camadas, de forma bem parecida à do sistema operacional. As camadas que são implementadas 
no mais baixo nível escondem características dos dispositivos das camadas superiores, assim 
elas oferecem uma usabilidade de fácil compreensão para o usuário.
A grande quantidade de dispositivos existentes faz com que seja implementada 
uma camada chamada de subsistema de E/S, cuja função é a de isolar a complexidade dos 
Aula 06
GERÊNCIA DE 
DISPOSITIVO
Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
54
dispositivos físicos. Com isso os sistemas operacionais se tornam mais fl exíveis, permitindo 
assim a comunicação entre as aplicações com qualquer tipo de periférico. Algumas 
particularidades do periférico como a velocidade de operação, representação de dados, tipos 
de operações e alguns outros detalhes de cada periférico são tratados pela camada de device 
driver. O device driver proporciona uma interface uniforme entre o subsistema de E/S e todos 
os dispositivos e um de seus principais objetivos é ocultar do subsistema de E/S do kernel as 
diferenças existentes entre os controladores de dispositivos.
As camadas são defi nidas em dois grupos: o primeiro grupo tem uma visão geral de 
todos os tipos de dispositivos do sistema e o segundo a visão específi ca para cada dispositivo. 
A maioria das camadas trabalha de forma independente do dispositivo físico.
SUBSISTEMA DE ENTRADA E SAÍDA
O usuário deve ter um acesso mais simples possível aos dispositivos de E/S, que 
deve proporcionar uma interface de fácil usabilidade para suas aplicações e quem deve dispor 
dessa interface é o próprio sistema operacional. Já o subsistema tem a incumbência de separar 
a complexidade das operações específi cas para cada tipo de dispositivo da camada de sistema 
de arquivos, do sistema gerenciador de banco de dados ou diretamente da aplicação. Com isso, 
as aplicações e usuários podem manusear qualquer tipo de periférico com maior facilidade. A 
fi gura 18 mostra como são implementadas as camadas dentro do sistema operacional. Quanto 
ao subsistema de E/S ser independente do dispositivo isso facilita o trabalho do desenvolvedor 
do sistema operacional. Os fabricantes de dispositivos também levam vantagem sobre essa 
independência. Eles criam novos dispositivos para serem compatíveis com uma interface 
de controlador de hospedeiro existente como para novos hardwares. Com isso, novos 
dispositivos podem ser conectados ao computador sem ter que esperar que o fornecedor do 
sistema operacional desenvolva o código de suporte ao novo dispositivo.
}
}
}
}
Processo
Sistema
de arquivos SGBD
Subsistema de E/S
Device Driver
Controlador
Dispostivo de E/S
So
ftw
ar
e
Ha
rd
wa
re
Mo
do
 d
e 
Us
uá
rio
Independente 
do dispositivo
Independente 
do dispositivo
Mo
do
 K
er
ne
l
Aplicação
Figura 18
Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
55
Para os fabricantes de dispositivos existe uma barreira a mais a respeito no 
desenvolvimento do controlador do dispositivo, pois cada tipo de sistema operacional tem 
seus próprios padrões de interface de driver. Com isso, o fabricante é obrigado a desenvolver 
um driver para cada sistema operacional, por exemplo, um driver do mesmo dispositivo para 
o sistema operacional MS-DOS, outro para o windows 95/98 e um para outro windows NT. 
Aqui seguem algumas diferenças entre os controles de dispositivos.
A transferência de dados para o dispositivo pode ser em cadeia de caracteres que 
transfere bytes um a um, ou pode ser feita em bloco. O dispositivo pode fazer transferência 
sequencialmente de modo que a transferência de dados é feita em uma ordem fi xa determinada 
pelo dispositivo ou o usuário de dispositivo de acesso aleatório pode instruir o dispositivo 
a buscar qualquer localização de armazenamento. Pode o dispositivo síncrono realizar 
transferência de dados com tempo de resposta previsível ou ele ser assíncrono onde ele 
apresenta tempos de resposta irregulares ou imprevisíveis.
Essas são algumas diferenças que o desenvolvedor de dispositivo pode encontrar no 
tratamento de cada dispositivo, por isso ha necessidade da criação de um driver do mesmo 
dispositivo para diferentes sistemas.
DISCOS MAGNÉTICOS
Há vários dispositivos de E/S, mas um deles se destaca em relação aos outros, o disco 
magnético, o qual é de grande importância para um sistema computacional por ser o principal 
meio de armazenamento de dados do sistema. O sistema operacional tem a responsabilidade 
de utilizar o hardware de maneira efi ciente. Com os discos magnéticos não pode ser diferente, 
mas, para atender essa responsabilidade o sistema tem que ter um tempo de acesso rápido e 
uma maior largura de banda. Esse tempo de acesso tem dois fatores importantes: o tempo de 
busca, que é o tempo necessário para o braço do disco mover os cabeçotes até o cilindro onde 
está o setor desejado e o tempo adicional de espera ou latência rotacional, que se refere ao 
tempo para que o disco gire o setor procurado até o cabeçote do disco. A largura de banda é 
a quantidade total de bytes transferidos dividido pelo tempo total entre o instante em que o 
serviço é requisitado e o instante em que a última transferência foi concluída.
FORMATAÇÃO DO DISCO
Um disco magnético novo pode ser comparado a uma mesa lisa, pode-se pensar 
que ali está um material magnético para alguma gravação e algumas bandejas. Antes que o 
disco possa armazenar dados ele tem que passar por um processo de preparação, ou seja tem 
que ser formatado para que trilhas e setores sejam criados onde o controlador de disco tem a 
possibilidade de ler e escrever. Podemos chamar esse processo de formatação de baixo nível 
ou formatação física, a qual adiciona ao disco uma estrutura de dados específi ca para cada 
Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
56
setor. Essa estrutura geralmente é formada por um cabeçalho, uma área para dados e um trailer. 
O cabeçalho e o trailer contêm informações utilizadas pelo controlador de disco como, por 
exemplo, um número de setor e um código de correção de erros (ECC – error-correcting cod). 
Quando o controlador de disco grava em um setor de dados durante um E/S normal, 
O ECC é recalculado e comparado como valor armazenado. Se os valores tiverem resultados 
diferentes, isso signifi ca que a área de dados do setor foi corrompida e que o setor do disco 
pode estar danifi cado.
Discos novos saem formatados fi sicamente como parte do processo fabricação. Com 
essa formatação há a possibilidade do fabricante testar o disco, assim garantindo que o disco 
não tenha defeitos que ocasionem prejuízos ao usuário.
Para que o computador funcione ele necessita de um programa de inicialização. Esse 
programa inicializa todos os componentes do sistema computacional como registradores da 
CPU, controladores de dispositivos e conteúdos da memória principal e logo depois inicia 
o sistema operacional. Para que isso ocorra o programa inicial encontra o kernel do sistema 
operacional no disco, carrega-o ele na memória e é alocado em um endereço inicial assim 
começando a execução do sistema operacional. Esse programa inicial também pode ser 
chamado de bootstrap.
Esse programa inicial fi ca armazenado em uma partição chamada de blocos de 
inicialização, em uma parte fi xa do disco. Por isso um disco que tenha gravado uma partição 
de inicialização é chamado de disco de inicialização ou disco do sistema.
Na maioria dos computadores parte do programa de inicialização fi ca gravado 
na memória ROM, local propício para isso, pois com uma memória somente de leitura o 
programa inicial fi ca livre de ser infectado por vírus e ela está em uma área fi xa onde o 
processador pode começar a executar quando for ligado ou reiniciado.O problema de o 
programa inicial ser gravado na memória ROM é que caso esse código do programa tenha 
que ser alterado ocasiona a trocar da placa ROM. Por isso a maioria dos sistemas armazena o 
mínimo do programa inicial na ROM.
No fi nal dos anos 80 foram desenvolvidas técnicas de gerenciamento de disco que 
otimizavam as operações de E/S. Foi desenvolvida a técnica de RAID (Redundant Arrays if 
Inexpensive Disk), em que eram implementadas as redundâncias e proteção de dados. Essas 
implementações foram publicadas em 6 níveis (RAID 1-6). Logo essas técnicas tiveram uma 
boa aceitação no mercado e assim desenvolveram um novo nível que foi chamado de RAID O.
Essas técnicas de RAID podem ser implementadas diretamente nos controladores de 
disco, conhecidos como subsistemas de RAID, ou elas podem ser implementados por meio 
do sistema operacional ou até mesmo por intermédio de um produto gerenciador de disco. A 
técnica de RAID utiliza-se da criação de um dispositivo virtual que também é conhecido por 
array de disco. O array é um conjunto de disco que é reconhecido pelo sistema operacional 
com se fosse um único disco, o qual apresenta certas características como ser de alta capacidade 
de armazenamento e também ter alto desempenho e confi abilidade nos dados armazenados.
Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
57
RAID 0 OU STRIPING
Essa técnica tem como função de fazer a distribuição das operações entre vários 
discos físicos contidos no array com a intenção de otimizar o desempenho, técnica 
também conhecida como disk striping. Com esses dados divididos, as operações de E/S 
podem ser processadas paralelamente. Para que esse processo possa ser colocado em 
prática é necessário formar um conjunto de discos que são chamados de stripe set, onde 
cada disco é dividido em pedaços (stripers). A ação que é executada é a de quando um 
arquivo for gravado, seus dados são divididos em pedaços iguais espalhados todos ao 
mesmo tempo pelos stripers dos diversos discos.
Apesar de essa técnica ter o nome de RAID, ela não implementa nenhum tipo 
de redundância, ela só tem a vantagem no ganho de desempenho das operações de E/S. 
Sobre sua implementação é importante ressaltar que quando há uma falha em qualquer 
disco de stripe set, os dados serão perdidos. As aplicações de multimídia que precisam 
ter um alto desempenho são beneficiadas com o uso dessa técnica. Veja na figura 19 a 
representação.
strip 00
strip 05
strip 07
strip 02
strip 01
strip 06 strip 08
strip 04
strip 03
RAID 1: ESPELHAMENTO
Essa técnica consiste em replicar todo o conteúdo do disco principal para um ou 
mais discos secundários que podem ser chamados de espelhos, sendo conhecida como 
espelhamento ou mirroring. Essa redundância pode garantir que se houver falhas no disco 
principal os discos-espelho podem ser utilizados pelo sistema de arquivos. Apesar de causar 
um overhead a mais ele é considerado pequeno se comparado pelo benefi cio em segurança 
que a redundância traz para o sistema. A técnica de RAID 1 pode ser aplicada através 
de hardware ou de software; para a aplicação por software existe a necessidade de que o 
sistema operacional ou algum produto gerenciador de disco ofereça essa facilidade.Veja na 
fi gura 20 uma visualização de como é feito o espelhamento de discos.
Figura: 19
Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
58
RAID 5: ACESSO INDEPENDENTE COM PARIDADE DISTRIBUÍDA
Essa técnica faz a distribuição de dados entre discos do array e utiliza a redundância 
baseando-se de paridade. Essa redundância é implementada através de cálculos do valor de 
paridade dos dados que são armazenados no disco de arrays junto com os dados.
Se houver falha em qualquer um dos discos do array, os dados são recuperado através 
de algoritmos de reconstrução, os quais utilizam informações de paridade dos demais discos. 
A vantagem dessa técnica de redundância é que ela utiliza um espaço adicional menor para 
armazenamento de informações de controle se comparado com a técnica de espelhamento. 
Observe a fi gura 21 de implementação de acesso independente com paridade distribuída.
strip 00
strip 05
strip 07
strip 00
strip 05
strip 07
strip 02
strip 01
strip 06
strip 02
strip 01
strip 06
strip 08
strip 04
strip 03
strip 08
strip 04
strip 03
Figura 20
strip 00
strip 05
paridade 05
strip 02
strip 06 strip 08
strip 04
paridade 00
paridade 02
Figura 21
Você sabia: Os discos ópticos de primeira geração foram inventados pelo 
conglomerado holandês Philips para o armazenamento de fi lmes. Eles tinham 
30 cm de diâmetro e eram comercializados com o nome LaserVision, mas não 
tiveram muito sucesso, a não ser no Japão. Em 1980, a Philips juntamente 
com a Sony desenvolveu o CD, o qual substituiu rapidamente o disco de vinil 
de 33 cm de 1/3 RPM para o armazenamento de musica. (fonte: – Sistemas 
Operacionais Modernos - Andrew S. Tanenbaum- 2° Ed. São 
Paulo : Prentice Hall, 2003).
Sistemas Operacionais I - France Ricardo Marques Gonzaga - UNIGRAN
59
ATIVIDADES 
As atividades referentes a esta aula estão disponibilizadas na ferramenta “Atividades”. 
Após respondê-las, envie-nas por meio do Portfólio- ferramenta do ambiente de aprendizagem 
UNIGRANET. Em caso de dúvidas, utilize as ferramentas apropriadas para se comunicar com 
o professor.

Outros materiais