Pergunta

Eu escrevi um compilador para C que o código saídas byte. A razão para isso era para ser capaz de aplicações de gravação para uma plataforma incorporado que é executado em várias plataformas.

Eu tenho o compilador e montador.

Eu preciso escrever um ligador, e estou preso.

O formato de objeto é um costume, projetado em torno do intérprete do código byte, então eu realmente não posso usar quaisquer ligadores existentes.

O meu maior obstáculo é a forma de organizar o código objeto para a saída do binário ligado. A vinculação dinâmica não é necessário, neste momento. Eu preciso para obter estática ligando trabalhando em primeiro lugar.

Foi útil?

Solução

http://linker.iecc.com é o único livro que eu sei sobre este assunto.

Outras dicas

Ian Lance Taylor, um dos principais desenvolvedores do vinculador ouro (agora parte do binutils), postou uma série de blogs sobre como ligadores trabalho. Você pode encontrá-lo aqui .

Eu segundo o livro dos ligadores e carregados. Você afirma que o formato de objeto é um costume. Se o formato está sob seu controle, você poderia pensar em usar o formato ELF com o seu bytecode como uma nova arquitetura da máquina, a la x86, SPARC, ARM, etc. O GNU binutils fontes são suficientemente maleável para permitir que você incorporar a sua "arquitetura" .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top