mainprog на функции в соответствии с номером бригады из таблицы 2. Обратите внимание на тип функции (внутренняя или внешняя), тип файла (.c, .h или .o) и тип модуля (исходный или объектный). Занесите в отчет измененный текст программы.
№ бригады
|
main()
|
prog1()
|
prog2()
|
|
тип
|
файл
|
тип
|
файл
|
тип
|
файл
|
8
|
внутренний, исходный
|
mainprog.c
|
внешний, исходный
|
prog1.c
|
внешний, исходный
|
prog2.h
|
mainprog.cpp
prog1.cpp
prog2.h
Выполните сборку программы в соответствии вариантом задания, используя неявный вызов компоновщика и задав имя исполняемого файла mainprog_1, проверьте корректность работы программы и занесите в отчет результаты ее тестирования.
Выполните сборку программы в соответствии вариантом задания, используя явный вызов компоновщика. Результатом сборки должны быть исполняемый файл mainprog_2 и карта памяти abcdmap; проверьте корректность работы программы и занесите в отчет результаты ее тестирования.
9) Из карты памяти progmap определите размеры машинного кода модулей mainprog.o, prog1.o и prog2.o, сравните их с размерами исходного и объектного кода этих модулей. Размеры файлов типа .с и .о определите с помощью команды ls. Результат представьте в виде таблицы 3, все данные должны быть подтверждены скриншотами.
Имя модуля (функции)
|
Исходный, байт
|
Объектный, байт
|
Машинный код, байт
|
prog1
|
3853
|
7144
|
0x72c = 1836
|
prog2
|
4091
|
-
|
-
|
mainprog
|
704
|
7632
|
0x584 + 0x23
= 1447
|
10) Добавьте в make-файл, разработанный при выполнении п. 3, два новых правила, реализующие п. 10 и 11 задания. Проверьте корректность его работы и сохраните его в репозитории.
Выполните экспорт всех данных из локального репозитория в центральный репозиторий, адрес которого будет указан преподавателем.
Достарыңызбен бөлісу: |