Please enable JavaScript.
Coggle requires JavaScript to display documents.
Uso de arquivos - Coggle Diagram
Uso de arquivos
Inerfaces de acesso
de alto nével: Chamadas de biblioteca (ou runtime)
Depende da linguagem, independe do SO
de baixo nível: Chamadas de sistema
Depende do SO, independe da linguagem
Funções das bibliotecas
Usadas pela aplicação para manipular arquivos.
Dependem da linguagem de programação.
Abrir arquivo fd = fopen(...) [C] obj = File(...) [Java]
-
-
-
Controle de acesso
Definir e controlar que usuários podem acessar que arquivos.
Atributos relevantes:
Proprietário: usuário dono do arquivo
Permissões: operações permitidas aos usuários
ACL
Access Control List associada a cada arquivo.
Indica as ações que os usuários podem fazer sobre ele
Permissões em UNIX
Usuários:
user : o proprietário do arquivo
group: um grupo de usuários associado ao arquivo
other: os demais usuários
Permissões: read, write, execute
-
Travas
Controle de concorrência (mutex):
Necessário ao compartilhar arquivos entre processos
Arquivos ou trechos podem ser travados
Vários tipos de travas estão disponíveis
Trava obrigatória (mandatory lock)
Incontornável, imposta pelo núcleo aos processos
Processos são suspensos aguardando liberar a trava
Default nos sistemas Windows
Trava recomendada (advisory lock)
Gerenciada pelo suporte de execução (biblioteca)
Pode ser ignorada pela aplicação
Útil para gerenciar concorrência dentro de uma aplicação
O programador deve usar as travas conforme necessário
Default nos sistemas UNIX
-
Trava compartilhada (read lock)
Impede travas exclusivas sobre o arquivo
Permite mais travas compartilhadas
-