Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Что такое "position-independent code" (-fPIC in gcc) ? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Наиболее быстрый способ сортировки файла в 1 Тб при ограниченном объёме оперативной памяти http://www.cyberforum.ru/cpp-beginners/thread1506526.html
Привет! Какой есть наиболее быстрый способ сортировки файла, содержащего int-ы (по одному int-у на каждой строчке), размером в 1 террабайт, если на компе, к примеру, доступно всего 2 гб оперативки...
C++ Наиболее быстрый способ сравнения двух экземпляров структур на предмет одинаковости их полей Есть структура, в которой есть несколько int-ов и char-ов, какой имеется наиболее быстрый способ в C/C++ для сравнения двух экземпляров этой структуры на предмет полного совпадения значений полей? ... http://www.cyberforum.ru/cpp-beginners/thread1506522.html
C++ Заменить "fopen" в c++ на "TOpenDialog" в Builder6
Здравствуйте дорогие форумчане! 1. Что дано: По результатам чтения 1 части книги Пахомова "C++ Для начинающих" написал программу-конвертер. Состоит она из двух частей. Первая - считывает данные...
Приведение массива char[] (или char* ) в LPCTSTR C++
Задача: пользователь вводит директорию, нужно проверить существует ли эта директория. Функция DirExists проверки работает правильно, но аргумент у этой функции имеет тип LPCTSTR, клиент вводит...
C++ Формула поворота объекта http://www.cyberforum.ru/cpp-beginners/thread1506436.html
Здравствуйте! Подскажите, пожалуйста, формулу, по которой можно рассчитать угол ( в радианах ) поворота объекта так, чтобы он смотрел на другой объект. Что-то не получается объяснить на словах, по...
C++ Создание .ехе файла, работающего без подключения библиотек на других компьютерах Привет всем. вопрос такой. как в sublime text 3 создать ехе файл(С++(mingw)), который на других компах будеть работать без подключения используемых библиотек. как я понял такой ехе называется... подробнее

Показать сообщение отдельно
DrOffset
7134 / 4275 / 963
Регистрация: 30.01.2014
Сообщений: 7,064
29.07.2015, 18:51
Цитата Сообщение от Butt-Head Посмотреть сообщение
Хмм, тогда получается фраза When would you use it? How are EXE and DLL's compiled with this regard in Windows? с подвохом и собирается всё и так с этим флагом и разницы между DLL-кой и EXE как бы нет ?
Я не совсем там верно написал. В windows вообще position-independent code для DLL в том смысле, в котором оно есть в UNIX, не используется.
Адреса внутри Dll строятся относительно предпочтительного базового адреса, т.е. адреса заранее фиксированы. При загрузке Dll, если базовый адрес занят, то система производит перебазирование Dll, в том числе перевычисление каждого абсолютного адреса и изменение кода для осуществления использования новых адресов. После перебазирования библиотека перестает быть разделяемой, т.е. экономии памяти для динамически загружаемых библиотек уже не происходит. Но если базовый адрес не занят, то библиотека может быть использована разделяемо. По этой причине системные библиотеки имеет заранее предвычисленные базовые адреса, чтобы они не пересекались и перебазирование не происходило.

Добавлено через 2 минуты
Вот нашел небольшую статью в сравнении с Linux so: http://www.symantec.com/connect/arti...ndows-part-one
2
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru