
- •А. Аппаратное обеспечение компьютеров
- •1. Раздел "Основы теории компьютеров"
- •2. Минимизация булевых функций с помощью диаграмм Вейча.
- •3. Определение и применение базиса при построении произвольных функций алгебры-логики.
- •4. Сложение и вычитание чисел с фиксированной запятой.
- •5. Умножение чисел с плавающей запятой.
- •6. Форматы команд.
- •7. Схема выполнения машинной двухадресной команды типа "Регистр-память" на однопроцессорном компьютере.
- •8. Схема выполнения машинной двухадресной команды типа "Регистр-регистр" на однопроцессорном компьютере.
- •2. Раздел "Архитектура вычислительных систем"
- •1. Архитектура кэш-памяти. Ассоциативное распределение информации в кэш-памяти.
- •2. Архитектура кэш-памяти. Прямое распределение (отображение) информации в кэш-памяти.
- •3. Архитектура векторного блока супер-ЭВМ CYBER-205. Особенности её конвейеров, обеспечивающие механизм "зацепления команд".
- •4. Векторные процессоры: структура аппаратных средств.
- •5. Пять основных архитектур высокопроизводительных ВС, их краткая характеристика, примеры.
- •6. SMP архитектура. Достоинства и недостатки. Область применения, примеры ВС на SMP.
- •7. MPP архитектура. История развития. Основные принципы. Концепция, архитектура и характеристики суперкомпьютера Intel Paragon.
- •8. Кластерная архитектура. Проблема масштабируемости. Примеры.
- •10. Понятие конвейера. "Жадная" стратегия. Понятие MAL в теории конвейера.
- •3. Раздел "Схемотехника ЭВМ"
- •1. Этапы проектирования комбинационных схем на примере дешифратора на 4 выхода: определение, таблица истинности, функция, логическая схема. Увеличение разрядности до 16-ти выходов.
- •2. Этапы проектирования комбинационных схем на примере мультиплексора 4-1: определение, таблица истинности, функция, логическая схема. Увеличение разрядности до 16-1.
- •3. Этапы проектирования комбинационных схем на примере схем сравнения двухразрядных слов: определение, таблица истинности, функция, логическая схема. Схема сравнения четырёхразрядных слов на элементах "Исключающее ИЛИ".
- •6. Синтез многовыходных комбинационных схем. Этапы проектирования в базисе И-НЕ.
- •7. Триггерные схемы: определение, классификация, условные графические обозначения, динамические параметры. Обобщённая структура двухступенчатого триггера, диаграмма его работы, условное графическое обозначение, динамические параметры.
- •8. Синтез двухступенчатого триггера по заданной таблице внешних переходов: таблица истинности, минимизация, схема. Построить временную диаграмму для двух переключений триггера, определить максимальные задержки переключений.
- •9. Счётчики: определение, модуль счётчика, динамические параметры. Примеры суммирующего, вычитающего и реверсивного счётчиков: схемы, временные диаграммы.
- •10. Счётчики: определение, модуль счётчика. Организация цепей переноса: схемы, динамические параметры. (CP)
- •11. Синтез синхронных счётчиков с заданным модулем на заданном типе триггера (DV, JK).
- •Б. Программное обеспечение компьютеров
- •4. Раздел "Алгоритмы и структура данных"
- •1. Понятие логических структур данных. Отображение структуры данных в памяти вектором и списком. Типы списков. Определение, основные операции; особенности их реализации.
- •2. Стек и очередь: определение, основные операции. Особенности выполнений операций при реализации стека и очереди вектором.
- •3. Стек и очередь: определение, основные операции. Особенности выполнения операций при реализации стека и очереди списком.
- •4. Просматриваемая динамическая таблица-вектор: определение, основные операции, особенности их реализации.
- •5. Просматриваемая динамическая таблица-список: определение, основные операции, особенности их реализации.
- •6. Упорядоченная таблица-вектор: определение, основные операции, особенности их реализации.
- •7. Таблица произвольного доступа: определение, основные операции, отображение в памяти. Функция рандомизации, её назначение.
- •9. Перемешанная таблица, использующая перемешивание сложением: определение, основные операции, особенности их реализации.
- •10. Перемешанная таблица, использующая перемешивание сцеплением: определение, основные операции, особенности их реализации.
- •5. Раздел "Базы данных"
- •1. Системы с базами данных. Понятие системы управления базами данных СУБД. Функции СУБД.
- •2. Понятие независимости от данных. Трёхуровневая архитектура ANSI-SPARC. Сравнительная характеристика уровней.
- •3. Модель данных. Назначение моделей данных. Компоненты моделей данных. Классификация моделей данных.
- •5. База данных реляционного типа. Основные понятия и структура реляционной модели. Реляционные языки. Основные правила целостности реляционной модели.
- •6. Реляционная алгебра. Основные операции реляционной алгебры.
- •7. Язык SQL. Операторы определения и манипулирования данными. Выборка данных из таблиц.
- •8. Модель данных "сущность-связь". Основные концепции и способы их представления на диаграммах. Современные методологии построения моделей "сущность-связь".
- •9. Нормализация отношений. Цель нормализации. Приведение к нормальным формам.
- •10. Жизненный цикл приложения баз данных. Основные фазы проектирования базы данных.
- •6. Раздел "Операционные системы"
- •1. Файловые системы современных операционных систем. Интерфейс пользователя для работы с файловой системой.
- •2. Принцип защиты данных в операционных системах. Управление правами доступа к файлам.
- •3. Способы группирования команд в операционных системах. Командные файлы. Программные каналы, конвейеры команд.
- •4. Обзор возможностей командных процессоров (оболочек) операционных систем.
- •5. Принципы организации многозадачного режима в операционных системах.
- •6. Коммуникационные средства многопользовательских операционных систем.
- •7. Генерация, конфигурирование, настройка операционной системы на потребности конкретного пользователя.
- •8. Средства и способы обеспечения многопользовательского режима в операционных системах.
- •9. Понятие процесса. Управление процессами в операционной системе UNIX.
- •10. Понятие программного канала. Средства управления программными каналами.

полное представление требований к данным со стороны организации, которое не зависит от любых соображений относительно способа их хранения. Компоненты концептуального уровня:
•-Все объекты базы данных (сущности, атрибуты, связи)
•-Накладываемые на данные ограничения
•-Семантическая информация о данных
•-Информация о мерах обеспечения безопасности и поддержки целостности
данных Концептуальный уровень поддерживает каждое внешнее представление, в том смысле,
что любые доступные пользователям данные на внешнем уровне должны содержаться (или могут быть вычислены) на этом уровне. Однако этот уровень не содержит никаких сведений о методах хранения данных. Например, описание сущности должно содержать сведения о типах данных атрибутов (целый, символьный…) и их длине (количество значащих цифр или максимальное количество символов), но не должно включать сведения б организации хранения данных, например об объеме занятого пространства в байтах.
3) Внутренний уровень: физическое представление БД в компьютере. Этот уровень описывает, как информация хранится в БД.
Внутренний уровень описывает физическую реализацию БД и предназначен для достижения оптимальной производительности и обеспечения экономного использования дискового пространства. Он содержит описание структур данных и организации отдельных файлов, используемых для хранения данных в запоминающих устройствах. На этом уровне осуществляется взаимодействие СУБД с методами доступа ОС (вспомогательными функциями хранения и извлечения записей данных) с целью размещения данных на запоминающих устройствах, создания индексов, извлечения данных и.т.д. На внутреннем уровне хранится следующая информация:
•распределение дискового пространства для хранения данных и индексов
•описание подробностей сохранения записей (с указанием реальных размеров сохраняемых элементов данных)
•сведения о размещении записей
•сведения о сжатии данных и выбранных методах их шифрования
Ниже внутреннего уровня находится физический уровень, который контролируется операционной системой, но под руководством СУБД. Функции СУБД и ОС на физическом уровне не вполне четко разделены и могут варьироваться от системы к системе. В одних СУБД используется многие предусмотренные в данной ОС методы доступа, тогда как в других применяются только самые основные методы при этом реализована собственная файловая организация.
3. Модель данных. Назначение моделей данных. Компоненты моделей данных. Классификация моделей данных.
Модель данных – интегрированный набор понятий для описания данных, связей между ними и ограничений, накладываемых на данные в некоторой организации.
Назначение моделей данных:
Модель данных является представлением "реального мира" объектов и событий, а так же существующих между ними связей. Модель данных должна отражать основные
концепции, представления в таком виде, который позволит проектировщикам и пользователям базы данных обмениваться конкретными и недвусмысленными мнениями об их понимании роли тех или иных данных в этой организации.
Цель построения модели данных заключается в представлении данных в понятном виде.
Компоненты моделей данных:
1.Структурная часть: набор правил, по которым может быть построена база данных
2.Управляющая часть: определяет типы допустимых операций с данными (операции обновления и извлечения данных, операции изменения структуры базы данных)
3.Набор ограничений поддержки целостности данных : гарантирует корректность используемых данных
Классификация моделей данных:
Для отображения архитектуры ANSI-SPARC можно идентифицировать три связанные модели данных:
1.Внешняя модель данных, которая отображает представление каждого существующего в организации типа пользователей, которую иногда называют предметной областью (часть реального мира, представляющая интерес для данного исследования).
2.Концептуальная модель данных, которая отображает логическое (или обобщенное) представление о данных, не зависимое от типа выбранной СУБД.
3.Внутренняя модель данных отображает концептуальную схему определенным образом, понятным выбранной целевой СУБД.
Виды моделей данных:
1.объектные
2.модели данных на основе записей
3.физические
Возможно совмещение классификаций моделей данных:
1.Внешние и концептуальные модели данных:
1.1.Объектные модели (основные понятия - сущность, атрибут, связь). Предоставляет средства для указания логической структуры данных, представляют семантическую суть хранимой информации (позволяют указать ограничения для данных).
1.1.1.Модель данных сущность-связь (ER-модель)
1.1.2.Семантическая модель
1.1.3.Функциональная модель
1.1.4.Объектно-ориентированная модель (расширяет определение сущности, включая атрибуты и действия, связанные с объектом; описывает поведение объекта)
1.2.Модели данных на основе записей (записи фиксированного формата различных типов) - логические модели данных. Используются для определения общей структуры базы данных и высокоуровнего описания её реализации. Недостаток: не позволяют явно указать ограничения, накладываемые на данные.
1.2.1.Реляционная модель (построена на понятии математических отношений; связи представлены в виде таблиц)
1.2.2.Сетевая модель (данные представлены в виде коллекций записей, а связи в виде наборов; может быть представлена как граф с записями в виде узлов и наборами в виде рёбен)

1.2.3.Иерархическая модель (подтип сетевой модели; узел может иметь только одного родителя)
2.Внутренняя модель данных (информация о структуре записей, их упорядоченности
ипутях доступа):
2.1.Физическая модель данных
2.1.1.модель памяти кадров
2.1.2.обобщающая модель
4.Архитектура многопользовательской СУБД. Файловый сервер. Технология "Клиент-сервер".
Архитектура многопользовательской СУБД. Тенденция - децентрализация.
Виды архитектур:
1.Телеобработка (вся обработка ведётся в рамках единого компьютера, терминалы по сети посылают сообщения пользовательским приложениям). Наиболее древняя. Недостатки: высокая нагрузка на центральный компьютер, высокая нагрузка на сеть.
2.Файловый сервер. Пользовательские приложения и СУБД функционируют на рабочих станциях и обращаются к файловому серверу по мере необходимости доступа к нужным файлам. Файловый сервер работает как совместно используемый жёсткий диск. Недостатки: большой объём сетевого трафика, копия СУБД на каждой рабочей станции; усложняется управление параллельностью обращения, восстановлением и целостностью данных.
3.Клиент-сервер. Клиент управляет пользовательским интерфейсом, принимает от пользователя запрос к СУБД на языке манипулирования данными, ожидает ответа,
и формирует полученные данные для представления пользователю. Различают 2 вида клиентов:
3.1.Толстый клиент (целиком расположен на клиенте);
3.2.Тонкий клиент (на клиенте расположен только пользовательский интерфейс; часть обработки перенесена на сервер). Трёхуровневая архитектура СУБД: первый уровень отвечает за интерфейс, средний уровень управляет логикой приложения, третьим уровнем является сервер БД.
Технология "Клиент-сервер":
Функции клиента: В контексте базы данных клиент управляет пользовательским интерфейсом и логикой приложения, действуя, как сложная рабочая станция, на которой выполняется приложения баз данных.
•Клиент принимает от пользователя запрос, проверяет синтаксис и генерирует запрос к базе данных на языке ЯМД.
•Передает сообщение серверу, ожидает поступление ответа и форматирует полученные данные для представления их пользователю.
Функции сервера: Сервер принимает и обрабатывает запросы к базе данных, а затем передает полученные результаты обратно клиенту. Такая обработка включает:
•проверку полномочий клиента;
•обеспечение требований целостности;

•поддержку системного каталога;
•выполнение и обновление данных;
•управление параллельностью и восстановлением данных. Преимущества архитектуры "клиент-сервер":
1.Обеспечивает более широкий доступ к существующим базам данных
2.Повышается общая производительность системы. Поскольку клиенты и сервер находятся на разных компьютерах, их процессоры способны выполнять приложения параллельно. При этом настройка производительности компьютера с сервером упрощается, поскольку на нем выполняется только работа с базой данных.
3.Снижение стоимость аппаратного обеспечения снижается. Достаточно мощный компьютер с большим устройством хранения нужен только серверу - для хранения
иуправления базы данных.
4.Сокращается сетевой трафик. Приложения выполняют часть операций на клиентских и посылают через сеть только запросы к базе данных, что позволяет существенно сократить объем пересылаемых по сети данных.
5.Повышается уровень непротиворечивости данных. Сервер может самостоятельно управлять проверкой целостностью данных, поскольку все ограничения определяются и проверяются только в одном месте. При этом каждому приложению не придется выполнять собственную поверку.
Типы клиентов:
1.Толстый (интеллектуального) клиент.
2.Тонкий (неинтеллектуальный) клиент (расширение двухуровневой архитектуры "клиент-сервер"). Функциональная часть прежнего толстого клиента разделяется на две части. В трехуровневой архитектуре "тонкий" клиент на рабочей станции управляет только пользовательским интерфейсом, тога как средней уровень обработки данных управляет всей остальной логикой приложения. Третьем уровнем здесь является север БД. Область применения: Internet, intranet, где в качестве клиента может использоваться обычный Web-browser.
5. База данных реляционного типа. Основные понятия и структура реляционной модели. Реляционные языки. Основные правила целостности реляционной модели.
Реляционная модель основана на математическом понятии отношение, физическим представлением которого является таблица. Основными структурными компонентами реляционной модели являются отношение, связь, атрибуты.
Отношение – плоская таблица, состоящая из строк и столбцов. Атрибут – поименованный столбец отношения.
Связь – ассоциация, существующая между отношениями модели.
В реляционной модели отношение используется для хранения информации об объектах, представленных в БД. Отношение имеет вид двухмерной таблицы, в которой строки соответствуют отдельным записям, а столбцы атрибутам. Атрибуты могут располагаться в любом порядке.
Каждый атрибут в реляционной модели определяется на некоторомдомене. Доменнабор допустимых значений для одного или нескольких атрибутов.
Элементами отношения являются кортежи, или строки таблицы. Кортежи могут располагаться в любом порядке, при этом отношение будет оставаться тем же.
Для уникальной идентификации каждого отдельного кортежа отношения используются реляционные ключи.
Первичный ключ - атрибут или набор атрибутов отношения, которые уникальным образом идентифицируют кортежи отношения.
Суть связывания состоит в установлении соответствия между полями таблиц. Для связей реляционных таблиц используются понятие внешнего ключа.
Внешний ключ – атрибут или множество атрибутов внутри отношения, которое соответствует первичному ключу некоторого (или того же самого отношения).
Между двумя таблицами могут устанавливаться связи 1:1, 1:N, N:M –кардинальность связи. В случаи возникновения связи N:M требуется ввести в проектируемую БД новое отношение, для разрешения связи M:N. Для каждого отношения, участника связи определяется класс принадлежности к связи – обязательное участие (минимальное кардинальное число 1), необязательное участие (минимальное кардинальное число 0).
Для представления структуры БД реляционного типа используется схема и диаграмма реляционной модели.
Схема отношения - список имен атрибутов. Диаграмма БД – графическое представления набора отношений, атрибутов отношений и связей между ними.
Базы данных реляционного типа.
Реляционная база данных - база данных, в которой все данные представлены для пользователя в виде прямоугольных таблиц, а все операции над базой данных сводятся к манипуляциям со строками и столбцами таблиц. Ключевой составной частью реляционной базы данных является таблица - совокупность строк, имеющих строго определенную структуру в виде последовательности ячеек, составляющих столбцы таблицы. Причем одна таблица не обязательно должна храниться в отдельном файле, это понятие логическое, а не топологическое. Например, в формате СУБД Microsoft Access все таблицы хранятся в одном файле, а в СУБД Paradox одной таблице может соответствовать несколько файлов.
Основными понятиями реляционных БД являются тип данных, сущность, атрибут, домен, ключи и таблицы.
Понятие тип данных в реляционной модели данных полностью адекватно понятию типа данных в языках программирования. Следующие типы: числовой, текстовый и тип Дата.
Сущность представляет собой множество объектов, которые обладают одинаковым набором свойств.
Атрибут – это некоторое свойство объекта реального мира. Каждая сущность (как отражение некоторого объекта предметной области) должна обладать определенным набором атрибутов. Для всех экземпляров одной сущности набор атрибутов одинаков, но их значения для каждого конкретного экземпляра сущности могут различаться.
Каждый атрибут должен быть определен на соответствующем домене. Домен представляет собой именованное и определенное множество значений. На одном домене могут определяться один или несколько атрибутов.
Атрибут или группа атрибутов, значения которых позволяют, исходя из семантики предметной области, однозначно определить (идентифицировать) конкретный экземпляр из множества экземпляров одной сущности, называется возможным ключом.
Каждой сущности обязательно должен быть назначен первичный ключ. В качестве первичного ключа сущности выбирают один (и только один) из ее возможных ключей. При проектировании баз данных реляционного типа широко используется понятие внешнего ключа. Внешний ключ – это атрибут некоторой сущности, который