• Nenhum resultado encontrado

Sistemas Operacionais

N/A
N/A
Protected

Academic year: 2021

Share "Sistemas Operacionais"

Copied!
6
0
0

Texto

(1)

Si t

O

i

i

F

RGS

Sistemas Operacionais

c

a

-U

F

Diretórios

o

rmáti

c

d

e Inf

o

tituto

d

Ins

t

Aula 18

Introdução

ç

Sistema de arquivos armazena arquivos de diferentes usuários

Duas prerrogativas importantes a respeitar:

 Liberdade para nomear os arquivos  Habilidade para compartilhar os arquivos

A

ã d

t t

d di tó i b

t d

ti

U

FRGS

A noção de estrutura de diretório busca atender essas prerrogativas

 Estratégias de estruturação : plana (linear), dois níveis e árvore.

Questão associada: implementação do diretório em si

rmática

-U

Questão associada: implementação do diretório em si

 Lembrando que um diretório é um tipo de arquivo

-15 u to de Info a rissimi -20-mai Instit u Sistemas Operacionais 2 A. C a

Implementação de diretório (visão simplificada)

p

ç

(

p

)

É um arquivo especial

Armazenado em um local conhecido do disco (partição)

 Diretório especial: raiz

Arquivo de diretório d1 (raiz) Localização do arquivo

diretório raiz

Entrada do diretório

U

FRGS

Nome Flag Local Atributos permissões 0 1 2 diretório raiz rmática -U -15

Nome Flag Local. ....

d: diretório permissões n ... u to de Info a rissimi -20-mai a: arquivo l: link

Se flag=diretório, “local” fornece a localização de um outro arquivo

Instit

u

A. C

a Se flag diretório, local fornece a localização de um outro arquivo

diretório (d2) que tem sua próprias entrada. Nesse caso, d2 é um subdiretório de d1.

Diretório em um único nível

Todos os arquivos são mantidos em um único diretório

Diretório raiz ou mestre (Master File Directory – MFD)

Problemas:

 Organização quando há muitos arquivos  Nomeação (colisão): nomes devem ser únicos

U

FRGS

 Nomeação (colisão): nomes devem ser únicos  Fatores agravados em ambientes multiusuário

Ainda: aspectos de proteção Não atende a prerrogativa de Não atende a prerrogativa de

rmática

-U p p ç

Solução:

 Empregar uma estrutura hierárquica

-15

Não atende a prerrogativa de liberdade para nomear arquivos

Não atende a prerrogativa de liberdade para nomear arquivos

u

to de

Info Diretórios em dois níveis

Estruturados em árvores ou grafos

a rissimi -20-mai Instit u A. C a

(2)

Diretório de dois níveis

Criação de um diretório para cada usuário (user file directory - UFD)

Conceito de diretório home do usuário

E i t d t d di tó i i ( t fil di t MFD)  Existem dentro de um diretório raiz (master file directory – MFD)  Define uma árvore de altura dois

Atende a primeira prerrogativa

U

FRGS

Atende a primeira prerrogativa

 Resolve o problema de colisão de nomes entre usuários

Segunda prerrogativa

rmática

-U

Segunda prerrogativa

 Permitir um usuário indicar arquivo no diretório de outro usuário Envolve questões de autorizações e permissões

-15

u

to de

InfoNo login o sistema posiciona o UFD em função do usuário autenticado e isola

sua estrutura de arquivos dos demais

a rissimi -20-mai Instit u Sistemas Operacionais 5 A. C a

Caminhos em sistemas de dois níveis

Um arquivo é localizado no sistema através de

 MFD + UFD + Nome do arquivo

Arquivos do sistema operacional e de uso comum (compiladores,

bibliotecas, etc)

 Criar um usuário especial que mantém todos esses arquivos (UFD sistema)

U

FRGS

 Criar um usuário especial que mantém todos esses arquivos (UFD sistema)  Sequência de acesso

Busca no UFD local e, se não encontrar, busca no UFD sistema

rmática

-U , ,

Caminho de busca: sequência de diretórios pesquisados na procura de um arquivo (caminho: MFD+UFD)

-15 u to de Info a rissimi -20-mai Instit u Sistemas Operacionais 6 A. C a

Diretórios em árvore

Generalização de uma árvore de dois níveis

Permite que usuários criem subdiretórios

 Necessidade de indicar se uma entrada de diretório está relacionada com um arquivo ou com um diretório

Uso de um flag indicativo como mais um atributo do arquivo

U

FRGS

Uso de um flag indicativo como mais um atributo do arquivo

 Existência de uma hierarquia de diretórios organizados na forma de “pai-filho” Um “filho” é um subdiretório do diretório “pai”

rmática -U -15 u to de Info a rissimi -20-mai Instit u A. C a

Noção de diretório corrente, caminho relativo e absoluto

ç

,

Diretório corrente

No login é o home do usuário

A i ã d id d tã di tó i t

 Arquivos são acessados considerando que estão no diretório corrente Em Unix é empregado a notação (./)

 Necessário indicar um caminho ou mudar o diretório atual para acessar

U

FRGS

Necessário indicar um caminho ou mudar o diretório atual para acessar arquivos que estão em outros diretórios

Caminho (pathname)

rmática

-U

 Identificação unívoca de um arquivo  Duas formas:

R l ti ti d di tó i t

-15

u

to de

Info Relativo: a partir do diretório corrente

 Ex.: ../../sisop/pdf/aula23.pdf; ../pdf/aula23.pdf Absoluto: a partir do diretório raiz (MFD)

a

rissimi -20-mai

Instit

u Absoluto: a partir do diretório raiz (MFD)

 Ex.: /home/asc/public_html/sisop/pdf/aula23.pdf

A. C

(3)

Diretórios como grafos direcionados acíclicos (DAGs)

g

(

)

Características da organização em árvore

 Cada arquivo (inclui arquivos de diretório) tem apenas um diretório pai

Lib d d ã ( ti 1)

 Liberdade para nomeação (prerrogativa 1)  Compartilhamento implica em fornecer caminhos

Podem ser arbitrariamente longos

U

FRGS

Podem ser arbitrariamente longos

Diferentes nomes (i.é. caminho+nome) para um mesmo arquivo  Problema sob o ponto de vista do usuário (não conveniente)

rmática

-U

Solução: emprego de grafos acíclicos

 Permitir que um arquivo tenha vários diretórios pais (múltiplos ascendentes)

-15

u

to de

InfoConceito de vínculo (link)

a rissimi -20-mai Instit u Sistemas Operacionais 9 A. C a

Vínculos (link)

(

)

Vínculo ou link (ou ainda, ligação)

 Conexão direcionada entre dois arquivos existentes na estrutura de diretório li k é ti d i t d di tó i i di i

link é um tipo de arquivo e sua entrada no diretório indica issoResolução do link: localização do caminho real

Genericamente fornecido por uma tupla

U

FRGS

Genericamente fornecido por uma tupla

<from_file_name; to_file_name; link_name>

(c; c/software/web; guest) c

rmática

-U

-15

Diretório Diretório ou arquivo guest

software A partir do diretório c: u to de Info a

rissimi -20-mai web

./guest ./software/web Instit u Sistemas Operacionais 10 A. C a

to_file_name pode ser acessado como se fosse nomeado link_name no diretório from_file_name

Problema: remoção de arquivos (original do apontamento)

ç

q

( g

p

)

Opção I: apagar a entrada do diretório sempre que for solicitada por

um de seus ascendentes (caminho)

R f ê i i álid d i d t

Referência inválidas para os demais ascendentes

Opção II: remover a entrada apenas no ascendente (caminho)

origem da solicitação de remoção

U

FRGS

origem da solicitação de remoção

 Contador de referência

Número de caminhos alternativos para um arquivo

rmática

-U

-15

p q

 Arquivo é efetivamente removido quando o contador de referência for zerado

Sistemas operacionais ofecerem essas opções através de

u

to de

Info

a

rissimi -20-mai

Vínculos simbólicos (softlinks)Vinculos estritos (hardlinks)

Instit

u

A. C

a

Vínculo simbólico ou softlink

Permite um arquivo possuir vários ascendentes (caminhos de

acesso), mas apenas um deles é o proprietário do arquivo

A i i i l ( “ fi i l”) i tá i d i

 Arquivo original (acesso “oficial”): proprietário do arquivo

 Vínculo (acesso “secundário”): forma alternativa de acesso ao arquivo

b D1 U FRGS l r t c n a b a D1 D2 D3 p softlink

rmática -U -15 Semântica de remoção:

Remover o link implica em remover apenas a sua entrada na estrutura

m k n h k e f F1 F2 F3 D4 D5 D6 u to de Info a rissimi -20-mai

apenas a sua entrada na estrutura de diretório, não o arquivo que aponta F7 F6 F8 F9 F5 F4 n a q D7

softlink Instit u A. C a F11 F10

(4)

Vínculos estritos (hardlink)

(

)

Um arquivo possui múltiplos ascendentes sem distinguir quem é o

original e quem é o vínculo

Solução: remove só a entrada

d1 d2 d1 d2

b

remove d1/b

d1 d2

Solução: remove só a entrada

U FRGS

Semântica da remoção

Inexistente (removido) a b a a b NÃO pode!! rmática -U

Semântica da remoção

 Manter um contador de referências nos atributos dos arquivos

Arquivo só é apagado efetivamente quando o contador for igual a zero

-15

u

to de

Info Contador de referência é igual a 1 na criação do arquivo

 Incrementado a cada criação de vínculo (link)

 Decrementado na remoção (se zero remove o arquivo e a entrada no

a

rissimi -20-mai

Instit

u Decrementado na remoção (se zero remove o arquivo e a entrada no

diretório, senão remove apenas a entrada)

Sistemas Operacionais 13

A. C

a

Problema adicional: presença de ciclos

p

ç

Contador de referência só funciona bem se não tiver ciclos

(a partir do diretório A) A j ( 2) A j t ( t 1) %rm projects U FRGS l i projects2 projects (count=2) lti projects2 projects (count=1) rmática -U 0-mai-15 realtime beta main realtime beta main u to de Info A. Carissimi -2 main pgm main pgm Inacessível!! Instit u Sistemas Operacionais 14

Solução para os problemas com ciclos

ç p

p

Problemas de ciclos e soluções

 Desempenho: atravessar uma região compartilhada mais de uma vez

li k ( b l t d di tó i )

Não varrer links (se sabe pela entrada no diretório)  Pesquisa contínua (fica preso no ciclo)

Não varrer links (se sabe pela entrada no diretório)

U

FRGS

Não varrer links (se sabe pela entrada no diretório)

 Arquivos inacessíveis com contagem de referências diferente de zero Garbage collection (procedimento custoso)

rmática

-U

Solução simples e eficaz:

 Impedir a existência de ciclos na estrutura de diretórios proibindo que sejam f it í l t it (h dli k ) t di tó i

-15

u

to de

Info feitos vínculos estritos (hardlinks) entre diretórios

Apenas esses geram arquivos inacessíveis (subárvores)

a rissimi -20-mai Instit u A. C a

Exemplos de implementação de vínculos

p

p

ç

Microsoft windows

Implementa vínculos simbólicos através dos atalhos (shortcuts)

 Atalhos são ponteiros para arquivos ou diretórios que podem ser copiados e  Atalhos são ponteiros para arquivos ou diretórios que podem ser copiados e

movidos entre diretórios

Remover um shorcut consiste em apagar apenas esse ponteiro

R bj t t d h t t i álid

U

FRGS

Remover o objeto apontado gera um shortcut inválido

UNIX

Implementa aliases simbólicos (soft link) e múltiplos ascendentes (hard link)

rmática

-U

-15

Implementa aliases simbólicos (soft link) e múltiplos ascendentes (hard link)Soft link é equivalente ao shortcut (microsoft)

Hard link só é permitido com arquivos que não sejam diretórios

u

to de

Info

a

rissimi -20-mai

Diretório tem apenas um ascendente, mas pode ser referenciado via soft link Ao ser removido apaga-se apenas o ponteiro; o objeto apontado só é

efetivamente removido se não houver mais referências a ele

Instit

u

A. C

(5)

Exemplo UNIX: soft e hard links

p

%ln index hlink %ln -s index slinl

%ls -l Contador de referências

%ls l

-rw- - - 2 chavez chem 5228 Mar 12 11:36 index -rw- - - 2 chavez chem 5228 Mar 12 11:36 hlink

l 1 h h 5 M 12 11 36 li k i d

U

FRGS

lrwx rwx rwx 1 chavez chem 5 Mar 12 11:36 slinkindex Diretório

inode arquivo index

rmática

-U

-15

index hlink

inode arquivo index inode arquivo slink

Localização do arquivo em disco u to de Info a rissimi -20-mai slink ode a qu o s @index Instit u Sistemas Operacionais 17 A. C a

inode = estrutura UNIX que descreve os blocos lógicos do disco que formam um arquivo

Implementação de diretório

p

ç

É um arquivo especial do sistema operacional que mantém

informações sobre arquivos

Pode ser visto como uma tabela com cada entrada possuindo

atributos de um arquivo

 ex : nome tipo localização tamanho proteção contador de referências

U

FRGS

 ex.: nome, tipo, localização, tamanho, proteção, contador de referências...

Atributos interessantes:

 Contador de referência: número de entradas que apontam ao arquivo

rmática

-U  Contador de referência: número de entradas que apontam ao arquivo

 flags: serve para diferenciar diferentes tipos de entrada ex.: l (link), d (diretório), c (caracter), b (bloco)

-15

u

to de

Info  lock: acesso exclusivo

a rissimi -20-mai Instit u Sistemas Operacionais 18 A. C a

Operações em diretórios

p

ç

Operações típicas

Pesquisa (search): mais comum

C i ã ã d i

 Criação e remoção de arquivos  Atualização na chamada close( )  Listar o conteúdo

U

FRGS

Listar o conteúdo  Remover o diretório

Envolve pesquisar, inserir e remover entradas em uma estrutura de

rmática

-U

p q

,

dados que representa o diretório

-15 u to de Info a rissimi -20-mai Instit u A. C a

Implementação de tabelas

p

ç

Um diretório nada mais é que uma tabela

Três implementações mais utilizadas:

 Lista (ordenada e não ordenada)  Tabela de dispersão (tabela hash)  Estruturas em árvore (e g árvores B+)

U

FRGS

 Estruturas em árvore (e.g. árvores B+)

Relação custo versus desempenho

 Simplicidade versus desempenho

rmática

-U

-15

 Simplicidade versus desempenho Em tabelas, tempo médio é n/2

Em árvores a complexidade está na inserção e remoção de entradas, mas

u

to de

Info

a

rissimi -20-mai

o desempenho de acesso é bom

Instit

u

A. C

(6)

Exemplo: implementação de diretórios UNIX

p

p

ç

Berkeley File System (BFS ou UFS)

Vetor linear de entradas de tamanho variável

 i-node, tipo (diretório ou regular), nome simbólico, “buraco”  “buraco” surge da fragmentação gerada pela remoção de entradas

Pode receber uma nova entrada

U

FRGS

Pode receber uma nova entrada

Cada entrada possui um tamanho máximo limitado pelo fato do

nome simbólico ter até 255 caracteres

rmática

-U

-15

nome simbólico ter até 255 caracteres

entrada i node = descritor u to de Info a rissimi -20-mai l1 l2 tipo abc inode i-node = descritor Instit u Sistemas Operacionais 21 A. C a “buraco”

Exemplo: implementação de diretórios Windows 2000

p

p

ç

New Technologie File System (NTFS)

Cada arquivo e diretório é representado por um descritor de 1 Kbyte

Diretório é organizado de duas formas:

 Pequenos: lista nome do arquivo e um indice do descritor do arquivo

U

FRGS

Entradas do diretório cabem no 1 Kbyte

Grandes: descritores adicionais (runs) organizados em uma B-tree+

1 kb t 1 kb t rmática -U -15 D1 abc desc 1 kbyte b D1 p2 1 kbyte p1 a u to de Info a rissimi -20-mai abc d c c Nome do arquivo Instit u Sistemas Operacionais 22 A. C a

abc desc xyz desc

e seu descritor

Leituras complementares

p

R. Oliveira, A. Carissimi, S. Toscani; Sistemas Operacionais. Editora

Sagra-Luzzato, 2001.

C ít l 8 õ 8 1 8 2 8 3  Capítulo 8, seções 8.1, 8.2, e 8.3

A. Silberchatz, P. Galvin; Operating System Concepts.

Addison-Wesley (4

rd

edition)

U FRGS

Wesley, (4

rd

edition).

 Capítulo 10, seções 10.1, 10.2,10.4, e 10.5 rmática -U -15 u to de Info a rissimi -20-mai Instit u A. C a

Referências

Documentos relacionados

• Como pode haver muitos pedidos de recursos, possivelmente conflitantes entre si, o sistema operacional deve decidir em que pedidos serão alocados recursos para que ele possa

• grep: Procura um arquivo por um padrão, sendo um filtro muito útil e usado, por exemplo um cat a.txt | grep ola irá mostrar-nos apenas as linhas do arquivo a.txt que contenham

• A lista de lacunas que é o espaço livre na memoria física quando é usado em um processo ela percorre toda a lista, será usado um tamanho de lacuna maior ou igual ao programa, o

Operações são oferecidas para armazenar e recuperar Informações Algumas chamadas são:. • Create: criar arquivo sem dados,

- NESTE TIPO DE SISTEMA, O SISTEMA PODE INTERROMPER A EXECUÇÃO DE UM PROCESSO PARA QUE OUTRO PROCESSO UTILIZE O PROCESSADOR... ESCALONAMENTO

Efeito da interação: podem provocar a redução na absorção de ferro, assim como a. pancreatina (enzima presente no pâncreas) ou a pancrelipase (repositor de

Considerando a importância do estudo teórico do processo de secagem dos produtos agrícolas tropicais, a gama de espécies de feijão existentes e a escassez de

O ensino da Flauta Doce tem por objetivo oferecer aos alunos uma experiência com a aprendizagem da mesma, sendo um instrumento introdutório na educação