- •Архитектуры вычислительных систем
- •Нейрокомпьютерные системы
- •2 Нейронные сети обратного распространения с непрерывной функцией активации: архитектура, алгоритмы обучения, применение.
- •3 Конструируемые нейронные сети с конкурирующими нейронами: архитектура, применение.
- •4. Обучаемые нейронные сети с конкурирующими нейронами: архитектура, алгоритмы обучения, применение.
- •Базы данных
- •1 Понятие «базы данных». Основные компоненты базы данных.
- •2 Архитектура системы баз данных.
- •3 Нормальные формы БД. Нормализация данных.
- •4 Язык SQL для работы с реляционными базами данных.
- •5 Хранимые процедуры, триггеры, транзакции.
- •Системы поддержки принятия решений
- •1 Сравнительный анализ парадигм исследования операций и принятия решений. Классификация типов проблем по Г. Саймону.
- •2 Основные элементы многокритериальной задачи принятия решения. Выявление цели и определение типа задачи. Формирование множества альтернатив, критериев, шкал.
- •Структуры данных
- •1 Временная сложность алгоритма. Сравнительный анализ алгоритмов поиска.
- •Алгоритмы поиска в неупорядоченных массивах
- •Алгоритмы поиска в упорядоченных массивах
- •Анализ алгоритма блочного поиска
- •Сортировка Шелла
- •Пирамидальная сортировка
- •Анализ пирамидальной сортировки
- •Улучшенная сортировка обменом 1
- •Анализ улучшенной сортировки обменом 1
- •Улучшенная сортировка обменом 2
- •Анализ улучшенной сортировки обменом 2
- •Анализ улучшенной сортировки обменом 2 аналогичен анали-зу улучшенной сортировки обменом 1. Порядок функций ВС этих алгоритмов в лучшем и худшем случаях одинаковый.
- •Алгоритм быстрой обменной сортировки
- •7 Структуры данных типа граф. Представление графов в памяти. Алгоритмы прохождения в «глубину» и в «ширину». Топологическая сортировка. Матрица достижимости.
- •Технология разработки программного обеспечения
- •1 Технология разработки программного обеспечения. Основные этапы на примере классического жизненного цикла.
- •2 Описание технического задания по ГОСТ.
- •3 Паттерны проектирования. Формат описания.
- •Описание паттернов.
- •Результаты применения паттернов:
- •4 Кодирование. Стандарты на кодирование. Кодирование и проектирование. Исходный код как главный проектный документ.
- •5 Рефакторинг. Цели, описание, примеры.
- •6 Системы управления версиями. Использование в проектах.
- •7 Тестирование. Виды тестирования. Разработка через тестирование.
- •Человеко-машинное взаимодействие
- •2 Применение метафор, идиом, аффордансов и стандартов в пользовательском интерфейсе. Основные принципы. Примеры.
- •4 Основные элементы пользовательского интерфейса и удобство их использования. Особенности. Рекомендации.
- •Теория языков программирования
- •3 Регулярные языки и конечные распознаватели. Использование конечных распознавателей в трансляторах.
- •4 Лексические анализаторы. Основные функции, проектирование и методы программной реализации.
- •5 Нисходящий анализ методом рекурсивного спуска.
- •6 Транслирующие грамматики. Построение нисходящих МП-трансляторов.
- •7 Грамматики польского перевода. Построение восходящих МП-трансляторов.
- •Теория вычислительных процессов
- •1 Автоматы Мили и Мура. Трансформация автоматов. Эквивалентность и минимизация.
- •2 Функциональная эквивалентность, логико-термальная эквивалентность и изоморфизм стандартных схем программ.
- •3 Стандартные и рекурсивные схемы программ. Алгоритмы трансляции.
- •4 Анализ сетей Петри с использованием дерева достижимости и матричных уравнений.
- •Объектно-ориентированное программирование
- •5 Общая характеристика классов в объектно-ориентированном программировании. Особенности реализации классов в различных объектно-ориентированных языках программирования.
- •Сети ЭВМ и телекоммуникации
- •1 Каналы передачи данных. Физический канал. Логический канал. Понятие блока данных. Пример формата блока данных любого протокола.
- •2 Структуризация сетей. Понятие и характеристики основных сетевых топологий. Структурообразующие аппаратные средства и программное обеспечение.
- •4 Характеристика протоколов IP, TCP, ARP, ICMP, POP3, SMTP.
Архитектуры вычислительных систем
1Понятие Архитектуры ВС и общие требования предъявляемые к ней. Фон-
Неймановская архитектура.
Вычислительная машина – комплекс технических и программных средств, предназначенный для автоматической подготовки и решения задач пользователя.
Вычислительная система – совокупность взаимосвязанных процессоров, вычислительных машин, периферийного оборудования и ПО.
Основной отличительной чертой вычислительных систем является наличие в ней средств, реализующих параллельную обработку за счет построения параллельных ветвей вычисления.
Различия между вычислительной системой и вычислительной машиной не могут быть точно определены, так как даже вычислительные машины с 1 процессором имеют различные средства распараллеливания, а так же традиционные системы могут состоять из традиционных вычислительных машин.
АВС – описание некоторых вычислительных систем на общем уровне, включающее описание пользовательского языка программирования, системы команд и пользовательского интерфейса, организация памяти и систем адресации, операции вводавывода и управления.
Архитектура ВС определяет основные функциональные возможности системы, сферу применения (научно техническая, экономическая, управление и т. д.), режим работы (пакетный, мультипрограммный, разделения времени, диалоговый и т. д.), характеризует параметры ВС (быстродействие, набор и объем памяти, набор периферийных устройств и т. д.), особенности структуры (одно , многопроцессорная) и т. д. Составные части понятия "архитектура" можно определить следующей схемой:
Общие требования
1.Отношение стоимость/производительность
2.Надежность и отказоустойчивость.
Повышение надежности основано на принципе предотвращения неисправностей путем снижения интенсивности отказов и сбоев за счет применения электронных схем и компонентов с высокой и сверхвысокой степенью интеграции, снижения уровня помех, облегченных режимов работы схем, обеспечение тепловых режимов их работы, а также за счет совершенствования методов сборки аппаратуры.
Отказоустойчивость - это такое свойство вычислительной системы, которое обеспечивает ей, как логической машине, возможность продолжения действий, заданных программой, после возникновения неисправностей. Введение отказоустойчивости требует избыточного аппаратного и программного обеспечения.
3. Масштабируемость.
Масштабируемость представляет собой возможность наращивания числа и мощности процессоров, объемов оперативной и внешней памяти и других ресурсов вычислительной системы.
Масштабируемость должна обеспечиваться архитектурой и конструкцией компьютера, а также соответствующими средствами программного обеспечения. Добавление каждого нового процессора в действительно масштабируемой системе должно давать прогнозируемое увеличение производительности и пропускной способности при приемлемых затратах.
4. Совместимость и мобильность программного обеспечения
Основная задача при проектировании совместимых систем заключалась в создании такой архитектуры, которая была бы одинаковой с точки зрения пользователя для всех моделей системы независимо от цены и производительности каждой из них.
Совместимость позволяет сохранять существующий задел программного обеспечения при переходе на новые (как правило, более производительные) модели. Следует заметить однако, что со временем даже самая передовая архитектура неизбежно устаревает и возникает потребность внесения радикальных изменений архитектуру и способы организации вычислительных систем.
Архитектура Джона Фон Неймана.
УП - управление памятью
УУ - устройство управления
В основу этой модели положено 2 принципа:
1Структурный
2Функциональный
Структурный – вычислительная машина состоит из представленных элементов.
Функциональный:
1ВС состоит из вышеперечисленных устройств с соответствующими функциями.
2Программы и данные хранятся в одной и той же памяти, имеющей линейную структуру.
3Устройство управления и АЛУ обычно объединяются в ЦП, в котором УУ решает, какие действия выполнить АЛУ. Такое определение действий происходит путем выделение памяти и считыванием команд из выбранной ячейки.
4ЦП содержит внутреннюю память в виде накоплений, т.е. очередь команд и другая очередь в виде разнообразных регистров.
Программа для Фон-Неймановской машины состоит из последовательности команд, которые проверяются одна за другой и выполняются. Адрес очередной ячейки памяти, из которой следует брать команду, хранится в счетчике команд в специальном регистре счетчика процессора.