TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Gerenciamento de E/S, Gerenciamento de Arquivos e Comparativo entre Linux e Windows

Por:   •  1/11/2015  •  Trabalho acadêmico  •  4.606 Palavras (19 Páginas)  •  901 Visualizações

Página 1 de 19

Gerenciamento de E/S, Gerenciamento de Arquivos e Comparativo entre Linux e Windows

Patrícia Ester Ullmann e Ricardo Wiesner

UNIJUÍ – Universidade Regional do Noroeste do Estado do Rio Grande do Sul

Campus Santa Rosa RS 344, Km 39 CP 489 – 98.900-000 - Santa Rosa – RS –Brasil

Departamento de Sistemas e Computação.

pattiullmann@yahoo.com.br, ricardo_wiesner@yahoo.com.br

Resumo. Um sistema operacional tem por finalidade, controlar os dispositivos de entrada e saída, através de comandos, interrupções, fornecendo uma interface entre dispositivos e o resto do sistema operacional e ainda, permitir que os usuários do computador executem aplicações, como editores de texto, jogos. Essas aplicações processam informações como textos e músicas, armazenados sob a forma de arquivos em um disco rígido ou outro meio. Este artigo apresenta a noção de E/S, de arquivo, suas principais características e formas de acesso, gerenciamento, a organização de arquivos em diretórios e as técnicas utilizada pelo sistema operacional Linux e Windows usadas para criar e gerenciar arquivos nos dispositivos de armazenamento.

1. Introdução

A gerência de dispositivos de entrada/saída é uma das principais e mais complexas funções de um sistema operacional. [Francis B. Machado e Luis Paulo Maia, 2004]. Ou seja, ele deve enviar comandos para os dispositivos, capturar interrupções e tratar erros. Também deve oferecer uma interface entre dispositivos e o resto do sistema que seja simples e fácil de usar [Andrew S. Tanenbaum e Albert S Wood hul, 1995]. Para os autores, o código de E/S representa uma fração significante do total do sistema operacional.

O armazenamento e a recuperação de informações é uma atividade essencial para qualquer tipo de aplicação. Um processo deve ser capaz de ler é gravar de forma permanente grande volume de dados em dispositivos, além de poder compartilhá-los com outros processos. A maneira pela qual o sistema operacional estrutura e organiza estas informações é através da implementação de arquivos. Onde os arquivos são gerenciados pelo sistema operacional de maneira a facilitar o acesso dos usuários ao seu conteúdo. A parte do sistema responsável por essa gerência é o sistema de arquivos. [Francis B. Machado e Luis Paulo Maia, 2004].

O Windows e o Linux têm basicamente o mesmo objetivo, facilitar a vida do usuário, cada um utiliza técnicas diferentes para interagir com os dispositivos, e cada dispositivo tem a sua controladora que é um intermediário entre o sistema operacional e o hardware reduzindo a complexidade e facilita a portabilidade do SO. Os dois sistemas operacionais se preocupam com a segurança e a eficiência. Porém cada um tem uma maneira diferente para organizar, gerenciar, a entrada e saída de arquivos. [Abraham Silverschatz, Peter Galvin e Greg Gagne 2001].

A maneira como o sistema operacional gerencia os E/S, o sistema de arquivos,  como os sistemas Windows e Linux funcionam nestes gerenciamentos e uma comparação entre estes sistemas é o assunto deste artigo, cuja visão geral é apresentada a seguir. Primeiro veremos um resumo sobre alguns princípios de hardware de E/S e então veremos software de E/S que em geral pode ser estruturado em camadas, com cada camada tendo uma tarefa bem definida a executar. Sendo descrito cada camada, para ver o que elas fazem e como seu conjunto é organizado. Na seqüência consideramos vários aspectos dos arquivos, descrevendo suas principais características e formas de acesso, a organização de arquivos em diretórios, como funciona o gerenciamento de espaço livre, as técnicas usadas para criar e gerenciar arquivos nos dispositivos de armazenamento e proteção de acesso. Em seguida, descrevemos o funcionamento dos sistemas operacionais Linux e Windows, com suas principais características e por últimos uma comparação entre eles.

2. Princípios do Hardware de E/S

Pessoas diferentes consideram o hardware de entrada/saída de formas diferentes. Aos programadores interessa a interface com o software, os comandos que o hardware aceita as funções que tais comandos executam e os erros que devem ser reportados nas diversas situações. Para [Andrew S. Tanenbaum e Albert S Wood hull 1995], o código de E/S é implementado e estruturado através de camadas. As camadas de mais baixo nível escondem características dos dispositivos das camadas superiores, oferecendo uma interface simples e confiável ao usuário e suas aplicações, conforme a figura 1.

 

[pic 1]

                                      Figura 1: Gerência de dispositivos

As camadas são divididas em dois grupos, onde o primeiro grupo visualiza os diversos tipos de dispositivos do sistema de um modo único (Independente do dispositivo(a), enquanto o segundo é específico para cada dispositivo (Dependente do dispositivo(b). A maior parte das camadas trabalha de forma independente do dispositivo.

2.1. Dispositivos de E/S

Os dispositivos de entrada e saída são utilizados para permitir a comunicação entre o sistema computacional e o mundo externo. Podendo ser classificados como de entrada de dados, como teclado e mouse, ou de saída, como impressoras. Também é possível que um dispositivo realize tanto entrada quanto saída de dados, como modems e discos.

Para [Andrew S. Tanenbaum e Albert S Wood hull 1995], os dispositivos de E/S podem ser divididos em duas categorias: dispositivos de bloco e dispositivos de caractere. Já para [Francis B. Machado e Luis Paulo Maia, 2004], podem ser classificados como dispositivos estruturados, e dispositivos não-estruturados. Onde um dispositivo de bloco ou estruturado é aquele que armazena informações em blocos de tamanho fixo, cada um deles com o seu próprio endereço. Já o dispositivo de caractere ou não-estruturado, libera ou aceita um conjunto de caracteres sem respeitar nenhuma estrutura de bloco. Ele não é endereçável, e não aceita nenhuma operação de seek.

2.2. Controladoras de Dispositivos

As controladoras, especialmente aquelas desenvolvidas para dispositivos de blocos, suportam operações de acesso direto à memória ou DMA. Para [Andrew S. Tanenbaum e Albert S Wood hull 1995] primeiro temos que conhecer o funcionamento de uma controladora, da leitura de disco quando tal técnica não era aplicada.

Segundo o autor, primeiro a controladora lê o bloco do drive serialmente, bit a bit, até que todo o bloco esteja em seu buffer interno. A seguir ela calcula o ckecksum para verificar a ocorrência de erros. Depois, a controladora gera uma interrupção.  Quando o sistema operacional começa a rodar, ele pode ler o bloco de disco escrito no buffer da controladora, um bit por vez, executando um loop, com cada interação lendo um byte do registrador da controladora, e armazenando tal informação na memória. Naturalmente que tal loop gasta muito tempo do processador. A DMA foi inventada justamente para tirar do processador este trabalho de baixo nível. Quando ela é usada, o processador fornece a controladores dois itens de informação, além do endereço do bloco do disco, o endereço de memória para onde o bloco deve ir e o número de bytes a serem transferidos. Após a controladora ter lido todo o bloco do dispositivo, tê-lo colocado em seu buffer e ter verificado o ckecksum, ela copia o primeiro byte para o endereço especificado no registrador de memória da controladora DMA. A seguir ela incrementa o valor de tal endereço, e decrementa o do contador de bytes do número que acabou de ser transferido. Este processo continua até que o valor do contador de bytes chegue à zero, momento em que a controladora gera uma interrupção.

...

Baixar como (para membros premium)  txt (28.5 Kb)   pdf (391.8 Kb)   docx (268.7 Kb)  
Continuar por mais 18 páginas »
Disponível apenas no TrabalhosGratuitos.com