Subscrever RSS Subscrever RSS
Edição de 31-03-2024
  • Edição Actual
  • Jornal Online

    Arquivo: Edição de 15-05-2010

    SECÇÃO: Tecnologias


    Sistema operativo – o que é? (2)

    Um sistema operativo é um programa ou um conjunto de programas cuja função é gerenciar os recursos do sistema (definir qual programa recebe atenção do processador, gerir a memória, criar um sistema de ficheiros, etc.), além de fornecer uma interface entre o computador e o utilizador. É o primeiro programa que a máquina executa no momento em que é ligada (num processo chamado de bootstrapping) e, a partir de então, não deixa de funcionar até que o computador seja desligado. O sistema operativo reveza a sua execução com a de outros programas, como se estivesse vigiando, controlando e orquestrando todo o processo computacional.

    foto
    O sistema operativo funciona com a iniciação de processos que este irá precisar para funcionar correctamente. Esses processos poderão ser ficheiros que necessitam de ser frequentemente actualizados, ou ficheiros que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operativo a partir do gestor de tarefas, onde se encontram todos os processos que estão em funcionamento desde o arranque do sistema operativo até a sua utilização actual. Pode-se também visualizar a utilização da memória por cada processo, no caso de o sistema operativo começar a mostrar erros ou falhas de acesso a programas tornando-se lento, pode-se verificar no gestor de tarefas qual dos processos estará bloqueado ou com elevado número de processamento que está a afectar o funcionamento normal da memória.

    Funcionamento

    Um sistema operativo possui as seguintes funções:

    1.gerenciamento de processos;

    2.gerenciamento de memória;

    3.sistema de arquivos;

    4.entrada e saída de dados.

    Gerenciamento

    de processos

    O sistema operativo multitarefa é preparado para dar ao utilizador a ilusão de 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 utilizador pensa que a 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 operativo, 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.

    Gerenciamento

    de memória

    O sistema operativo tem acesso completo à memória do sistema e deve permitir que os processos dos utilizadores tenham acesso seguro à memória quando o requisitam.

    Vários sistemas operativos usam memória virtual, que possui três funções básicas:

    1.assegurar que cada processo tenha o 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 protecçã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.

    Sistema de ficheiros

    A memória principal do computador é volátil, e seu tamanho é limitado pelo custo do hardware. Assim, os utilizadores 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 (por ex., disco), que pode ser lido e gravado por um ou mais processos.

    Interface de uso

    Os sistemas operativos fornecem abstracção de hardware para que os seus recursos possam ser usados de maneira correcta e padronizada, mas para ser possível operar um computador, é necessário fornecer também uma interface para que o utilizador possa desfrutar dos recursos do sistema. Actualmente existem dois tipos de interface: o GUI (graphical user interface), conhecida também por interface gráfica, e o CUI (command-line interface), sendo essa mais conhecida como interface de linha de comando.

    GUI (Graphical

    user interface)

    Nesse tipo de interface, o utilizador tem à disposição um ambiente de trabalho composto por menus, ícones, janelas e outros itens disponíveis. O utilizador interage com esse tipo de interface usando o rato, podendo também usar o teclado e teclas de atalho. É possível fazer todo tipo de tarefas usando a interface gráfica, como edição de vídeos e imagens, sendo somente alguns tipos muito específicos de tarefas que se saem melhor em linha de comandos. Acrescentar facilidade de uso e agilidade é o objectivo da GUI, tendo a desvantagem de consumir muito mais memória que os interfaces de linha de comando. Em sistemas unix-likes, existe a possibilidade de escolher o gerenciador de janelas a utilizar, aumentando em muito a liberdade de escolha do ambiente.

    CUI (Command-line

    user interface)

    Além da interface gráfica, existe a interface de linha de comando, que funciona basicamente com a digitação de comandos, sendo nesse relativamente pouco interactiva. Os comandos digitados são interpretados por um interpretador de comandos, conhecido também por shell, bastante comum em sistemas unix-likes. Um exemplo de interpretador de comandos seria o Bash. Usada geralmente por utilizadores avançados e em actividades específicas, como gerenciamento remoto, utiliza poucos recursos de hardware em comparação com a interface gráfica. Nesse tipo de ambiente, raramente se usa o rato, embora seja possível através do uso da biblioteca ncurses no desenvolvimento dos softwares.

    Classificações

    Em relação ao seu projecto (arquitectura), segundo Tanenbaum (1999):

    Núcleo monolítico ou monobloco: o núcleo consiste em um único processo executado numa memória protegida (espaço de núcleo) executando as principais funções. Ex.: MAC OS X, OS/2, Windows, Linux, FreeBSD.

    Micronúcleo ou modelo cliente-servidor: o núcleo consiste de funções mínimas (comunicação e gerenciamento de processos), e outras funções, como sistemas de arquivos e gerenciamento de memória, são executadas no espaço do utilizador como serviços; as aplicações (programas) são os clientes. Ex.: GNU Hurd, Mach.

    Sistema em camadas: funções do núcleo irão executar em camadas distintas, de acordo com o seu nível de privilégio. Ex.: Multics.

    Monitor de máquinas virtuais: fornece uma abstracção do hardware para vários sistemas operativos. Ex.: VM/370, VMware, Xen.

    Quanto ao gerenciamento de processos, pode-se usar a seguinte classificação:

    Monotarefa: pode-se executar apenas um processo de cada vez Ex.: MS-DOS.

    Multitarefa: além do próprio SO, vários processos de utilizador (tarefas) estão carregados em memória, sendo que um pode estar ocupando o processador e outros ficam enfileirados, aguardando a sua vez. O compartilhamento de tempo no processador é distribuído de modo que o utilizador tenha a impressão que vários processos estão sendo executados simultaneamente. Ex: OS/2, Windows, Linux, FreeBSD e o Mac OS X.

    Multiprocessamento: o SO distribui as tarefas entre dois ou mais processadores.

    Multiprogramação: o SO divide o tempo de processamento entre vários processos mantendo o processador sempre ocupado.

    Quanto à quantidade de utilizadores que podem utilizar o sistema simultaneamente:

    Monoutilizador: apenas um utilizador por vez (apesar de poder suportar recursos como troca de utilizador). Ex.: Windows. Esse também pode ser acedido por terminais e conexão remota.

    Multiutilizador: vários utilizadores usam o computador ao mesmo tempo, seja por diversos terminais, seja por conexão remota como o SSH. Ex.: Linux, Unix.*

    *Wikipedia

     

    Outras Notícias

    · A memória do rato

     

    este espaço pode ser seu Este espaço pode ser seu Este espaço pode ser seu
    © 2005 A Voz de Ermesinde - Produzido por ardina.com, um produto da Dom Digital.
    Comentários sobre o site: [email protected].