Curso: Análise e Desenvolvimento de Sistemas Disciplina: Sistemas Operacionais Parte 1: Introdução aos Conceitos de Sistemas Operacionais Prof. Wagner Santos C. de Jesus wsantoscj@gmail.com
Conceito Fundamental de Sistemas Operacionais (SO) 2
Sistemas Computacionais Mainframes (Grandes Computadores) Workstations (Minicomputadores) PC (Personal Computers) Dispositivos Móveis (Celulares e Tablets) 3
Sistema Computacional Basicamente por hardware e software. O hardware é composto por circuitos eletrônicos (processador, memória, portas de entrada/saída, periféricos eletro-óptico-mecânicos (teclados, mouses, discos rígidos, unidades de disquete, CD ou DVD, dispositivos USB e dispositivos acoplados. 4
Lacuna entre Software e Hardware O software de aplicação é representado por programas destinados ao usuário do sistema, que constituem a razão final de seu uso, como editores de texto, navegadores Internet ou jogos. Editores de texto Hardware Lacuna Banco de Dados Browsers Jogos 5
Conceito Prático de Sistemas Operacionais 6
Características de Projetos Sistema Operacional Sistemas Grandes; Sistemas Complexos; Desenvolvimento Parcial; Possuir responsabilidades de entradas e saídas; 7
Conceito Prático Vem a ser um programa que tem como função gerenciar o hardware de um computador e/ou dispositivo. Visão abstrata dos Componente de um Sistema Operacional H A R D W A R E SISTEMA OPERACIONAL Aplicativos Usuário Final https://www.youtube.com/watch?v=nt0p8zayuuo 8
Tipos de Sistemas Operacionais 9
Tipos de Sistemas Operacionais Específicos: Quando são projetados para atender requisições de um único dispositivo. Genérico: Quando são projetados para atender a requisições de dispositivos variados ou acoplamento de dispositivos. 10
Tipos de SO (Usuários) Sistemas Monousuário: Apenas um usuário simultaneamente. Sistemas Multiusuário: Vários usuário simultaneamente. 11
Tipos SO (Tarefas) Sistemas Monotarefa: Permitem apenas a execução e uma tarefa (processo) de cada vez. Sistemas Multitarefa: Permitem a execução de vários processos simultaneamente. Monotarefa Multitarefa Processo-1 P1 P5 P9 Processo-2 P2 P6 P10 Processo-3 P3 P7 P11 Processo-4 P4 P8 P12 12
Tipos de SO Conforme Sua Utilização Grande Porte: Sistemas utilizados em Main Frame, ou seja, sistemas utilizados por grandes empresas que usam grandes computadores. Exemplo: VAX (Digital) Ultrix (Digital) VMS (Open Virtual Memory System) zos (IBM) 13
Tipos de SO Conforme Sua Utilização Servidores: Sistema para implementações em redes com alguma finalidade compartilhar (Impressoras, e outros dispositivos). Exemplo: Linux Windows Server (Microsoft) BSD (Berkeley Software Distribution) 14
Tipos de SO Conforme Sua Utilização Multiprocessadores: Permitem vários processadores em uma única placa mãe. Exemplo: Unix (Cluster de Computadores). 15
Tipos de SO Conforme Sua Utilização Portáteis: Sistemas para aparelhos como (Celulares, SmartPhones). Exemplo: Android, ios, Windows Phone, Firefox OS 16
Tipos de SO Conforme Sua Utilização Embarcados: Sistemas com um simples objetivo e que não possuem abertura em sua funcionalidade, por exemplo, um sistema de um forno de micro-ondas, Console de Jogos. Exemplo: QNX (É utilizado em processos altamente críticos). POSIX (Gerenciamento de Memória). 17
Tipos de SO Conforme Sua Utilização Tempo Real: Sistemas que fornecem informações precisas, em latência do tempo, com condições críticas. (controle de tráfego aéreo) e não crítica (Servidor Voip). Exemplo: AIX (Pick Banco de Dados Acoplado) núcleo do CATIA (Computação Gráfica). 18
Tipos de SO Conforme Sua Utilização Smart Cards: Rodam a partir de pequenos cartões, como um cartão de pagamento, por exemplo: SmartCards. Exemplo: JVM (Java Virtual Machine) instalada. 19
SO. Comerciais Windows PC - Microsoft Mac/OS PC - Apple Android Moblie ios - Mobile (Apple) Linux Sistema Aberto 20
O que os Sistemas Operacionais Fazem 21
Tarefa do SO O Sistema Operacional tem como função fornecer os meios adequados dos recursos de hardware e software, fornecendo um ambiente para que programas possam realizar trabalhos uteis. 22
Visão do Sistema Alocador de Recursos Sistema Operacional CPU Espaço de memória Espaço para armazenamento de Arquivos Dispositivos de entrada e Saída 23
Arquitetura de Von Neumann 24
Conceito (Von Neumamn) Memória Unidade de Controle Unidade Aritmética e Lógica (Acumulador) Entrada e Saída 25
Mecânica de Hardware Unidade Central de Processamento - CPU Mundo Externo Entrada Unidade Logica e Aritmética Controle Saída Para Mundo Externo Memória 26
Inicio de funcionamento de um Computador Bootstrap. É o processo de inicialização do micro, onde é lido primeiramente o BIOS e em seguida carregado o sistema operacional e programas. 27
Conceito BIOS O BIOS (Basic Input/Output System) é um programa de computador pré-gravado em memória permanente (firmware) executado por um computador quando ligado. Memória ROM (Read Only Memory) Memória não volátil que contem instruções para acesso ao sistema operacional. 28
EEPROM (Electrically-Erasable Programmable Read-Only Memory) Tipo de memória não volátil, usada em dispositivos como Microcontroladores. 29
Estrutura Simplificada de camadas SO (Instruções) COMANDOS SHELL COMANDOS KERNEL (Núcleo) 30
Classificação das Camadas Comandos: Transientes (Instruções internas do SO). Não Transientes (Instruções Externas do SO). 31
Arquitetura do Núcleo Monolítico: os controladores de dispositivos são executados no espaço de núcleo, com acesso completo ao hardware. Híbrido: Possui um micronúcleo e tem um código ("não essencial") no espaço do núcleo para que as operações executadas sejam mais rápidas. Micronúcleo: Alguns processos são executados no núcleo e os restantes são executados no espaço do usuário. 32
Sistema de Computação Discos Moderno. Nível -3 Controlador de Disco. Adaptador Gráfico Nível -2. CPU.. Controlador Memória Interrupções Nível -1 33
Conceito de Interrupções Sinal enviado, por um, dispositivo para permitir a comunicação entre o dispositivo e o processador. Dispositivos Estimulo Externo Kernel Interrupções 34
Quando a CPU é interrompida, neste momento a mesma para, o que, está efetuando e imediatamente transfere a execução para uma locação fixa de memória. Essa locação fixa contém o endereço inicial no qual está localizada a rotina de atendimento da interrupção. Linha de tempo da interrupção para um único processo de saída 35
Tipos de Interrupções System Call (Chamada de Sistema) Monitor Call (Chamadas de Monitoramento) Isso ocorre em um vetor de interrupções é uma tabela de endereços de memória que apontam para as rotinas de tratamento de interrupção. 0 0x378 LPT1 2 9C26 USB 3 00F803FF COM1 4 0B00 CMOS 5 0060h-006Fh Teclado 36
Exemplo de Vetor Interrupção Sistema Operacional 37
Estrutura de Armazenamento 38
Memória Principal RAM Random Access Memory (Memória de Acesso Aleatório) 39
Mecânica Memória RAM Unidade Central de Processamento - CPU Mundo Externo Entrada Unidade Logica e Aritmética Controle Saída Para Mundo Externo Memória https://www.youtube.com/watch?v=mybygfweg_y 40
DRAM A memória principal é implementada tipicamente, em uma, tecnologia de semicondutores. Semicondutores são materiais que possuem condutividade intermediária, entre condutores e isolantes 41
Dispositivo de Armazenamento Secundário 42
Dispositivo Armazenamento Secundário A evolução dos semicondutores, proporcionou a evolução dos diverso tipos de memoria. Sendo o mais comum o Disco Magnético: Setor 8 Cabeças 4 Pratos 43
Hierarquia de Dispositivos de Armazenamento Registradores Cache Memória Principal Disco Eletrônico Disco Magnético Disco óptico Fitas Magnéticas https://www.youtube.com/watch?v=1sft-9f4hhc 44
Estrutura de Entrada e Saída E/S 45
Estrutura de Entrada e Saída Driver de dispositivos (device driver) Cache SCSI (Small Computer System Interface) Controlador BUFFER Interrupção Mini Interface do Sistema de Computador 46
Controle de Eventos Sensor Solenóide Teclado Disp. Rede Evento Disparado Controlador Código de programa 47
Eventos KeyDown() private void FrmTeste_KeyDown(object sender, KeyEventArgs e) { if (e.keycode == Keys.F3 ) { MessageBox.Show("Teste"); } } Captura o código da tecla pressionada 48
Sistemas de Processador Único 49
Processador Único Em um sistema de processador único, existe uma CPU principal capaz de executar um conjunto de instruções de uso geral, incluindo instruções de processos de usuário. Interrupção de E/S Thread de execução CPU Dados Interrupção Ciclo de execução de instruções Movimento de dados Instruções e dados Memória Dispositivo 50