Смекни!
smekni.com

Применение моделирования для обучения в области компьютерных наук (стр. 1 из 3)

Р. П. Романски

Технический Университет, София, Болгария

Введение

Для развития компьютерной техники и совершенствования архитектурной организации компьютерных систем (КС) необходимо непрерывное обучение и самосовершенствование компьютерных специалистов и студентов. При проведении этого обучения надо комбинировать формы традиционного обучения с возможностями самостоятльной подготовки, дистанционного обучения, практической разработки проектов и реализации экспериментов исследования [Butler, 2001; Ibbett, 2002; Lilja, 2001]. Существенная роль при обучении в области компьютерных наук выпольняет применение современных методов изучения архитектурной организации и анализа системной производительности КС [Lilja, 2001]. В этом смысле, применение методов моделирования в процессе изучения базовых структур различных КС и организации компьютерных процессов позволяет разработать подходящее математическое описание исследуемого объекта и создать программное обеспечение для выполнения компьютерных экспериментов [Романски, 2001, Arons, 2000]. Анализ экспериментальных результатов моделирования [Брююль, 2002] позволяет оценить основные характеристики системы и производительность изучаемых КС.

Применение моделирования в процессе изучения КС позволяет исследовать особенности архитектуры и организацию вычисления и управления. Это можно осуществить на основе модельного эксперимента, организация которого предполагает проектирование компьютерной модели как последовательности трех компонентов (концептуальная модель, математическая модель, програмная модель) и реализации этой модели в подходящей операционной среде. В настоящей работе рассматривается вожможность применения разных методов исследования КС в процессе их изучения и в частности применение принципов моделирования для исследования протекающих процессов, а также анализ системной производительности КС. Основная цель состоит в определении обобщенной процедуры компьютерного моделирования как последовательность взаимосвязанных этапов и представлении основных стадий методологии модельного исследования. Для этого в следующей части представлены общая формализация компьютерной обработки информации и особенности компьютерных вычислений в качестве объекта изучения. Применение принципов моделирования в процессе изучения КС связано с методологической организацией обучения в традиционном, дистанционном, либо распределенном смысле [Crosbie, 2000; Lilja, 2001; Romansky, 2002; Ye, 2002].

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

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

Рис. 1. Информационное поддерживание компьютерной обработки.

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

математическое преобразование информации - реальная обработка данных в виде математических объектов и представляется обобщенной функцией f:D®R, которая изображает елементы множества данных D в елементах множества результатов R;

компьютерная реализация обработки - представляет конкретную реализацию f*:X®Y математической функции f в зависимости от компьютерного и программного оборудования на базе подходящего физического представления реальных информационных объектов.

В результате можно записать обобщенную функциональную модель компьютерной обработки r = f(d)ºj2{f*[ 1(d)]}, где функции j1 и j2 являются вспомогательными для кодирования и декодирования информации.

Рассматривая КС как объект изучения, надо иметь ввиду, что компьютерная обработка состоит из процессов, каждый из которых можно представить в виде структуры I = <t, A, T> , где: t - начальный момент возникания процесса; A - дефинирующие атрибуты; T - трасса процесса. Последний компонент формального описания определяет временную последовательность событий e j для обращения данного процесса к елементам системного ресурса S={S1, S2, …, Sn}. Последовательность времевых этапов и нагрузка системного ресурса позволяют определить профиль процесса вычисления (рис. 2).

Рис. 2. Примерный профиль компьютерного процесса.

Поддерживание разных процессов при организации компьютерной обработки формирует системную нагрузку компьютерной среды. Для каждого момента ( t =1,2,...) ее можно представить вектором V(t)=Vt=<v1, v2, .... , vn>, элементы которого выражают свободное (vj=0) или занятое (vj=1) устройство SjєS ( j=1,2,...,n).

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

Типичный курс обучения в области анализа и исследования производительности КС должен обсуждать основные теоретические и практические проблемы в следующих направлениях:

возможности исследования производительности компьютерного оборудование и эффективности компьютерных процессов;

применение эффективных методов исследования (измерение, моделирование);

технологические особенности измерения параметров системы (benchmark, monitoring);

технологические особенности и организация моделирования (аналитическое, симуляционное и др.);

методы анализа экспериментальных результатов.

Все это связано с применением данного метода исследования и выбором подходящего инструментария. В этом смысле на рис. 3 представлена примерная классификация методов исследования КС и процессов. Можно определить три основные группы:

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

Методы подсчета - позволяют получить достоверную информацию о протекании компьютерных процессов на основе непосредственной регистрации определенных значений доступных параметров КС [Fabre, 2002; Pandey, 2003]. Для этого необходимо использовать или разработать подходящее средство подсчета (монитор) и организовать выполнение эксперимента по подсчету. Надо отметить, что современные операционные системы имеют собственные системные мониторы, которые можно использовать на программном или микропрограммном уровне.

Методы моделирования - применяются в том случае, когда отсуствует реальный объект эксперимента. Исследование структуры или протекающих процессов в КС осуществляется на базе компьютерной модели. Она отражает самые важные аспекты поведения структурных и системных параметров в зависимости от поставленной цели. Для разработки модели надо выбрать самый подходящий метод моделирования, позволяющий получить максимальную адекватность и достоверность [Crosbie, 2000; Sargent, 2003; Ye, 2002].

Рис. 3. Классификация методов исследвания КС и процессов.

Традиционный процесс обучения предполагает проведение основного курса лекций совместно с набором аудиторных упражнений и/или лабораторным практикумом. В области компьютерных наук при изучении организации КС и принципов управления компьютерными процессами (на низком и на высоком уровне), а также при анализе системной производительности, часто возникает необходимость в разработке компьютерных моделей во время выполнения лабораторных задач в классе или при самостоятельной реализации проектов. Для удачного выполнения этих практических работ и для получения нужных практических умений необходимо определить последовательность этапов и представить технологические особенности разработки моделей. Это позволит обучаемым приобрести необходимые знания о разработке адекватных и достоверных компьютерных моделей исследования, оценки и сравнительного анализа системной производительности разных компьютерных архитектур. В результате этого далее предложена обобщенная процедура проведения моделирования, а также методологическая схема модельного исследования КС и процессов.

Процедура компьютерного моделирования при исследовании КС и процессов

Основная задача компьютерного моделирования при исследовании КС и процессов заключается в получении информации об индексах производительности. Планирование модельного эксперимента в процессе обучения осущевляется на основе следующих этапов: