SlideShare uma empresa Scribd logo
1 de 12
 Todos os programas passam por quatro etapas de transformação desde o código-fonte
armazenado no computador até a etapa que este código será executado na máquina.
 Basicamente o processo de tradução e execução de uma linguagem de alto nível começa com
um programa em linguagem de alto nível sendo compilado para um programa em assembly, e
após essa operação ele é montado, através de um montador, em um módulo objeto em
linguagem de máquina.
 O próximo processo fica por conta do link-editor que combina vários módulos com as rotinas de
biblioteca para resolver todas as referências. Para finalizar, o Loader é encarregado de colocar
o código de máquina nos locais apropriados da memória, para ser executado pelo processador.
A imagem mostra essas etapas de tradução:
 O compilador tem a finalidade de converter uma linguagem (código-fonte) de fácil
escrita e leitura para os programadores em uma linguagem (código-alvo ou objeto)
que possa ser executada pela máquina.
 Em exemplo, um compilador basicamente transforma um programa “.java” ou “.c”
em um programa assembly que é a forma simbólica de como a máquina entende.
Código-fonte Compilador Código-objeto
 Assim como o assembly é a interface com o software de nível superior, o montador
converte a instrução em assembly para o equivalente em linguagem de máquina.
 A função do montador é transformar um programa em assembly em um arquivo
objeto, que é uma combinação de instruções de linguagem de máquina, dados e
informações necessárias para colocar instruções corretamente na memória.
 Cada instrução no programa assembly será convertida em uma versão binária da
instrução.
O arquivo objeto normalmente contém seis partes distintas:
• O cabeçalho do arquivo objeto que contém o tamanho e a posição de outras partes do arquivo
objeto;
• O segmento de texto que possui o código na linguagem de máquina;
• O segmento de dados estáticos que contém os dados alocados por toda a vida do programa;
• As informações de relocação que identificam instruções e words de dados que dependem de
endereços absolutos quando o programa é carregado na memória;
• A tabela de símbolos que contém os rótulos restantes que não estão definidos, como as
referências externas;
• As informações de depuração que contém uma descrição resumida de como os módulos foram
compilados, para que o depurador possa associar as instruções de máquina aos arquivos fonte e
tornar as estruturas de dados legíveis.
 A função do link-editor é juntar as rotinas que já foram montadas, como as rotinas de
biblioteca. Também é função do link-editor compilar e montar cada procedimento de
forma independente, de modo que uma mudança em uma linha só exija a compilação e a
montagem de um procedimento.
 As três etapas realizadas por um link-editor são:
 Colocar os módulos de código e dados simbolicamente na memória;
 Determinar os endereços dos rótulos de dados e instruções;
 Remendar as referências internas e externas.
 O link-editor produz um arquivo executável que pode ser executado em um
computador. Normalmente esse arquivo possui o mesmo formato de um arquivo-
objeto, exceto que não contém referências não resolvidas.
 Nota-se que é o Link-Editor quem faz realmente o arquivo executável final e não o
montador como muitos pensam.
 Agora que o arquivo executável foi gerado, o sistema operacional lê esse arquivo
executável para a memória e o inicia. Abaixo segue um exemplo das etapas seguidas pelo
Carregador num sistema Unix e Linux:
 Lê o cabeçalho do arquivo executável para determinar o tamanho dos segmentos de texto
e de dados;
 Cria um espaço de endereçamento grande o suficiente para o texto e os dados;
 Copia as instruções e os dados do arquivo executável para a memória;
 Caso exista, copia os parâmetros do programa principal para a pilha;
 Inicializa os registradores da máquina e define o stack pointer para o primeiro local livre;
 Desvia para uma rotina de partida, que copia os parâmetros para os registradores de
argumentos e chama a rotina principal do programa. Quando a rotina principal retorna, a
rotina de partida termina o programa com uma chamada ao sistema exit.
 Toda CPU trabalha em dois ciclos principais, o Ciclo de Busca e o Ciclo de Execução.
Assim que o computador é iniciado, a CPU entra no Ciclo de Busca, em seguida passa
para o Ciclo de Execução e depois volta para o Ciclo de Busca. Ela continua nesse
processo até que precise ser desligada, saindo do Ciclo de Execução para o estado final.
 Toda vez que um computador é ligado é necessário que o computador seja carregado da
memória secundaria para a memória principal. Este processo, denominado ativação do sistema
(boot) , é realizado por um programa localizado em um local específico do disco (disco block),
sendo geralmente o primeiro bloco. Este procedimento de ativação varia em função do
equipamento, podendo ser realizado através de teclado, de um terminal , ou de chaves em um
painel.
 Além da carga do Sistema Operacional, a ativação do sistema também consiste na
execução de arquivos de inicialização.
 Na maioria dos sistemas existe o processo de desativação denominado Shutdown . Este
procedimento permite que as aplicações e componentes sejam desativados de maneira
ordenada, garantindo a integridade do sistema.
 Organização e Projeto de Computadores. David Patterson, John
Hennessy. Elsevier, 2005.
 Organização de Computadores. Tennenbaum. Addison Wesley,
2010.

Mais conteúdo relacionado

Mais procurados

Redirecionamento, pipes e processos linux
Redirecionamento, pipes e processos   linuxRedirecionamento, pipes e processos   linux
Redirecionamento, pipes e processos linuxFábio dos Reis
 
Lab so-abertos-unidade15
Lab so-abertos-unidade15Lab so-abertos-unidade15
Lab so-abertos-unidade15Leandro Almeida
 
Programação em bat
Programação em batProgramação em bat
Programação em bathackernoob
 
Operadores de redirecionamento
Operadores de redirecionamentoOperadores de redirecionamento
Operadores de redirecionamentoIvani Nascimento
 
Criando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FileCriando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FilePaulo Brito
 
Filestream sistema arquivos
Filestream  sistema arquivosFilestream  sistema arquivos
Filestream sistema arquivosTiago
 
Android Core Aula 3 - HAL (Hardware Abstraction Layer)
Android Core Aula 3 - HAL (Hardware Abstraction Layer)Android Core Aula 3 - HAL (Hardware Abstraction Layer)
Android Core Aula 3 - HAL (Hardware Abstraction Layer)Felipe Silveira
 
Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Evandro Júnior
 
Report - Lex and YACC
Report -  Lex and YACCReport -  Lex and YACC
Report - Lex and YACCMichel Alves
 
Estrutura De Arquivos
Estrutura De ArquivosEstrutura De Arquivos
Estrutura De ArquivosJuliano Linux
 
Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4Fabio Telles Rodriguez
 

Mais procurados (20)

Redirecionamento, pipes e processos linux
Redirecionamento, pipes e processos   linuxRedirecionamento, pipes e processos   linux
Redirecionamento, pipes e processos linux
 
Lab so-abertos-unidade15
Lab so-abertos-unidade15Lab so-abertos-unidade15
Lab so-abertos-unidade15
 
Programação em bat
Programação em batProgramação em bat
Programação em bat
 
Operadores de redirecionamento
Operadores de redirecionamentoOperadores de redirecionamento
Operadores de redirecionamento
 
Conheça as principais diretivas do php.ini
Conheça as principais diretivas do php.iniConheça as principais diretivas do php.ini
Conheça as principais diretivas do php.ini
 
Tutoriais.comandos basicos ms-dos
   Tutoriais.comandos basicos ms-dos   Tutoriais.comandos basicos ms-dos
Tutoriais.comandos basicos ms-dos
 
Criando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FileCriando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe File
 
Filestream sistema arquivos
Filestream  sistema arquivosFilestream  sistema arquivos
Filestream sistema arquivos
 
Obtendo ajuda no Linux
Obtendo ajuda no LinuxObtendo ajuda no Linux
Obtendo ajuda no Linux
 
Android Core Aula 3 - HAL (Hardware Abstraction Layer)
Android Core Aula 3 - HAL (Hardware Abstraction Layer)Android Core Aula 3 - HAL (Hardware Abstraction Layer)
Android Core Aula 3 - HAL (Hardware Abstraction Layer)
 
Ap2 so revi~sao
Ap2 so revi~saoAp2 so revi~sao
Ap2 so revi~sao
 
Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014Comandos ms-dos - Atualizado 29/10/2014
Comandos ms-dos - Atualizado 29/10/2014
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 
Report - Lex and YACC
Report -  Lex and YACCReport -  Lex and YACC
Report - Lex and YACC
 
Estrutura De Arquivos
Estrutura De ArquivosEstrutura De Arquivos
Estrutura De Arquivos
 
Estrutura de diretorios
Estrutura de diretoriosEstrutura de diretorios
Estrutura de diretorios
 
OpenSuse
OpenSuseOpenSuse
OpenSuse
 
Comandos CMD
Comandos CMDComandos CMD
Comandos CMD
 
Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4Tutorial para criação de módulo no Xoops 2.4
Tutorial para criação de módulo no Xoops 2.4
 
Roteadores
RoteadoresRoteadores
Roteadores
 

Destaque

Aspectos legales y éticos de la seguridad informática.
Aspectos legales y éticos de la seguridad informática. Aspectos legales y éticos de la seguridad informática.
Aspectos legales y éticos de la seguridad informática. Lizbeth Ramirez Carranza
 
Almacenamiento y gestión de la información.
Almacenamiento y gestión de la información. Almacenamiento y gestión de la información.
Almacenamiento y gestión de la información. Lizbeth Ramirez Carranza
 
Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...
Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...
Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...Lizbeth Ramirez Carranza
 

Destaque (6)

Evaluación y selección de información.
Evaluación y selección de información.Evaluación y selección de información.
Evaluación y selección de información.
 
Búsqueda de información en internet
Búsqueda de información en internetBúsqueda de información en internet
Búsqueda de información en internet
 
Trabajo economia
Trabajo economiaTrabajo economia
Trabajo economia
 
Aspectos legales y éticos de la seguridad informática.
Aspectos legales y éticos de la seguridad informática. Aspectos legales y éticos de la seguridad informática.
Aspectos legales y éticos de la seguridad informática.
 
Almacenamiento y gestión de la información.
Almacenamiento y gestión de la información. Almacenamiento y gestión de la información.
Almacenamiento y gestión de la información.
 
Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...
Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...
Implicaciones éticas en torno al acceso y uso de la información y las tecnolo...
 

Semelhante a Execução de programas

Módulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresLuis Ferreira
 
Linguagem de programação
Linguagem de programaçãoLinguagem de programação
Linguagem de programaçãoSandro Lopes
 
Algoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardoAlgoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardozedaesquina98
 
Questões de Sistemas Operacionais
Questões de Sistemas Operacionais Questões de Sistemas Operacionais
Questões de Sistemas Operacionais Joicy Souza
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1Norivan Oliveira
 
Componentes de um Computador
Componentes de um ComputadorComponentes de um Computador
Componentes de um ComputadorAlexandre Rojas
 
Aula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxAula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxItamarGoncalves2
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem corvel
 
conhecer o computador
conhecer o computadorconhecer o computador
conhecer o computadorgongas
 
computador
computadorcomputador
computadorgongas
 
Lecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxLecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxcassamo2
 

Semelhante a Execução de programas (20)

Módulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de Computadores
 
SO - Aula 02 - Conceitos
SO - Aula 02 - ConceitosSO - Aula 02 - Conceitos
SO - Aula 02 - Conceitos
 
Linguagem de programação
Linguagem de programaçãoLinguagem de programação
Linguagem de programação
 
Cake Php
Cake PhpCake Php
Cake Php
 
Algoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardoAlgoritmia para o site do 10gi marcelo e ricardo
Algoritmia para o site do 10gi marcelo e ricardo
 
Processador de texto
Processador de textoProcessador de texto
Processador de texto
 
Software
SoftwareSoftware
Software
 
Questões de Sistemas Operacionais
Questões de Sistemas Operacionais Questões de Sistemas Operacionais
Questões de Sistemas Operacionais
 
SlackWare - Leonel
SlackWare - LeonelSlackWare - Leonel
SlackWare - Leonel
 
CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1CURSO DE PHP PARA INICIANTES - AULA 1
CURSO DE PHP PARA INICIANTES - AULA 1
 
Componentes de um Computador
Componentes de um ComputadorComponentes de um Computador
Componentes de um Computador
 
Aula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptxAula 8 - Modularização e Funções.pptx
Aula 8 - Modularização e Funções.pptx
 
Linguagem c
Linguagem cLinguagem c
Linguagem c
 
Iniciando com django
Iniciando com djangoIniciando com django
Iniciando com django
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem c
 
Redes 6
Redes 6Redes 6
Redes 6
 
Python CGI
Python CGIPython CGI
Python CGI
 
conhecer o computador
conhecer o computadorconhecer o computador
conhecer o computador
 
computador
computadorcomputador
computador
 
Lecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxLecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptx
 

Último

Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresAnaCarinaKucharski1
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 
Mapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxMapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxBeatrizLittig1
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfMárcio Azevedo
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESEduardaReis50
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptxMarlene Cunhada
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 

Último (20)

Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
 
CINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULACINEMATICA DE LOS MATERIALES Y PARTICULA
CINEMATICA DE LOS MATERIALES Y PARTICULA
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 
Mapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docxMapa mental - Classificação dos seres vivos .docx
Mapa mental - Classificação dos seres vivos .docx
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdf
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptx
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 

Execução de programas

  • 1.
  • 2.  Todos os programas passam por quatro etapas de transformação desde o código-fonte armazenado no computador até a etapa que este código será executado na máquina.  Basicamente o processo de tradução e execução de uma linguagem de alto nível começa com um programa em linguagem de alto nível sendo compilado para um programa em assembly, e após essa operação ele é montado, através de um montador, em um módulo objeto em linguagem de máquina.  O próximo processo fica por conta do link-editor que combina vários módulos com as rotinas de biblioteca para resolver todas as referências. Para finalizar, o Loader é encarregado de colocar o código de máquina nos locais apropriados da memória, para ser executado pelo processador.
  • 3. A imagem mostra essas etapas de tradução:
  • 4.  O compilador tem a finalidade de converter uma linguagem (código-fonte) de fácil escrita e leitura para os programadores em uma linguagem (código-alvo ou objeto) que possa ser executada pela máquina.  Em exemplo, um compilador basicamente transforma um programa “.java” ou “.c” em um programa assembly que é a forma simbólica de como a máquina entende. Código-fonte Compilador Código-objeto
  • 5.  Assim como o assembly é a interface com o software de nível superior, o montador converte a instrução em assembly para o equivalente em linguagem de máquina.  A função do montador é transformar um programa em assembly em um arquivo objeto, que é uma combinação de instruções de linguagem de máquina, dados e informações necessárias para colocar instruções corretamente na memória.  Cada instrução no programa assembly será convertida em uma versão binária da instrução.
  • 6. O arquivo objeto normalmente contém seis partes distintas: • O cabeçalho do arquivo objeto que contém o tamanho e a posição de outras partes do arquivo objeto; • O segmento de texto que possui o código na linguagem de máquina; • O segmento de dados estáticos que contém os dados alocados por toda a vida do programa; • As informações de relocação que identificam instruções e words de dados que dependem de endereços absolutos quando o programa é carregado na memória; • A tabela de símbolos que contém os rótulos restantes que não estão definidos, como as referências externas; • As informações de depuração que contém uma descrição resumida de como os módulos foram compilados, para que o depurador possa associar as instruções de máquina aos arquivos fonte e tornar as estruturas de dados legíveis.
  • 7.  A função do link-editor é juntar as rotinas que já foram montadas, como as rotinas de biblioteca. Também é função do link-editor compilar e montar cada procedimento de forma independente, de modo que uma mudança em uma linha só exija a compilação e a montagem de um procedimento.  As três etapas realizadas por um link-editor são:  Colocar os módulos de código e dados simbolicamente na memória;  Determinar os endereços dos rótulos de dados e instruções;  Remendar as referências internas e externas.
  • 8.  O link-editor produz um arquivo executável que pode ser executado em um computador. Normalmente esse arquivo possui o mesmo formato de um arquivo- objeto, exceto que não contém referências não resolvidas.  Nota-se que é o Link-Editor quem faz realmente o arquivo executável final e não o montador como muitos pensam.
  • 9.  Agora que o arquivo executável foi gerado, o sistema operacional lê esse arquivo executável para a memória e o inicia. Abaixo segue um exemplo das etapas seguidas pelo Carregador num sistema Unix e Linux:  Lê o cabeçalho do arquivo executável para determinar o tamanho dos segmentos de texto e de dados;  Cria um espaço de endereçamento grande o suficiente para o texto e os dados;  Copia as instruções e os dados do arquivo executável para a memória;  Caso exista, copia os parâmetros do programa principal para a pilha;  Inicializa os registradores da máquina e define o stack pointer para o primeiro local livre;  Desvia para uma rotina de partida, que copia os parâmetros para os registradores de argumentos e chama a rotina principal do programa. Quando a rotina principal retorna, a rotina de partida termina o programa com uma chamada ao sistema exit.
  • 10.  Toda CPU trabalha em dois ciclos principais, o Ciclo de Busca e o Ciclo de Execução. Assim que o computador é iniciado, a CPU entra no Ciclo de Busca, em seguida passa para o Ciclo de Execução e depois volta para o Ciclo de Busca. Ela continua nesse processo até que precise ser desligada, saindo do Ciclo de Execução para o estado final.
  • 11.  Toda vez que um computador é ligado é necessário que o computador seja carregado da memória secundaria para a memória principal. Este processo, denominado ativação do sistema (boot) , é realizado por um programa localizado em um local específico do disco (disco block), sendo geralmente o primeiro bloco. Este procedimento de ativação varia em função do equipamento, podendo ser realizado através de teclado, de um terminal , ou de chaves em um painel.  Além da carga do Sistema Operacional, a ativação do sistema também consiste na execução de arquivos de inicialização.  Na maioria dos sistemas existe o processo de desativação denominado Shutdown . Este procedimento permite que as aplicações e componentes sejam desativados de maneira ordenada, garantindo a integridade do sistema.
  • 12.  Organização e Projeto de Computadores. David Patterson, John Hennessy. Elsevier, 2005.  Organização de Computadores. Tennenbaum. Addison Wesley, 2010.