Средства разработки программ. Компилятор, средства разработки и отладки программ
Работа добавлена: 2016-05-16





8. Средства разработки программ. Компилятор, средства разработки и отладки программ.

Система UNIX обеспечивает богатый набор средств для разработки программ, включающий компиляторы, линкер, символьный отладчик, средства ведения программных проектов и разработки языковых процессоров, архивные средства и другие.

Компиляторы

СС Cи Компилятор

$ cc t.c файл с программой

$ ./a.outрезультат вышенаписанного – созданный исполняемый файл

$ cc -о t t.c t-имя исполняемого файла

$ ./t

-l<библиотека>подключить библиотеку

-L<пусто>путь, где хранится библиотека

-I<пусто>указываются каталоги для поиска файлов, заданных #include <Ф.h>

-D name [=def ]задается макрос

-gдобавить отладочную информацию

gdbотладчик

strip чистит отладочную информацию

-ссделать только объектный файл

-Озадать уровень оптимизации

-sharedподключает разделяемые библиотеки

-staticподключает статические библиотеки

-fPICгенерируется позиционно-независимый код (для создания разделяемых библиотек)

Отладка программ

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

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

ОтладчикФункции отладчика: •пошаговое выполнение программы •выдача значений переменных •запуск программы •установка точек прерывания •продолжение выполнения

Отладчик gdb

cc –g …

gdb <имя исполняемого кода>

Далее функционирует  отладчик в режиме командной строки.

help - помощь

run – запуск программы

break – установка точек прерывания

break  <№строки исх. кода>

break <имя функции>

break main отладка с самого начала

continue – продолжить выполнение до следующей точки прерывания или до конца

step – пошаговое выполнение с заходом в функции

next – пошаговое выполнение без захода в функции

print  <имя переменной> - выдача значений переменнох

Отладка готового кода

strace – трассирует системные вызовы программ

strace <имя исполняемого кода>

strace –p <№ процесса>

Системный вызов ptrace (один из способов взаимодействия процессов) позволяет родительскому процессу управлять выполнением порожденных, а также исследовать и менять данные в образе процессов и значения регистров

ptrace(<действие>, <№процесса>, <адрес>, <данные>)

Действия:

PTRACE_ATTACHподцепиться к процессу

PTRACE_DETACHотцепиться

PTRACE_TRACEME

PTRACE_KILLуничтожение

PTRACE_PEEKTEXTвернуть данные, записанные в адресе в области текста

PTRACE_PEEKDATAвернуть данные, записанные в адресе в области данных

PTRACE_CONTпродолжитьвыполнение

PTRACE_SINGLSTEP

PTRACE_SYSCALL

Выполнение отладчика и отлаживаемой программы синхронизируется с помощью сигналов.




Возможно эти работы будут Вам интересны.

1. Универсальные средства разработки web-сайтов

2. Программные средства для разработки web-страниц и web-сайтов

3. Методические средства информационных технологий. Классификация стандартов. Перечислите основные стандарты в области разработки информационных технологий, их характеристики и другие методические материалы

4. Инструментальные средства проектирования АСОИУ. CASE-средства. Общая характеристика и классификация

5. Классификация систем реального времени. Средства разработки систем РВ. Понятие систем реального времени. Организация систем РВ. Требования к системам реального времени. Общие характеристики систем РВ

6. Средства создания операторского интерфейса автоматизированных систем (SCADA-приложения). Применение. Особенности. Возможности и средства, присущие SCADA-пакетам

7. Обучение игровых программ

8. Способы конструирования и верификации программ

9. Создание алгоритмов и программ с разветвлением

10. Составление программ, использующие структуры