quinta-feira, 3 de dezembro de 2009

Sistema Operativo

Funcionamento

Um sistema operacional possui as seguintes funções:

  • gerenciamento de processos;
  • gerenciamento de memória;
  • sistema de arquivos;
  • entrada e saída de dados.

Gestão de Processos

O sistema operacional multitarefa é preparado para dar ao usuário a ilusão que o número de processos em execução simultânea no computador é maior que o número de processadores instalados. Cada processo recebe uma fatia do tempo e a alternância entre vários processos é tão rápida que o usuário pensa que sua execução é simultânea.

São utilizados algoritmos para determinar qual processo será executado em determinado momento e por quanto tempo.

Os processos podem comunicar-se, isto é conhecido como IPC (Inter-Process Communication). Os mecanismos geralmente utilizados são:

  • sinais;
  • pipes;
  • named pipes;
  • memória compartilhada;
  • soquetes (sockets);
  • trocas de mensagens.

O sistema operacional, normalmente, deve possibilitar o multiprocessamento (SMP ou NUMA). Neste caso, processos diferentes e threads podem ser executados em diferentes processadores. Para essa tarefa, ele deve ser reentrante e interrompível, o que significa que pode ser interrompido no meio da execução de uma tarefa.

SO fornece serviços para:

  • Criação e eliminação de processos
  • Escalonamento de processos (multiprogramação)
  • Tratamento das interrupções
  • Mecanismos para sincronização de processos
  • Mecanismos para a comunicação de processos


Gestão de Memórias

O sistema operacional tem acesso completo à memória do sistema e deve permitir que os processos dos usuários tenham acesso seguro à memória quando o requisitam.

Vários sistemas operacionais usam memória virtual, que possui 3 funções básicas:

  1. assegurar que cada processo tenha seu próprio espaço de endereçamento, começando em zero, para evitar ou resolver o problema de relocação (Tanenbaum, 1999);
  2. prover proteção da memória para impedir que um processo utilize um endereço de memória que não lhe pertença;
  3. possibilitar que uma aplicação utilize mais memória do que a fisicamente existente.

Gestão de arquivos/ficheiros

A memória principal do computador é volátil, e seu tamanho é limitado pelo custo do hardware. Assim, os usuários necessitam de algum método para armazenar e recuperar informações de modo permanente.

Um arquivo é um conjunto de bytes, normalmente armazenado em um dispositivo periférico não volátil (p.ex., disco), que pode ser lido e gravado por um ou mais processos.

Um sistema de ficheiros é constituído por duas partes:

  • Um conjunto de ficheiros (dados).
  • Uma estrutura de directórios (organização).

O sistema operativo é responsável por:

  • Criação e eliminação de ficheiros.
  • Criação e eliminação de directórios.
  • Suporte das funções base para a manipulação de ficheiros e directórios.
  • Mapeamento dos ficheiros (lógico) no suporte de armazenamento secundário (físico).
  • Criação de cópias de segurança dos ficheiros em suporte estável, não volátil.
  • Gestão e manutenção das permissões de acesso aos ficheiros.

Um ficheiro é uma colecção de informação relacionada, identificada por um nome. Normalmente, os ficheiros representam programas ou dados.

Propriedades dos ficheiros:

  • Nome
  • Tipo
  • Local
  • Tamanho
  • Segurança
  • Data
  • Dono

Operações sobre ficheiros:

  • Criação
  • Escrita
  • Leitura
  • Posicionamento
  • Eliminação

A estrutura de directórios permite gerir e organizar o conjunto de ficheiros existentes num volume.

Operações desempenhadas num directório:

  • Pesquisa de ficheiros, criação de ficheiros, eliminação de ficheiros, listagem de conteúdos, renomear ficheiros.

São possíveis muitas formas de organização. A mais comum é em árvore com um número arbitrário de níveis.

Sem comentários:

Enviar um comentário