Pesquisar este blog

segunda-feira, 4 de novembro de 2013

Como funcionam os sistemas operacionais: Interface do sistema operacional com o mundo

   Estamos chegando ao fim da série Como funcionam os sistemas operacionais, hoje vamos ver o último recurso que o sistema operacional gerencia, que é a interface com o o mundo.

   Existem as interfaces de aplicativos, que da mesma forma que os drivers fornecem uma maneira dos aplicativos utilizarem os subsistemas, as APIs, que são interfaces de programação de aplicativos, permitem que os programadores utilizem funções do computador e do sistema operacional sem conhecer todos os detalhes de operações da CPU. Vamos ver um exemplo da criação de um arquivo de disco rígido que armazena dados.

   Um programador está criando um aplicativo para gravar dados de um instrumentos científicos . Ele quer que o cientista possa nomear o arquivo criado. O sistema operacional pode fornecer um função API chamada MakeFile para criar arquivos. Ao escrever o programa, o programador pode inserir uma linha deste tipo:

   MakeFile [1, %Name, 2]

   Neste exemplo, a instrução diz para o sistema operacional que ele deve criar um arquivo que permite acesso aleatório aos seus dados, onde o número 1 é que estabelece esta opção, se fosse 0 não daria. O %Name, significa que o arquivo terá um nome criado pelo usuário e o número 2 define que o arquivo terá
um tamanho variável de acordo com a quantidade de dados armazenados no arquivo.

   O sistema operacional envia uma consulta para o disco para saber onde há espaço disponível.

   Com esta informação, o sistema operacional cria uma entrada no sistema de arquivos. Esta entrada mostra a localização inicial e final do arquivo, o nome e o tipo do arquivo, que tipo de usuário tem permissão para modificar ou enxergar o arquivo e a data e hora da criação.

   O sistema operacional grava todas estas informações no começo do arquivo, identificando o arquivo, o tipo de acesso possível, e inclui outras informações que unem o arquivo ao aplicativo. Em toda essa informação, as requisições ao drive de disco e os endereços do ponto de início e término do arquivo estão em formato totalmente dependentes do fabricante e modelo do disco rígido.

   Como o programador utilizou uma API para o armazenamento no disco, ele não precisa conhecer todas as instruções de cada tipo de disco rígido. O sistema operacional, através dos drivers, lida com os detalhes de cada tipo de hardware. O programador deve, simplesmente, escrever um código para API e deixar o resto do trabalho para o sistema operacional.

   E temos também a interface do sistema operacional com o usuário, que da mesma forma que as APIs proveem um meio consistente para que os aplicativos utilizem os recursos do computador, a interface com o usuário estrutura a interação entre o usuário e o computador. Na última década, quase todo o desenvolvimento de interfaces de usuários foi feito na área da interface gráfica . Duas empresas receberam mais atenção e conquistaram maior fatia de mercado: Apple Macintosh e Microsoft Windows. O popular sistema operacional com código-fonte aberto, o Linux, também utiliza uma interface gráfica.

Interface Apple Macintosh

Interface Windows 7



      
Interface Linux Ubuntu

   Existem outras interfaces de usuários para sistemas operacionais, algumas são gráficas e outras não.
 
   O Unix, por exemplo, tem uma interface chamada Shell que é mais flexível e poderosa do que a interface baseada em texto dos sistemas operacionais padrão. Programas como o Korn Shell e o C Shell são interfaces de texto que adicionam utilitários importantes. Porém, o seu principal objetivo é facilitar o acesso do usuário às funções  do sistema operacional. Existem interfaces gráficas como o X-Windows eo Gnome que tronam o Unix e Linux parecidos como computadores Windows e Macintosh, do ponto de vista do usuário.
 
   É importante lembrar que, em todos estes exemplos, a interface com o usuário é um programa ou um conjunto de programas que funcionam como uma camada acima do sistema operacional. Podemos dizer o mesmo (apesar dos diferentes mecanismos) dos sistemas operacionais Windows e Macintosh. A função principal do sistema (o gerenciamento dos recursos do computador) está no Kernel (núcleo) do sistema operacional. O gerenciador de exibição é uma parte separada, porém intimamente ligada o Kernel que funciona por trás dele. A ligação entre o Kernel do sistema operacional e a interface do usuário, utilitários e outros softwares definem as diferenças entre os sistemas operacionais.
 
   É isso pessoal, terminamos aqui a série sobre Como funcionam os sistemas operacionais, espero que tenham gostado.   









     


Nenhum comentário:

Postar um comentário