Информация о Динамическая библиотека - Поиск

Информация о Динамическая библиотека - Поиск


Результат поиска для Динамическая_библиотека
Вы можете получить подробную информацию обо всем, что вы ищете

Вы можете воспользоваться различными полезными ссылками, связанными со словом Динамическая библиотека


Найти и скачать песни, соответствующие слову Динамическая библиотека


Для слова Динамическая библиотека см. полезные ссылки


Просмотреть и загрузить изображения, соответствующие слову Динамическая библиотека


Ищите и читайте статьи, которые соответствуют слову Динамическая библиотека


Читать статью о слове Динамическая библиотека в Википедии


Динамическая библиотека Ищите и читайте новости


Смотреть и скачать фильмы, которые соответствуют слову Динамическая библиотека


Смотрите и скачивайте дорамы, соответствующие слову Динамическая библиотека



Мы стараемся помочь вам найти все, что соответствует слову Динамическая библиотека. Если вы не можете найти здесь то, что ищете, перейдите на главную страницу. Наш сайт обновляется каждый день, каждый день появляются новые песни, видео, картинки, фильмы, сериалы, интересные новости и т.д. добавлен. Самое главное, вы можете скачать самую безопасную программу Whatsapp Plus с нашего сайта. Если мы не нашли ничего, соответствующего вашему запросу Динамическая библиотека, мы скоро опубликуем это для вас.
Спасибо, что выбрали нас!

Кроме того, вы можете воспользоваться полезными ссылками, которыми поделились

Библиотека (программирование)

(перенаправлено с «Динамическая библиотека»)

Библиоте́ка (от англ. library) в программировании — сборник подпрограмм или объектов, используемых для разработки программного обеспечения (ПО). С точки зрения операционной системы (ОС) и прикладного ПО, библиотеки разделяются на динамические и статические.

Термин «библиотека подпрограмм», по всей видимости, одними из первых упомянули Уилкс М., Уиллер Д., Гилл С. в качестве одной из форм организации вычислений на компьютере[1][2]. Исходя из изложенного в их книге, под библиотекой понимался набор «коротких, заранее заготовленных программ для отдельных, часто встречающихся (стандартных) вычислительных операций»[3].

Библиотеки для компилируемых языков править

Динамические библиотеки править

Динамическая библиотека — файл, содержащий машинный код. Загружается в память процесса загрузчиком программ операционной системы либо при создании процесса, либо по запросу уже работающего процесса, то есть динамически.[4]

Расширения имен файлов динамических библиотек в разных ОС
Расширение ОС Расшифровка Примечание
so UNIX англ. shared object
dylib Mac OS англ. dynamic library
library AmigaOS Хранятся в логическом томе Libs:
dll Microsoft Windows, OS/2 англ. dynamic link library

В зависимости от назначения различают:

  • Библиотеки, используемые одной программой и содержащие критические для работы программы функции. Недостаток: при отсутствии библиотеки программа не сможет работать;
  • Библиотеки, используемые одной программой и содержащие дополнительные функции. Например, библиотеки плагинов используются для расширения функционала программы;
  • Библиотеки общего пользования (англ. shared library). Содержат функции, используемые несколькими программами. Могут загружаться в адресное пространство ОС (англ. system library) для экономии памяти: одна копия библиотеки будет использоваться несколькими процессами. В силу последнего обстоятельства такие библиотеки нередко называют разделяемыми.

При написании программы программисту достаточно указать транслятору (компилятору или интерпретатору) путь к библиотеке и имя функции. Ни исходный текст функции, ни её исполняемый код в состав программы не войдут.

Достоинства:

  • экономия памяти за счёт использования одной библиотеки несколькими процессами;
  • возможность исправления ошибок (достаточно заменить файл библиотеки и перезапустить работающие программы) без изменения кода основной программы.

Недостатки:

  • возможность нарушения API , — при внесении изменений в библиотеку существующие программы могут перестать работать (утратят совместимость по интерфейсу[5]);
  • конфликт версий динамических библиотек, — разные программы могут нуждаться в разных версиях библиотеки;
  • доступность одинаковых функций по одинаковым адресам в разных процессах, — упрощает эксплуатацию уязвимостей (для решения проблемы изобретён pic (англ.)).

Статические библиотеки править

Статическая библиотека — объектный файл в виде файла (нередко может быть поставлен вместе с исходным кодом), код из которого выборочно или полностью вставляется в программу на этапе компоновки.

Библиотеки, распространяемые в виде исходного кода, преобразуются транслятором в объектные файлы. Затем компоновщик[6] соединяет объектные файлы библиотек и объектные файлы вашей программы в один исполняемый файл.

Например, в исходных текстах распространяются:

  • библиотеки для языка Fortran;
  • библиотека Boost для языка C++.

Библиотеки, распространяемые в виде объектных файлов, уже готовы к компоновке. Компоновщик выполняет соединение объектных файлов библиотек и объектных файлов вашей программы во время создания исполняемого файла.

Расширения объектных файлов статических библиотек в разных ОС.

Расширение ОС
«a» UNIX
«lib» Microsoft Windows

Стандартные библиотеки многих компилируемых языков программирования (Fortran, Pascal, C, C++ и других) распространяются в виде объектных файлов.

Достоинства:

  • все необходимые функции включаются в один исполняемый файл.

Недостатки:

  • исполняемый файл занимает больше места на диске и в памяти, (если присоединяет код из объектных библиотечных файлов целиком, а не выборочно);
  • при обнаружении ошибок в библиотеке требуется пересборка всех программ.

Библиотеки для интерпретируемых языков править

Библиотека — файл, содержащий либо код на интерпретируемом языке, либо байт-код для виртуальной машины.

Например, библиотеки для языка Python могут распространяться либо в виде файлов с исходным кодом (расширение «py»), либо в виде файлов с байт-кодом[7] (расширение «pyc», буква «c» от англ. compiled). Одной из библиотек для языка Python является Tkinter.[8]

См. также править

Примечания править

  1. Wilkes M. V., Wheeler D. J., Gill S. Preparation of programs for an electronic digital computer. — Addison-Wesley, 1951.
  2. Уилкс М., Уиллер Д., Гилл С. «Составление программ для электронных счётных машин». Издательство иностранной литературы, 1953
  3. Волченскова, Надежда Ивановна, Технология многомашинной реализации и жизнеобеспечения библиотек подпрограмм вычислительной математики на языке Фортран, автореферат к диссертации, 1984. Дата обращения: 9 октября 2012. Архивировано 3 мая 2012 года.
  4. Савельев А.М. ПРИМЕНЕНИЕ ДИНАМИЧЕСКОЙ БИБЛИОТЕКИ TRANLIB ДЛЯ РАСЧЕТА ТРАНСПОРТНЫХ СВОЙСТВ РЕАГИРУЮЩИХ ГАЗОВЫХ СМЕСЕЙ (рус.) // Журнал "АВИАЦИОННЫЕ ДВИГАТЕЛИ". — 2019.
  5. Robert Elder. Интерфейсы — важнейшая концепция в разработке ПО. — 2020. Архивировано 6 марта 2021 года.
  6. jsmanifest. Компоновщик в JavaScript. — 2020. Архивировано 11 сентября 2020 года.
  7. Компиляция файлов python Архивная копия от 6 февраля 2021 на Wayback Machine. Документация языка Python на сайте docs.python.org.
  8. БУХАРОВ Т.А., НАФИКОВА А.Р., МИГРАНОВА Е.А. Обзор языка программирования PYTHON и его библиотек (рус.) // COLLOQUIUM-JOURNAL. — 2019.

Литература править

  • Николай Джосьютис. C++ Стандартная библиотека. Для профессионалов = The C++ Standart Library. A Tutorial and Reference. — СПб.: Питер, 2004. — 730 с. — ISBN 5-94723-635-4.

На сайте 125 человек
Top.Mail.Ru
©Tatli.Biz 2010-2024