Os Sistemas Operacionais
Por: Nicoli Santos • 10/11/2022 • Trabalho acadêmico • 4.188 Palavras (17 Páginas) • 98 Visualizações
Sistemas operacionais I (SO)
Introdução 23/08/22
O que temos?
→ Um conjunto de recurso em comum
O que precisamos?
→ Uma maneira simples de permitir que aplicações utilizem esses recursos.
●Portável – independente da maquina
●SO – Roda em várias plataformas
Por que estudar?
●Problemas que apareceram em outros tipos de sistema, sabendo como foi solucionado nos ajuda a resolver o problema em questão.
●Quando se entende S.O, se consegue fazer sistemas mais eficientes.
O que é SO?
→ Intermediário entre usuário de hardware.
●Apresenta uma abstração da realidade
→Gerenciador de recursos
●Fornece alocação ordenada dos dispositivos entre programas que competem entre si.
●Compartilha recurso no tempo e espaço com vários programas.
Exemplos → tempo: impressora; espaço: memoria
●Usuário só consegue acessar um SO por uma interface.
Objetivo:
●Executar programas do usuário para ajuda-lo a resolver seus problemas de forma mais simples.
●Facilitar o uso de um sistema computacional.
●Utilizar o hardware disponível de forma eficiente.
Definição:
→ “O programa que está em execução o tempo todo no computador”. É o núcleo (Kernel).
Ponto de vista usuário x sistema:
●Usuário → Facilidade de uso.
●Sistema → é um alocador de recurso, é um programa de controle.
Estrutura de um sistema computacional (SC)
→Podem ser divididos em quatro componentes
●Usuários
●Aplicativos
●Sistema Operacional
●Hardware
Organização de um SC
→ Um ou mais CPUs e controladores de dispositivos conectados através de um barramento único que provê acesso a uma memória compartilhada.
Operação de um SC
→ Controladores de dispositivo de E/S e CPU podem executar concorrentemente.
●Cada controlador de dispositivo possui um buffer local.
●Operações de E/S são realizadas de dispositivos para o buffer local do seu controlador.
●O controlador de dispositivo informa à CPU quando termina de realizar uma operação de E/S através de
uma interrupção.
→ A CPU move dados entra a memória principal e os buffer locais dos controladores (nem sempre)
Funcionamento das interrupções
→ Um SO é baseado em interrupções
→ A ocorrência de uma interrupção transfere o controle para uma rotina de tratamento de interrupção.
●A ocorrência de novas instruções fica desabilitada enquanto uma interrupção está sendo processada.
●Interrupções de hardware te prioridade, por isso é preciso salvar o endereço de instruções.
→ Um trap (exceção) é uma interrupção gerada por software.
Tratamento
→ SO preserva o estado da CPU armazenando seus registradores e o contador de programa.
→ Determina que tipo de interrupção ocorreu
●Vetor de interrupções;
→ Segmentos separados de código determinam que ações devem ser tomadas para cada tipo de interrupção.
→ Como os processos começaram a ficar muito rápidos, aumentaram as interrupções, dai veio o DMA.
Estrutura de E/S
→ E/S síncrona (polling): o controle retorna para o programa do usuário somente após a conclusão da operação
●No máximo uma operação de E/S em execução por vez
●Não há paralelismo em E/S.
→ E/s assíncrona (interrupção): O controle retorna para o programa do usuário antes da conclusão da operação.
●Interrupções são utilizadas para informar o programa do usuário sobre conclusão de operações de E/S.
●O programa do usuário pode utilizar uma chamada de sistema para esperar explicitamente pela conclusão de uma operação E/S.
Estrutura para acesso direto à memória (DMA)
→ Utilizado por dispositivos de E/S rápidos, capazes de transmitir dados a velocidades próximas a da memória principal.
→ Direct Memory Acess (DMA) – controlador dedicado a transferir dados entre a memória e outros controladores e vice-versa.
●O mecanismo de interrupções é utilizado apenas para notificar a CPU de que a transferência terminou ou da ocorrência de erros.
→ Funcionamento: o controlador DMA assume o papel de bus master e dirige todo o trafego entra a memória e o controlador do periférico. Uma transferência DMA envolve 3 passos:
●A CPU indica ao DMA a identidade do controlador, o tipo de operação, o endereço de memoria a acessar e o numero de bytes a transferir.
●O DMA inicia a operação, arbitra o barramento e transfere os dados na direção apropriada; O próprio DMA fornece vários endereços de memória para
...