- •Федеральное агентство связи
- •Московский технический университет связи и информатики
- •План умд 2015/16 уч. Год Методические указания
- •Общие замечания
- •1. Методические указания к материалу курса
- •1.1 Введение в операционные системы
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •Архитектура ос
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •1.3 Управление процессами
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •1.4 Управление памятью
- •Вопросы, подлежащие изучению:
- •Вопросы для самоконтроля
- •1.5 Управление вводом/выводом и файловые системы
- •Вопросы, подлежащие изучению:
- •2. Задание на курсовую работу
- •2.1 Цели и задачи выполнения курсовой работы
- •2.2 Задание на курсовую работу
- •3. Методические указания по выполнению курсовой работы
- •3.1 Общие замечания
- •Порядок выполнения курсовой работы
- •3.3 Структура и примерное содержание пояснительной записки
- •3.4 Требования к оформлению пояснительной записки
- •3.5 Защита курсовой работы
- •4. Список рекомендованной литературы
- •Федеральное агентство связи
- •Московский технический университет связи и информатики
- •Содержание
- •2.1 Цели и задачи выполнения курсовой работы... …………………………..12
3. Методические указания по выполнению курсовой работы
3.1 Общие замечания
Приложение создается на основе технологии «клиент-сервер» средствами интегрированных сред разработки Visual C++, C++ Builder, по согласованию с преподавателем возможно использование других компиляторов. Процессы 1 и 2 выступают как серверы приложений, третий процесс является их клиентом. Наличие еще одного процесса, выполняющего вспомогательные функции (индикация имен запущенных серверов, ведение дневника и т.п.) приветствуется, но необязательно.
Минимальный функционал клиента:
- создание заданного средства коммуникации процессов;
- получение данных от серверов;
- вывод полученных данных на экран.
Серверные процессы получают требуемую системную информацию и передают ее клиенту. Работа приложения должна быть организована таким образом, чтобы данные серверов приложений при выводе не перемежались бы друг с другом, т.е. сначала полностью выводятся данные, поставленные первым сервером, а затем данные второго сервера, или наоборот.
И клиентский, и серверные процессы оформляются как отдельные приложения. В большинстве вариантов заданий потребуется синхронизация процессов. Выбор средства синхронизации должен быть обоснован.
На сайте кафедры МКиИТ [8] на странице дисциплины «Операционные системы» размещены методические указания к выполнению лабораторных работ, которые содержат исчерпывающую информацию (теоритические сведения, функции Win32API, примеры кодов) по всем аспектам выполнения курсовой работы. Использование функций получения системной информации (работа первого сервера) подробно рассмотрено в методических указаниях к лабораторной работе №1, функции для работы с процессами и потоками, исследования памяти (работа второго сервера) – в лабораторных работах № 3 и 4, системные средства синхронизации процессов – в лабораторной работе №5, средства передачи данных между процессами – в лабораторных работах № 2 и 6.
Порядок выполнения курсовой работы
Курсовая работа предназначена для самостоятельного практического закрепления изученного материала и выполняется в несколько этапов.
Подготовительный этап. Уточнение постановки задачи. Аналитический обзор научно-технической литературы.
Проектный этап. Разработка алгоритмов работы приложения. Обоснование необходимости и выбор средства синхронизации.
Реализационный этап. Реализация разработанных алгоритмов средствами выбранного языка программирования, окончательная отладка программ, получение и анализ результатов.
Оформительский этап. Оформление пояснительной записки в соответствии с требованиями пунктов 3.3 и 3.4 настоящих методических указаний.
Заключительный этап. Защита курсовой работы.
3.3 Структура и примерное содержание пояснительной записки
Пояснительная записка к курсовой работе должна включать в себя следующие структурные элементы в указанной ниже последовательности:
титульный лист (Приложение 1);
задание на курсовую работу;
содержание;
введение, в котором раскрываются актуальность и значение темы, формулируется цель работы;
основная часть:
постановка задачи;
краткие теоретические основы разрабатываемой темы (суть, область применения, достоинства и недостатки вычислительной архитектуры «клиент-сервер»; обзор системных средств коммуникации и синхронизации процессов);
разработка и описание алгоритма работы приложения;
описание cтруктуры программы (модулей, основных функций, классов и т.д.);
руководство пользователя;
результаты применения программы в виде снимков экрана после запуска приложения (пример для консольного приложения приведен на рис. 2, на рис. 3 – пример для приложения с оконным интерфейсом);
заключение;
список использованных источников;
приложение, содержащее исходные коды разработанных программ с необходимыми комментариями.
Рис. 2
Рис. 3