Computação para enga – sem 5 - professorleomir

Propaganda
Engenharia de Controle e
Automação
Computação Para Engenharia
Semana 5
18/02/2013 Professor Leomir J. Borba- [email protected] –http://professorleomir.wordpress.com
1
Agenda
Sistema de Arquivos
18/02/2013 Professor Leomir J. Borba- [email protected] –http://professorleomir.wordpress.com
2
Problemas quanto ao armazenamento de
informações
• Capacidade de memória está restrita ao
tamanho do espaço de endereçamento
virtual;
• Manter a informação mesmo quando
processo termina;
• Múltiplos processos tenham acesso à
informação (ou parte dela) ao mesmo tempo.
Armazenamento da Informação a Longo Prazo
• Deve ser possível armazenar uma quantidade
muito grande de informação
• A informação deve sobreviver ao término do
processo que a usa
• Múltiplos processos devem ser capazes de
acessar a informação concorrentemente.
Solução
• Armazenar a informação em discos e em
outros meios externos : em unidades
chamadas arquivos;
• A informação deve ser persistente: não pode
ser afetada com criação ou término de
processo;
• Um arquivo só será apagado pelo seu
proprietário.
Sistema Operacional
• Arquivos são gerenciados pelo sistema
operacional;
• Sistema de Arquivos de um SO:
estruturar, nomear, acessar, usar, proteger e
implementar.
Arquivos
• Arquivo é um mecanismo de abstração; Isola o
usuário dos detalhes sobre:
– Como e onde a informação está armazenada
– Como os discos funcionam.
• Quando um processo cria um arquivo, ele dá
um nome;
• Quando o processo termina o arquivo
continua existindo;
• Outros processos têm acesso a esse arquivo;
Arquivos
• Cada arquivo é identificado por um nome, o qual
permite que o usuário faça referências a ele. Além do
nome, cada arquivo possui uma série de outros
atributos que são mantidos pelo SO. Entre os mais
usuais:
• Tipo de Conteúdo;
• Tamanho;
• Data e horário do último acesso;
• Data e hora da última alteração;
• Identificação do usuário que criou o arquivo;
• Lista de usuários que podem acessar o arquivo.
Operações Básicas
•
O SO suporta diversas operações sobre arquivos. As operações
básicas são:
• Criação do arquivo;
• Destruição do arquivo;
• Leitura do conteúdo;
• Alteração do conteúdo;
• Escrita de novos dados ao final do arquivo;
• Execução do programa contido no arquivo;
• Troca do nome do arquivo;
• Alteração na lista de usuários que podem acessar o arquivo.
Em geral, essas operações básicas correspondem a chamadas de
sistema que os programas de usuário podem usar para manipular
arquivos. A partir das operações básicas muitas outras podem ser
implementadas.
Controle de Acesso
• Em sistemas multiusuários (Linux, Windows), é
importante controlar o acesso aos arquivos.O controle
de acesso inicia com a identificação dos usuários. Isso
normalmente é feito com um código de usuário e uma
senha. O SO então verifica a senha e confirma que o
usuário naquele terminal é mesmo quem ele afirma
ser. A partir do momento em que a identificação do
usuário é feita, todos os processos disparados a partir
do terminal em questão passam a ter os direitos de
acesso associados àquele usuário. É possível associar a
cada arquivo uma lista de usuários e direitos de acesso.
Controle de Acesso - Grupos de Usuários
• Para facilitar o controle de acesso aos
arquivos, a solução é criar grupos de usuários.
O administrador do sistema cria diversos
grupos de usuários, conforme suas afinidades.
Estrutura Interna dos arquivos
• Cada tipo de arquivo possui uma estrutura interna
apropriada para a sua finalidade. Existe, na prática,
uma enorme quantidade de diferentes tipos de
arquivos, e, não é viável para o SO conhecer todos os
tipos de arquivos existentes.
• Em geral, os SO ignoram a estrutura interna dos
arquivos. Para o SO cada arquivo corresponde a uma
sequência de bytes, cujo significado é conhecido pelo
usuário que criou o arquivo. A única exceção são os
arquivos que contêm programas executáveis. Nesse
caso, a estrutura interna é definida pelo próprio SO,
responsável pela carga do programa para a memória
quando esse deve ser executado.
Métodos de acesso
• Método de acesso diz respeito à forma como
o conteúdo de um arquivo é acessado. O
método de acesso mais simples é o
sequencial.
Método de acesso Sequencial
•
•
Nesse caso, o conteúdo do arquivo pode ser lido sequencialmente, pedaço a
pedaço. A figura abaixo ilustra a leitura sequencial de um arquivo. Os valores “A”,
“B”, etc., podem representar bytes, linhas ou registros. Cada chamada de sistema
retorna para o processo os dados seguintes àqueles que foram lidos na chamada
anterior.
O acesso sequencial é muito em compiladores, impressão de arquivo, copiar o
conteúdo de um arquivo para outro.
Arquivo
A
B
C
D
E
F
Ler arquivo
A
Ler arquivo
B
Ler arquivo
C
Método de acesso Relativo
Nesse método de acesso, o programa inclui na chamada de sistema
qual a posição do arquivo a ser lida. As posições do arquivo são
numeradas a partir de 0 (ou 1 em alguns sistemas), sendo que cada
posição corresponde a um byte.
Arquivo
Ler arquivo, posicionar em 2
A
B
C
D
E
F
C
Ler arquivo, posicionar em 4
E
Ler arquivo, posicionar em 0
A
Método de acesso
Relativo usando posição corrente no arquivo
Em muitos SO, existe o conceito de
posição corrente no arquivo. Nesse caso,
a chamada de sistema para leitura ou
escrita não informa uma posição. Essa
sempre acontece a partir da posição
corrente. A posição corrente é então
avançada para imediatamente após o
último byte lido ou escrito. Dessa forma,
as leituras e escritas são, a princípio,
sequenciais. Entretanto, o SO também
permite que o programa altere a posição
corrente no arquivo usando uma
chamada de sistema do tipo
“Posicionar”. Dessa forma, acesso
relativo pode ser obtido por intermédio
de uma chamada de sistema
“Posicionar” seguida de uma chamada
de sistema “Ler” ou “Escrever”.
Arquivo
A
B
C
D
E
F
Posicionar em 2
Ler
C
Posicionar em 4
Ler
E
Posicionar em 0
Ler
A
Implementação de arquivos
A forma básica de implementar arquivos é criar, para cada arquivo no sistema, um
descritor de arquivo. O descritor de arquivo é um registro no qual são mantidas as
informações a respeito do arquivo. Essas informações incluem os seus atributos, além
de outros dados que não são visíveis aos usuários mas que são necessários para que
o SO implemente as operações sobre arquivos. Um descritor de arquivo típico contém
as seguintes informações:
• Nome do Arquivo;
• Extensão do nome do arquivo;
• Tamanho em bytes;
• Data e horário do último acesso;
• Data e hora da última alteração;
• Identificação do usuário que criou o arquivo;
• Lista de usuários que podem acessar o arquivo e respectivos direitos de acesso;
• Local no disco onde o conteúdo do arquivo foi colocado.
Muitas vezes, o SO sofre paradas propositais ou acidentais, mas o conteúdo dos discos
permanece intacto. Logo, assim como o conteúdo do arquivo, o descritor deve ficar
em disco. A forma usual é manter o descritor de um arquivo ée na mesma partição
onde está seu conteúdo.
Diretórios
Sistemas de Diretório em Nível Único
• Um sistema de diretório de nível único
• Contém 4 arquivos
• Propriedades de 3 pessoas diferentes, A, B, e C
Sistemas de Diretórios em Dois Níveis
• As letras indicam os donos dos diretórios e arquivos
Sistemas de Diretórios Hierárquicos
Sistemas de Diretórios - Operações
•
•
•
•
•
Criar
Apagar
Abrir / Acessar
Listar conteúdo
Renomear
Bibliografia
BIBLIOGRAFIA BÁSICA
1
2
3
TANENBAUM, Andrew S. Redes de computadores. Rio de Janeiro: Campus, 1994.
MACHADO, Francis Berenger. Arquitetura de sistemas operacionais. Rio de Janeiro:
Livros Técnicos e Científicos, 2002. 3. ed.
SOUZA, Marco Antônio de Furlan. Algoritmos e lógica de programação. 2ª ed. São
Paulo, Cengage Learning, 2011.
BIBLIOGRIA COMPLEMENTAR
1
2
3
4
5
CANTU, Marco. Dominando o Delphi 5 "a Bíblia". São Paulo: Makron Books, 2000
LOURENÇO, Antônio Carlos de. Circuitos digitais. São Paulo: Érica, 2005
NORTON, P., Introdução à Informática, 5ª edição, São Paulo, Printice Hall, 2004.
1997
MANZANO, José Augusto. Algoritmos. São Paulo: Érica, 2011.
COMER, Douglas E. Interligação em rede com TCP/IP: projeto, implementação e
detalhes internos. Tradução de Ana Maria Netto GUZ. 3. ed. Rio de Janeiro:
Campus, 1999. v. 2.
02/08/2011 Professor Leomir J. Borba- [email protected] –http://professorleomir.wordpress.com
22
Download