Capítulo 8. Software de Sistema



Documentos relacionados
Máquinas virtuais. Máquina virtual de um processo. Máquinas virtuais (3) Máquina virtual de sistema. Máquinas virtuais (1) VMware para Windows e Linux

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Aplicações. Sistema Operacional Hardware. Os sistemas de computadores são projetados com basicamente 3 componentes: Máquinas Virtuais e Emuladores

SISTEMAS OPERACIONAIS

Sistemas Operacionais 1/66

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano

4 Estrutura do Sistema Operacional Kernel

PROGRAMAÇÃO JAVA. Parte 1

Sistemas Operacionais

Componentes de um Sistema de Operação

Aspectos de Sistemas Operativos

Sistemas Operacionais

Sistemas Operativos. Princípios de sistemas operativos. Rui Maranhão

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Figura 01 Kernel de um Sistema Operacional

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Sistemas Operacionais

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

SISTEMAS OPERACIONAIS 2007

3 Revisão de Software

Aula teórica 3. Tema 3.Computadores e linguagens Linguagens de Programação Compilação e linkagem LP Java. Preparado por eng.

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Sistemas de Operação

Introdução aos Computadores

ATIVIDADE 1 MÁQUINAS VIRTUAIS. 1.1 Arquiteturas não virtualizadas

Sistemas Operacionais. Conceitos de um Sistema Operacional

Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas

ETEC RAPOSO TAVARES GESTÃO DE SISTEMAS OPERACIONAIS I. Máquina Virtual. Instalação de S.O. em dual boot. 1º Semestre 2010 PROF.

Introdução aos Sistemas Operativos

Componentes de um Sistema de Operação

Processamento com SPOOL. Utilização do CPU e periféricos. Perfis dos programas. Exemplo IBM 1460 (1963) Problemas no escalonamento.

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Sistemas Operacionais I Parte III Estrutura dos SOs. Prof. Gregorio Perez gregorio@uninove.br Roteiro. Componentes do Sistema

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

Introdução à Linguagem Java

Sistemas Operacionais

Introdução. Sistemas Operacionais

ESTUDO DE CASO WINDOWS VISTA

Programação Orientada a Objetos

Introdução. Sistemas Operacionais. Introdução. Roteiro (1 / 2) Por que Máquinas Virtuais Existem? Roteiro (2 / 2)

Linguagem de Programação Introdução a Linguagem Java

Virtualização Gerencia de Redes Redes de Computadores II

Organização e Arquitetura de Computadores I. de Computadores

Conjunto de instruções do CPU. Arquitectura de um computador. Definição das instruções (1) Definição das instruções (2)

Introdução aos Sistemas da InformaçãoAula 4 p. 1

Sistemas Distribuídos: Conceitos e Projeto Threads e Migração de Processos

Fundamentos de Java. Prof. Marcelo Cohen. 1. Histórico

Introdução à Arquitetura de Computadores. Renan Manola Introdução ao Computador 2010/01

CURSO DE PROGRAMAÇÃO EM JAVA

Sistemas Operacionais I

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

Minicurso de Introdução a GNU/Linux. Nicolas Katte Dornelles Raul José Chaves Róbson Tolfo Segalla

Desenvolvimento Web TCC Turma A-1

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Gabriel Oliveira do Nascimento Rogério Libarino Aguilar. UFF - Universidade Federal Fluminense

Introdução a Computação

PROGRAMAÇÃO ORIENTADA A OBJETOS EM JAVA*

Edeyson Andrade Gomes

Programação de Computadores II TCC Turma A-1

Conceitos Básicos sobre Programação Prática

I N F O R M Á T I C A. Sistemas Operacionais Prof. Dr. Rogério Vargas Campus Itaqui-RS

Prof. José Maurício S. Pinheiro UniFOA

Integração de Sistemas Embebidos MECom :: 5º ano

Introdução à Computação: Sistemas de Computação

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

ENIAC. Introdução aos Computadores e à Programação (Noções Básicas)

SISTEMAS OPERACIONAIS. George Gomes Cabral

O objetivo desta prática é ensinar como usar a máquina chamada computador visível ou vc0, um simulador de computador de von Neumann escrito em Java.

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Universidade da Beira Interior Cursos: Engenharia Informática, Matemática /Informática e Ensino da Informática

Sistemas Operacionais

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

Memória. Espaço de endereçamento de um programa Endereços reais e virtuais Recolocação dinâmica Segmentação

Everson Scherrer Borges João Paulo de Brito Gonçalves

Visão Geral de Sistemas Operacionais

Um Driver NDIS Para Interceptação de Datagramas IP

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Infra-Estrutura de Software. Introdução. (cont.)

Descrição geral do Android

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Introdução à Programação 2006/07. Computadores e Programação

PROVA DE EQUIVALÊNCIA À FREQUÊNCIA MATRIZ

Introdução à Arquitetura de Computadores

ALP Algoritmos e Programação. . Linguagens para Computadores

Gestor de Processos Núcleo do Sistema Operativo. Sistemas Operativos 2011 / Gestor de Processos

CET GRSI Sistema Operativo de Rede. António Paulo Santos

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

Transcrição:

Capítulo 8 Software de Sistema Adaptado dos transparentes das autoras do livro The Essentials of Computer Organization and Architecture

Objectivos Conhecer o ciclo de desenvolvimento da linguagem Java Saber o que é um sistema de operação Conhecer o processo de arranque (boot) de um computador Introdução aos Sistemas e Redes de Computadores 2

Organização estruturada Nível 3: Sistema de Operação Introdução aos Sistemas e Redes de Computadores 3

Sistema de Operação Actua como intermediário entre o utilizador de um computador e o hardware deste Pode ser visto como Um gestor de recursos o S.O. é responsável por garantir a partilha controlada dos recursos do computador bem como coordenar as actividades em execução Uma máquina virtual o S.O. esconde a especificidade da máquina real onde as aplicações estão de facto a ser executadas Introdução aos Sistemas e Redes de Computadores 4

Papel do Sistema de Operação Facilita a programação Implementa abstracções e oferece uma interface com o hardware mais fácil de usar Melhorar a utilização dos recursos disponíveis Suportar a execução de vários programas (e.g. partilha do tempo de CPU) Gerir o hardware: Acede realmente aos periféricos Permite a protecção entre os programas Introdução aos Sistemas e Redes de Computadores 5

Máquinas Virtuais Representam uma abstracção (por software) de um computador Os recursos da máquina física são partilhados para criar máquinas virtuais semelhantes a reais O escalonamento do CPU pode criar a aparência de que os utilizadores têm o seu próprio CPU Idem para a memória Os periféricos são representados por entidades virtuais Com frequência executam sobre um S.O. nativo Introdução aos Sistemas e Redes de Computadores 6

Virtualização Correspondência entre os recursos virtuais ou estado (registos, memória, ficheiros) em recursos reais da máquina subjacente Uso de instruções da máquina real e/ou chamadas ao sistema para efectuar as acções especificadas pelas instruções e/ou chamadas ao sistema (isto é a emulação ao nível ISA) Introdução aos Sistemas e Redes de Computadores 7

Máquina real System API System ISA (Instruction Set Architecture) Aplicações Chamadas ao sistema Sistema de Operação Hardware User ISA (Instruction Set Architecture) Introdução aos Sistemas e Redes de Computadores 8

Máquina virtual Uma máquina virtual executa software da mesma maneira que a máquina para a qual o software foi desenvolvido O hardware e S.O. podem variar que o programa é o mesmo Guest Programa Runtime Host Software de virtualização SO hardware Virtual Machine Introdução aos Sistemas e Redes de Computadores 9

Tipos de ambientes de operação [1] O S.O. da máquina virtual Gere os recursos (virtuais) disponibilizados pela VM Aplicações/usos de VMs Permite que múltiplas instâncias de um S.O. executem concorrentemente Permite que múltiplas instâncias de diferentes S.O. executem concorrentemente Emulação Simular hardware que não existe na máquina real Promove a portabilidade Melhor uso do HW e poupa energia 10

Tipos de ambientes de operação [2] Esquema de um sistema com máquinas virtuais 11

JAVA inclui os conceitos referidos Os programas Java (classes) executam no âmbito de uma máquina virtual Java Virtual Machine (JVM). Isto permite que programas escritos em Java possam ser executados em qualquer plataforma para a qual exista uma implementação da JVM Introdução aos Sistemas e Redes de Computadores 12

JAVA inclui os conceitos referidos A JVM implementa alguns dos serviços típicos de um sistema de operação: Carrega código dinamicamente para memória Faz a sua ligação (linking) Inicia os threads de execução Faz a gestão dos recursos dos programas Liberta estes recursos quando o programa termina Introdução aos Sistemas e Redes de Computadores 13

JAVA inclui os conceitos referidos A linguagem de programação Java é uma linguagem compilada e interpretada O processo de compilação gera bytecode (código intermédio tipo assembly) da JVM O bytecode é interpretado pela JVM Muitas das JVM actuais compilam o bytecode para código máquina nativo (nível ISA) com um just-in-time compiler (JIT) Introdução aos Sistemas e Redes de Computadores 14

Java ciclo de desenvolvimento Java Compiler Java Virtual Machine Class Loader Bytecode Interpreter Host System (Windows, Linux, etc.) 15

Java ciclo de desenvolvimento HelloWorld.java javac HelloWorld.java Java Compiler HelloWorld.class java HelloWorld Java Virtual Machine Class Loader Bytecode Interpreter Host System (Windows, Linux, etc.) 16

Funcionamento do S.O. Conjunto de código carregado em memória central (RAM) Também chamado núcleo (kernel) Normalmente está permanentemente em RAM A sua acção é complementada por Programas/processos de sistema interpretador de comandos, carregadores, ligadores, O SO é carregado na RAM quando há um power up ou um reset hardware Introdução aos Sistemas e Redes de Computadores 17

Arranque do S.O. O carregador inicial (bootstrap loader) em ROM lê o programa de arranque (boot) para memória O programa de arranque (boot) lê o resto do sistema de operação para memória Introdução aos Sistemas e Redes de Computadores 19

Inicialização do S.O. Inicialização do hardware controladores, sistema de interrupções, vector de interrupções Inicialização das estruturas de dados representam os vários recursos de sistema suportam os algoritmos de gestão desses recursos Criação dos primeiros processos processos auxiliares de sistema rede, sistema de ficheiros, interpretador de comandos Wait for interrupt Introdução aos Sistemas e Redes de Computadores 20

Interpretador de comandos Vários nomes e formas: CLI (command-line interpreter) Shell (UNIX) Gráfico (Windows, Macintosh, X-Windows) Loop: - apresentar prompt - ler comando - executar comando - goto Loop Introdução aos Sistemas e Redes de Computadores 21

Conclusões A linguagem de programação Java incorpora a ideia de máquina virtual, um compilador e um interpretador O sistema de operação é o componente do software de sistema que serve de suporte a todo software Os sistemas de operação controlam a execução de programas, a gestão de recursos, protecção e segurança Introdução aos Sistemas e Redes de Computadores 22