Conceitos Fundamentais e Arquitetura de Sistemas Operacionais
Classificado em Computação
Escrito em em
português com um tamanho de 5,89 KB
Processos e Gerenciamento de Recursos
Conceito de Processo
Um programa em execução.Contexto de Hardware (Fundamental)
É fundamental para a implementação dos sistemas de tempo compartilhado (time-sharing).Estados de um Processo
- Execução: Sendo processado pela UCP (Unidade Central de Processamento).
- Pronto: Aguarda oportunidade para executar.
- Espera: Aguarda algum evento externo.
Threads
Processos que respondem a várias solicitações simultaneamente, pois trabalham com recurso de memória compartilhada.Subprocessos
Os processos podem criar outros processos, e os subprocessos também podem criar outros processos (hierarquia).Buffering
Utilização de uma área de memória para transferência de dados entre os periféricos e a memória principal.Reentrância
Capacidade de um código de programa ser compartilhado por diversos usuários, exigindo que apenas uma cópia do programa esteja na memória.Processamento Pipelining
Assemelha-se a uma linha de montagem, onde uma tarefa é dividida em uma sequência de subtarefas executadas em diferentes estágios.Funções e Componentes do Sistema Operacional
Funções do S.O.
Rotinas que oferecem serviços aos usuários e suas aplicações.S.O. como Máquina Estendida
Apresenta uma máquina virtual mais fácil de ser programada do que a programação direta no hardware.Grupos de Funções das System Calls (Chamadas de Sistema)
- Gerência de Processos: Criação e gerenciamento do ciclo de vida de processos, Alteração do processo, Sincronização e Comunicação entre processos.
- Gerência de Memória: Alocação e desalocação de memória.
- Gerência de I/O: Operação de entrada/saída (I/O), Manipulação de arquivos e diretórios.
Conceito de Hardware e sua Fundamentalidade
O hardware é responsável pela execução das instruções do programa.Contexto de Software
Especifica as características do processo que influirão na execução do programa.Processadores Microprogramáveis
Permitem novas instruções de máquina através da criação de microprogramas.Interrupção (Ação da UCP)
Quando uma interrupção é gerada pelo S.O. ou dispositivo, a UCP deve interromper o programa corrente para atender à solicitação.Evento Assíncrono
Ocorre independente da execução do programa corrente e pode ocorrer múltiplas vezes simultaneamente.Ferramentas de Programação e Execução
Programação Inicial dos Computadores
Programas eram feitos em linguagem de máquina e carregados diretamente na memória principal.Tradutor
Transforma um programa de linguagem de montagem em linguagem de máquina.Linker (Ligador)
A partir de um ou mais módulos-objetos, cria um único programa executável e determina em que lugar da memória será instalado para ser executado.Loader (Carregador)
É responsável por colocar fisicamente na memória um programa para execução.Tipos de Sistemas Operacionais
Classificação por Capacidade
- Sistemas Monoprogramáveis/Monotarefa: Trabalham com apenas 1 programa por vez.
- Sistemas Multiprogramáveis/Multitarefa: Permitem que vários usuários trabalhem executando suas funções.
- Sistemas com Múltiplos Processadores.
Divisão dos Sistemas Multiprogramáveis
Sistemas Batch (Processamento em Lote), Tempo Compartilhado (Time-Sharing) e Tempo Real (Real-Time).Gerência de Memória (Monoprogramáveis vs. Multiprogramáveis)
Nos sistemas monoprogramáveis, a gerência da memória não é muito complexa; nos sistemas multiprogramáveis é crítica, pois há vários programas sendo executados ao mesmo tempo e dividindo os mesmos recursos.Tipos de Serviços Oferecidos
Processamento em Lote (Batch), Sistemas de Tempo Compartilhado (Time-sharing) e Sistemas de Tempo Real (Real-Time).Tipos de Aplicações no S.O.
Dedicado, de Uso Geral e Híbrido.Sistemas com Múltiplos Processadores e Acoplamento
Sistemas Múltiplos Processadores
Possibilitam duas ou mais UCPs interligadas, trabalhando em conjunto.Divisão por Acoplamento
- Sistemas Fortemente Acoplados: Dividem-se em Assimétricos e Simétricos.
- Sistemas Fracamente Acoplados: Dividem-se em Sistemas Operacionais de Rede e Sistemas Operacionais Distribuídos.