51090

ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ИСПОЛЬЗОВАНИЯ DLL-БИБЛИОТЕК

Лабораторная работа

Информатика, кибернетика и программирование

Разработать два варианта приложения один со статическим вызовом dll-библиотеки другой с динамическим вызовом dll-библиотеки Путем физического замера или программным путем в разработанном приложении измерить Время работы приложения при статическом использовании dll-библиотеки Посчитать отношение периодов работы приложения с двумя типами dllбиблиотек в процентах Сделать вывод относительно преимуществ и недостатков использования dllбиблиотек с двумя типами связывания Краткие теоретические сведения DLL англ. Цели введения DLL...

Русский

2014-02-05

50.29 KB

3 чел.

Эмпирические методы

программной инженерии

ПЗАС-08-2

Швеца Дмитрия

Лабораторная работа №5

ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ИСПОЛЬЗОВАНИЯ

DLL-БИБЛИОТЕК

Задание:

  1.  Ознакомиться с назначением, принципами построения и использования dll-библиотек
  2.  Ознакомиться со статическим и динамическим способами связывания с dll-библиотеками из приложений
  3.  Разработать две одинаковые dll-библиотеки (одну для статического связывания, другую для динамического связывания) с одной и той же экспортируемой функцией, которая выполняет следующее:
  4.  Читает из файла 100 целых чисел
  5.  Заполняет считанными числами массив из 100 элементов
  6.  Возводит элементы массива в квадрат
  7.  Сохраняет полученные значения в те же элементы массива
  8.  Сохраняет (переписывает) полученные значения в тот же файл
  9.  Разработать приложение, выполняющее только одно действие  вызов функции из разработанной dll-библиотеки в цикле (например из 100 проходов). Разработать два варианта приложения  один со статическим вызовом dll-библиотеки, другой  с динамическим вызовом dll-библиотеки
  10.  Путем физического замера или программным путем в разработанном приложении измерить Время работы приложения при статическом использовании dll-библиотеки
  11.  Посчитать отношение периодов работы приложения с двумя типами dll-библиотек в процентах
  12.  Сделать вывод относительно преимуществ и недостатков использования dll-библиотек с двумя типами связывания

Краткие теоретические сведения

DLL (англ. Dynamic-link library — библиотека динамической компоновки)  — динамическая библиотека, позволяющая многократное применение различными программными приложениями.

Цели введения DLL

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

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

Исходные листинги dll-библиотеки и основного приложения

library MyDll;

procedure MyLib; stdcall;

var f:TextFile; i,j:byte; A:array [1..10,1..10] of integer;

begin

AssignFile(f,'Numb.txt'); rewrite(f);

randomize;

for i:=1 to 10 do begin

for j:=1 to 10 do

  write(f,random(50):5); writeln(f); end;

closeFile(f);  reset(f);

for i:=1 to 10 do begin

for j:=1 to 10 do begin

  read(f,A[i,j]); A[i,j]:=sqr(A[i,j]); end;

  readln(f); end;

closeFile(f);

rewrite(f);

for i:=1 to 10 do begin

for j:=1 to 10 do

  write(f,A[i,j]:10); writeln(f); end;

closeFile(f); end;

exports MyLib;

end.  

    

unit Unit1;  //Dynamic

var

 Form1: TForm1; H:Thandle=0;

 MyLib: procedure;

procedure TForm1.Button1Click(Sender: TObject);

var i,d1,d2,t:longint;

begin

d1:=GetTickCount;;

for i:=1 to 1000 do MyLib;

d2:=GetTickCount;; 

t:=d2-d1;

Edit1.Text:=intToStr(t)+' mc';

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

 MyLib;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

H:=LoadLibrary('MyDll.dll');

if H<>0 then begin

  MyLib:=GetProcAddress(H,'MyLib');

  end

  else showmessage('Не удалось загрузить библиотеку!');

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

begin

FreeLibrary(H);

end;

end.

unit Unit1;  //Statyc

var  procedure MyLib; external 'MyDll.dll';

procedure TForm1.Button1Click(Sender: TObject);

var i,d1,d2:longint;

begin

d1:=GetTickCount;

for i:=1 to 1000 do MyLib;

d2:=GetTickCount;

edit1.Text:=inttostr(d2-d1)+' mc';

end;


 

А также другие работы, которые могут Вас заинтересовать

38344. ПРАВО ВНЕШНИХ СНОШЕНИЙ 118.5 KB
  Институтом этой отрасли является право на внешние сношения вытекающее из суверенитета государства право на участие в жизни международного сообщества на основе суверенного равенства. Право государства на внешние сношения основано на международноправовых нормах и существует независимо от внутреннего права которое может обходить область внешних сношений молчанием. Согласно принципу невмешательства государства не имеют права вмешиваться не только во внутренние но и во внешние дела другого государства входящие в его суверенную...
38345. ШПАРГАЛКИ З ПРАВОЗНАВСТВА 673 KB
  Загальна характеристика основних галузей права України Державне конституційне право провідна галузь права та законодавства що криє в собі систему правових норм інститутів і нормативноправових актів які закріплюють і регулюють відносини народовладдя основи конституційного ладу України правового статусу людини і громадянина територіального устрою системи державних органів та організації місцевого самоврядування в Україні. Розглядають такі види підзаконних нормативноправових актів залежно від суб'єктів що їх видали: ...
38346. Педагогическая практика преподавателя экономики 57.5 KB
  8 Литература 10 Введение Прохождение практики по специальности студентовбакалавров является неотъемлемой частью процесса подготовки высококвалифицированных специалистов в высших учебных заведениях. Продолжительность практики 2 недели с 16 по 29 мая 2011 года. Целью данной практики является подготовка студентабакалавра к ведению самостоятельной практической деятельности на должности преподавателя экономических дисциплин закрепление уже приобретенных знаний и навыков и соединить их с широким спектром...
38347. Предпринимательство в переходной экономике 66.5 KB
  Типы предприятий в переходной экономике. Особенности эволюции крупных предприятий . Взаимоотношения предприятий в переходной экономике Предпринимательство инициативная самостоятельная деятельность граждан направленная на...
38348. Система источников права Европейского Союза 180 KB
  ПОНЯТИЕ ПРЕЦЕДЕНТНОГО ПРАВА ЕС. СООТНОШЕНИЕ ПРЕЦЕДЕНТНОГО ПРАВА ЕС С АНГЛИЙСКОЙ И КОНТИНЕНТАЛЬНОЙ СИСТЕМОЙ ПРАВА. ИСТОЧНИКИ ПРЕЦЕДЕНТНОГО ПРАВА В СИСТЕМЕ ИСТОЧНИКОВ ПРАВА ЕС. Своеобразие источников прецедентного европейского права.
38349. Регіональна економіка 291.5 KB
  Економіка регіонів – наука яка вивчає особливості розвитку економіки країни в межах окремих регіонів районів Регіональна економіка як наукова сфера знань займається вивченням закономірностей принципів всіх елементів продуктивних сил і соціальної інфраструктури в територіальному аспекті аналізом і прогнозуванням а також обґрунтуванням напрямків розміщення продуктивних сил з урахуванням стратегії соціальноекономічного розвитку та екологічних вимог. Предметом регіональної економіки є вивчення соціальноекономічного регіонального...
38350. Види адвокатської діяльності 75 KB
  Адвокатська діяльність відповідно до законодавства України. Роль і особливості адвокатури в Україні Згідно до чинного законодавства Адвокатура України це добровільне професійне громадське об'єднання покликане сприяти захисту прав свобод та представляти законні інтереси громадян України іноземних громадян осіб без громадянства юридичних осіб надавати їм іншу юридичну допомогу. РОЗДІЛ 2 Адвокатська діяльність відповідно до законодавства України Видами адвокатської діяльності відповідно до ст. 5 Закону України Про...
38351. Міжнародні гарантії виконання міжнародних договорів 119 KB
  Приклади надання та забезпечення міжнародних гарантій11 Висновки Список використаної літературиВступ Вступ світового співтовариства в XXI ст. Таким міжнародним механізмом який має на меті забезпечення державами дотримання міжнародних зобов'язань що випливають як з Статуту ООН так і з міжнародних договорів є встановлення відповідних засобів щодо забезпечення їх належного виконання. В силу специфіки міжнародного права особливе місце в успішному функціонуванні його норм займають такі засоби забезпечення виконання зобов'язань як...
38352. Структура ЕС 116 KB
  Первый шаг в сторону создания современного Евросоюза был сделан в 1951: ФРГ Бельгия Нидерланды Люксембург Франция Италия подписали договор об учреждении Европейского объединения угля и стали ЕОУС ECSC Europen Col nd Steel Community целью которого стало объединение европейских ресурсов по производству стали и угля в силу данный договор вступил с июля 1952 года. Основные события в истории углубления интеграции ЕС: 1951 Парижский договор и создание Европейского...