Лабораторная работа № 2. Создание простейшего распределённого приложения для математических расчётов на основе технологии. Net remoting 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Лабораторная работа № 2. Создание простейшего распределённого приложения для математических расчётов на основе технологии. Net remoting



Цель: использование технологии.NET Remoting при разработке распределённых приложений обработки данных

 

Краткие теоретические сведения

 

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

Разработанный программный комплекс должен состоять из Сервера и Клиента.

Функции сервера: хранение удалённого объекта, предоставляющего доступ к заданиям для обработки и результату обработки.

Предусмотреть на сервере возможность одновременного доступа к критической

секции кода нескольких клиентов (с помощью оператора lock). Критическая секция кода - та, к которой гипотетически одновременно могут обратиться

несколько клиентов.

Функции клиента (на сервере хранится список клиентов - эта функция уже предусмотрена исходным кодом библиотеки RemoteBase):

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

1.1) формирование и ведение списка заданий (под ведением понимается удаление уже обработанных и предоставление клиенту задания по запросу);

1.2) получение, объединение и вывод результатов вычислений (результаты вычислений должны выводиться в каждом клиенте, для этого необходимо проверять окончание обработки всех данных по таймеру; объединение

результатов вычисление также можно реализовать с использованием таймера);

1.3) устанавливает флаг того, что управляющий клиент назначен, на сервере сохраняется идентификатор клиента;

2) вычислительные функции

2.1) запрос задания с сервера (клиент должен запросить задание только после того, как эти задания были сформированы);

2.2) обработка данных;

2.3) отправка результатов обработки на сервер.

Требования к системе:

1) предусмотреть возможность отключения одного из клиентов, получившего задание на обработку.

 

Задание на лабораторную работу

 

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

2. Выполнить вариант задания, выданный преподавателем;

3. Подготовить отчёт по лабораторной работе;

4. Подготовить ответы на контрольные вопросы.

 

Варианты заданий

 

Разработать распределённую систему, выполняющую решение задачи в соответствии с вариантом.

Пояснение задания
  Разработать алгоритм вычисления скалярного произведения векторов a и b:
  Разработать алгоритм поиска среднего значения массива a:
  Разработать алгоритм поиска максимального и минимального значения массива a: ,
  Разработать алгоритм вычисления массива значений синуса:
Используемые обозначения: a, b – нижний и верхний пределы интегрирования, 2× N – число равных частей на которые делится отрезок [ a; b ], h – шаг
  Разработать алгоритм вычисления значения определённого интеграла с использованием метода трапеций:
  Разработать алгоритм вычисления значения определённого интеграла с использованием метода парабол (метод Симпсона). Разбив интервал интегрирования на 2× N равных частей, приближённое значение интеграла можно вычислить следующим образом:
  Разработать алгоритм вычисления значения определённого интеграла с использованием метода прямоугольников:
  Разработать алгоритм вычисления значения числа p на основе метода прямоугольников:
  Разработать алгоритм умножения матрицы a (m × n элементов) на вектор b (n элементов) по следующей формуле: . При разработке параллельного алгоритма необходимо учитывать, что значение i-го элемента вектора c не зависит от значений других элементов вектора
  Разработать алгоритм умножения матрицы a (m × n элементов) на матрицу b (n × l элементов) по следующей формуле:
  Разработать алгоритм сортировки массива чисел слиянием
  Разработать алгоритм сортировки массива чисел методом Шелла
  Разработать алгоритм сортировки массива чисел методом пузырька
  Разработать алгоритм быстрой сортировки массива чисел
  Разработка алгоритма вычисления суммы двух матриц
  Разработка алгоритма вычисления суммы элементов массива
  Разработка алгоритма вычисления произведения матрицы и вектора
  Разработать алгоритм вычисления значения определённого интеграла с использованием метода Монте-Карло
  Разработать алгоритм вычисления значения определённого интеграла с использованием метода геометрического метода Монте-Карло

 

Интегралы для вычислений.

 

     
     
     
     
     
     
     
     
     

 

Контрольные вопросы

 

1. Опишите назначение функции ChannelServices.RegisterChannel;

2. Опишите назначение функции Activator.GetObject;

3. Опишите структуру класса TcpClientChannel;

4. Опишите назначение функции RemotingConfiguration.RegisterWellKnownServiceType;

5. Опишите структуру WellKnownObjectMode.

 



Поделиться:


Последнее изменение этой страницы: 2016-04-26; просмотров: 456; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.159.195 (0.012 с.)