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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Есть программный код целочисленная квадратной матрицы http://www.cyberforum.ru/cpp-beginners/thread1095655.html
Есть программный код целочисленная квадратной матрицы, как сделать её прямоугольной. Помогите пожалуйста с кодом. #include <iostream> #include <cstdlib> #include <stdlib.h> using namespace std;...
C++ Метод прогонки - исправить код Всем здравствуйте!!! Друзья, передо мной стоит задача, программная реализация метода прогонки. У меня есть код, который реализует это самый метод прогонки, НО матрица A и матрица B там задается... http://www.cyberforum.ru/cpp-beginners/thread1095651.html
Составить программу, которая обеспечивает начальное формирование предметного указателя C++
Прошу помощи с программой 2х летней давности. Да, да! Все так и есть - эту программу задавали еще 2 года назад, но как то забылось и не хочет вспоминаться, да и большую часть занятий по этим темам я...
C++ Сделать что то типа закрытого хранилища файлов с доступом только из программы
В общем, мне нужно сделать что то типа закрытого хранилища файлов с доступом только из программы. А теперь внимание, вопрос. Как организовать хранение файлов ээм в файле, что то типа образа для...
C++ Вызовется ли приватный деструктор? http://www.cyberforum.ru/cpp-beginners/thread1095552.html
Вызовется ли приватный деструктор? И как в С++ можно узнать, освободилась ли память после завершения программы? class A { private: static A * a; A() { // ...
C++ Удаление строк и столбцов массива имеющих одинаковый квадратный корень из суммы элементов главной задачей является удаление строк и столбцов массива имеющих одинаковый квадратный корень из суммы элементов (столбцов или строк). Где то, происходить выход за границы выделенной памяти, в... подробнее

Показать сообщение отдельно
MechanicPaul
2 / 2 / 0
Регистрация: 25.05.2013
Сообщений: 157

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

13.02.2014, 10:34. Просмотров 618. Ответов 2
Метки (Все метки)

Доброго времени суток всем, в универе дали ребяткам лабы:
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);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru