русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Динамические библиотеки


Дата добавления: 2013-12-23; просмотров: 1045; Нарушение авторских прав


ГЛАВА 28

Http://oplk.narod.ru/Delphi/Books/DLL/Index1.html

Иерархическая структура памяти

Иерархическая структура памяти является традиционным решением проблемы хранения больших объемов данных (рис. 2.9).

 

Рис.2.9

 

По мере продвижения сверху вниз по иерархии меняются три параметра. Во-первых, увеличивается время доступа. Доступ к регистрам занимает несколь¬ко наносекунд, доступ к кэш-памяти — немного больше, доступ к основной памя¬ти — несколько десятков наносекунд. Дальше идет большой разрыв: доступ к дискам занимает по крайней мере 10 мкс, а время доступа к магнитным лентам и оптическим дискам вообще может измеряться в секундах (поскольку эти нако¬пители информации еще нужно поместить в соответствующее устройство).

 

Во-вторых, растет объем памяти. Регистры могут содержать в лучшем случае 128 байт, кэш-память — несколько мегабайтов, основная память — десятки тысяч мегабайтов, магнитные диски — от нескольких единиц до нескольких десятков гигабайтов. Магнитные ленты и оптические диски хранятся автономно от ком¬пьютера, поэтому их совокупный объем ограничивается только финансовыми возможностями владельца.

В третьих, увеличивается количество битов, на 1 доллар стоимости.

Динамические библиотеки (DLL, Dynamic Link Library) играют важную роль в функционировании ОС Windows и прикладных программ. Они представляют собой файлы с откомпилированным исполняемым кодом, который используется приложениями и другими DLL. (Слайд 2)

Реализация многих функций ОС вынесена в динамические библиотеки, которые используются по мере необходимости, обеспечивая тем самым экономию адресного пространства. DLL загружается в память только тогда, когда к ней обращается какой-либо процесс.

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



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

Динамическая библиотека может использоваться несколькими приложениями, при этом не обязательно, чтобы все они были созданы при помощи одного языка программирования. (Слайд 4)

Разновидностью динамических библиотек являются пакеты Delphi, предназначенные для хранения кода компонентов для среды разработки и приложений.

Применение динамических библиотек позволяет добиться ряда преимуществ:

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

(Слайд 5)

При разработке динамических библиотек в среде Delphi удобно использовать группу проектов, которая включает проект приложения и проекты динамических библиотек.

В этой главе рассматриваются следующие вопросы:

  • структура файла DLL;
  • инициализация DLL;
  • явная и неявная загрузка;
  • вызовы функций из динамической библиотеки;
  • ресурсы в динамических библиотеках;

 




<== предыдущая лекция | следующая лекция ==>
Кэш-память | Экспорт из DLL


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.