Cursos / Jogos Digitais / Sistemas Operacionais / Aula

arrow_back Aula 01 - Tipos de Estruturas de Sistemas Operacionais

As Duas Funções Básicas

Como foi dito, os sistemas operacionais possuem duas funções básicas: (1) gerenciar os recursos de hardware; (2) fornecer meios para que os demais softwares possam utilizar esses recursos. A seguir, vamos detalhar cada uma dessas funções.

O Sistema Operacional como Gerenciador de Recursos

Imagine que você está executando quatro programas. Suponha ainda que os dois primeiros estão querendo gravar dados no disco rígido (HD) e os dois últimos precisam imprimir algo – isso tudo ao mesmo tempo. Alguém teria que coordenar o acesso ao disco e à impressora para que nenhum problema ocorresse devido ao conflito entre os programas em execução.

Para tal controle, o sistema operacional permite o acesso ordenado a esses recursos (processador, memória, disco rígido e demais elementos de hardware) para que todos os programas possam ter acesso aos recursos disponíveis.

O SO como uma Máquina Virtual

De nada adiantaria ser capaz de gerenciar recursos, se os sistemas operacionais não permitissem que outros programas tivessem acesso a esses recursos gerenciados por ele. Para entender melhor, vamos imaginar como seria a vida dos programadores se os sistemas operacionais não existissem...

Se não existissem os sistemas operacionais para facilitar a interação entre os demais softwares e os recursos de hardware do computador, um programador precisaria construir seus programas em uma linguagem que o hardware fosse capaz de entender, ou seja, em linguagem de máquina (sequências de 0 e 1) ou até mesmo em microprogramação. Em microprogramação, o mais simples comando como, por exemplo, uma solicitação de leitura ou escrita de um dado em um arquivo, deve especificar o endereço de bloco a ser lido no HD, o número de setores por trilha, o modo de leitura/gravação a ser utilizado no disco, o tamanho de intervalo entre os setores, o controle do motor responsável pelo giro do disco, além de tratar os demais parâmetros. Podemos perceber que essa tarefa seria praticamente impossível de ser executada por programadores comuns, como eu e você.

É justamente esse o objetivo do sistema operacional: reduzir a complexidade dessas tarefas, ou melhor, esconder a complexidade dessa tarefa para os programadores comuns. O sistema operacional fornece um conjunto de comandos, as chamadas de sistema (do inglês, system calls), as quais serão usadas pelos programadores para se comunicarem com os recursos de hardware. Dessa forma, podemos dizer que o sistema operacional fornece uma máquina virtual. na qual os programadores podem criar aplicativos de forma mais simples, usando uma linguagem mais próxima de um idioma falado (na sua grande maioria, o inglês). E apesar do hardware ainda executar apenas comandos em linguagem de máquina, o sistema operacional esconde essa complexidade dos programadores, oferecendo a eles o acesso aos recursos de hardware numa linguagem mais próxima possível à humana.

Versão 5.3 - Todos os Direitos reservados