E ai pessoal beleza?
Nesse post vou falar de Sistema Operacional, um software muito usado, mais poucos sabem ao certo o que é.
Conceito de Sistema Operacional
Um Sistema Operacional possibilita o uso eficiente e controlado dos recursos de hardware, implementa políticas e estruturas de software de modo a assegurar um melhor desempenho do sistema de computação.
DEFINIÇÕES
Gerencia e aloca recursos aos “usuários”
Controla a execução de programas do usuário e operações de dispositivos de E/S.
Função do Sistema Operacional
Oferecer uma interface simplificada do sistema computacional para o usuário
Gerenciar os recursos do hardware
Define, aplica e supervisiona políticas de acesso e utilização dos recursos.
CARACTERÍSTICAS DESEJÁVEIS
Eficiência – Baixo tempo de resposta, pouca ociosidade da UCP e alta taxa de processamento. Confiabilidade – Pouca incidência de falhas e exatidão dos dados computados.
Mantenabilidade – Facilidade de correção ou incorporação de novas características.
Pequena dimensão – Simplicidade e baixa ocupação da memória.
Concorrência – Capacidade de manutenção de tarefas concorrentes
Compartilhamento de recursos – Gerencia de recursos de hardware e software compartilhados.
Tipos mais comuns
SO de Computadores de Grande Porte (unix, free-bsd)
SO de Servidores (Debian, RedHat, Windows Server)
SO de multiprocessadores (free-bsd, linux, Windows Server)
SO de Computadores Pessoais (xp, vista, ubuntu, mandriva, redhat)
SO de Computadores Portáteis (Windows CE, linux “kernel”)
As várias partes de um Sistema Operacional:
Um sistema operacional de um computador que é usado por muitas pessoas ao mesmo tempo, é um sistema complexo. Contém milhões de linhas de instruções escritas por programadores. Para tornar os sistemas operacionais mais fáceis de serem escritos, eles são construídos como uma série de módulos, cada módulo sendo responsável por uma função. Os módulos típicos em um grande SO multiusuário geralmente são:
-Núcleo (Kernel em inglês - também conhecido como "executivo");
-Gerenciador de Processos;
-Escalonador (Scheduler, em inglês);
-Gerenciador de arquivo.
O Núcleo:
O núcleo de um sistema operacional é algumas vezes chamado de EXECUTIVO em tempo real. Algumas das funções executadas por ele são:
-chaveamento entre programas;
-controle e programação de dispositivo de hardware;
-gerenciamento de memória;
-gerenciamento de processos;
-escalonamento de tarefas;
-comunicação entre processos;
-processamento de exceções e de interrupção.
Um Processo:
Um processo ou tarefa é uma porção de um programa em alguma fase de execução. Um programa pode consistir de várias tarefas, cada uma com funcionamento próprio ou como uma unidade (talvez se comunicando entre si periodicamente).
Escalonamento:
A decisão de qual o próximo processo deve ser executado é chamado escalonamento (scheduling), e pode ser feito em uma grande variedade de maneiras.
Escalonadores por cooperação geralmente são muito simples, já que os processos são organizados em fila circular (ROUND ROBIN). Quando um processo corrente se deixa, vai para o fim da fila. O processo no topo da fila é então executado, e todos os processos se movimentam um lugar para cima na fila. Isso provê uma medida justa, mas não impede que um processo monopolize o sistema (não se deixando).
Escalonadores preemptivos usam um relógio em tempo real que gera interrupção a intervalos regulares (digamos, a cada 1/100 de um segundo). Cada vez que uma interrupção 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 freqüentemente que outros.
Bom é isso pessoal. Espero que tenham gostado.
Abraços,
Jeferson Figueiredo
Nenhum comentário:
Postar um comentário