Software Básico Silvio Fernandes 2009.1 Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.

Slides:



Advertisements
Apresentações semelhantes
ESTRUTURA DE DADOS Professor: Marcelo Mendes Turma: MBI-1
Advertisements

Programação em Java Prof. Maurício Braga
Software Básico Silvio Fernandes
Software Básico Silvio Fernandes
Parte 1: Organização de Computadores
Software Básico Silvio Fernandes Universidade Federal Rural do Semiárido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula 05:
Arquitetura de Computadores
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 06: Funções.
Entrada e Saída Introdução.
Técnicas para operações E/S
Linguagem de Montagem Visão geral.
4. Input / Output.
Programação Aplicada Luiz Silveira Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Aula 02: Conceitos e tipos de linguagens.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 03: Computador.
Software Básico Silvio Fernandes
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
Software Básico Silvio Fernandes
Arquitetura de Sistemas Operacionais
Maria Aparecida Castro Livi
INTRODUÇÃO À PROGRAMAÇÃO
Introdução à Informática
Sistemas Digitais Microprocessados
Sistemas Operacionais
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Arquitetura de Computadores
Linguagens de Programação
Princípios de funcionamento
Autor: Fernando de Mesentier Silva
Revisão da Linguagem C.
Sistemas Operacionais
JAVA: Conceitos Iniciais
Sejam bem vindos! Arquitetura de Sistemas Operacionais.
PROGRAMAÇÃO I UNIDADE 1.
Sistemas Operacionais
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 02: Introdução.
Introdução a Linguagens de Programação
Sistemas Operacionais
ORGANIZAÇÃO DE COMPUTADORES
PROGRAMAÇÃO ESTRUTURADA (MODULARIZAÇÃO/SUBPROGRAMAÇÃO)
Organização de um computador
Arquitetura de computadores
História dos computadores e da programação
Campus de Caraguatatuba Aula 8: Noções Básicas sobre Erros (2)
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Processamento de dados na UCP e memória UCP
Sistemas Operacionais
Geração de Código aula-12-geração-de-código.pdf.
Organização de Computadores
Sistemas Operacionais
SISTEMAS OPERACIONAIS I Gerenciamento de Arquivos
Organização e Arquitetura de Computadores
Capítulo V – Comandos de Entrada e Saída 5.1 – Equipamentos de entrada e saída 5.2 – Saída no vídeo-texto 5.3 – Entrada pelo teclado 5.4 – Entrada e saída.
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Organização e Arquitetura de Computadores
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP Memória de Dados EEPROM Jadsonlee da Silva Sá
8088 Assembly Software Básico Mitsuo Takaki.
Registradores.
Sistemas Operacionais
Algoritmos e Programação MC102 Prof. Paulo Miranda IC-UNICAMP Aula 2 Variáveis e Atribuições.
O que devem fazer os Microprocessadores ?
Arquitetura de Microcomputadores
Rede de Computadores MAT164 – Redes de Computadores I Universidade Federal da Bahia Instituto de Matemática Departamento de Ciência da Computação.
UD 1 - CONCEITOS DE INFORMÁTICA
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
Transcrição da apresentação:

Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula 09: Funções básicas dos carregadores 1

Introdução Programas-objetos (PO) contêm instruções traduzidas e valores de dados do programa original e especificam os endereços onde estes itens devem ser carregados na memória 1.Carga: coloca o PO na memória para ser executado 2.Relocação: modifica o PO de modo que ele possa ser carregado num endereço diferente 3.Link: combina 2 ou mais PO diferentes e gera informações que permitem a troca de referências entre eles 2

Introdução Loader é um software básico que realiza a função de carga Alguns permitem também a relocação e o link Na maioria dos casos, todos os tradutores de programas geram PO com o mesmo formato Assim, o loader e o link pode ser usados independentes da linguagem empregada no programa-fonte 3

Funções Básicas do loader As funções fundamentais são levar um PO para a memória e dar início à sua execução Um loader absoluto muito simples não precisa realizar funções de link nem relocação, então todas suas funções são executadas em uma única passagem O registro Cabeçalho é examinado para verificar se o programa correto está sendo submetido (e se cabe na memória disponível) 4

Funções Básicas do loader A medida que cada registro de Texto é lido, o código-objeto (CO) correspondente é movido para o endereço de memória indicado Quando o registro Fim é encontrado, o loader salta para o endereço especificado e inicia a execução 5

Funções Básicas do loader 6

O algoritmo para o loader de lógica simples 7

Um bootstrap loader simples Bootstrap loader é um loader absoluto que carrega o primeiro programa que deve ser executado pelo computador (geralmente um SO) A fig. a seguir mostra o código-fonte de um bootstrap loader muito simples 8

Um bootstrap loader simples 9

10

Um bootstrap loader simples O bootstrap se inicia no endereço 0 da memória Ele carrega o SO (ou outro programa) a partir do endereço 80 Cada byte do código-objeto a ser carregado é representado no dispositivo F1 sob a forma de 2 dígitos hexadecimais, que é sempre carregado em bytes consecutivos da memória, a partir do endereço 80 11

Um bootstrap loader simples A maior parte do trabalho é feita pela subrotina GETC, que lê um caracter do dispositivo F1 e o converte em ASCII para o valor do dígito hexadecimal representado por este caracter – Ex: o código ASCII do carater 0 (hexa 30) é convertido para o valor numérico 30 – ASCII de 1 a 9 (hexa 31 a 39) para 1 a 9 – Códigos de A a F (hexa 41 a 46) para 10 a 15 12

Um bootstrap loader simples O loop principal mantém no registrador X o próximo endereço de memória a ser carregado GETC é usada para ler e converter um par de caracteres do dispositivo F1 – Os 2 valores são combinados num mesmo byte que é armazenado no endereço atual do registrador X 13

Referências Leland L Beck. Desenvolvimento de software básico. 2ª ed. Rio de Janeiro: Campus, p. 14