Программа вступительного экзамена по специальности 05. 13. 11 Математическое и программное обеспечение вычислительных

Вид материалаПрограмма

Содержание


2. Операционные системы.
3. Системы программирования.
4. Теория и практика проектирования ПО.
5. Технология программирования.
6. Системы управления базами данных.
7. Сетевые технологии обработки данных.
8. Параллельная и распределенная обработка данных.
9. Экспертные системы.
Подобный материал:

ПРОГРАММА
ВСТУПИТЕЛЬНОГО ЭКЗАМЕНА ПО СПЕЦИАЛЬНОСТИ 05.13.11
"МАТЕМАТИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ВЫЧИСЛИТЕЛЬНЫХ

МАШИН, КОМПЛЕКСОВ И КОМПЬЮТЕРНЫХ СЕТЕЙ"


1. Основы теории компьютеров.
Логические основы.

Определение логической переменной и логической функции.

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

Эквивалентность и ее примеры.

Основные законы алгебры логики. Представление логических функций в базисе И, ИЛИ, НЕ. Нормальные и совершенные нормальные дизъюнктивные и конъюнктивные формы. Представление логических функций в базисе "И-НЕ" и "ИЛИ-НЕ".

Задачи анализа синтеза логических функций.

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


Арифметические основы

Системы счисления.

Выбор системы счисления. Способы представления чисел (с фиксированной и плавающей запятой) и их форматы. Зависимость полей форматов чисел от диапазона и точности представления чисел. Варианты представления порядков чисел с плавающей запятой.

Выполнение арифметических действий с фиксированной запятой.

Изображение отрицательных чисел в прямом, обратном, дополнительном кодах. Модифицированные коды. Алгебраическое суммирование чисел с фик­сированной запятой и использование обратного и дополнительного кодов.

Умножение чисел фиксированной запятой, заданных в прямом, дополнительном и обратных кодах.

Умножение правильных дробей, представленных в прямом, дополнительном, обратном кодах на 2 +-к. Деление чисел с фиксированной запятой, заданных в прямом, дополнительном кодах.

Выполнение арифметических операций с плавающей запятой при различных вариантах представления порядка.

Обоснование блокировок. Машинный нуль и бесконечность. Десятичные двоично-кодированные системы. Перевод чисел из десятичной системы в двоично-кодированную и обратно.

Методика выполнения алгебраического суммирования, умножения и деления в кодах 8421 и 9421+3.


Устройство компьютеров.

Архитектура однопрограммной ЭВМ,

Структура однопрограммной ЭВМ. Назначение и взаимосвязь ее основных устройств. Основные этапы выполнения команды. Машина фон Неймана. Машина Тьюринга.

Команда и ее формат. Взаимосвязь формата команды с параметрами компьютера. Основные способы адресации и их влияние на формат команды.

Цикл выполнения команды. Естественный и принудительный порядок выполнения программы. Взаимодействие основных устройств трехадресной ЭВМ при автоматическом выполнении команды.

Микропроцессор IBM PC, его основные блоки. Представление данных в IBM PC. Организация регистровой и оперативной памяти в ЮМ PC. Форматы команд и режимы адресации данных в IBM PC. Формирование эффективного и физического адреса в ЮМ PC при реальном режиме работы.

Запоминающие устройства. Назначение. Иерархия ЗУ. Построение ЗУ произвольной организации на интегральных микросхемах.

Устройство управления. Назначение. Принципы построения.

Взаимодействие основных устройств ЭВМ с архитектурой ЮМ PC при автоматическом выполнении команды.

Мультипрограммные ЭВМ.

Мультипрограммные ЭВМ и особенности их функционирования. Понятие процесса и ресурса в мультипрограммных ЭВМ. Дисциплины формирования и обслуживания очередей.

Система прерываний.

Страничная и сегментно-страничная организация памяти. Виртуальная память. Статическое и динамическое распределение памяти.

Организация ввода-вывода информации в мультипрограммных ЭВМ. Понятие интерфейса.

Защита информации в мультипрограммных ЭВМ.


2. Операционные системы.

Определение системного программного обеспечения (СПО). Операционная система как составная часть СПО. Определение и терминология операционных систем (ОС). Определение и разновидности вычислительных систем. Классификация и примеры. Функции ОС в вычислительных системах. Принципы построения современных ОС. Понятия процессов и ресурсов. Принципы управления процессами и ресурсами. Дисциплины распределения ресурсов. Данные, файлы, файловые системы. Интерфейс ОС - как средство управления процессами и ресурсами. Виды интерфейсов пользователя ОС: командный, программный, графический. Международные стандарты на интерфейсы пользователя: MSX, POSIX, WINDOWS, OS/390. Обзор распространенных операционных систем однопроцессорных и многопроцессорных вычислительных систем (мэйнфреймов). Два основных режима обработки вычислительных заданий: пакетный и диалоговый. Средства ОС обеспечения этих режимов.

Семейство операционных мобильных систем UNIX. Идеология UNIX. Состав и общие характеристики. Особенности UNIX как многопользовательской, многозадачной, сетевой операционной системы. Стандартизация и интеграция. Взаимодействие системных и прикладных процессов. Регистрация пользователей в системе. Иерархическая система файлов и каталогов. Особенности сетевых файловых систем UNIX. Команды обработки локальных каталогов и файлов. Защита файлов и управление правами доступа. Средства UNTX для создания, редактирования и обработки текстовых файлов. Выполнение прикладных программ в UNIX. Команды управления процессами. Связь между процессами. Коммуникационные средства UNIX. Встроенные сетевые средства UNIX. Базовые механизмы сетевых взаимодействий. Сетевые программные интерфейсы (API) в UNIX. Средства графического интерфейса пользователей. Особенности локальных и сетевых систем UNIX. Распределенные файловые системы. Принципы открытых систем.

Введение в интерпретатор и возможности оболочки shell. Разновидности и назначение интерпретаторов команд. Организация пакетного режима обработки заданий в ЮНИКС. Операторы языка shell. Shell - процедуры. Передача параметров процедуре. Вспомогательные команды. Переменные языка shell. Вычисление арифметических выражений. Проверка условий и организация циклов в shell - процедурах. Процедуры сложной структуры.

Задачи параллельного программирования многозадачных ОС. Проблемы критической области и взаимного исключения. Развитие методов решения задач взаимного исключения: примитивы нижнего уровня, семафоры, критические области, мониторы Хоара и др. Классические механизмы синхронизации параллельных процессов. Проблема тупиков. Способы и механизмы распознавания, предотвращения и выхода из тупиков.

Понятия и функции ядра многозадачной ОС. Развитие концепции ядра. Понятие микроядра. Принципы взаимодействия с ядром. Прерывания. Принципы обработки прерываний.

Операционная система новой технологии Windows 2000 (NT). Общие характеристики. Объекты и менеджер объектов. Понятие процесса в Windows 2000. Множественные прикладные среды. Управление виртуальной памятью. Поддержка мулътипроцессирования и переносимости. Подсистема ввода- вывода. Драйверы. Сетевые возможности. Сервер и редуктор, сетевые программные интерфейсы (API). Открытая архитектура сетевых средств.

Операционные системы мультипроцессорных и многомашинных вычислительных систем. Их основные особенности. Диспетчеризация ресурсов между процессами и процессорами. Организация параллельных процессов. Организация управления ресурсами и процессами средствами командного языка и каталогизированных процедур. Планирование заданий. Виртуализация ресурсов. Виртуальные операционные системы. Гостевые операционные системы.

3. Системы программирования.

Языки естественные и формальные. Грамматика языков, классификация по Хомскому.

Автоматные грамматики. Автоматы и языки. Конечные автоматы. Автоматы с магазинной памятью (МП). Характеристика КС-языков в терминах МП-автоматов. Детерминированные КС-языки.

Процедурно - и проблемно-ориентированные языки, особенности организации. Направление развития и совершенствования процедурно-ориентированных языков: динамическое порождение объектов, использование кластеров, усиление выразительных средств. Языки, ориентированные на параллельную и распределенную обработку. Языки с явным и неявным описанием параллельных процессов. Непроцедурные языки.

Языки ролевого типа, ориентированные на предоставление значений в виде фреймов. Языки визуального программирования. Концепции и возможности Visual С, Delphi, С, C++, Java. Проектирование ассемблера Структуры и форматы данных, таблицы и организация поиска в них. Типы сортировки. Одно- и много - просмотровая схемы.

Классификация трансляторов: компиляторы, интерпретаторы. Этапы трансляции: лексический, синтаксический, семантический анализ, оптимизация, генерация выходного текста, сборка.

Распознаватели, восходящие и нисходящие алгоритмы, сравнительная характеристика. Проблемы нисходящего разбора и методы решения. Организация нисходящего разбора без возвратов. Визы восходящих распознавателей. Простое и операторное предшествование.

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

Организация передачи параметров между программными модулями. Параметры явные и неявные. Общие поля памяти. Вызов по значению, по наименованию, по результату. Использование информационных адаптеров.

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

4. Теория и практика проектирования ПО.

Основные стадии и этапы проектирования программ и программной документации. Техническое задание. Эскизный, технический, рабочий проекты. Внедрение. Жизненный цикл ПО.

Методы проектирования ПО. Уровни абстракции, понятие виртуальной машины. Внешнее и внутреннее проектирование ПО. Проектирование взаимодействия с пользователем. Внешние спецификации. Проектирование архитектуры ПО. Средства спецификации в проектировании программы.

Проектирование структур данных. Уровни описания структур данных. Типы структур данных. Проектирование модулей. Спецификация модулей. Свойство модулей. Функционально- и информационно-прочные модули. Кластеры. Реентерабельность, рефрешерабельность, многократное использование.

Понятие рекурсии. Рекурсивные определения и рекурсивные программы. Свойства рекурсивных алгоритмов. Построение оверлейных программ.

Характеристики качества ПО. Показатели и модели надежности. Методы определения производительности программ. Верификация ПО.

Определение, назначение и классификация ППП. Представление предметных и проблемных областей в ППП. Семантические сети, вычислительные модели, фреймы. Типы структур ППП и их классификация. Средства взаимодействия пользователей с ППП. Входные языки. Планирование вычислительного процесса в ППП. Методы генерации рабочих программ. Связь разноязыковых модулей. Средства автоматизации построения ППП. Интегрированные системы.

5. Технология программирования.

Методы структурного программирования. Базовые структуры. Теорема о структурировании программ. Доказательство корректности структурирования программ. Технология структурного программирования.

Методы программирования, направленные на повышение качества ПО. Стиль программирования. Требования к оформлению листингов программ.

Отладка и тестирование программ. Методы отладки программ. Средства автоматизации отладки в языках программирования. Методы тестирования программ. Восходящее и нисходящее тестирование ПО. Тестирование модулей и программных комплексов. Функциональное и структурное тестирование. Метод обнаруживающих подобластей. Тестирование внешних спецификаций. Средства автоматизации процесса тестирования. Оценка полноты тестирования. Средства автоматизации технологии программирования. Организация работы коллективов программистов. Бригада главного программиста. Планирование производства ПО.


6. Системы управления базами данных.

Основные принципы построения, синтеза, управления базами данных. Сетевой, иерархический и реляционный подход. Требования к построению СУБД.

Языковые средства СУБД. Языки описания данных. Языки манипулирования данными. Методы организации системных управляющих структур СУБД.

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

Организация процессов обработки данных. Обеспечение мультидоступа в СУБД. Программные средства обеспечения секретности и защиты данных.

Методы организации физического хранения данных. Программная реализация методов доступа. Организация индексов. Алгоритм перемешивания. Инвертированные файлы.

Администратор базы данных. Программные средства ведения баз данных. Организация загрузки баз данных. Программные средства обеспечения надежности процессов обработки информации.

7. Сетевые технологии обработки данных.

Структура и функционирование клиентской части.

Аппаратура и программное обеспечение рабочих станций. Конфигурирование рабочих станций. Регистрация пользователей, защита на этапе регистрации.

Защита файловой системы.

Права доступа к файловой системе, виды прав, наследование прав, фильтры наследуемых прав.

Защита файловой системы с помощью атрибутов.

Виды атрибутов, их установка и снятие. Совместное использование прав доступа и атрибутов.

Управление сервером.

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

Сетевая печать.

Структура системы сетевой печати, очереди и серверы печати, сетевые принтеры. Операторы и пользователи системы печати. Установка и настройка сетевой печати.

Сценарии регистрации пользователей.

Типы сценариев, язык написания сценариев, разработка и отладка сценариев.

Меню пользователей.

Язык написания меню, создание и отладка меню.

Резервирование данных.

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

Инсталляция системных и прикладных сетевых систем.

Инсталляция рабочей станции и сервера. Установка и использование в сети прикладных систем.

8. Параллельная и распределенная обработка данных.

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

Синхронизация параллельных процессов. Проблема тупиков в параллельных системах. Классификация языков параллельного программирования. Языки Фортран-90, Оккам, Норма.

9. Экспертные системы.

Понятие базы знаний. Системы принятия решений. Машины логического вывода. Языки представления знаний.

ЛИТЕРАТУРА.

1. А.В. Афанасьев. Прикладная теория цифровых автоматов – Лабораторный практикум – пособие – ВТ НГТУ, 2002г.
  1. 681.3 П75 Самофалов К.Г. и др. Прикладная теория цифровых автоматов. – Киев: Высшая школа, 1987.
  2. Кузнецов Н. А. Методы анализа и синтеза модульных информационно-управляющих систем, 2002.
  3. 681.3 П62 Самофалов К.Г. и др. Прикладная теория цифровых автоматов. – Киев: Высшая школа, 1987.
  4. Гук Н.М. Аппаратные средства IBM PC: Энциклопедия: СПб: «Питер», 2005.
  5. Бутаков Е. А. Методы создания качественного программного обеспечения ЭВМ. – М.: Энергоатомиздат, 1984.

8. Липаев В.В. Надежность программных средств/СИНТЕГ. – М., 1998.

9. Информатика. Теория и практика структурного программирования: методическая разработка. – Новосибирск, изд-во НГТУ, 1999.

10. Требования и спецификации в разработке программ. – М.: Мир, 1984.
  1. Маккарти Д., Маккарти М. Правила разработки программного обеспечения. Пер. с англ. – Питер, 2007.
  2. Гусева А.И. Работа в локальных сетях NetWare 3.12-4.1. Учебник. – М.: Диалог-МИФИ, 1996, 288 с.
  3. X Фролов А.В., Фролов Г.В. Локальные сети персональных компьютеров. Монтаж сети, установка программного обеспечения. М: Диалог-МИФИ, 1993, 169 с.
  1. Фролов А.В., Фролов Г.В. Сети компьютеров в вашем офисе. – М.: ДИАЛОГ-МИФИ, 1995. – 272с.
  2. Лупин С.А., Посыпкин М.С. технологии параллельного программирования .– М.: ИНФРА-М, 2008.

17. СуперЭВМ. Аппаратная и программная реализация. Под ред. С. Фернбаха - Сб. Пер. с англ. Под ред. Головкина Б.А. – М. .Радио и связь, 1991.
  1. Кулаков Ю.А., Луцкий Г.М. Локальные сети. – К.: Юниор, 1998.-336 с.
  2. Казаков С.И. Основы сетевых технологий. Методическое пособие.- М.: Микроинформ, 1995. – 160 с.
  3. Олифер В.Г., Олифер Н.А. – Компьютерные сети. Принципы, технологии, протоколы. – СПб: Издательство "Питер", 2000. – 672с.
  1. Компьютерные сети. Учебный курс. – М.: Издательский отдел "Русская ре­дакция" ТОО "Channel Trading Ltd.", 1997. – 696 с.
  2. Д Стэн Шатт. Мир компьютерных сетей. К.: BHV, 1996. – 288 с.
  3. Челлис Д., Перкинс Ч., Стриб М. Основы построения сетей. Учебное руководство для специалистов MCSE. - М.: "ЛОРИ", 1997. - 326 с.
  4. Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем: Учебник для ВУЗов.- СПб.: «Питер». 2004.-672с.
  5. Кузьминов А.Ю. Интерфейс RS232. Связь между компьютером и микроконтроллером. – М.: «Радио и связь». 2004-168с.
  6. Антошина И.В., Котов Ю.Т. Микропроцессоры и микропроцессорные системы (аналитический обзор): Учебное пособие. - М.: МГУЛ, 2005. - 432 с.