- •1. Жизненный цикл программного обеспечения. Модели жизненного цикла программного обеспечения
- •2. Стандартные типы данных и типы данных, определяемые пользователем
- •3. Модель osi. Уровни модели osi (физический, канальный, сетевой, транспортный, сеансовый, представительский, прикладной)
- •4. Понятие "открытая система" на примере сетевых технологий
- •5. Представление основных структур программирования: итерация, ветвление, повторение
- •6. Стадии жц по
- •1.4.1. Особенности локальных, глобальных и городских сетей
- •1.4.2. Отличия локальных сетей от глобальных
- •1.4.3. Тенденция к сближению локальных и глобальных сетей
- •10. Понятие об объектно-ориентированном программировании.
- •11. Комплексные показатели надежности
- •12. Case-средства, их состав и назначение
- •14. Устройства для организации локальных сетей (концентраторы и сетевые адаптеры)
- •3.2. Концентраторы и сетевые адаптеры
- •3.2.1. Сетевые адаптеры
- •3.2.2. Концентраторы
- •15. Избыточность как метод повышения надежности асоиу. Структурная, информационная и временная избыточность
- •16. Основные технологии локальных сетей Ethernet и Token Ring
- •17. Динамические структуры данных
- •18. Основные устройства комбинационной логики (сумматоры, схемы сравнения, шифраторы/дешифраторы, мультиплексоры / демультиплексоры)
- •19. Понятие устойчивости динамических систем. Основные критерии устойчивости
- •25. Устойчивость систем автоматического управления. Необходимые и достаточные условия устойчивости.
- •26. Критерий устойчивости Гурвица. Пример.
- •27. Принцип аргумента. Критерий устойчивости Михайлова.
- •28. Критерий устойчивости Найквиста для устойчивой в разомкнутом состянии системы.
- •29. Критерий устойчивости Найквиста для неустойчивой в разомкнутом состянии системы.
- •30. Критерий устойчивости Найквиста для нейтральной в разомкнутом состянии системы.
- •31. Общая формулировка критерия Найквиста. Логарифмический критерий устойчивости.
- •20. Логическое кодирование в сетях (избыточные коды и скрэмблирование)
- •21. Цифровые автоматы (триггеры, регистры, счетчики)
- •22. Управляемость и наблюдаемость динамических систем
- •23. Эргономика. Система «человек, техника, среда»
- •24. Функциональная и структурная организация процессора
- •26. Человек как звено асоиу. Выбор канала восприятия в зависимости от вида информации. Эргономический пользовательский интерфейс
- •27. Микропроцессоры с «жестким» и программируемым принципами управления Организация режимов работы процессоров
- •28. Основные показатели качества систем автоматического управления
- •29. Устройства для логической структуризации сетей (мосты и коммутаторы)
- •30. Маршрутизаторы как устройства для создания сложной иерархической структуры сетей
- •31. Классификация периферийных устройств эвм
- •33. Современные сетевые технологии глобальных сетей (isdn-сети с интегральными услугами, технологии атм)
- •34. Принципы организации внешних запоминающих устройств на различных типах носителей – магнитных, оптических и т.П.
- •35. Классификация информационно-вычислительных сетей. Сети одноранговые и "клиент/сервер"
- •36. Классификация видов моделирования; имитационные модели систем
- •37. Стек протоколов. Протокол hdlc. Стек протоколов tcp/ip
- •38. Основные этапы моделирования систем
- •39. Реляционная алгебра и язык манипулирования данными sql
- •42. Методы доступа в сетях. Множественный доступ с контролем несущей и обнаружением конфликтов
- •44. Целостность и непротиворечивость данных в базе данных
- •45. Роль структуры управления в информационных системах. Характеристика уровней управления и их влияние на функции информационных систем.
- •46. Классификация информационных систем по функциональному признаку назначения подсистем и уровням управления
- •48. Защита информации в сетях
- •49. Модели информационных процессов передачи, обработки, накопления данных
- •51. Анализ и оценка производительности вычислительных комплексов асоиу
- •52. Критерии качества программного обеспечения
- •54. Основные современные методологии проектирования сложных программных средств: rad, msf, rup
- •56. Способы записи алгоритма программы
- •59. Принципы построения операционных систем. Основные компоненты сетевых операционных систем
- •60. Методы распределения памяти. Сегментная, страничная, странично–сегментная
- •61. Структура операционной системы. Модель клиент – сервер
- •1.4 Структура операционных систем
- •1.4.1 Монолитная система
- •1.4.2 Многоуровневая структура ос
- •1.4.3 Модель экзоядра
- •1.4.4 Микроядерная архитектура (модель клиент-сервер)
- •1.4.5 Обобщение сравнения моделей
- •62. Иерархические каталоговые системы. Операции с каталогами
- •7. Принцип модульного построения программ
- •11.2.3 Иерархические каталоговые системы
- •11.2.4 Имя пути
- •11.2.5 Операции с каталогами
- •64. Модели представления знаний: логические, фреймовые, сетевые, продукционные, нечеткие
- •65. Экспертные системы (эс): определение, структура, назначение основных блоков, примеры применения
- •66. Продукционные экспертные системы (эс): структура, примеры применения
- •67. Нечеткие экспертные системы (эс): структура, назначение основных блоков, примеры
- •68. Искусственные нейронные сети (инс): структура, классификация, основные классы решаемых задач
- •69. Сети Хопфилда: структура, способ определения весов связей между нейронами, классы решаемых задач, примеры
- •5.1. Алгоритм Хопфилда.
- •8. Основные показатели надежности невосстанавливаемых объектов (вероятность безотказной работы, средняя наработка до отказа, гамма-процентная наработка до отказа, интенсивность отказов)
- •5.2. Распознавание образов сетями Хопфилда.
- •5.3. Непрерывные сети Хопфилда.
- •5.4. Применение сетей Хопфилда для решения проблем оптимизации.
- •71. Понятие и назначение хранимой процедуры и триггера. Работа с хранимой процедурой и триггером
- •72. Понятие транзакций и работа с транзакциями. Кэширование изменений: сохранение изменений и отказ от сохранения изменений
- •74. Взаимосвязи в базе данных: «один-к-одному», «один-ко-многим» «многие-ко-многим», тренарные, циклические. Примеры использования
- •75. Назначение нормализации. Нормальные формы таблицы, процедура их применения
- •77. Синхронизация процессов. Тупики
- •78. Способы управления периферийными устройствами. Драйверы устройств ввода – вывода
- •80. Семафоры. Решение проблемы производителя и потребителя с помощью семафоров
- •9. Локальные и глобальные сети, их особенности, отличия, тенденции к сближению
- •82. Прямой и обратный методы вывода
5. Представление основных структур программирования: итерация, ветвление, повторение
Итерация-это организация обработки данных, при кот. действия повторяются многократно, не приводя при этом к вызовам самих себя.
Когда действие необходимо повторить большое кол-во раз, в программировании useся циклы. Напр-р, нужно вывести 100 раз на экран текст «Hello,World!». Вместо 100-кратного повторения 1и той же команды вывода текста часто создается цикл, кот прокручивается 100 раз, и 100 раз выполняет то, что написано в теле цикла. 1 шаг цикла наз-ся итерацией. Еще 1 пример: Факториал(!) — N! = 1 х 2 х 3 x … x (N-1) x N.
Инструкция (цикл) while useся в том случае, если некотор послед-ть действий надо выполнить неск-ко раз, причем необходимое число повторений во время разработки проги неизвестно и м.б. определено только во время работы проги.
Типичными примерами использования цикла while явл-ся вычисления с заданной точностью, поиск в массиве или в файле.
Инструкция repeat, как и инструкция while, useся в проге в том случае, если необходимо выполнить повторные вычисления, но число повторений во время разработки проги неизвестно и м.б. определено только во время работы проги, т. е. определяется ходом вычислений.
Ветвление
На практике редко встречаются задачи, алгоритм реш-я кот явл-ся линейным. Часто оказывается, что алгоритм реш-я даже элементарной задачи не явл-ся линейным.
Выбор в точке разветвления алгоритма очередного шага проги м.б. реализован при помощи инструкций if и case. Инструкция if позволяет выбрать 1 из 2 возможных вариантов, инструкция case — 1 из неск-ких.
Оператор ветвления (условная инструкция, условный оператор) — оператор, конструкция языка программирования, обеспечивающая выполнение определённой команды (набора команд) только при условии истинности некоторого логического выражения, либо выполнение одной из нескольких команд (наборов команд) в зависимости от значения некоторого выражения. Оператор ветвления применяется в случаях, когда выполнение или невыполнение некоторого набора команд должно зависеть от выполнения или невыполнения некоторого условия. Ветвление — одна из трёх (наряду с последовательным исполнением команд и циклом) базовых конструкций структурного программирования. Существует две основные формы условной инструкции, встречающиеся в реальных языках программирования: условный оператор (оператор if) и оператор многозначного выбора (переключатель, case, switch).
Условный оператор с одной ветвью. При выполнении такого оператора вычисляется условие, и если оно истинно, то выполняются команды, заключенные в фигурные скобки, в противном случае выполнение программы продолжается со следующей за условным оператором команды. В языках низкого уровня (ассемблерах) это — единственная доступная форма условного оператора. В некоторых языках для условного оператора с одной ветвью используется специальное ключевое слово (обычно это when). if (<условие>){<операторы>}.
Условный оператор с двумя ветвями. Здесь при истинности условия выполняются команды1 при ложности — команды2. При необходимости проверить последовательно несколько условий возможно каскадирование условных операторов. if (<условие>){<операторы>}else{<операторы>}.
Условный оператор с несколькими условиями.
if (условие1){команды1;}
else if (условие2){команды2;}
...
else {командыN};
Переключатель. Конструкция переключателя имеет несколько (две или более) ветвей. Переключатель выполняет одну заданную ветвь в зависимости от значения вычисляемого ключевого выражения. Принципиальным отличием этой инструкции от условного оператора является то, что выражение, определяющее выбор исполняемой ветви, возвращает не логическое, а целое значение, либо значение, тип которого может быть приведён к целому. В некоторых языках допускается использовать в переключателе выражения некоторых типов, не приводимых к целому (например, текстовые строки).
switch (i)
{
case 0:
case 1: // последовательность операторов
break;
case 2: // последовательность операторов
break;
default:
}
Здесь i — выражение-селектор, которое обязано иметь приводимый к целому тип, каждая ветвь исполнения начинаются с ключевого слова case, за ним следует значение выражения, при котором должна выполняться данная ветвь. Интересной особенностью языка Си является то, что в нём переключатель трактуется именно как команда перехода по вычисляемой метке, а роль меток играют заголовки ветвей (case значение :). Чтобы после завершения кода ветви произошёл выход из оператора переключателя, используется специальная команда break.
Инструкция repeat, как и инструкция while, используется в программе в том случае, если необходимо выполнить повторные вычисления (организовать цикл), но число повторений во время разработки программы неизвестно и может быть определено только во время работы программы, т. е. определяется ходом вычислений.
