Noções de Sistemas Operacionais
Sistema Operacional Um conjunto de programas que se situa entre os softwares aplicativos e o hardware: Gerencia os recursos do computador (CPU, periféricos). Estabelece uma interface com o usuário. que determina como o usuário interage com o sistema operacional. Provê e executa serviços para softwares aplicativos.
Sistema Operacional Indispensável para o funcionamento da máquina Sistema = Conjunto de programas; Garante que os dispositivos de hardware trabalhem corretamente; É o primeiro programa a ser “carregado” ao se ligar a máquina.
Sistema Operacional Usuário Programas SO Hardware Sistema de Arquivos
Sistema Operacional O SO tem tarefas básicas: Proporciona uma interface de linha de comando ou uma interface gráfica para que o usuário possa se comunicar com o computador; Gerencia os dispositivos de hardware do computador; Gerencia e mantém o sistema de arquivos em disco; Dá suporte a outros programas.
Kernel (Núcleo) Parte do SO que deve ser mantido na memória durante todo o tempo em que o computador está ligado – Kernel. Carregado do disco rígido para a memória quando o computador é inicializado. Gerencia o sistema operacional. Demais funcionalidades do SO: Sob-Demanda Carrega do disco outros programas do sistema operacional, quando necessário. Outros programas são chamados de não-residentes.
Programas Utilitários do SO Não-residentes. Executam tarefas secundárias. Exemplos: Gerenciador de arquivos Desfragmentador de disco Limpeza de disco Restauração de sistema Outros
Sistemas Operacionais para Computadores Pessoais Plataformas Comuns: MS-DOS Windows Mac OS Unix Linux
MS-DOS Usa uma interface de linha de comando. A tela apresenta prompts ao usuário. O usuário digita comandos. Amplamente substituído pelas interfaces gráficas.
Microsoft Windows Iniciou-se como um ambiente operacional para o MS-DOS. Não era um sistema operacional completo; necessitava do MS-DOS Hoje incorporou as suas funcionalidades o próprio SO. Possui interface gráfica. Mas os usuários podem usar os comandos e a interface do DOS. Plug and Play.
UNIX Desenvolvido em 1971. Sistema baseado em caracteres com interface de linha de comando. Não é ligado a nenhuma família de processadores. Roda praticamente em qualquer tipo de sistema (PC, mainframe, estação de trabalho) de qualquer fabricante. Suporta facilmente milhares de usuários ao mesmo tempo Possui dezenas de versões
Linux Conceito de fonte aberta. O código-fonte é livre. Possui dezenas de distribuições (versões). Usuários podem baixar (download), modificar e distribuir o software. Base: Unix. O kernel Linux foi desenvolvido por um jovem estudante da Universidade de Helsínquia (Finlândia), chamado Linus Torvalds.
Tipos de Sistemas Operacionais
Sistemas Monoprogramáveis/Monotarefa A tarefa utiliza sozinha todos os recursos
Sistemas Multiprogramáveis/Multitarefa Os Recursos computacionais são compartilhados entre diversos usuários e aplicações
Tipos de Sistemas Multiprogramáveis/Multitarefa
Tipos de Sistemas Multiprogramáveis/Multitarefa Sistemas Batch: Processos armazenados e depois de carregados, executados; Os processos são enfileirados e executados seqüencialmente; Não exige a interação com o usuário; Todas as entradas e saídas são implementadas por memórias secundárias.
Tipos de Sistemas Multiprogramáveis/Multitarefa
Tipos de Sistemas Multiprogramáveis/Multitarefa Sistema de Tempo Compartilhada: Conhecida também como time-sharing, permitem que vários programas sejam executados através da divisão de tempo do processador, fatia de tempo (time slice); O SO aloca uma fatia de tempo para que cada processo possa utilizar os recursos (CPU, Memória, Discos etc.); Permitem a interação dos usuários.
Tipos de Sistemas Multiprogramáveis/Multitarefa
Tipos de Sistemas Multiprogramáveis/Multitarefa Sistemas de Tempo Real: Conhecido como real-time, ou seja, os tempos de processamento deverão obedecer regras rígidas de tempo de execução; Não existe a ideia de fatia de tempo, a prioridade da execução é determinada pela aplicação e não pelo sistema operacional.
Tipos de Sistemas Multiprogramáveis/Multitarefa
Tipos de Sistemas Múltiplos Processadores Possui dois ou mais processadores trabalhando em conjunto, compartilhando a mesma memória e controlados por um único SO (fortemente acoplados) OU; Dois ou mais sistemas de computador com SO's distintos ligados por uma linha de comunicação (fracamente acoplados); Escalabilidade: Capacidade de aumentar a capacidade computacional, apenas adicionando novos processadores; Disponibilidade: mesmo em caso de falhas o sistemas continua trabalhando; Balanceamento de Carga: possibilidade de distribuição de tarefas entre os processadores.
Tipos de Sistemas Múltiplos Processadores SO em Rede: máquinas independentes, tarefas independentes; SO Distribuído: máquinas independentes, a mesma tarefa.