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:
- 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);
- prover proteção da memória para impedir que um processo utilize um endereço de memória que não lhe pertença;
- 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