
- •Реферат
- •Содержание
- •Список сокращений и терминов
- •Введение
- •Раздел 1. Разработка многопоточных приложений
- •1.1. Потоки и многопоточность
- •1.2. Технология Intel tbb
- •Раздел 2. Алгоритм программы
- •2.1. Общий алгоритм программы
- •2.2. Алгоритм потока чтения
- •2.3. Алгоритм потока анализа
- •Раздел 3. Принципы реализации программы
- •3.1. Диаграмма классов
- •3.2. Основные библиотеки, использованные в программе
- •3.3. Основные функции, использованные в программе
- •Раздел 4. Экспериментальные исследования
- •4.1. Условия эксперимента
- •4.2. Описание эксперимента
- •4.3. Результаты эксперимента
- •4.4. Анализ результатов эксперимента
- •Список использованных источников
НАЦИОНАЛЬНЫЙ АВИАЦИОННЫЙ УНИВЕРСИТЕТ
Институт компьютерных информационных технологий
Кафедра безопасности информационных технологий
КУРСОВАЯ РАБОТА
(ПОЯСНИТЕЛЬНАЯ ЗАПИСКА)
по дисциплине «Операционные системы»
Тема: Многопоточное Windows-приложение для анализа логов web-сервера с использованием технологии Intel TBB
Выполнила: студентка 331 гр. ИКИТ Горячева А.С.
Руководитель: доцент кафедры БИТ, к.т.н. Ковтун В.Ю.
Киев 2013 р.
НАЦИОНАЛЬНЫЙ АВИАЦИОННЫЙ УНИВЕРСИТЕТ
Институт компьютерных информационных технологий
Кафедра безопасности информационных технологий
Задание на выполнение курсовой работы
студентки Горячевой Александры Сергеевны
Общее задание:
Многопоточное Windows-приложение для анализа логов web-сервера с использованием технологии Intel TBB.
Индивидуальное задание:
Вариант 7. Разработать консольное Windows – приложение для анализа логов web-сервера с использованием технологии Intel TBB.
1. Сроки выполнения: з 01.02.2013р. по 30.05.2013р.
2. Этапы работы над курсовой работой:
- написание кода;
- тестирование программы.
3.Задание выдал:
_ ________________ (Ковтун В.Ю.) "____"______________ 2013 р.
4.Задание приняла к выполнению:
_________________(Горячева А.С.) "____"______________ 2013 р.
Курсовая работа защищена с оценкой________________________
Реферат
Пояснительная записка к курсовой работе «Многопоточное Windows-приложение для анализа логов web-сервера с использованием технологии Intel TBB»: 24 страницы, 6 рисунков, 5 таблиц, 6 использованных источников.
Объект исследования – процесс многопоточного анализа логов web-сервера.
Предмет исследования – многопоточный анализ с параллельными вычислениями.
Цель работы – разработать многопоточное Windows-приложение для анализа логов web-сервера с использованием технологии Intel TBB.
Разработка приложения проводилась на основе языка программирования С++ в среде Microsoft Visual Studio 2010. Алгоритм, на основе которого базируется принцип работы программы, разработан в Microsoft Office Visio 2007. Также для параллельного программирования было использовано Intel Threading Building Blocks – библиотеку шаблонов С++, которая содержит алгоритмы и структуры данных, позволяющие избежать многих сложностей, возникающих при использованиия традиционных реализаций потоков.
Содержание
1.1. Потоки и многопоточность 6
1.2. Технология Intel TBB 7
2.1. Общий алгоритм программы 12
2.2. Алгоритм потока чтения 14
2.3. Алгоритм потока анализа 15
3.1. Диаграмма классов 16
3.2. Основные библиотеки, использованные в программе 18
3.3. Основные функции, использованные в программе 18
4.1. Условия эксперимента 21
4.2. Описание эксперимента 21
4.3. Результаты эксперимента 22
4.4. Анализ результатов эксперимента 23
Список сокращений и терминов
Intel TBB (Threading Building Blocks) – библиотека шалонов С++, предназначена для распараллеливания решения задач в системах с общей памятью.
С++ - язык программирования высокого уровня.
ОС – операционная система.
ПК – персональный компьютер.
Thread (поток) – некая сущность внутри процесса, получающая процессорное время для выполнения.
Thread-local storage (TLS) – локальная память потока – метод компьютерного программирования, который использует статическую глобальную или локальную память в потоках.
DLL (англ. dynamic-link library — «библиотека динамической компоновки», «динамически подключаемая библиотека») — понятие операционных систем Microsoft Windows и IBM OS/2, динамическая библиотека, позволяющая многократное использование различными программными приложениями.
Runtime («время выполнения») – cреда выполнения — вычислительное окружение, доступное во время работы компьютерной программы.
Формат .lib – это принятый формат статической библиотеки, то есть, библиотеки, которая будет вкомпилирована компоновщиком в исполняемый модуль.
Введение
В эпоху многоядерных процессоров, когда вместо роста производительности одного ядра происходит рост количества ядер, старая однопоточная программа не начнет работать быстрее, если ее запустить на новом двух/четырехядерном процессоре вместо одноядерного. Поэтому разработку программ нужно строить таким образом, чтобы задействовать все новые возможности. И чтобы угнаться за по-прежнему растущими потребностями в производительности, необходимо создавать приложения, которые хорошо распараллеливаются.
Основным заданием данной курсовой работы является разработка многопоточного Windows-приложения для анализа логов web-сервера с использованием технологии Intel TBB.
Предметом исследования является многопоточный анализ с параллельными вычислениями. Предназначение разработанного приложения – анализировать логи web-сервера и записывать полученную информацию в отчет.
Объект исследования – процесс многопоточного анализа логов web-сервера.
Задачи:
Разработать Windows-приложение для анализа логов web-сервера с использованием технологии Intel TBB;
Провести экспериментальные исследования разработанного приложения;
Проанализировать результаты эксперимента и сравнить их;
Сделать выводы о целесообразности применения библиотеки Intel TBB.