Upload
internet
View
109
Download
1
Embed Size (px)
Citation preview
Interação entre memória secundária e Sistemas OperacionaisInteração entre memória secundária e Sistemas Operacionais
Funções que os Sistemas Operacionais devem prover
• Funções da baixo nível
• Funções de alto nível
2
• Referem-se à transferência de blocos de bytes entre as memórias principal e secundária, compreendendo:– Detecção e correção de erros;– Escalonamento ou programação de transferência;– Cache;– Criptografia;– Compressão de Dados.
Funções de baixo nível
3
Funções de alto nível
• Fazem o acesso à memória secundária mais conveniente para os usuários.
• As funções de alto nível são:– Estrutura do sistema de arquivos ;– Segurança;– Integridade;– Alocação de Espaço.
4
Funções de baixo nívelFunções de baixo nível
Detecção e correção de errosDetecção e correção de erros
Detecção de erros
7
Detecção e correção de erros
8
Cyclic Redundancy Check (CRC)
9
Correção de erros
10
Programação de transferênciaProgramação de transferência
Disco magnético
12
13
Disco magnético
Programação de transferência
• Nas operações de leitura e gravação, observa-se que o movimento das cabeças representa a parcela de tempo mais significativa
• Um controlador de dispositivos inteligente organiza uma série de transferências para minimizar a perda de tempo devida ao movimento das cabeças
• Um modelo de organização é o “modelo elevador” que na “subida” não atende às requisições para descer, ou seja, os movimentos são alternados porém não aleatórios
14
CacheCache
Memória cache
16
Memória cache
17
18
Memória cache
Como manipular gravações
• write through, quando uma palavra é escrita no cache, ela é imediatamente escrita de volta à memória
• transferência das posições alteradas do cache para a memória principal a intervalos constantes garantindo que o tempo de inconsistência entre as duas memórias seja tão pequeno quanto for desejado pelo projetista
• copy back, ou memória suja, não atualiza a memória quando o cache é alterado
– A memória somente é atualizada quando a entrada é expurgada do cache para permitir que outra entrada tome conta do slot
– Quando copy back é usado, um bit é necessário em cada entrada do cache, dizendo se a entrada foi modificada desde que foi carregada para o cache
19
CriptografiaCriptografia
Conceito de criptografia
• Criptografia é uma transformação de informação para que a mesma se torne ilegível aos usuários não autorizados.
• A informação legível ou texto em claro é transformada em texto criptografado escolhendo-se uma chave, que é um parâmetro que seleciona uma transformação criptográfica dentre uma família delas
21
Criptografia - notação
• M= informação legível, mensagem, plaintext• C= informação criptografada, ciphertext• E= transformação criptográfica, encrypt• D= transformação decriptográfica, decrypt• K= chave, key• I = função identidade
C=Ek(M)
M=Dk(Ek(M))
Dk(E) = I
22
Criptografia de chave secreta
23
Criptografia de chave pública
24
Gerencia de chaves secretas
25
Gerencia de chaves públicas
26
Message Digest ou One-Way Hash
27
Message Authentication Code (MAC)
28
Assinatura digital
29
O mundo da criptografia
30
Ataques aos serviços
31
Criptografia de chave secreta
32
Criptografia de chave pública Alice envia mensagem criptografada usando a chave
pública de Bob
33
Criptografia de chave pública Bob envia mensagem criptografada usando a chave
pública de Alice
34
Criptografia de chave pública Alice assina mensagem usando sua chave privada
35
Criptografia de chave pública
Autenticação e privacidade
36
Funções Hash
37
Message Authentication Codes (MAC)
38
HMAC: Keyed-hashing for message authentication
39
Assinaturas digitais
40
Diffie-Hellman Key agreement
cálculo da chave secreta
41
Diffie-Hellman Key agreementAtaque “homem no meio”
42
Sistema assimétricos
Sistemas assimétricos adotam duas chaves, S1 and S2 (chamas de chave privada e chave pública) tais que:
CiphertextS1 = En(S1, Plaintext) Plaintext = De(S2, CiphertextS1) CiphertextS2 = En(S2, Plaintext) Plaintext = De(S1, CiphertextS2)
43
Funções de alto nívelFunções de alto nível
Estrutura do Sistema de arquivosEstrutura do Sistema de arquivos
Conceito• Um SO habilita os usuários a criar e
manipular arquivos de dados
• Um sistema arquivos mapeado nos dispositivos de armazenamento secundário, e os arquivos, podem ser referenciados pelo nome
• Informações sobre os arquivos de um usuário são armazenados em um arquivo denominado diretório
46
Diretórios
• Em um diretório cada registro caracteriza um arquivo do usuário, contendo:– Nome– Tamanho– Endereço– Data da última modificação– Outras informações
47
• Existem diretórios para volumes de disco e outros agrupamentos
• Cada usuário tem um diretório raiz mas pode também possuir outros diretórios agrupando arquivos
• Casa SO possui suas convenções de notação de diretórios e arquivo (separadores /, |, .)
48
Diretórios e convenções
SegurançaSegurança
Controle de acesso lógico
• O controle de acesso tem por objetivo garantir que todos os acessos diretos a objetos sejam autorizados- A maioria dos controles de acesso incorpora
o conceito de propriedade de objetos através do qual os usuários podem conceder e revogar direitos de acesso a objetos que possuam
50
• Premissas do controle de acesso– Precisa identificação de usuários– Os direitos de acesso de cada usuário são
protegidos contra modificação não autorizada
Controle de acesso lógico
51
• A política de controle de acesso especifica quais são os acessos autorizados em um sistema- Os mecanismos de controle de acesso
implementam a política de controle de acesso
Controle de acesso lógico
52
• Modelo desenvolvido em paralelo em SO e BD
- Este modelo é definido em termos de estados e transição de estados
- Os estados são representados por matrizes e as transições de estados são descritas por comandos
Modelo da Matriz de Acesso
53
Estado da Proteção de um Sistema
Estado de Proteção de um Sistema ( S , O , A )
S -> Sujeitos - Entidades ativas do modelo
O -> Objetos - Entidades protegidas
A -> Matriz de acesso - Linhas de sujeitos e colunas de objetos
A[s,o] Mostra os direitos de acesso do sujeito s sobre o objeto o, nos SO A[s,o] Mostra a regra de decisão especificando os direitos de acesso, em BD
54
SI03.044.070
• Domínio é um ambiente protegido no qual um processo é executado
– Pode variar dinamicamente• Os direitos mais comuns são leitura, gravação e execução
SO BD
Objetos arquivossegmentos de memóriaprocessos
arquivosrelaçõesregistroscampos
Sujeitos usuáriosprocessosdomínios
usuários
Matriz de acesso
55
Interfaces de controle de acesso (1)
56
Interfaces de controle de acesso (2)
57
Níveis ou camadas de segurança
58
Listas de autorização ou listas de acessosão listas de sujeitos autorizados a ter acessoa particulares objetos
ACL (Access Control Lists)
59
ACL (Access Control Lists)
Arquivo F
F
User ID Direitos
Lista de autorização para F
R
R
RW
Possui,RWArt
PAT
ROY
SAM
Diretório de Arquivos
Lista de autorização para um arquivo
60
Conjuntos de acesso podem ser usados para agrupar objetos em conjuntos de objetos e definir acessos sobre objetos e conjuntos de objetos
Conjuntos de acesso
61
Exemplos de interface de ACL
62
Exemplos de interface de ACL
63
Exemplos de interface de ACL
64
Exemplos de interface de ACL
65
Exemplos de interface de ACL
66
IntegridadeIntegridade
Integridade mantida por replicação• Arquivos armazenados podem tornar-se
irreparavelmente comprometidos por falhas de “hardware”, “software” ou operação
• Pode-se evitar maiores danos armazenando cópias de arquivos “off-line”
• Chama-se de “back-up” a cópia feita de arquivos com essa finalidade
• Presentemente o “back-up” mais usado em grandes instalações é feito em fitas magnéticas
• O meio de armazenamento é guardado em fitotecas
68
Integridade mantida por replicação
• Fitotecas:– de serviço
• Junto do servidor ou “main frame”
– de segurança• Longe do servidor ou “main frame” par evitar acidentes ou
sabotagem• Usualmente no mesmo edifício
– de contingência• Em local fisicamente distante do servidor ou “main frame”
69
Fitoteca automatizada
70
Fitoteca automatizada
71
Fitoteca automatizada
72
Fitoteca automatizada
73
Fitoteca automatizada
74
Fitoteca automatizada
75
Biblioteca de CD automatizada
76
Modos de Backup
– Total (completo)• cópia de todos os arquivos
– Incremental (gravação mais rápida)• cópia de todos os arquivos que sofreram alteração
desde o último backup
– Diferencial (recuperação mais rápida)• cópia de todos os arquivos que sofreram alteração
desde o último backup total
77
Biblioteca de CD automatizada
78
Estratégias de backup
79
Estratégias de backup
80
Estratégias de backup
81
Opções e estratégia de backup
• Opções– Total & incremental– Total & diferencial
• Exemplo de estratégia de “back-up” :1. no início de cada mês fazer um “back-up” total;
2. no início de cada semana fazer um “back-up” incremental;
3. diariamente fazer um “back-up” diferencial.
82
Alocação de espaçosAlocação de espaços
O problema
• Alocação de espaços– A memória secundária é um dos recursos
gerenciados pelo SO– Os trechos de memória são considerados
livres ou alocados à usuários– Pode-se manter registro dos setores livres e
alocados por vetores ou mapas de bits, armazenados no próprio disco
84
Critérios de distribuição de espaços entre usuários
• cotas fixas– usuário que atingir sua cota e desejar gravar algo deve apagar arquivos
• ausência de cotas– quando o SO aceita qualquer gravação. Quando o espaço se esgota
apagam-se todos os arquivos que possuam “back-up”
• receita diária– usuário tem uma conta-corrente de blocos * dia de armazenamento
– diariamente, cada bloco armazenado consome um bloco * dia
– saldo positivo é limitado a, por exemplo, dez vezes a receita diária
– saldo negativo recebe uma penalidade (por exemplo a impossibilidade de acesso aos arquivos)
85