- •1. Определение системного программного обеспечения.
- •1. Ретроспектива развития спо.
- •2. Windows-динамически вызываемые библиотеки.
- •2. Характеристика системы прерывания.
- •Прерывания и способы их обработки
- •Драйверы устройств
- •2. Режимы пакетной обработки и разделения времени.
- •1. Принципы работы компилятора.
- •1. Принципы работы интерпретатора.
- •2. Программные прерывания.
- •2. Общая структура системы прерывания.
- •1. Объектный модуль.
- •1. Загрузочный модуль.
- •1. Перемещаемая объектная программа.
- •2. Программный и аппаратный таймер в пк.
- •1. Редактирование связей.
- •2. Общая постановка задачи управления памятью.
- •2. Мультипрограммные режимы и разделение памяти.
- •1. Загрузка программы.
- •2. Многозадачность и многопоточность.
- •2. Физическая и логическая структура памяти.
- •2. Таблица fat.
- •2. Управление файлами.
- •1. Подсистема ввода/вывода.
- •2. Графические файлы. Файлы bmp
2. Многозадачность и многопоточность.
Если внутри ОС присутствуют неск. процессов, то м/д ними возникает конкуренция за обладание тем или иным ресурсом, в первую очередь за время ЦП. Сущ-ют след. режимы работы: 1) Однозадачный-в этом режиме вычисления носят последов-ный характер, ресурсы не разделяются, а полностью предоставлены одному процессу. 2) Фоново-оперативный. Процессы делятся на 2 типа. 1 тип-оперативные процессы или процессы переднего плана (foreground). 2 тип- фоновые процессы (background). 3) многозадачный режим. При реализации многозадачного режима исп-ся 2 метода:
1. Переключение по событию.
При переключении по событию ОС не опред-ет момент смены текущей задачи, т.е переключение м. добровольно инициировать активный процесс, приостанавливающий свое выполнение при обращении к ОС. Типичным случаем наступления события явл. операция вв/выв. При таком методе возможна ситуация, когда один процесс захватывает упр-ние и
не передает его ОС. Чтобы избежать этой ситуации сигналы д. быть внешними, и надо установить систему приоритетов.
2. Разделение времени.
Переключение процессов происходит под действием внеш. сигнала, поступающего через опред-ный квант времени Т. Обычно этот сигнал- аппаратное прер-е от таймера.
Планировщик, получив упр-ние по прер-нию прекращает работу активного процесса и сохраняет всю инф-цию, необходимую для его продолжения (контекст процесса). Потом планировщик анализирует очереди задач и по определен. правилам выбирает след. активный процесс. Переключение процессов- передиспетчеризация. Объединение этих 2-ых механизмов можно выполнить, если считать событием в системе след. ситуации: 1) прерывание от таймера по истечению кванта времени. 2) активный процесс запрашивает операцию вв/выв. 3) активный процесс освобождает ресурс, к-рый ожидался более приоритетной задачей. 4) аппаратное прер-е сигнализирует об освобождении устр-ва вв/выв.
Многопотоковость.(thread-поток). ОС выполняет защиту процессов др. от друга, разделяет их, но м. предоставлять сец. ср-ва взаимодействия. Другой прием распараллеливания состоит в организации потоков в рамках одного процесса, т.е потоки м. быть организованы для совместного взаимод-вия, а не для конкурирования. Разделение времени проц-ра идет по потокам и тогда поток- минимальная вычислит. задача для диспетчеризации. Потоки вып-ся в общем контексте, поэт. они имеют общее адресное простр-во, общие глобальные переменные, общие открытые файлы. Но потоки имеют различные: программный счетчик, стек, локальные переменные, рег-ры, текущее состояние . 1) Многопотоковая обработка повышает эффективность работы системы за счет распараллеливания. 2) Некоторые прикладные задачи легче программировать, используя потоки. 3) Реальное распараллеливание в многопроцессорных системах повышает эффективность многопотоковых программ.
Hyper-Threading- Гиперпотоковые технологии разраб-ся компанией Intel для повышения производ-ти серверных систем.
Simul tameous multi threading technology- мн-во потоков вып-ся одновременно на одном проц-ре. Работа неск. потоков достигается за счет дублирования архитектурных состояний проц-ра при совместном исп-нии единого набора ресурсов. Под ресурсом понимаются функциональные модули проц-ра. Логический проц-р- архитектурное состояние, к-рое м. быть заполнено. Это реализовано в семействе проц-ров Intel Xeon, где аппаратно заложена поддержка технологии Hyper-Threading. В проц-ре имеются диспетчеры, к-рые формируют логические проц-ры как архитектурные состояния ресурсов одного процессорного ядра, поэт. добавляются схемы дублирования рег-ров и расширенный контроллер управ-ния прер-ем (APIC), к-рый назначает прер-я для обработки разными процессами в многопроцессорной системе.
22
1. Выполнение задания.