Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Um programa, desde sua criao em uma linguagem de alto nvel, manipulado por um grande
conjunto de outros programas que traduzem seu cdigo para linguagem de mquina e controlam
sua execuo no computador. Este conjunto de programas recebe a denominao genrica de
software de sistema e o objeto de estudo deste texto.
Para que um programa possa ser executado, seu cdigo de mquina deve estar presente na
memria. O carregador o programa do sistema responsvel por transferir o cdigo de mquina de
um mdulo objeto para a memria e encaminhar o incio de sua execuo. O processo de transferir
o contedo de um mdulo objeto para a memria principal denominado carregamento. A
execuo de qualquer programa deve ser precedida por seu carregamento.
Sistemas Operacionais
O que um sistema operacional?
Comente abaixo S.Lopes
28/03/2008
Um sistema operacional (SO) uma coleo de programas que inicializam o hardware do
computador. Fornece rotinas bsicas para controle de dispositivos. Fornece gerncia,
escalonamento e interao de tarefas. Mantm a integridade de sistema.
Oi pessoal, vamos l? Sistema operacional(SO)? O que isso? Ser que apenas um grande
software de alto porte que pera simplesmente para digitar um texto qualquer ou jogar pacincia
spider? rs! Errado! Nessa matria vamos saber a verdade sobre o que um sistema operacional.
H muitos tipos de Sistemas Operacionais, cuja complexidade varia e depende de que tipo de
funes provido, e para que computador esteja sendo usado. Alguns sistemas so responsveis
pela gerncia de muitos usurios, outros controlam dispositivos de hardware como bombas de
petrleo.
O sistema operacional funciona com a iniciao de processos que este ir precisar para funcionar
corretamente. Esses processos podero ser arquivos que necessitam de ser frequentemente
atualizados, ou arquivos que processam dados teis para o sistema. Poderemos ter acesso a vrios
processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os
processos que esto em funcionamento desde a inicializao do sistema operacional at a sua
utilizao atual.
O sistema operacional uma coleo de programas que:
Inicializa o hardware do computador
Fornece rotinas bsicas para controle de dispositivos
Fornece gerncia, escalonamento e interao de tarefas
Mantm a integridade de sistema
Um Sistema Operacional muito simples para um sistema de controle de segurana poderia ser
armazenado numa memria ROM (S de Leitura - um chip que mantm instrues para um
computador), e assumir o controle ao ser ligado o computador. Sua primeira tarefa seria reajustar
(e provavelmente testar) os sensores de hardware e alarmes, e ento ativar uma rotina
monitorando ininterruptamente todos os sensores introduzidos. Se o estado de qualquer sensor de
entrada for mudado, ativada uma rotina de gerao de alarme.
RELACIONADO
Adicionalmente, o SO precisaria apresentar a cada usurio uma interface que aceita, interpreta, e
ento executa comandos ou programas do usurio. Essa interface comumente chamada de
SHELL (=cpsula, manteremos o nome original em ingls) ou interpretador de linha de comando
(CLI). Em alguns sistemas ela poderia ser uma simples linha de texto que usam palavras chaves
(como MSDOS ou UNIX); em outros sistemas poderiam ser grficas, usando janelas e um
dispositivo apontador como um mouse (como Windows95 ou X - Windows).
As Vrias Partes de um Sistema Operacional
Um sistema operacional de um computador que usado por muitas pessoas ao mesmo tempo,
um sistema complexo. Contm milhes de linhas de instrues escritas por programadores. Para
tornar os sistemas operacionais mais fceis de serem escritos, eles so construdos como uma
srie de mdulos, cada mdulo sendo responsvel por uma funo. Os mdulos tpicos em um
grande SO multiusurio geralmente so:
Ncleo (Kernel em ingls - tambm conhecido como "executivo")
Gerenciador de processo
Escalonador (Scheduler, em ingls)
Gerenciador de arquivo
O Ncleo - Um Executivo em Tempo-Real
O ncleo de um sistema operacional algumas vezes chamado de EXECUTIVO em tempo real.
Algumas das funes executadas por ele so:
Chaveamento entre programas
Controle e programao de dispositivo de hardware
Gerenciamento de memria
Gerenciamento de processos
Escalonamento de tarefas
Comunicao entre processos
Processamento de excees e de interrupo
RELACIONADO
outro programa, e fazendo todos os outros usurios esperarem. Adicionalmente, alguns programas
poderiam precisar ser executados mais freqentemente que outros, por exemplo, checando
comunicaes de rede ou imprimindo. Alguns programas podem precisar ser suspensos
temporariamente, e serem reiniciados depois, assim introduzindo a necessidade da comunicao
inter-programas.
Programando um computador
Um programa uma seqncia de instrues ao computador. Quando o programador de software
(uma pessoa que escreve programas para serem executados em um computador) desenvolve um
programa, este convertido em uma longa lista de instrues que so executadas pelo sistema de
computador.
Em um sistema de computador que suporta mais de um processo de cada vez, algum mecanismo
deve ser usado para intercalar de uma tarefa para outra. H dois mtodos principais usados para
fazer essa troca:
Escalonamento por Cooperao indica que uma tarefa que est sendo executada atualmente
deixar voluntariamente em algum momento o processador e permitir que outros processos
sejam executados.
Escalonamento Preemptivo significa que uma tarefa corrente ser interrompida (forou a se render)
e o processador se dedica a outro processo em estado de espera.
O problema da mudana por cooperao que um processo poderia demorar e assim negar a
execuo de outros processos e poderia resultar em nenhum trabalho ser feito. Um exemplo de um
sistema de cooperao o Windows 3.1. O escalonamento preemptivo melhor. D mais respostas
a todos os processos e ajuda a prevenir (ou reduz o nmero de ocorrncias de) contra o medo de
mquinas travadas. Windows NT um exemplo de tal sistema operacional.
Nota: S para programas de 32bits em Windows 95 h escalonamento preemptivo. Programas de
16bits ainda so escalonados cooperativamente, o que significa que ainda fcil para um
programa de 16bits travar um computador Windows.
Contexto de Troca
Quando o processador muda de um processo a outro, o seu estado (o processador registra e
associa os dados) deve ser salvo, pois algum tempo depois, ser reiniciado o processo e continuar
como se nunca fora interrompido. Uma vez esse estado tenha sido salvo, o prximo processo em
espera ativado. Isso envolve carga nos registradores do processador e na memria, com todos os
dados previamente salvos, e reiniciando na instruo que seria executada quando houve a ltima
interrupo. O ato de mudar de um processo a outro chamado troca de contexto. Um perodo de
tempo que um processo execute antes de ser trocado chamado de time slice ou perodo de
quantum.
Escalonamento (Scheduling)
A deciso de qual o prximo processo deve ser executado chamado escalonamento (scheduling),
e pode ser feito em uma grande variedade de maneiras. Escalonadores por cooperao geralmente
so muito simples, j que os processos so organizados em fila circular (ROUND ROBIN). Quando
um processo corrente se deixa, vai para o fim da fila. O processo no topo da fila ento executado,
e todos os processos se movimentam um lugar para cima na fila. Isso prov uma medida justa,
mas no impede que um processo monopolize o sistema (no se deixando).
Escalonadores preemptivos usam um relgio em tempo real que gera interrupo a intervalos
regulares (digamos, a cada 1/100 de um segundo). Cada vez que uma interrupo ocorre, o
processador muda para outra tarefa. Sistemas que geralmente empregam esse tipo de
escalonamento atribuem prioridades a cada processo, de forma que alguns podem ser executados
mais freqentemente que outros.
Carga do Sistema Operacional
O SO pode ser carregado na memria de um computador de duas maneiras.
J est presente em ROM
carregado a partir do disco quando o computador ligado.
Se o SO j est presente em ROM (para sistemas tipo controladores industriais, bombas de
petrleo, etc), ele ganhar controle imediato do processador ao ser ligado o computador. Para
sistemas mais complexos, o SO armazenado normalmente em mdia secundria (como disco), e
carregado em RAM quando o computador ligado. A vantagem desse tipo de sistema que o
escalonamento para o SO mais fcil de fazer e programar.
O PROCESSO de BOOTSTRAP
Descreve a ao da carga inicial do sistema operacional do disco para a RAM. Uma pequena rotina
armazenada em ROM, chamada de CARREGADOR de BOOTSTRAP ou IPL (Carregador de Programa
Inicial), l uma rotina especial de carga no disquete. Em sistema baseado em disquete, essa rotina
normalmente reside na trilha 00, setor 00 (ou 01), e chamado de setor de booting. O cdigo
contido no setor transferido para a RAM, e ento executada. Tem a responsabilidade exclusiva
de carregar o resto do sistema operacional na memria.