
- •1. Управление процессами
- •1.1 Операции над процессами
- •1.2 Обработка прерываний
- •2. Иерархическая структура ос.
- •2.1 Понятие параллельных и асинхронных процессов
- •2.2 Алгоритм Деккера.
- •2.3 Аппаратная реализация взаимоисключения
- •2.4 Реализация взаимоисключения с помощью семафоров
- •3. Тупиковые ситуации
- •3.1 Четыре необходимых условия возникновения тупика
- •3.2 Основные направления исследований по проблеме тупиков
- •3.3 Предотвращение тупиков, 3 стратегических принципа.
- •3.5 Обнаружение тупиков
- •3.6 Восстановление после тупиков
- •4. Управление памятью
- •4.1 Организация памяти
- •4.2 Стратегии управления памятью
- •4.3 Связное и несвязное распределение памяти
- •4.4 Мультипрограммирование с фиксированными разделами
- •4.5 Мультипрограммирование с переменными разделами
- •4.6 Стратегии размещения информации в памяти
- •5. Организация виртуальной памяти
- •5.1 Страничная организация памяти
- •5.2 Сегментная организация памяти
- •5.3 Странично-сегментная организация памяти
- •5.4 Стратегии управления виртуальной памятью
- •5.5 Принцип локальности
- •5.6 Стратегии вталкивания страниц
- •6. Управление процессорами
- •6.1 Уровни планирования загрузки процессоров
- •6.2 Цели планирования
- •6.3 Принципы планирования
- •7 Управление внешней памятью
- •8. Производительность
- •8.1 Методы оценки производительности
- •9. Операционная система ms-dos – структура и механизмы
- •9.1 Этапы загрузки ms-dos
- •9.2 Параметры загрузки ms-dos
- •9.3 Структура диска в ms-dos
- •9.4 Использование памяти системой ms-dos
- •9.5 Средства использования памяти
- •10. Операционная система windows 9.X
- •10.1 Сравнение dos и Windows 9.X
- •10.2 Windows 9.X Функции операционной системы
- •10.3 Виртуальная адресация памяти Windows 9.X
- •10.4 Виртуальные машины ос Windows 9.X
- •10.5 Процессы и сообщения в ос Windows 9.X
- •10.6 Планирование приоритетов
- •10.7 Файловая система Windows 9.X
- •11. Операционная система unix
- •11.1 Структура ос unix
- •11.2 Файловая система ос unix
- •11.3 Типы файлов.
- •11.4 Структура файловой системы unix.
- •11.4.1 Базовая файловая система. System V (s5fs).
- •11.4.2 Файловая система ffs.
- •11.5 Архитектура виртуальной файловой системы.
- •11.6 Подсистема управления процессами
- •11.6.1 Типы процессов
- •11.6.2 Атрибуты процесса.
- •11.6.3 Состояния процесса.
- •11.7 Принципы управления памятью
- •11.8 Планирование выполнения процессов
- •11.9 Взаимодействия между процессами
- •12. Загрузка ос windows 2000
- •12.3 Загрузка и инициализация драйверов устройств
- •12.6.1 Раздел [boot loader]
- •12.6.2 Раздел [operating systems]
- •13 Файловая система windows nt (ntfs)
- •13 Новые возможности ntfs 5.0
- •14 Структура ntfs
- •14.1 Главная файловая таблица
- •14.2 Атрибуты файла ntfs
- •14.3 Системные файлы ntfs
- •14.4 Сравнение ntfs с hpfs и fat
- •15 Конфигурирование системы
10.3 Виртуальная адресация памяти Windows 9.X
Windows 9.x позволяет использовать больший объем памяти, чем установленный на компьютере объем оперативной памяти. Если потребности программ превышают возможности компьютера, то те участки (страницы) памяти, которые требуются реже всего, “откладываются” на жесткий диск. Для этого используется специальный файл обмена, он же файл подкачки или файл виртуальной памяти. Особенностью виртуальной памяти Windows 95 является способность файла подкачки динамически изменять свой размер в зависимости от потребностей системы в отличии от файла подкачки Windows 3.1, который не мог превышать утроенный объем оперативной памяти и должен быть постоянным.
Процессор делит доступное адресное пространство на 4 – килобитные страницы общим числом около миллиона, что дает 4 Гбайт адресуемой памяти для 32 – разрядных приложений. Диспетчер виртуальной памяти процессора устанавливает соответствие между виртуальными адресами страниц памяти и их физическим местоположением. Диспетчер виртуальной памяти контролирует 4 Гбайт адресов памяти (причем не обязательно наличие 4 Гбайт физической памяти). Эти адреса распределены следующим образом:
0 – 1 Мбайт. Не используются программы Windows, доступны только для программ Ms-Dos. То есть приложение Ms-Dos считают себя загруженным ниже адреса 1 Мбайт.
1 – 4 Мбайт. Используется только программами Win 16. Программы Win 32 не занимают эти адреса.
4 Мбайт – 2 Гбайт. Используются программами Win 32 и некоторыми программами Win 16.
2 – 3 Гбайт. Используется разделяемыми объектами, такими, как динамически загружаемые модули.
3 – 4 Гбайт. Используется только ОС для ее внутренних нужд.
Когда виртуальный адрес, по которому обращается приложение, не соответствует странице, расположенной в физической памяти, то процессор сообщает об ошибке, и диспетчер виртуальной памяти подкачивает требуемую страницу из файла обмена. При этом предварительно обычно приходиться освобождать соответствующий объем физической памяти и сбрасывать какую-нибудь другую страницу из памяти в файл обмена. Для того чтобы оптимизировать процесс обмена между физической и виртуальной памятью, Windows 9.x применяет классический алгоритм «удаление стариков» – то есть сбрасывает в файл обмена наиболее редко используемые страницы памяти.
Многозадачность
Windows 9.x – многозадачная и многопоточная система. Это значит, что в ОС может «одновременно» выполняться несколько процессов, а в пределах одного процесса могут одновременно существовать несколько более простых процессов – потоков. Каждое работающее приложение Windows или Ms-Dos является процессом, причем каждый процесс состоит хотя бы из одного потока. Приложения Dos и Win 16 всегда состоят из одного потока. Поток может использовать память и системные ресурсы, выделяемые ему материнским процессом, но не может сам обращаться в ОС с требованием выделить новые ресурсы. В каждый момент времени выполняется один поток.
В режиме вытесняющей многозначности каждый поток выполняется определенное количество времени или до тех пор, пока приоритет другого потока не превысит его приоритет. Приоритеты распределяются ОС, поэтому ни один процесс или поток не может захватить монопольное управление. Каждому приложению отводится строго определенная доля процессорного времени, каждое приложение может быть в любой момент переведено в файловый режим. При вытесняющей многозначности кажется, что программы действительно работают одновременно. Программы Ms-Dos и 32 - разрядные приложения выполняются в режиме вытесняющей многозначности.
При кооперативной многозначности каждое приложение получает фактически столько процессорного времени, сколько оно считает нужным. Все приложения делят процессорное время, периодически ограничивая друг друга. Поэтому хорошо заметно, когда одно программа «тормозит» другую, а при длительных операциях с диском замирает практически вся другая деятельность. Все 16 - разрядные приложения выполняются под Windows примерно так же, как и под Windows 3.х – в режиме кооперативной многозначности. Таким образом, достигается совместимость со старыми приложениями Windows, написанными для выполнения в среде кооперативной многозначности.