Набор генераторов программ для работы с отладчиками языка С
Project description
Оглавление
Инструкция по развертыванию проекта
Требования к системе
- ОС: Linux (рекомендуется Ubuntu 20.04 LTS или выше)
- Python: версия 3.8 или выше
- Компилятор: GCC (GNU Compiler Collection)
- Инструменты отладки и профилирования:
- Valgrind
- GDB (GNU Debugger)
- Gprof (GNU Profiler)
1. Установка зависимостей
Установка Python, PIP и venv
sudo apt update
sudo apt install python3 python3-pip python3-venv
Установка GCC, Valgrind, GDB, Gprof
sudo apt install gcc valgrind gdb binutils
Проверка версий
python3 --version
pip3 --version
python3 -m venv --help
gcc --version
valgrind --version
gdb --version
gprof --version
2. Клонирование репозитория
git clone https://github.com/moevm/mse1h2025-perf.git
cd mse1h2025-perf
3. Установка Python-зависимостей
python3 -m venv venv
source venv/bin/activate
(venv) pip install -r requirements.txt
Функционал проекта
Примеры использования генераторов задач
Проект поддерживает 3 генератора задач. Ниже приведены примеры их запуска.
Генератор 1:
Создание задач на профилирование
python3 -m generators.profiling1 1 init -o test.out
Проверка задач на профилирование
python3 -m generators.profiling1 1 check -b test.out -a f1
Параметры:
Первый параметр: тип задачи (1, 2)Второй параметр: создание задачи или проверка ответа (init, check)- С полным списком параметров можно ознакомиться в документации к генератору - Документация
Генератор 2:
Создание задач на утечку памяти
python3 -m generators.leak_generator -m 1
Проверка задач на утечку памяти
python3 -m generators.leak_generator -m 2
Параметры:
--mode, -m: создание задачи иили проверка ответа (1, 2)- С полным списком параметров можно ознакомиться в документации к генератору - Документация
Генератор 3:
Создание задач на отладку
python3 -m generators.cycle_generator -m 1
Проверка задач на отладку
python3 -m generators.cycle_generator -m 2
Параметры:
--mode, -m: создание задачи или проверка ответа (1, 2)- С полным списком параметров можно ознакомиться в документации к генератору - Документация
Пакет mse-task-generators
Установка пакета
pip install mse-task-generators
При установке пакета устанавливаются и зависимости, необходимые для корректной работы команд.
Утилиты для пользования генераторами
Нижеперечисленные утилиты должны принимать различные аргументы, информация о которых доступна при добавлении флага --help-h
Генератор задач с циклом
generators-cycle-generator flag1 <arg1>, flag2 <arg2> ...
Генератор задач с утечкой памяти
generators-leak-generator flag1 <arg1>, flag2 <arg2> ...
Генератор задач на профилирование
generators-profiling1 flag1 <arg1>, flag2 <arg2> ...
Импортирование функций в программу на Python
from generators.leak_generator import LeaksGenerator
from generators.cycle_generator import CCodeGenerator
from generators.cycle_generator import upload_file_to_yadisk
from generators.profiling1 import TaskFindingSlowFunctionGenerator
from generators.profiling1 import TaskFindingSlowFuncInFuncGenerator
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mse_task_generators-0.2.5.tar.gz.
File metadata
- Download URL: mse_task_generators-0.2.5.tar.gz
- Upload date:
- Size: 24.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
405a26a86fbd390080e47557e72a2410605186b35d1c9554f852179b505aad75
|
|
| MD5 |
272731e907dcbe48c9580db9d0915224
|
|
| BLAKE2b-256 |
d78cf5860c19d8675a68ab3b6575e2517a3fa2e449d76d31c6877259fb26389c
|
File details
Details for the file mse_task_generators-0.2.5-py3-none-any.whl.
File metadata
- Download URL: mse_task_generators-0.2.5-py3-none-any.whl
- Upload date:
- Size: 32.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b877514bf93d399529b172c70476db3a13e46ac3373654a6a8c2a7dd490df92
|
|
| MD5 |
bf16b1990d0ca2ad1e01e9715a864074
|
|
| BLAKE2b-256 |
55be5787a159fc691e32cc6969d5c1ca04882469c6d0acd31df5229bb13354d0
|