Bem vindo(a) ao Blog do Curso Técnico em Secretariado

Curso Técnico em Secretariado-Período: Tarde -Etec José Martimiano da Silva-(Industrial) Ribeirão Preto

sábado, 17 de abril de 2010

Sistemas Operacionais, o que são?

Olá pessoal, aqui estou mais uma vez para falar um pouco sobre informática, dessa vez será sobre os sistemas operacionais

Sistema Operacional é um programa ou um conjunto de programas cuja função é gerenciar os recursos do sistema (definir qual programa recebe atenção do processador, gerenciar memória, criar um sistema de arquivos, etc.), além de fornecer uma interface entre o computador e o usuário. É 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 operacional reveza sua execução com a de outros programas, como se estivesse vigiando, controlando e orquestrando todo o processo computacional.

Existem dois modos distintos de conceituar um sistema operacional:

  • pela perspectiva do usuário ou programador (visão top-down): é uma abstração do hardware, fazendo o papel de intermediário entre o aplicativo (programa) e os componentes físicos do computador (hardware); ou
  • numa visão bottom-up, de baixo para cima: é um gerenciador de recursos, i.e., controla quais aplicações (processos) podem ser executadas, quando, que recursos (memória, disco, periféricos) podem ser utilizados.

A sigla usual para designar esta classe de programas é SO (em português) ou OS (do inglês Operating System).

Um sistema operacional 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.

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.

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;
  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.

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.

Os sistemas operacionais fornecem abstração de hardware para que seus recursos possam ser usados de maneira correta e padronizada, mas para ser possível operar um computador, é necessário fornecer também uma interface para que o usuário possa desfrutar dos recursos do sistema. Atualmente 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 usuário tem a disposição um ambiente de trabalho composto por menus, ícones, janelas e outros itens disponíveis. O usuário interage com esse tipo de interface usando o mouse, podendo também usar o teclado e teclas de atalho. É possível fazer todo tipo de tarefa usando 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 comando. Acrescentar facilidade de uso e agilidade é o objetivo da GUI, tendo a desvantagem de consumir muito mais memória que 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 interativa. Os comandos digitados são interpretados por um interpretador de comandos, conhecidos também por shells, bastante comuns em sistemas unix-likes. Um exemplo de interpretador de comandos seria o Bash. Usada geralmente por usuários avançados e em atividades específicas, como gerenciamento remoto, utiliza poucos recursos de hardware em comparação a interface gráfica. Nesse tipo de ambiente, raramente se usa o mouse, embora seja possível através do uso da biblioteca ncurses no desenvolvimento dos softwares.

Exemplos de sistemas operacionais

Windows
Mac OS X
Linux
Solaris
FreeBSD
Haiku
eComStation
FreeDOS
Unix System V
MINIX
OpenBSD
NetBSD
DragonflyBSD
MenuetOS
Google Chrome OS

Espero que tenham gostado do post, até mais.

Nenhum comentário:

Postar um comentário