Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

30
Alberto Costa Carlos Bernardino Danilo Souza Júlio Rodrigues

description

Original do trabalho da disciplina Sistemas Operacionais. Trata sobre o sistema de gerenciamento de arquivos principalmente no Windows. Contém exemplos de manipulação de arquivos através de scripts, além de comparativos de gerenciamento de arquivos entre sistemas opercionais.

Transcript of Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Page 1: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Alberto Costa

Carlos Bernardino

Danilo Souza

Júlio Rodrigues

Page 2: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Sistemas de arquivos

Métodos de alocação

Gerenciamento do espaço livre

Conceito de arquivo e diretório

System Call ligado a gerenciamento de arquivo

Page 3: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

• Segundo Tanembaum, arquivos ou ficheiros são um mecanismo de abstração. • Pode ser considerado como um objeto, possuindo um nome que o identifica,

atributos e valores.

• Podem conter dados estruturados ou não: • não estruturados possuem uma sequência de bytes • estruturados podem vir organizados em registros ou em árvore (estrutura de

dados)

• A implementação do sistema de arquivos, incluindo o formato de arquivo, é de responsabilidade do sistema operacional, ou seja, cada arquivo depende da decisão do projetista do sistema operacional.

• Alguns sistemas operacionais como o UNIX não ligam para extensão do arquivo ou sua estrutura interna , simplesmente tratando cada arquivo como uma sequência de bytes não estruturados, deixando a responsabilidade de interpretar seu significado ao programa que o abriu.

Page 4: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

• Forma de organização de dados em algum meio de armazenamento em massa, em geral discos magnéticos

• É o aspecto mais visível do sistema operacional • Pode ser dividido em tres partes:

Estrutura de diretórios

Estrutura de arquivos

Partições 3

1 2

Page 5: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Um arquivo possui certos atributos que variam de um sistema operacional para o outro, mas que normalmente são os seguintes: • Nome • Identificador: este rótulo único, usualmente um numero, identifica o arquivo dentro do

sistema de arquivo; é o nome não legível pelas pessoas. • Tipos : esta informação é necessária para aqueles sistemas que suportam diferentes tipos. • Posição: um ponteiro para um dispositivo e para a posição do arquivo naquele dispositivo. • Tamanho: o tamanho corrente do arquivo e possivelmente o tamanho máximo permitido

Proteção: a informação de controle de acesso: quem pode ler, gravar e executar.

Page 6: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Arquivos de texto Windows por padrão são codificados em ASCII e

não em Unicode. No Unix, ocorre o inverso. http://pt.wikiversity.org

Page 7: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Criação: criação sem escrita de dado algum. Destruição: remoção do arquivo para liberação do espaço. Abertura: abertura do arquivo, para colocar na memória os atributos e a lista de endereços para tornar as operações posteriores mais rápidas. Fechamento: remover as referências do arquivos da memória principal. Leitura: abertura do arquivo para leitura do seu conteúdo. Escrita: processo de escrita do arquivo. Geralmente a escrita começa a partir de onde estiver o ponteiro, caso esse ponteiro esteja no final do arquivo ou durante a escrita o final for atingido, o arquivo aumentará de tamanho. Concatenação: forma de escrita que só permite adicionar dados no final do arquivo Busca: chamada que coloca o ponteiro em uma posição específica do arquivo. Depois dessa chamada, dados podem ser lidos/escritos a partir daquela posição. Ver atributos: essa chamada verifica certos atributos como permissões, por exemplo. Às vezes é necessário escrever em um arquivo, porém é necessário verificar se esse arquivo possui permissão de escrita. Definir atributos: Serve para definir ou alterar os atributos de certos arquivos. Flags de proteção podem ser definidas com essa chamada. Renomeação: Chamada de sistema para renomear um arquivo.

Obs.: podem haver variações, dependendo do sistema operacional

Page 8: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

System Calls (chamadas ao sistema) Comunicação do usuário ou aplicação com o núcleo do sistema operacional. Para cada serviço existe uma system call. • Grupos de funções:

• Gerência de processos • Gerência de memória • Gerência de entrada e saída:

Operações de entrada/saída (I/O) Manipulação de Arquivos

• criar • gravar • ler • reposicionar • apagar • truncar

Pela interface do usuário (teclado e

mouse)

Pelo prompt de comando

Através de scripts, arquivos em lote

ou File System Object

FileSystemObject é uma

ferramenta para manipular arquivos

Page 9: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Linha de comando executada neste diretório devido mudança nas variáveis de ambiente do Windows para o Java

Page 10: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Set fso= CreateObject("Scripting.FileSystemObject") If (fso.FileExists("C:\informacoes_do_sistema.txt")) Then fso.DeleteFile("C:\informacoes_do_sistema.txt") Else MsgBox "Arquivo não existe",0,"Arquivo não encontrado" End If

Page 11: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema
Page 12: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema
Page 13: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

http://www.mvps.org/ http://www.macoratti.net/filesyst.htm

Page 14: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema
Page 15: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Add Method (Folders) BuildPath Method Close Method (FileSystemObject) Copy Method (FileSystemObject) CopyFile Method CopyFolder Method CreateFolder Method CreateTextFile Method Delete Method DeleteFile Method DeleteFolder Method DriveExists Method FileExists Method FolderExists Method GetAbsolutePathName Method GetBaseName Method GetDrive Method GetDriveName Method GetExtensionName Method GetFile Method

GetFileName Method GetFileVersion Method GetFolder Method GetParentFolderName Method GetSpecialFolder Method GetStandardStream Method GetTempName Method Move Method MoveFile Method MoveFolder Method OpenAsTextStream Method OpenTextFile Method Read Method ReadAll Method ReadLine Method Skip Method SkipLine Method Write Method (FileSystemObject) WriteBlankLines Method WriteLine Method (FileSystemObject)

Page 16: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Para abrir o Agendador de Tarefas: taskschd.msc • Criar uma tarefa recorrente, exemplo:

• desligar o PC, todos os dias, às 22:30 • apagar arquivos criados há mais de 90 dias, etc.

Page 17: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Partição Linux (Windows não detecta)

Page 18: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema
Page 19: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Sistema operacional Tipos de sistema de arquivos suportados

Dos FAT16 Windows 95 FAT16 Windows 95 OSR2 FAT16, FAT32

Windows 98 FAT16, FAT32 Windows NT4 FAT, NTFS (version 4) Windows 2000/XP FAT, FAT16, FAT32, NTFS (versions 4 et 5)

Linux Ext2, Ext3, ReiserFS, Linux Swap(, FAT16, FAT32, NTFS)

MacOS HFS (Hierarchical File System), MFS (Macintosh File System)

OS/2 HPFS (High Performance File System)

SGI IRIX XFS

FreeBSD, OpenBSD UFS (Unix File System)

Sun Solaris UFS (Unix File System)

IBM AIX JFS (Journaled File System)

Espaço ocupado (MB) após criação de 50.000 arquivos de 5120 bytes

FileSystem MB

FAT 32 1612

NTFS 456

JFS 419

XFS 288

Reiserfs 430

EXT4 426

EXT3 426

EXT2 393

Page 20: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Como corrigir um arquivo corrompido do Windows NTFS sistema de arquivos com Ubuntu

sudo apt-get install ntfs-3g

sudo apt-get install

ntfsprogs

sudo fdisk-l

sudo ntfsfix/ dev/ sda2

Page 21: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

System Calls fornecem a interface entre os processos e o sistema operacional. Estas “chamadas” estão geralmente disponíveis como instruções da linguagem Assembly. Alguns sistemas permitem que as system calls sejam criadas diretamente a partir de um programa em linguagem de alto nível (linguagem C, Pascal, FORTRAN). Elas podem ser agrupadas, na maioria dos sistemas, em cinco categorias principais: • Controle de processos (end, abort, load, execute, create, terminate, wait event, signal event, set attributes); • Manipulacão de arquivos (create, delete, open, close, read, write, set attributes); • Manipulacão de dispositivos (request, release, read, write, logically attach or detach); • Manutencão de informacão (get and set time or date, get and set process or file); • Comunicação (create and delete communication connection, send and receive messages) A partir do momento que as “chamadas ao sistema” servem de interface entre os processos e o SO, essas são o mecanismo de proteção ao núcleo do SO e também de acesso aos seus serviços, como se fossem as portas de entrada para os processos.

Page 22: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

A criação de arquivos exige que o sistema operacional tenha controle de quais áreas ou blocos no disco estão livres. É importante o controle de quais blocos de discos estão relacionados a quais arquivos. Este gerenciamento pode ser feito, principalmente de varias formas: • Alocação contígua

• armazenar um arquivo em blocos sequencialmente dispostos. Neste tipo, o sistema localiza um arquivo através do endereço do primeiro bloco e da sua extensão em blocos

Vantagens: é bastante simples de implementar e de realizar o controle sobre os onde os blocos estão. O desempenho de leitura é excelente, pois todo o arquivo pode ser lido em uma única operação a partir do primeiro bloco de dados. Desvantagem: como os arquivos podem ser criados e eliminados frequentemente, os segmentos livres vão se fragmentando em pequenos pedaços por todo o disco

1

Page 23: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

• Alocação por lista encadeada consiste em manter os arquivos, cada um, como uma lista encadeada de blocos de disco. Dessa forma uma parte de cada bloco é usada como ponteiro para o próximo bloco. O restante do bloco é usado para dados.

Vantagens: o tamanho do arquivo não precisa ser conhecido antes de sua criação, já que cada bloco terá um ponteiro para o próximo bloco. Assim o fato de o disco estar fragmentado não ocasiona problemas para a criação do arquivo. Desvantagem: O problema deste tipo de alocação é o tempo de leitura extremamente lento. O acesso deverá ser sempre sequencial. Assim para acessar um bloco intermediário será necessário percorrer o arquivo desde o inicio.

2

Page 24: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Alocação combinada Combina a baixa ocupação de espaço em memória da lista encadeada e o bom desempenho da tabela de índices. Nesta técnica, parte de um bloco é utilizado para apontar diretamente blocos de dados, chamado de apontadores diretos, e outra parte pode ser utilizada para apontadores de blocos, chamado de apontadores indiretos. Se usarmos outros níveis de apontadores, podemos estender essa mesma técnica para apontadores duplamente indiretos e apontadores triplamente indiretos. Esta abordagem é tipicamente utilizada na implementação do sistema de arquivos Unix, chamada de I-nodes.

3

Um I-node (index-node) são os metadados armazenados

em estrutura de dados própria, que relaciona

atributos e os endereços dos blocos de um arquivo.

Page 25: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

O monitoramento de espaço livre em um disco é realizado principalmente através de dois diferentes métodos: lista encadeada e mapa de bits. Lista Encadeada Nesta forma de gerenciamento, primeiramente é preciso entender que os blocos livres são blocos que não contém arquivos (de usuários e programas). Entretanto os mesmos não ficam em branco, pois enquanto não estão sendo utilizados, eles contém informações que o Sistema Operacional armazena para mapear o espaço livre. Ou seja, estes blocos estão livres porém não estão vazios. Desta forma cada bloco livre no disco possui ponteiros para os seguintes espaços livres em disco. Mapa de Bits Utiliza um espaço fixo adicional em disco especificamente para o mapeamento do espaço livre, de forma que para cada bloco em disco é utilizado um bit no mapa. Sendo assim, um disco com n blocos requer um mapa de bits com n bits. Os mapas de bits requerem menos espaço, já que se usa 1 bit por bloco, contra 32 bits no modelo de lista encadeada. Somente se o disco estiver quase cheio é que o esquema de lista encadeada precisará de menos blocos que o mapa de bits. Por outro lado, se houver muitos blocos livres, alguns deles poderão ser emprestados para conter a lista de livres sem qualquer perda de capacidade de disco.

Page 26: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

Mapa Conceitual sobre a gerência de espaço livre

Page 27: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

http://www.uderzo.it/main_products/space_sniffer/

Page 28: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema
Page 29: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema
Page 30: Material sobre sistemas de arquivos do Windows,como é a organização e o suporte a esse sistema

http://mintywhite.com/software-reviews/maintenance-software/iexpress-convert-batfiles-exefiles-

howto/

http://pt.wikipedia.org/wiki/Sistema_de_ficheiros

http://gizmodo.uol.com.br/entenda-o-godmode-do-windows-7/

http://technet.microsoft.com/en-us/sysinternals//bb896653.aspx

http://www.diolinux.com.br/2012_02_01_archive.html

http://www.gsigma.ufsc.br/~popov/aulas/so1/cap5so.html

http://pt.wikibooks.org/wiki/Sistemas_operacionais/Sistemas_de_arquivos#Implementa.C3.A7.C3.A3o_de_arqui

vos

http://pt.wikiversity.org/wiki/Introdu%C3%A7%C3%A3o_aos_Sistemas_Operacionais/Sistemas_de_arquivos#Con

ceitos_de_arquivos

http://www.makeuseof.com/tag/fix-corrupted-windows-ntfs-filesystem-ubuntu/

http://msdn.microsoft.com/en-us/library/t0aew7h6(v=vs.84).aspx

http://www.macoratti.net/filesyst.htm

http://www.computerhope.com/dosext.htm