Итак, DLL похожа на папку, но она позволяет нескольким программам / исполняемым файлам получать к ней доступ одновременно, тем самым сохраняя память (я думаю).
Что является эквивалентом DLL для Mac? Я просматривал папки Google Chrome внутри ~/Library/Application Support
, и вместо обычного Windows Default.dll была просто папка «Default» в виде обычного файла, содержание которого, я полагаю, будет регулярно находиться внутри DLL.
Эквивалент Mac обеспечивает ту же функцию?
default.dll
Mac OS X. Ответы кажутся совершенно разными.dll
это не папка или где-то рядом с ней. Он содержит методы и функции, которые могут вызываться другими программами, так что им не нужно, чтобы они сами их реализовывали. Иногда adll
также содержит ресурсы, такие как значки.Ответы:
Эквивалентами Windows DLL на OS X являются Frameworks (Какао) или dylibs (BSD). Система поставляется в
/usr/lib
и/System/Library/Frameworks
соответственно.Папка, которую вы упоминаете,
Library/Application Support
похожа наApplication Data
(илиAppRoaming
сейчас?) Папки в Windows, содержащие личные настройки ваших приложений.Хотя я не знаю, что такое эквивалент для Chrome
default.dll
на OS X, пакет приложений содержит следующее:Судя по размеру, похоже, что
Google Chrome Framework
это важно (папкаFrameworks
чуть выше не представляет особого интереса)источник
В этом отношении нет реальных библиотек в OS X, Linux или POSIX. Они не делают различия.
Почему?
С одной стороны, многие вещи Mac самодостаточны (в конце концов .app - это просто папки).
Двоичные файлы в Mac OS X (и Linux и других * Nixes) используют ELF (что означает «Исполняемый файл» и «Формат библиотеки») как для библиотек, так и для исполняемых файлов.
Файл по умолчанию, который вы там нашли, был, вероятно, двоичным файлом ELF.
Обновление : dmckee указывает, что .dylibs в формате Mach-O , эксклюзивно для Mac. Однако трудно различить их по виду, потому что ни один из них на самом деле не требует расширения.
источник
Ближайшие эквиваленты Linux и Mac называются «общими объектными файлами» (обычно с расширением .so) и динамическими библиотеками (обычно с расширением .dylib) соответственно.
Общие объекты широко используются в типичных системах Linux. Динамические библиотеки не так распространены повсеместно, поскольку формат .app позволяет создать очень безопасный механизм распространения для поддержки нескольких архитектур за счет более крупных «файлов».
источник