- •1. Введение. Классификация видов программного обеспечения.
- •2.Назначение и функции операционных систем.
- •3. Мультипрограммирование. Режим разделения времени.
- •4. Многопользовательский режим работы. Режимы реального времени.
- •4. Содержание лекции:
- •1.Универсальные операционные системы и ос специального назначения.
- •2. Классификация операционных систем.
- •3. Модульная структура построения ос и их переносимость.
- •4. Управление процессором.
- •Раздел 2. Организация и управление процессами
- •4. Содержание лекции:
- •1. Понятие процесса и ядра. Сегментация виртуального адресного пространства процесса.
- •2.Структура контекста процесса. Идентификатор и дескриптор процесса.
- •3.Диспетчеризация и синхронизация процессов.
- •4. Иерархия процессов. Понятие приоритета и очереди процессов.
- •5.Планы проведения семинарских, лабораторных занятий
- •Тема 1 Структура операционной системы. Схема работы и взаимодействие элементов ос. Типы управляющих структур. Многозадачность.
- •1.Ознакомление со структурой операционной системы на примерах современных ос.
- •2. Рассмотрение схемы работы и взаимодействие элементов ос на примере WindowsXp.
- •3. Знакомство типами управляющих структур ос Minix, Linux WindowsNt.
- •Тема 2 Работа ядра при управлении процессом. Атрибуты процесса. Обработка прерываний. Порождение дочерних процессов в среде ос. Синхронизация процессов.
- •1. Работа ядра при управлении процессом.
- •2. Атрибуты процесса.
- •3. Обработка прерываний.
- •4. Порождение дочерних процессов в среде ос. Синхронизация процессов.
- •Тема 3 Функции, структура, алгоритм работы менеджера ввода-вывода. Организация защиты ввода-вывода.
- •1. Функции, структура, алгоритм работы менеджера ввода-вывода.
- •2. Организация защиты ввода-вывода.
- •Тема 4 Структура и свойства файловой системы. Права доступа. Способы защиты файлов. Кэширование.
- •1. Структура и свойства файловой системы.
- •2. Права доступа.
- •3. Способы защиты файлов.
- •4. Кэширование.
- •Тема 5 Управление памятью. Совместное использование памяти. Защита памяти. Механизм реализации виртуальной памяти. Стратегии подкачки страниц.
- •1. Управление памятью. Совместное использование памяти
- •2. Защита памяти.
- •3. Механизм реализации виртуальной памяти.
- •4. Стратегии подкачки страниц.
- •Тема 6 Состав и работа стандартных команд ос по управлению устройствами, файлами, процессами, диагностикой.
- •1. Состав команд ос по управлению устройствами, файлами, процессами, диагностикой.
- •2. Работа стандартных команд ос по управлению устройствами, файлами, процессами, диагностикой.
2. Защита памяти.
Многозадачность вносит две существенные проблемы, требующие решения, — это настройка адресов для перемещения программы в памяти и защита. Разные задачи будут загружены по различным адресам. Когда программа компонуется (то есть в едином адресном пространстве объединяются основной модуль, написанные пользователем процедуры и библиотечные подпрограммы), компоновщик должен знать, с какого адреса будет начинаться программа в памяти.
Для защиты компьютера IBM 360 разработчики приняли следующее решение: они разделили память на блоки по 2 Кбайт и назначили каждому блоку 4-битный защитный код. Регистр PSW (Program Status Word — слово состояния программы) содержал 4-разрядный ключ. Аппаратура IBM 360 перехватывала все попытки работающих процессов обратиться к любой части памяти, защитный код которой отличался от содержимого регистра слова состояния программы. Поскольку только операционная система была вправе изменять коды защиты и ключи, предотвращалось вмешательство пользовательских процессов в дела друг друга и в работу операционной системы.
Альтернативное решение проблем защиты и перераспределения заключается в оснащении машины двумя специальными аппаратными регистрами, называемыми базовым и ограничительным регистрами. При планировании процесса в базовый регистр загружается адрес начала раздела памяти, а в ограничивающий регистр — длина раздела. К каждому автоматически формируемому адресу перед его передачей в память прибавляется содержимое базового регистра. Таким образом, если базовый регистр содержит величину 100 К, команда CALL 100 будет превращена в команду CALL 100K+100 без изменения самой команды. Кроме того, адреса проверяются по отношению к лимитирующему регистру для гарантии, что они не используются для адресации памяти вне текущего раздела. Базовый и ограничительный регистры защищаются аппаратно, чтобы не допустить их изменений пользовательскими программами.
Неудобство, присущее этой схеме, — требуется выполнять операции сложения и сравнения при каждом обращении к памяти. Операция сравнения может быть выполнена быстро, но сложение относительно нее — медленное действие, что обусловлено временем распространения сигнала, за исключением тех случаев, когда применяется специальная микросхема сложения.
3. Механизм реализации виртуальной памяти.
Термин виртуальная память фактически относится к системам, которые сохраняют виртуальные адреса во время исполнения. Так как второе отображение осуществляется в процессе исполнения задачи, то адреса физических ячеек могут изменяться. При правильном применении такие изменения могут улучшить использование памяти, избавив программиста от деталей управления ею, и даже увеличить надежность вычислений.
Виртуальная память не теряет работоспособности в многозадачной системе при множестве одновременно загруженных в память программ. Когда программа ждет перемещения в память очередной ее части, она находится в состоянии ожидания ввода/вывода и не может работать, поэтому центральный процессор может быть отдан другому процессу тем же самым способом, как в любой другой многозадачной системе.
Программно формируемые адреса, называемые виртуальными адресами, образуют виртуальное адресное пространство. На компьютерах без виртуальной памяти виртуальные адреса подаются непосредственно на шину памяти и при чтении или записи читается или записывается слово в физической памяти с тем же самым адресом. При применении виртуальной памяти виртуальные адреса не передаются напрямую шиной памяти. Вместо этого они направляются диспетчеру памяти (MMU — Memory Management Unit), который отображает виртуальные адреса на физические адреса.
Основа виртуальной памяти Pentium состоит их двух таблиц: локальной таблицы дескрипторов LDT (Local Descriptor Table) и глобальной таблицы дескрипторов GDT (Global Descriptor Table). У каждой программы есть своя собственная таблица LDT, но глобальная таблица дескрипторов одна, ее совместно используют все программы в компьютере. Таблица LDT описывает сегменты, локальные для каждой программы, — ее код, данные, стек и т. д., тогда как таблица GDT несет информацию о системных сегментах, включая саму операционную систему.
Большинство систем виртуальной памяти опираются на техники страничной, сегментной и сегментно-страничной организацией памяти.
