sprawozdanie lab1

Celem ćwiczenia było przypomnienie sposobów kompilacji programów pod systemem Linux oraz wykorzystania programu make.


Program make jest narzędziem pomocnym programiście. Pozwala on usprawnić proces kompilacji, debugowania czy nawet pomaga zachować porządek w plikach, na których operujemy. By skorzystać z dobrodziejstw jakie niesie ze sobą make, należy utworzyć plik reguł do wykonania. Plik taki musi nazywać się „Makefile”, a jego składnia powinna wyglądać następująco:

plik_wynikowe: pliki_składowe

polecenie


moj_program: moj_program.o pomiar_czasu.o

gcc -03 moj_program.o pomiar_czasu.o -o moj_program


Dzięki programowi make, jedną komendą możemy skompilować wiele plików i zlinkować je do naszego programu. W pliku Makefile możemy również tworzyć własne zmienne, które pomogą nam przy tworzeniu dodatkowych reguł. Często stosowane jest również umieszczenie pod etykietą clean funkcji rm, która po wywołaniu pozwala nam szybko sprzątnąć stare, skompilowane pliki oraz pliki pośrednie.


Biblioteki statyczne są plikami skompilowanymi. Załączanie tego typu plików pozwala programiście zaoszczędzić czas kompilacji. Oszczędność czasu kompilacji znaczyła wiele kiedyś. Obecnie przyspieszenie to nie jest w praktyce zauważalne przez użytkownika.

Biblioteka statyczna może zostać wykorzystana w współpracy między programistami. Pozwala ona na wykorzystanie funkcji składowych bez konieczności udostępniania kodu źródłowego.


Dla naszych potrzeb polecenie tworzenia biblioteki statycznej wyglądało następująco:


ar -rs libpomiar_czasu.a pomiar_czasu.o


Należało również pamiętać, żeby załączyć tą bibliotekę w procesie kompilacji naszego programu:

gcc moj_program.o -o moj_program -L. -lpomiar_czasu -lm


Do kompilacji naszych programów wykorzystaliśmy kompilator gcc. Jest to najpopularniejszy kompilator dla systemów Linux/Unix. Nasz program wykonywał 100 000 operacji arytmetycznych i 100 000 operacji I/O. Podczas operacji I/O była również wykonywana operacja inkrementacji gdyż na ekran wypisywane były kolejne liczby z przedziału <-50 000, 50 000). Operacja arytmetyczna mno

Oto czasy uzyskane w pracowni komputerowej:

I/O – standard/cpu/zegar: 0.01 / 0.016 / 0.067

-/+ – stnadard/cpu/zegar: 0 / 0 / 0.000559

Oto czasy uzyskane po ponownym wykonaniu ćwiczenia w domu:

I/O – standard/cpu/zegar: 0.028 / 0.022 / 1.233

-/+ – stnadard/cpu/zegar: 0.000778 / 0.001 / 0.000784


Na podstawie tego prostego ćwiczenia zauważamy, że nawet operacja mnożenia liczb zmiennoprzecinkowych jest szybciej wykonywana niż operacje wejścia wyjśćia.




Wyszukiwarka

Podobne podstrony:
Si lab1, Studia PŚK informatyka, Semestr 5, semestr 5, SI 2, Sprawozdanie lab1
SPRAWOZDANIE lab1
Sprawozdanie lab1
Sprawozdanie lab1
Sprawozdanie lab1
Sprawozdanie lab1
gk sprawozdanie lab1
sprawozdanie lab1 wplyw grubosci blachy i modulu tloczenia na?ldowanie kolnierza
sprawozdanie lab1
sprawozdanie lab1
Jakub Maciejewski I7X6S1 Sprawozdanie lab1
Lab1 Sprawozdanie DW
sprawozdanie programowanie lab1
I6A1N2, Lab1 sprawozdanie
Lab1 Sprawozdanie
Lab1-sieci, studia, studia, sprawozdania, pomoce, Lab
lab1, sprawozdanie

więcej podobnych podstron