Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МУ и задания на КР по ОС 2019

.pdf
Скачиваний:
3
Добавлен:
15.02.2021
Размер:
552.72 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

Московский технический университет связи и информатики

Кафедра Математической кибернетики и информационных технологий

Методические указания и задания на курсовую работу

по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ

для студентов 3 курса факультета Информационные технологии

(направления подготовки 090301, 090302, 020302)

Москва 2017

План УМД 2011/12 уч. год

Методические указания и задания на курсовую работу

«ИССЛЕДОВАНИЕ МЕХАНИЗМОВ МЕЖПРОЦЕССНОГО ВЗАИМОДЕЙСТВИЯ»

по дисциплине ОПЕРАЦИОННЫЕ СИСТЕМЫ

Составитель Королькова Т.В., старший преподаватель Илл. - 2, табл. - 1, список лит. - 18 назв.

Утверждено на заседании кафедры МК и ИТ.

Зав. кафедрой МК и ИТ

проф., д.т.н. М.В.Яшина

Протокол заседания кафедры МКиИТ № от

 

 

20__ года.

 

 

 

 

 

 

Рецензент

проф., д.т.н. Е.Н.Турута

2

ВВЕДЕНИЕ

Дисциплина “Операционные системы” занимает одно из центральных мест в цикле общепрофессиональных дисциплин, определяющих уровень подготовки бакалавров по направлениям подготовки

09.03.01 – Информатика и вычислительная техника, 09.03.02 –

Информационные системы и технологии, 02.03.02 – Фундаментальная информатика и информационные технологии.

Согласно п. 42 Типового положения об образовательном учреждении высшего профессионального образования, утвержденного Постановлением Правительства Российской Федерации от 14 февраля 2008г. №71, курсовая работа по дисциплине является одним из основных видов учебных занятий и формой контроля учебной работы студентов.

Выполнение и защита курсовой работы имеют целью привить навыки самостоятельной работы, выявить знания студентов по данной дисциплине и умение применять эти знания в практической работе. В процессе выполнения курсовой работы студент должен самостоятельно работать с учебной и научно-технической литературой, проявить умение обобщать полученные знания, делать обоснованные выводы, формулировать рекомендации по выбору средств для решения поставленной задачи, продемонстрировать навыки использования систем программирования и применения функций прикладного программного интерфейса для создания программного обеспечения.

1. ЦЕЛИ И ЗАДАЧИ ВЫПОЛНЕНИЯ КУРСОВОЙ РАБОТЫ

Целью данной курсовой работы является закрепление и углубление теоретических знаний в области современных операционных систем,

приобретение практических навыков разработки клиент-серверных

3

приложений, использующих стандартные механизмы межпроцессного

взаимодействия.

Задачи курсовой работы:

1.Изучить методы разработки клиент-серверных приложений.

2.Изучить механизмы обмена данными в Windows NT и особенности их применения на практике.

3.Изучить средства синхронизации процессов в Windows NT и особенности их применения на практике.

4.Изучить функции Win32 API для получения системной информации, информации о процессах и потоках, состоянии памяти.

5.Разработать серверные приложения и приложение-клиент, обменивающиеся данными через заданный интерфейс.

6.Оформить результаты выполнения курсовой работы в виде пояснительной записки в соответствии с предъявляемыми требованиями.

2. ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ

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

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

Таблица 1. Индивидуальные варианты заданий

Способ

Процесс 1

Процесс 2

вар.

коммуникации

определяет и передает

определяет и передает

 

 

 

 

1

2

3

4

1, 25

отображение

- имя компьютера, имя

- процент используемой

файлов

пользователя;

физической памяти;

 

2, 26

почтовые ящики

- версию

- процент используемой

 

операционной

виртуальной памяти

 

 

3, 27

каналы

системы

 

4, 28

сокеты

 

 

 

5, 29

отображение

- системные цвета (для

- идентификатор

файлов

2-3-х элементов);

текущего процесса;

 

 

 

4

 

6, 30

почтовые ящики

- код раскладки

- дескриптор текущего

7, 31

каналы

клавиатуры

процесса

 

 

8, 32

сокеты

 

 

9, 33

отображение

- текущее местное

- приоритеты

 

файлов

время

клиентского и

10, 34

почтовые ящики

- продолжительность

серверных

11, 35

каналы

текущего сеанса

процессов;

12

сокеты

работы

- дельта-приоритеты их

 

 

потоков

 

 

 

 

 

 

Продолжение таблицы 1

1

2

3

4

 

 

 

 

13

отображение

- количество клавиш

- размер файла

файлов

мыши;

подкачки в байтах;

 

 

 

- наличие колеса

- количество свободных

14

почтовые ящики

прокрутки

байтов файла подкачки

15

каналы

 

 

 

 

 

 

16

сокеты

 

 

17

отображение

- ширину и высоту

-количество потоков

файлов

рамки окна;

серверных и

 

18

почтовые ящики

- ширину и высоту

клиентского процессов;

19

каналы

экрана

- количество модулей

20

сокеты

 

серверного и

 

клиентских процессов

 

 

 

21

отображение

- код последней

- полное имя модуля

 

файлов

ошибки;

текущего процесса;

22

почтовые ящики

- текущее положение

- идентификаторы

 

 

каретки

серверных и

23

каналы

24

сокеты

 

клиентских процессов

 

 

 

 

3. МЕТОДИЧЕСКИЕ УКАЗАНИЯ

3.1 Общие замечания

Приложение создается на основе технологии «клиент-сервер» средствами интегрированных сред разработки Visual C++, C++ Builder, по согласованию с преподавателем возможно использование других компиляторов. Процессы 1 и 2 выступают как серверы приложений, третий процесс является их клиентом. Наличие еще одного процесса, выполняющего вспомогательные функции (индикация имен запущенных серверов, ведение дневника и т.п.) приветствуется, но необязательно.

5

Минимальный функционал клиента:

-создание заданного средства коммуникации;

-получение данных от серверов;

-вывод полученных данных на экран.

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

И клиентский, и серверные процессы оформляются как отдельные приложения. В большинстве вариантов заданий требуется синхронизация процессов. Выбор средства синхронизации должен быть обоснован.

Настоящая курсовая работа является обобщением цикла лабораторных работ, выполняемых студентами в течение семестра в рамках изучения дисциплины «Операционные системы». Методические указания к выполнению лабораторных работ содержат исчерпывающую информацию (теоритические сведения, функции Win32API, примеры кода) по всем аспектам выполнения курсовой работы. Использование функций получения системной информации (работа первого сервера) подробно рассмотрено в методических указаниях к лабораторной работе №1, функции для работы с процессами и потоками, исследования памяти (работа второго сервера) – в лабораторных работах № 2 и 5, системные средства синхронизации процессов – в лабораторной работе № 3, средства передачи данных между процессами – в лабораторной работе № 4.

3.2 Порядок выполнения курсовой работы

Курсовая работа предназначена для самостоятельного практического закрепления материала и выполняется в несколько этапов.

Подготовительный этап. Уточнение постановки задачи. Аналитический обзор научно-технической литературы.

6

Проектный этап. Разработка алгоритмов работы приложения.

Обоснование необходимости и выбор средства синхронизации.

Реализационный этап. Реализация разработанных алгоритмов средствами выбранного языка программирования, окончательная отладка программ, получение и анализ результатов.

Оформительский этап. Оформление пояснительной записки в соответствии с требованиями пунктов 3.3 и 3.4 настоящих методических указаний.

Заключительный этап. Защита курсовой работы.

3.3 Структура и примерное содержание пояснительной записки

Пояснительная записка к курсовой работе должна включать в себя

следующие структурные элементы в указанной ниже последовательности:

титульный лист (Приложение 1);

задание на курсовую работу;

содержание;

введение, в котором раскрываются актуальность и значение темы,

формулируется цель работы;

основная часть:

o постановка задачи;

o краткие теоретические основы разрабатываемой темы (суть,

область применения, достоинства и недостатки вычислительной архитектуры «клиент-сервер»; обзор системных средств коммуникации и синхронизации процессов);

o разработка и описание алгоритма работы приложения;

o описание cтруктуры программы (модулей, основных функций,

классов и т.д.);

o руководство пользователя;

o результаты применения программы в виде снимков экрана после запуска приложения (пример для консольного приложения

7

приведен на рис. 1, на рис. 2 – пример для приложения с

оконным интерфейсом);

заключение;

список использованных источников;

приложение, содержащее исходные коды разработанных программ с необходимыми комментариями.

Рис. 1.

8

Рис. 2.

3.4 Требования к оформлению пояснительной записки

Пояснительная записка к курсовой работе выполняется на стандартных листах бумаги формата А4, сброшюрованных в папку. Текст печатается на одной стороне листа. Поля: левое поле - 35 мм, правое – 10 мм, верхнее и нижнее – 20 мм. Примерное количество знаков на странице – 2000. Шрифт

Times New Roman размером 12, межстрочный интервал 1,5. Страницы текста и рисунки имеют сквозную нумерацию. Первой страницей является титульный лист, на котором номер страницы не проставляется.

3.5 Защита курсовой работы

Защита курсовой работы является заключительным этапом курсового проектирования и проводится не позднее середины последней недели перед началом сессии.

Выполненная курсовая работа в бумажной или электронной форме сдается на проверку руководителю проектирования. Руководитель вносит в

9

текст свои замечания по работе, принимает решение о допуске к защите или возвращает работу на доработку с указанием причин.

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

В результате защиты курсовая работа, согласно Положению о промежуточной аттестации студентов МТУСИ, оценивается дифференцированной отметкой («неудовлетворительно», «удовлетворительно», «хорошо», «отлично»).

Студенты, не защитившие курсовую работу, до экзамена по дисциплине "Операционные системы" не допускаются.

4. СПИСОК РЕКОМЕНДОВАННОЙ ЛИТЕРАТУРЫ

Основная:

1.В.Г.Олифер, Н.А.Олифер. Сетевые операционные системы. – СПб.:

Питер, 2009

2.Э.Таненбаум. Современные операционные системы. 3-изд. – СПб.:

Питер, 2011

3.М. Руссинович, Д. Соломон. Внутреннее устройство Microsoft Windows: Windows Server 2003, Windows XP и Windows 2000. - СПб.:

Питер, 2008

4.Джеффри Рихтер, Кристоф Назар. Windows via C/C++. – M.:Издательство «Русская редакция»; СПб.: Питер, 2009

5.http://msdn.microsoft.com

6.Л. Басс, П. Клементс, Р. Кацман. Архитектура программного обеспечения на практике. СПб.: Питер», 2006 г.

10