Главная страница 1
скачать файл


УДК 004.4(06) Технологии разработки программных систем

А.П. ЕРОПКИН

Научный руководитель – С.В. СИНИЦЫН, к.т.н., доцент



Национальный исследовательский ядерный университет «МИФИ»
ИСПОЛЬЗОВАНИЕ ЭМУЛЯТОРА МЕЖПРОЦЕССНЫХ МЕХАНИЗМОВ В ОБУЧЕНИИ
Рассматривается эмулятор межпроцесснных механизмов IPC ядра Linux и его применение в обучающем процессе.
Очереди сообщений являются одним из трех механизмов IPC (Inter Process Communication – Межпроцессное взаимодействие). Очереди сообщений впервые появились в UNIX System V и предназначаются для асинхронной передачи сообщений между процессами.

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

Минусами данных работ является то, что студенты работают с объектами ядра, что влечет за собой опасность нарушения нормальной работы лабораторного комплекса, вплоть до полного зависания всей системы, что усугубляется при использовании терминального доступа к общему серверу. Кроме того преподаватель уделяет достаточно много времени принятию выполненного задания, поскольку проверяет не только общую работоспособность программы, но и ключевые элементы исходного кода.

В результате анализа потребностей лабораторных работ был спроектирован и реализован эмулятор, обладающий следующими свойствами:



  1. ошибки, возникающие в процессе работы программы, не оказывают влияния на ОС;

  2. используемые функции и их параметры аналогичны реальным функциям за исключением случаев упрощения;

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

  4. возможность работы как в ОС GNU/Linux, так и ОС Windows, т.к. все функции реализованы на языке С с использованием стандартной библиотеки, присутствующей в реализации компилятора на всех платформах.

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

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

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

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

Основные функции, реализованные в эмуляторе:


  1. int Lab_fork – функция создания процесса;

  2. int Lab_msgget – функция создания и инициализации новой очереди сообщений;

  3. int Lab_msgrcv – функция чтения сообщения из очереди;

  4. int Lab_msgsnd – функция отсылки сообщения в очередь.

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

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


Список литературы
1. Стивенс У. “UNIX: взаимодействие процессов” – Питер, 2002, 576 с.

2.. Налютин Н.Лабораторные работы по информатике в МИФИ по курсу “Операционные системы”.




скачать файл



Смотрите также:
Использование эмулятора межпроцессных механизмов в обучении
29.16kb.
Кафедра технической механики
1287.6kb.
Программа молдо российского экономического форума место проведения Leogrand
130.11kb.
Использование кинофильмов при обучении иностранному языку имеет отличительную черту органическое и методически обоснованное соединение зрительного и слухового ряда
47.24kb.
Дидактические возможности свободно распространяемых программных средств в инернет-обучении
81.81kb.
Консультация Использование дидактических упражнений при формировании навыков звукового анализа у детей дошкольного возраста с нарушениями речи
72.55kb.
Использование проблемного вопроса, использование проблемной ситуации, использование проблемного урока
70.66kb.
Исследование грейферных механизмов методические указания по выполнению курсовой работы для студентов специальности 190100 "Приборостроение"
323.47kb.
3 (41) 2011 применение математических моделей электроэнергетических объектов при обучении операторов на компьютерных тренажерах
772.27kb.
Вопросы активизации познавательной деятельности учащихся относятся к числу наиболее актуальных проблем современной педагогической науки и практики. Реализация принципа активности в обучении имеет большое значение, т к
120.29kb.
Талашкинские краски использование
277.41kb.
Неуспешность в обучении: природные и социальные факторы и пути коррекции М. Староверова
59.37kb.