ссылка на компоновщик и загрузчик - PullRequest
3 голосов
/ 20 июля 2010

Я хотел бы прочитать текст о процессе compile-link-load исполняемого файла. В общем, веб-тексты, которые я нашел, не так детально ориентированы, как хотелось бы.

И нет ... Я уверен, что книга о компиляторах и компоновщиках и т. Д. Была бы слишком большой. Мне нужны общие знания, особенно о том, как обстоят дела на практике.

Любая ссылка будет принята ... Я уверен, что в некоторых блогах есть отличные статьи на эту тему.

Ответы [ 2 ]

2 голосов
/ 20 июля 2010

Бумага Ульриха Дреппера о библиотеках и исполняемых файлах в Linux превосходна.

0 голосов
/ 20 июля 2010

Только несколько реализаций языка программирования используют компоновщики и загрузчики.

Я не знаю, как вы могли бы углубиться в детали, не открывая компоновщик и компилятор на мгновение.

В реализациях языка C компилятор выводит объектные файлы.Линкер - это отдельная программа, которая принимает объектные файлы и выводит исполняемый файл.Кроме того, загрузчик представляет собой отдельную программу, которая загружает исполняемый файл.

Некоторые компиляторы используют ярлыки и напрямую вызывают компоновщик.

Некоторые реализации компилятора просто выводят файлы сборки, которые затем собираются и затем связываются.

В этом не так много всего.

...