Sie sind auf Seite 1von 3

COM06992 - Estrutura de Dados 2

05/04/2013

Aula 27.1: Trabalho de rvore n-ria

Prof.: Paulo Roberto Nunes de Souza

27

Trabalho de rvore n-ria

A sua equipe dever desenvolver um programa que simula um pequeno sistema de arquivos utilizando uma rvore n-ria. O programa criado dever manipular o contedo de um arquivo que simular o disco rgido do sistema. Este arquivo deve manipular at 512 blocos de 100 bytes cada.

28

Estrutura do sistema de arquivos

Cada diretrio ou arquivo no sistema de arquivos dever ocupar exatamente um bloco. Observe que os cinco primeiros campos dos dois tipos de bloco, arquivo e diretrio, so idnticos.
28.1 Bloco de diretrio

Um bloco no sistema de arquivos que represente um diretrio ser representado com a seguinte estrutura.

Nome: 12 caracteres Data de criao: 8 caracteres(DDMMAAAA) Tamanho ocupado: 1 inteiro FlagDeletado: 1 inteiro FlagDiretrio: 1 inteiro Aridade do n: 1 inteiro Posio de cada bloco interno do diretrio: 16 inteiros (um para cada bloco)
Observe que a estrutura proposta contm 20 caracteres(1 byte cada) e 20 inteiros(4 bytes cada), totalizando assim 100 bytes. Ou seja, o tamanho exato de um bloco.
28.2 Bloco de arquivo

Um bloco no sistema de arquivos que represente um arquivo ser representado com a seguinte estrutura.

Nome: 12 caracteres Data de criao: 8 caracteres(DDMMAAAA) Tamanho ocupado: 1 inteiro FlagDeletado: 1 inteiro FlagDiretrio: 1 inteiro Conteudo do arquivo: 68 caracteres
Observe que a estrutura proposta contm 88 caracteres(1 byte cada) e 3 inteiros(4 bytes cada), totalizando assim 100 bytes. Ou seja, o tamanho exato de um bloco. 14

COM06992 - Estrutura de Dados 2

Aula 27.1: Trabalho de rvore n-ria

29

Estrutura da rvore n-ria

A rvore a ser criada ter uma aridade 16, tendo em vista que cada diretrio pode ter no mximo 16 arquivos ou diretrios dentro dele. Os campos que iro compor cada n da rvore devem ser os mesmos do bloco de arquivo e do bloco de diretrio e eventuais campos que a equipe achar til para a implementao.

30

Utilizao do sistema de arquivos

A chamada do programa que simula o sistema de arquivos deve seguir o seguinte formado:

<programa> <arquivo_com_sistema_de_arquivos>
Com esta chamada ser iniciado o simulador de sistema de arquivos utilizando como "disco"o arquivo informado. Por exemplo: Execuo do programa
1 . / myfs d i s c o . dat

Neste exemplo todas as informaes manipuladas pelo simulador de sistemas de arquivo sero salvas no arquivo "disco.dat"
30.1 Comandos

Aps iniciar a execuo do simulador, deve ser mostrado na tela um prompt de comando. Neste momento o diretrio corrente deve ser a raiz do sistema de arquivos. O prompt de comandos deve aguardar algum dos comandos listados a seguir. Caso seja entrado um comando diferente destes deve ser retornada uma mensagem de erro. O simulador dever dar suporte aos seguintes comandos:
dir

comando que no recebe nenhum parmetro e lista os arquivos e diretrios do diretrio corrente. comando que recebe um parmetro, NOME, e cria um diretrio com o nome informado no diretrio corrente. Caso j exista um arquivo ou diretrio com este nome, retorne uma mensagem de erro. comando que recebe um parmetro, NOME, e apaga o diretrio com o nome informado, e todo o seu contedo, do diretrio corrente. Caso no exista diretrio com este nome, retorne uma mensagem de erro.

mkdir

rmdir

cd

comando que recebe um parmetro, NOME, e acessa o diretrio informado, tornando este o diretrio corrente. Para subir na rvore de diretrio deve ser informado como NOME a string "..". Caso no exista diretrio com este nome, retorne uma mensagem de erro. comando que recebe um parmetro, NOME, e acessa o arquivo com o nome informado permitindo a edio do seu contedo. Caso no exista arquivo com este nome, crie um arquivo com o nome informado e permita a edio do seu contedo. Caso j exista um diretrio com este nome, retorne uma mensagem de erro. comando que recebe um parmetro, NOME, e apaga o arquivo com o nome informado. Caso no exista arquivo com o nome informado, retorne uma mensagem de erro. comando que no recebe nenhum parmetro e termina a execuo do simulador.

edit

del

exit

Prof.: Paulo Roberto Nunes de Souza

15

05/04/2013

COM06992 - Estrutura de Dados 2

Aula 27.1: Trabalho de rvore n-ria

31

Critrios de correo

O programa deve ser escrito na linguagem de programao Ansi-C. Os programas submetidos sero testados usando-se o compilador GCC no sistema operacional Linux. O trabalho ser corrigido segundo 5 critrios:
P A C E D

Ausncia de plgio Adequao ao solicitado Correo dos resultados Entrega no prazo Desempenho computacional

Para a obteno da nota do trabalho, cada critrio receber um valor entre 0 e 1 seguindo os testes efetuados pelo professor. A nota ser o resultado da seguinte ponderao:

N ota = P A (7 C + E (2 + D))

32

Grupo

Os trabalhos devem ser feitos em grupos de at 2 pessoas.

33

Entrega

Os resultados devem ser entregue em meio digital at o dia 26/04/2013 pelo e-mail paulonunes@cca.ufes.br.

Prof.: Paulo Roberto Nunes de Souza

16

05/04/2013

Das könnte Ihnen auch gefallen