Principal Diferença
a diferença entre O ligador e carregador é que o vinculador gera um módulo executável de um programa de origem, enquanto carregador carrega o módulo executável para a memória principal.
Linker vs. Carregador
Existem programas utilitários que desempenham o papel principal na execução de qualquer programa, há dois tipos de programas utilitários que são ligador e carregador. Qualquer código-fonte de um programa deve passar pelo compilador, montador, vinculador, Carregador e esta é a ordem de execução de qualquer programa. O Linker ingere os códigos de objeto gerados pelo assembler e os combina para gerar o módulo executável. O Loader, por outro lado, carrega o módulo executável na memória principal para a execução. O programa que deve ser executado está presente na memória principal. Loader, carregue o arquivo executável no sistema operacional. Loader aloca o espaço de memória para o módulo executável na memória principal. Existem três tipos do carregador que são: carregador absoluto, carregador relocatable e carregamento dinâmico do tempo de execução. Estes três carregadores têm diferentes carregamento de abordagens que são absolutos loading, relocável abordagem de carga dinâmico e o tempo de execução loading
Montador e compilador não são mesmo processo, mas eles fazem o mesmo trabalho que é que gera o código objeto de uma fonte de programa e passa para o vinculador. O principal processo do vinculador é pegar o código objeto e gerar o código executável para o programa após o término desse trabalho do vinculador e atribuir o código ao carregador. Existem algumas bibliotecas integradas e arquivos de cabeçalho em linguagem de alto nível. Existem algumas funções de biblioteca que são definidas em bibliotecas integradas. O carregador absoluto carrega o arquivo executável do programa no mesmo local de memória principal. No absolute loader, o programador deve estar ciente da atribuição. Relocating loader compile ou monte o endereço real da memória principal. Dynamic run time loader, programa de memória absoluta é gerado quando uma instrução é executada. As funções são vinculadas a uma função de biblioteca pelo vinculador. O compilador está sendo informado no caso se a função de biblioteca não for encontrada da função específica. Quando há um programa grande, ele é dividido em programas menores que são conhecidos como módulos. Módulos de objetos são gerados quando esses módulos são compilados ou montados. Linker tem que combinar todo o programa juntos. Existem dois tipos de vinculador um é editor de ligação que gera realocado, módulo executável e outro é um vinculador dinâmico que vincula os módulos externos até que o módulo de carga seja gerado.
Gráfico de Comparação
Linker | Carregador |
Vinculador gerar módulo executável de um programa de origem | O carregador carrega o módulo executável para a memória principal. |
Entrada | |
Ligador de entrada um objeto código assembler | Carregador leva módulo executável tem entrada |
Função | |
Linker combina todos os módulos de objeto | Carregador atribui o endereço para um arquivo executável |
Tipo | |
Tipos de vinculador são linkage editor e dinâmico editor | Tipos de carregador de são absolutos carregador, dinâmica de tempo de execução do carregador e relocação de carregador. |
o que é Linker?
Assembler e compiler não são os mesmos processos, mas eles fazem o mesmo trabalho que é gerar o código-objeto de um programa de origem e entregá-lo ao vinculador. O principal processo do vinculador é pegar o código objeto e gerar o código executável para o programa após o término desse trabalho do vinculador e ele atribui o código ao carregador. Existem algumas bibliotecas integradas e arquivos de cabeçalho em linguagem de alto nível. Existem algumas funções de biblioteca que são definidas em bibliotecas integradas. Essas funções estão vinculadas a uma função de biblioteca pelo vinculador. O compilador está sendo informado no caso se a função de biblioteca não for encontrada da função específica. Quando há um programa grande, ele é dividido em programas menores que são conhecidos como módulos. Módulos de objetos são gerados quando esses módulos são compilados ou montados. Linker tem que combinar todo o programa juntos. Existem dois tipos de vinculador um é editor de ligação que gera realocado, módulo executável e outro é um vinculador dinâmico que vincula os módulos externos até que o módulo de carga seja gerado.
o que é Carregador?
o programa que deve ser executado está presente na memória principal. Loader, carregue o arquivo executável no sistema operacional. Loader aloca o espaço de memória para o módulo executável na memória principal. Há três tipos de carregador que são: carregador absoluto, carregador relocatable e carregamento dinâmico do tempo de execução. Esses três carregadores têm diferentes abordagens de carregamento que são abordagem de carregamento absoluto, abordagem de carregamento realocável e abordagem de carregamento de tempo de execução dinâmico. O Absolute loader carrega o arquivo executável do programa no mesmo local da memória principal. No absolute loader, o programador deve estar ciente da atribuição. Relocating loader compile ou monte o endereço real da memória principal. Dynamic run time loader, programa de memória absoluta é gerado quando uma instrução é executada.
diferenças de Chave
- Linker gerar módulo executável de um programa de origem enquanto loader carrega o módulo executável para a memória principal.
- o Linker recebe a entrada de um código de objeto pelo assembler, enquanto o Loader leva o módulo executável tem que inserir
- o Linker combina todos os módulos de objeto, enquanto o Loader aloca o endereço para um arquivo executável.
- os tipos do vinculador São editor de ligação e editor dinâmico, enquanto os tipos de carregador são carregador absoluto, Carregador de tempo de execução dinâmico e carregador de realocação.