14 (Билеты на государственный аттестационный экзамен по специальности Информационные Системы)
Описание файла
Документ из архива "Билеты на государственный аттестационный экзамен по специальности Информационные Системы", который расположен в категории "". Всё это находится в предмете "информатика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "рефераты, доклады и презентации", в предмете "информатика, программирование" в общих файлах.
Онлайн просмотр документа "14"
Текст из документа "14"
1 Теория функциональных зависимостей. Тривиальные и нетривиальные зависимости. Формальное определение функциональной зависимости: Даны атрибуты X и Y, атрибут Y функционально зависит от X, если в каждый момент времени каждому значению X соответствует одно и то же значение Y. (X -> Y) Для каждого отношения существует вполне определенное множество функциональных зависимостей между атрибутами. Аксиомы ФЗ позволяют из одной ФЗ вывести другие также присущие данному отношению. Аксиомы:
Каждое из этих трех правил может быть непосредственно доказано на основе определения ФЗ (первое из них – просто определение тривиальной зависимости). Типы функциональных зависимостей:
Функциональная зависимость XY называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости XZ и ZY и отсутствует функциональная зависимость ZX. Зависимость называется тривиальной, если она не может не выполняться. Зависимость является тривиальной тогда и только тогда, когда правая часть ее правой записи является подмножеством левой части. ( S#, P#) -> S#. Нетривиальные зависимости являются реальными ограничениями целостности. | 2 Характеристика механизма прерываний: определение и обработка прерываний, система прерываний, обслуживание прерываний, программные и аппаратные прерывания. Прерыванием называется временное прекращение выполнения текущей программы, которое вызвал внешний сигнал. Микропроцессор при этом переходит к выполнению специальной подпрограммы обработки прерывания. Использование прерываний позволяет сократить время реакции ЭВМ на внешнее событие и увеличить гибкость ее работы, особенно это проявляется в случаях, когда требуется обеспечить обмен информации с большим числом асинхронно работающих внешних устройств. Существуют два способа организации прерываний от нескольких источников:
Часто требуется иметь возможность игнорировать запросы на прерывание - маскировать их, например, когда запрос на прерывание может приходить одновременно от нескольких источников, необходимо устанавливать приоритеты прерываний и обеспечивать маскирование прерываний с низшим приоритетом. Семейство микропроцессоров Intel 80x86 поддерживает 256 уровней приоритетных прерываний, вызываемых событиями трех типов:
Внутренние аппаратные прерывания, иногда называемые отказами (faults), генерируются определенными событиями, возникающими в процессе выполнения программы, например попыткой деления на нуль. Закрепление за такими событиями опреденных номеров прерываний зашито в процессоре и не может быть изменено. Внешние аппаратные прерывания инициируются контроллерами периферийного оборудования или сопроцессорами (например, 8087/80287). Источники сигналов прерываний подключаются либо к выводу немаскируемых прерываний процессора (NMI) либо к выводу маскируемых прерываний (INTR). Линия NMI обычно предназначает для прерываний, вызываемых катастрофическими событиями, такими, как ошибки четности памяти или авария питания. Вместо непосредственного подключения к ЦП прерывания от внешних устройств могут поступать в процессор через специальное устройство - программируемый контроллер прерываний (РIС) 8259А. ЦП управляет контроллером через набор портов ввода-вывода, а контроллер в свою очередь сигнализирует процессору через вывод INTR. РIС предоставляет возможность программно разрешать и запрещать прерывания от конкретных устройств, а также назначать им приоритеты. Программные прерывания. Любая программа может инициировать синхронное программное прерывание просто путем выполнения команды INT. MS-DOS использует для взаимодействия со своими модулями и прикладными программами прерывания от 20Н до 3FH. Программы BIOS, хранящиеся в ПЗУ, и прикладные программы IBM PC используют другие прерывания, с большими или меньшими номерами. Это распределение номеров прерываний условно и никаким образом не закреплено аппаратно. Обслуживание прерываний. ЦП, обнаружив сигнал прерывания, помещает в машинный стек слово состояния программы (определяющее различные флаги ЦП), регистр программного сегмента (CS) и указатель команд (IP) и блокирует систему прерываний. Затем ЦП с помощью 8-разрядного числа, установленного на системной магистрали прерывающим устройством, извлекает из таблицы векторов адрес обработчика и возобновляет выполнение с этого адреса. Состояние системы в момент передачи управления обработчику прерываний совершенно не зависит от того, было ли прерывание возбуждено внешним устройством или явилось результатом выполнения программой команды INT. Это обстоятельство удобно использовать при написании и тестировании обработчиков внешних прерываний, отладку которых можно почти полностью выполнить, возбуждая их простыми программными средствами. | 3 Многопоточные приложения. Процессы и потоки. Использование многопоточного приложения оправдано:
Замечание.
Потоки – это наборы команд, которые могут получать время процессора. Время процессора выделяется квантами. Квант времени – это минимальный интервал, в течение которого только один поток использует процессор. Кванты выделяются не программам или процессам, а именно порожденным потокам. Как минимум, каждый процесс имеет хотя бы один (главный) поток, но операционные системы, начиная с Windows 95 и Windows NT позволяют запустить в рамках процесса произвольное число потоков. Потоки дают современному программному обеспечению новые специфические возможности. К примеру, пакеты из состава MS Office задействуют по несколько потоков. Word может одновременно корректировать грамматику и печатать, при этом осуществляя ввод данных с клавиатуры и мыши; программа Excel способна выполнять фоновые вычисления и печатать. Потоки упрощают жизнь тем программистам, которые разрабатывают приложения в архитектуре клиент/сервер. Когда требуется обслуживание нового клиента, сервер может запустить специально для этого отдельный поток. Также потоки – основная единица диспетчеризации вычисляемого процесса. Процесс состоит из виртуальной памяти, исполняемого кода, потоков и данных. Процесс может содержать много потоков, но обязательно содержит, по крайней мере, один. Поток зависит от процесса, который и распоряжается виртуальной памятью, кодом, данными, файлами и другими ресурсами ОС. Переключение между процессами – значительно более длительная операция, чем переключение между потоками, поэтому мы используем потоки вместо процессов.Типичные ошибки при использовании потоков.
|