- •Основные методы представления знаний в экспертных системах. Этапы (прототипы) разработки экспертной системы. Коллектив разработчиков экспертной системы.
- •Математический нейрон. Его графическое изображение, формулы по которым он работает, виды активационных функций. Моделирование основных логических функций с помощью математического нейрона
- •Персептрон Розенблатта, его принцип действия на примере распознавания букв.
- •Сравнительный анализ процедурной, функциональной, объектно-ориентированной и логической парадигм программирования.
- •Этапы и методологии проектирования баз данных.
- •Программное обеспечение для проектирования, реализации проектов информационных систем. (case-технологии, субд и пр.)
- •Представление числовых величин в эвм: позиционные системы счисления; форматы чисел с фиксированной и плавающей точкой; представление в прямом, обратном и дополнительном кодах.
- •Принципы организации машины фон Неймана.
- •6) Представительский уровень
- •7) Прикладной уровень
- •Основы теории моделирования информационных систем и протекающих в них процессов.
- •Аналитические методы моделирования (ам)
- •Имитационные методы моделирования (им)
- •Функциональные методы моделирования (фм)
- •Статическое моделирование (см)
- •Криптография как наука. Основные понятия и определения
- •Электронная цифровая подпись. Гост р 34.10-2001
- •Управление оперативной памятью в современных операционных системах: управление физической и виртуальной памятью, способы организация виртуальной памяти, организация подкачки.
- •Управление хранением данных: система накопителей информации, система драйверов накопителей информации, современные файловые системы.
- •Обходы графов, эйлеровы и гамильтоновы графы, алгоритм Флери. Укладки графов, изоморфизм, гомеоморфизм, планарность, критерий планарности, формула Эйлера.
- •Двудольные графы, критерий двудольности, деревья, остовные деревья
- •Экстремальные задачи теории графов, «жадные» алгоритмы, алгоритм Дейкстры
- •Раскраски графов, «жадный» алгоритм. Хроматическое число, хроматический многочлен, его нахождение и свойства.
- •Элементарные булевы функции и способы их задания, существенные и фиктивные переменные. Разложение булевых функций по переменным, сднф, скнф, полиномы Жегалкина.
- •Повторные выборки, сочетания и размещения (с возвращением и без возвращения элементов). Комбинаторные принципы.
- •Биномиальные и полиномиальные коэффициенты, бином Ньютона, треугольник Паскаля. Полиномиальная формула.
- •Алфавитное кодирование: необходимое и достаточные условия однозначности декодирования, теорема Маркова, алгоритм Маркова.
- •Коды с минимальной избыточностью (коды Хаффмана), метод построения. Самокорректирующиеся коды (коды Хэмминга), метод построения.
- •Недетерминированные двухполюсные источники, замкнутые множества состояний. Задача синтеза автоматов-распознавателей.
- •Эквивалентные состояния, эквивалентные автоматы, минимизация автоматов, алгоритм Мили.
- •Особенности организации операционной системы Unix. Цели создания и структура операционной системы.
- •Понятие сложности алгоритма и сложности (объема) входных данных. Основные правила вычисления сложности алгоритма (сложность линейного алгоритма, ветвления, цикла).
-
Управление оперативной памятью в современных операционных системах: управление физической и виртуальной памятью, способы организация виртуальной памяти, организация подкачки.
Оперативная память - энергозависимое устройство хранения информации, которое используется для хранения программ и данных во время работы центрального процессора.
С точки зрения принципов фон Неймана ОП - одно из главнейших устройств компьютера. Более того, вследствие принципов фон Неймана процессор не может взаимодействовать напрямую ни с кем, кроме оперативной памяти.
Т.е. процессор во время выполнения процесса выбирает его код и данные только из ОП, ниоткуда больше. Функции управления ОП – 2ые по важности функции ОС.
ОП рассматривают, как линейное адресное пространство и поделена на (ячейки) байты. (упорядоченный массив пронумерованных ячеек). Каждый байт из одинакового количества бит.
Каждый байт имеет свой номер - адрес ячейки ОП, так как номера присваиваются байтам, следовательно, байт - минимальная адресуемая ячейка памяти.
Когда процессор выбирает из ОП больше одного байта, адресом считается адрес младшего байта.
Можно утверждать, что никогда ОП не бывает достаточно. ОП – самый критичный ресурс, ее никогда не хватает, поэтому в современных ОС появилось понятие виртуальной ОП.
Задачи управления физической памяти:
-
Выделение памяти под процессы.
-
Освобождение памяти после завершения процессов.
-
Решение проблемы фрагментации памяти.
-
Современные ОС управляют не физической, а виртуальной памятью – отображение виртуального адресного пространства на физическое выполняется аппаратно.
Существуют два вида ОП: физическая и виртуальная ОП
Физическая память – память, которая реально инсталлирована в компьютер. Объем ее измеряется объемом запоминающего устройства и не может быть увеличен.
Виртуальная память – память, которой в компьютере реально не существует, но которая может использоваться программным обеспечением. Существует в фантазиях ОС.
Виртуализация ОП рассматривается с двух позиций:
1. Традиционный подход: физической памяти мало, а виртуальной памяти много, всё физическое адресное пространство представляется в виде виртуального адресного пространства. Вся память, к которой работает ОС это ВАП(вирт. адр. простр.) и часть ВАПа – ФАП.
Задача ОС : каким образом организовать нормальную работу процессов с виртуальным адресным пространством. Решение-организация swaping
2. нарушение свойства линейности ОП.
ФАП рассматривается как одномерный линейный массив. ВАП можнт рассматривается как более сложно организованное ВАП. Речь идет о том чтобы преобразовать линейное одномерное пространство ФАП в n-мерное ВАП. Как правило используются 2хмерные модели, реже 3хмерные модели. Самый писк – 4хмерная модель ОП.
Современные ОС могут использовать несколько преставлений ОП.
Все современные ОС используют оба подхода. Виртуальная память в современных ОС - расширение физической ОП с нарушением свойства линейности одномерного пространства адресов.
В зависимости от ОС механизмы управления адресным пространством могут быть различны. Разные ОС могут управлять либо физической, либо виртуальной ОП. А некоторые даже могут совмещать .
Swapping – это механизм обмена страницами между физической (первичной) памятью и виртуальной (вторичной).
UNIX всегда при помещении чего-то в память, что-то убирает из памяти. Windows заполняет память постепенно. UNIX заполняет сразу.
Организация свопинга/подкачки
Свопинг - механизм, который позволяет расширить физическую ОП за счет использования дискового пространства.
Свопинг заключается в обмене участками памяти между физической памятью и областью свопинга.(первичной и вторичной памятью)
Существует несколько реализаций свопинга. В основе выполнения свопинга лежит понятие дисциплины свопинга. Главная задача дисциплины состоит в том, чтобы предоставить механизм определения того какие выгруженный страницы нужно подгрузить в следующий момент времени подгрузить в ОП и наоборот.
В Windows используется 2 дисциплины одновременно.
1. подкачка или свопинг по требованию. Заключается в том, что ОС подкачивает страницы памяти в физическую память только в тот момент, когда они действ нужны процессам. Для того, чтобы осуществить подкачку по требованию процесс должен сообщить ОС об отсутствии нужной страницы. Осуществляется механизмом прерываний или исключений
+ в памяти будут находиться только те страницы, которые нужны.
- замедляет работу системы.
Используется, как вспомогательная, так как основная не может гарантировать со 100%, что страницы будут вовремя подкачаны в память.
2. свопинг на основании рабочих наборов. Рабочий набор - набор страниц процесса, который необходим ему в текущий момент времени и возможно понадобится в следующий. Пытается предсказать какие страницы процессу будут нужны в следующий момент времени. Основано на принципе локальности.
Все программисты пишут программы более или менее одинаково
Отслеживает, что делает процесс. И смотрит, какие страницы будут нужны.
VMM отслеживает поведенческие характеристики процесса и на основании этих характеристик, какие страницы процессам будут нужны, а какие нет. ОС используют нечеткие или эвристические алгоритмы для работы алгоритма подкачки. Такая дисциплина дает сбой примерно в 20-30% случаев.
В UNIX.
Расширение ОП достигается за счет своп - раздела.
Особенностью такого управления памятью состоит в том, что UNIX и Linux не делают различия между областью физической памяти и областью свопинга.
Обмен страницами всегда происходит так: если какая-то страница выноситься из 1ной памяти, то её место занимает страница из 2ой памяти. Нельзя делать так: что-то добавили, но ничего не убрали. В VAX такое было на аппаратном уровне.
Используется 2 механизма
1 механизм. Определение рабочих наборов. Идет на основании глобальной таблицы страниц. Вероятность того, что нужная страница будет подгружена 80-85%.
2 механизм. Подкачка по требованию
В Windows.
В Windows используется не свопинг, а подкачка. По сути.
Для того чтобы можно было бы выгрузить из памяти некоторые страницы Windows использует файл подкачки. Вин рассчитывает рабочие наборы для каждого приложения отдельно, для каждой виртуальной машины.
Для каждого запущенного приложения хотя бы 1 страница находится в физической памяти.
Вин может что-то поместить в память, но при этом ничего не выгружая в файл подкачки. Обязательного свопинга Windows не делает. Windows в качестве расширения виртуальная ОП использует не только файл подкачки. Пока процесс полностью не погружен Windows считает, что файлы образы процесса являются файлами подкачки. UNIX так не поступает, он загружает программу целиком. Загрузка программ в Windows происходит быстрее, но сама подкачка происходит быстрее UNIX.
Разные варианты свопинга определили разные подходы к планированию процесса. Windows старается реализовать переключение между процессами быстрее. UNIX – неинтерактивная система, поэтому при определении рабочего множества на основании глобальной таблицы страниц определить процесс нельзя. Она может взять и выгрузить процесс целиком. Чем наглее процесс – тем больше памяти получит. Linux находится посередине. Позиционировать её нельзя ни как вычислительную, ни как интерактивную.