Montador (assembler) Linguagem de máquina Linguagem Assembly Montador (assembler) Traduz um programa fonte em linguagem de montagem (linguagem assembly) 1 em um módulo-objeto (em linguagem de máquina) não executável. Compilador Programa em Linguagem C Compilador Traduz um programa em linguagem de alto-nível (pascal, fortran, cobol) em um Módulo-objeto (em linguagem de máquina) não executável 2 Compilador 3 Introdução a Sistemas Operacionais Adão de Melo Neto 4 Definição de SO Sistema Operacional Permite o compartilhamento de recursos de forma organizada É um conjunto de rotinas (programa) executado pelo processador que controla o funcionamento do computador como gerente dos diversos recursos (processadores, memórias e dispositivos de entrada e saída). Facilita o acesso aos recursos do sistema 5 Sistema Operacional Facilita o acesso aos recursos do sistema Disponibiliza uma Interface entre os usuários e Recursos do sistema (usuário não precisa conhecer detalhes do hardware). Permite eficiência e menor chance de erro 6 Sistema Operacional Compartilhamento de recursos de forma organizada Possibilita o acesso concorrente (“ao mesmo tempo”) a recursos compartilhados (memórias, discos, impressoras, por exemplo) de forma organizada e protegida 7 Sistema Operacional Computador – Hardware: • circuitos eletrônicos, cabos e fontes de alimentação – Software: • Através dele o computador consegue armazenar dados em discos, imprimir relatórios, gerar gráficos, etc 8 Sistema Operacional Primeiros computadores – Programação através de fios. Exigia grande conhecimento do hardware e de sua linguagem de máquina 9 Sistema Operacional Surgimento do SO – Interação entre usuário/computador mais simples, confiável e eficiente – Parte física do computador transparente ao usuário – Usuário enxerga a máquina como sendo apenas o sistema operacional • Nível 0: hardware • Nível 1: sistema operacional Sistema Operacional É um conjunto de rotinas (programa) executado pelo processador que controla o funcionamento do computador como gerente dos diversos recursos (processadores, memórias e dispositivos de entrada e saída). 10 Tipos de Sistemas Operacionais 11 Tipos de Sistemas Operacionais – O surgimento dos diversos tipos de SO está Intimamente relacionado com a evolução do hardware e das aplicações por ele suportadas 12 Sistemas Monoprogramáveis/Monotarefa Processador, memória e periféricos dedicados a execução de um único programa (na memória). Processador ocioso enquanto programa aguarda algum evento (exemplo: digitação de um dado) Simples de implementação. Não existe preocupação com compartilhamento de recursos Memória principal subutilizada (não preenchida completamente, Apenas um programa) Periféricos dedicados a um único usuário 13 Sistemas Monoprogramáveis/Monotarefa 14 Sistemas Multiprogramáveis/Multitarefa Vários programas dividem os recursos (processador, memória e periféricos) Na memória podem existir vários programas 15 Sistemas Multiprogramáveis/Multitarefa 16 Sistema Monoprogramável X Multiprogramável - Um programa na memória principal por vez. - UCP totalmente dedicada ao programa - Desperdício na utilização da UCP (ex: quando programa faz uma leitura no disco) - Subutilização da memória principal (apenas um programa). 17 Sistema Monoprogramável X Multiprogramável - Vários programas na memória principal CONCORRENDO pela utilização da UCP. - CPU totalmente dedicada aos vários programas - Menos desperdício na utilização da UCP =>Existem vários programas se revezando para utilização da UCP =>Quando um programa solicita uma operação de E/S, outros poderão utilizar a UCP - Melhor uso da memória principal. 18