Форум программистов, компьютерный форум CyberForum.ru

тестирование менеджера памят - C++

Восстановить пароль Регистрация
 
MechanicPaul
2 / 2 / 0
Регистрация: 25.05.2013
Сообщений: 157
13.02.2014, 10:34     тестирование менеджера памят #1
Доброго времени суток всем, в универе дали ребяткам лабы:
1. Реализовать менеджер памяти с выделением блоков различного размера.
2. Реализовать менеджер памяти с перемещающимися блоками.
3. Реализовать менеджер памяти со страничным разбиением.
4. Реализовать автономное тестирование менеджера памяти реализованного согласно варианту 1.
5. Реализовать автономное тестирование менеджера памяти реализованного согласно варианту 2.
6. Реализовать автономное тестирование менеджера памяти реализованного согласно варианту 3.

Для выполнения заданий 1-3 необходимо реализовать функции выделения и удаления блока памяти, чтения и запись информации из блока памяти, а так же функцию инициализации модели менеджера памяти.

Мне нужно реализовать:
4. Реализовать автономное тестирование менеджера памяти реализованного согласно варианту 1.

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

Верно ли я понял что нужно сделать? Если я верно понял, то, каким образом можно организовывать взаимодействие между программами?
Так же описан интерфейс менеджера памяти.В приложении приводится описание структур, которые могут использоваться при выполнении задания.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
/************************************************************************
        Лабораторная работа №1
 
    Описание интерфейсных функций модели менеджера памяти
 
 ************************************************************************/
 
 
 
typedef char* VA;               // Тип описывающий адрес блока 
 
 
 
/**
    @func   _malloc 
    @brief  Выделяет блок памяти определенного размера
    
    @param  [out] ptr       адресс блока
    @param  [in]  szBlock   размер блока
    
    @return код ошибки
    @retval 0   успешное выполнение
    @retval -1  неверные параметры
    @retval -2  нехватка памяти
    @retval 1   неизвестная ошибка
 **/
int _malloc (VA* ptr, size_t szBlock);
 
 
 
/**
    @func   _free
    @brief  Удаление блока памяти
    
    @param  [in] ptr        адресс блока
    
    @return код ошибки
    @retval 0   успешное выполнение
    @retval -1  неверные параметры
    @retval 1   неизвестная ошибка
 **/
int _free (VA ptr);
 
 
 
/**
    @func   _read
    @brief  Чтение информации из блока памяти
    
    @param  [in] ptr        адресс блока
    @param  [in] pBuffer    адресс буфера куда копируется инфомация
    @param  [in] szBuffer   размер буфера
    
    @return код ошибки
    @retval 0   успешное выполнение
    @retval -1  неверные параметры
    @retval -2  доступ за пределы блока
    @retval 1   неизвестная ошибка
 **/
int _read (VA ptr, void* pBuffer, size_t szBuffer);
 
 
 
/**
    @func   _write
    @brief  Запись информации в блок памяти
    
    @param  [in] ptr        адресс блока
    @param  [in] pBuffer    адресс буфера куда копируется инфомация
    @param  [in] szBuffer   размер буфера
    
    @return код ошибки
    @retval 0   успешное выполнение
    @retval -1  неверные параметры
    @retval -2  доступ за пределы блока
    @retval 1   неизвестная ошибка
 **/
int _write (VA ptr, void* pBuffer, size_t szBuffer);
 
 
 
/**
    @func   _init
    @brief  Инициализация модели менеджера памяти
    
    @param  [in] n      количество страниц
    @param  [in] szPage размер страницы
 
    В варианте 1 и 2 общий объем памяти расчитывается как n*szPage
    
    @return код ошибки
    @retval 0   успешное выполнение
    @retval -1  неверные параметры
    @retval 1   неизвестная ошибка
 **/
int _init (int n, int szPage);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.02.2014, 10:34     тестирование менеджера памят
Посмотрите здесь:

Тестирование C++
C++ Юнит-тестирование
C++ Создание менеджера памяти с++
Совте о создании файлового менеджера C++
Unit - тестирование C++
Тестирование класса C++
Автоматизированное тестирование ПО C++
Оконный менеджер. Как лучше хранить указатели на элементы менеджера? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5436 / 2560 / 233
Регистрация: 01.11.2011
Сообщений: 6,330
Завершенные тесты: 1
13.02.2014, 10:42     тестирование менеджера памят #2
MechanicPaul, я за вас рад. Спасибо, что поделились.
MechanicPaul
2 / 2 / 0
Регистрация: 25.05.2013
Сообщений: 157
13.02.2014, 18:17  [ТС]     тестирование менеджера памят #3
Цитата Сообщение от SatanaXIII Посмотреть сообщение
MechanicPaul, я за вас рад. Спасибо, что поделились.
Эм...
Осмелюсь предположить что вы не увидели вопросов и решили что я просто пост настрочил ни о чём. Если же дело в другом, то вы как-то более информативно выражайтесь.

Вопросы:
Верно ли я понял что нужно сделать? Если я верно понял, то, каким образом можно организовывать взаимодействие между программами?
Yandex
Объявления
13.02.2014, 18:17     тестирование менеджера памят
Ответ Создать тему
Опции темы

Текущее время: 02:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru