Mapa mental
Software
Contenido del mapa
Software
Tradutor
- Apesar das inúmeras vantagens proporcionadas pelas linguagens de montagem e de alto nível, os programas escritos nessas linguagens não estão prontos para ser diretamente executados pelo processador . Para isso, eles têm de passar por uma etapa de conversão, onde toda representação simbólica das instruções é traduzida para código de máquina.
- Dependendo do tipo do programa-fonte, existem dois tipos distintos de tradutores que geram módulos-objeto: montador e compilador.
- O montador (assembler) é o utilitário responsável por traduzir um programa-fonte em linguagem de montagem em um programa-objeto não executável (módulo-objeto). O compilador é o utilitário responsável por gerar, a partir de um programa escrito em uma lin- guagem de alto nível, um programa em linguagem de máquina não executável.
- Dependendo do tipo do programa-fonte, existem dois tipos distintos de tradutores que geram módulos-objeto: montador e compilador.
- Apesar das inúmeras vantagens proporcionadas pelas linguagens de montagem e de alto nível, os programas escritos nessas linguagens não estão prontos para ser diretamente executados pelo processador . Para isso, eles têm de passar por uma etapa de conversão, onde toda representação simbólica das instruções é traduzida para código de máquina.
Interpretador
- O interpretador é considerado um tradutor que não gera módulo-objeto. Algumas linguagens tipicamente interpretadas são o Basic e o Perl.
Linker
- O linker ou editor de ligação é o utilitário responsável por gerar, a partir de um ou mais módu- los-objeto, um único programa executável . Suas funções básicas são resolver todas as referências simbólicas existentes entre os módulos e reservar memória para a execução do programa.
- Nos primeiros sistemas operacionais, a relocação era realizada somente uma vez, na etapa de linkedição. Todos os endereços simbólicos do programa eram traduzidos para endereços físicos, e o programa executável gerado podia ser carregado a partir de uma posição prefixada na memória . Nesse tipo de relocação, o pro- grama poderia ser carregado, apenas, a partir de uma única posição na memória.
- Esse tipo de relocação não é realizado pelo linker, mas sim por outro utilitário denominado loader, responsável por carregar os programas na memória. Em alguns sistemas, o compilador pode realizar mais do que suas funções básicas, como resolver referências de endereço, sendo que, dessa forma, o programa não necessita passar pela etapa de linkedição independente.
- Nos primeiros sistemas operacionais, a relocação era realizada somente uma vez, na etapa de linkedição. Todos os endereços simbólicos do programa eram traduzidos para endereços físicos, e o programa executável gerado podia ser carregado a partir de uma posição prefixada na memória . Nesse tipo de relocação, o pro- grama poderia ser carregado, apenas, a partir de uma única posição na memória.
- O linker ou editor de ligação é o utilitário responsável por gerar, a partir de um ou mais módu- los-objeto, um único programa executável . Suas funções básicas são resolver todas as referências simbólicas existentes entre os módulos e reservar memória para a execução do programa.
Loader
- O loader ou carregador é o utilitário responsável por carregar na memória principal um programa para ser executado. Se o código executável for do tipo absoluto, o loader só necessita conhecer o endereço de memória inicial e o tamanho do módulo para realizar o carregamento. No caso do código relocável, o programa pode ser carregado em qualquer posição de memória, e o loader é responsável pela relocação no momento do carregamento .
Depurador
- A depuração é um dos estágios desse desenvolvimento, e a utilização de ferramentas adequadas é essencial para acelerar o processo de correção dos programas. O depurador é o utilitário que permite ao usuário acompanhar toda a execução de um programa a fim de detectar erros na sua lógica.
- Este utilitário oferece ao usuário recursos como: acompanhar a execução de um programa instrução por instrução; possibilitar a alteração e a visualização do conteúdo de variáveis; implementar pontos de parada dentro do programa (breakpoint), de forma que, durante a exe- cução, o programa pare nesses pontos; especificar que, toda vez que o conteúdo de uma variável for modificado, o programa envie uma mensagem (watchpoint).
- A depuração é um dos estágios desse desenvolvimento, e a utilização de ferramentas adequadas é essencial para acelerar o processo de correção dos programas. O depurador é o utilitário que permite ao usuário acompanhar toda a execução de um programa a fim de detectar erros na sua lógica.
Linguagens compiladas
- As linguagens compiladas são convertidas diretamente na máquina em um código de máquina que o processador pode executar. Como resultado, elas tendem a ser mais rápidas e mais eficientes em sua execução do que as linguagens interpretadas. As linguagens compiladas necessitam de uma etapa de «build» – elas precisam, primeiramente, ser compiladas manualmente. Exemplos de linguagens compiladas puras são o C, o C++, o Erlang, o Haskell, o Rust e o Go.
Linguagens interpretadas
- Linguagens interpretadas, antigamente, eram significativamente mais lentas do que as linguagens compiladas. Exemplos de linguagens interpretadas comuns são o PHP, o Ruby, o Python e o JavaScript.
Información
- Descripción
- Mapa Mental sobre Software, creado por maria antonya el 22/10/2022.
- Creado por
- maria antonya · oct 2022
- Actualizado
- 22 oct 2022
- Visitas
- 0
- Valoración