Параллельная обработка односвязных кольцевых списков в памяти ОС Windows
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
Министерство образования и науки Украины
Харьковский национальный университет им. В.Н. Каразина
Факультет компьютерных наук
Кафедра искусственного интеллекта и программного обеспечения
Курсовой проект по дисциплине
Системное программирование и операционные системы
Тема:
Параллельная обработка односвязных кольцевых списков в памяти ОС Windows
Исполнитель: студентка гр. КС-31
Е.В. Кунина
Руководитель: ст. преподаватель
О.М. Горбань
Харьков 2012
СОДЕРЖАНИЕ
Введение
. Аналитический обзор
.1 Постановка задачи
.2 Общий обзор методов реализации задачи
. Выполнение проекта
.1 Функционал кольцевого списка
.2 Описание функций API для работы с пулом памяти в ОС Windows и их роль в проекте
.3 Средства создания потоков
.4 Порядок работы программы
2.5 Набор тестов для отладки программы и скриншоты результатов8
Выводы
Использованные источники информации
Приложение А. Задание на выполнение КП
Приложение Б. Листинг программы
ВВЕДЕНИЕ
На основании полученного задания, приведенного в Приложении А, можно сформулировать ряд целей и задач выполнения данного курсового проекта, которые описаны ниже.
Цели:
-ознакомиться с такими понятиями, как куча (пул памяти), связный список, синхронизация потоков;
-приобрести навыки написания многопоточных программ, обеспечивающих исключение возможности перекрытия разных потоков друг другом.
Задачи:
-найти необходимую справочную информацию об особенностях организации связных списков и использования функций API для работы с пулом памяти в ОС Windows;
-реализовать программно структуру списка и его функциональность;
дополнить программу 5-ью потоками: первый инициализирует список и удаляет кучу после ее использования, второй и третий добавляет элементы в список и удаляет их соответственно, четвертый изменяет существующие элементы, пятый выводит содержимое списка на экран;
обеспечить исключение возможности перекрытия разных потоков друг другом;
разработать ряд тестов для проверки корректности работы программы.
, является структурная гибкость: порядок элементов связного списка может не совпадать с порядком расположения элементов данных в памяти компьютера, а порядок обхода списка всегда явно задаётся его внутренними связями. А вот удалять элементы из списка куда труднее, чем из массива, так как удаление напрямую будет связано с поиском, нельзя удалить элемент напрямую по индексу. Это ?/p>