- •Введение
- •Понятие операционной системы. Типы операционных систем
- •Функции операционной системы
- •Структура операционной системы. Ос ms dos
- •Файлы и каталоги на дисках
- •Драйверы устройств
- •Базовая система ввода-вывода (bios)
- •Загрузчик операционной системы
- •Ядро ms dos
- •Командный процессор dos
- •Внешние команды dos
- •Файловая структура диска
- •Стартовый сектор
- •Каталоги
- •Область данных
- •Операционные системы Windows
- •Выбор платформы Windows
- •Термины
- •Архитектура Windows Режимы выполнения программного кода
- •Многозадачность
- •Управление памятью в Windows
- •Выполнение приложений
- •Интерфейс прикладного программирования Win32
- •Реестр Windows
- •Операционная система unix
- •Ядро и процессы unix
- •Диспетчер unix
- •Процессы unix
- •Дескриптор и контекст процесса
- •Иерархия процессов
- •Идентификаторы процесса
- •Группы процессов
- •Взаимодействие процессов
- •Процессы-«демоны»
- •Межпроцессные коммуникации unix
- •Сигналы
- •Сигналы unix по мере возрастания их значений:
- •Семафоры
- •Программные каналы (Pipes)
- •Очереди сообщений
- •Разделяемая память
- •Многопользовательская защита в unix
- •Идентификаторы пользователя и группы
- •Код защиты файла
- •Привилегированный пользователь
- •Эффективные и реальные идентификаторы
- •Свопинг и пейджинг в unix
- •Буфер кеш-памяти
- •Управление вводом/выводом
- •Специальные файлы
- •Взаимодействие драйверов с программной и аппаратной средой
- •Файловая система unix
- •Основные системные каталоги
- •Корневой каталог /
- •Каталог /var
- •Каталог /etc
- •Каталог /usr
- •Каталог /home (/export/home)
- •Каталог/opt (/opti, /opt2, ... /optn)
- •Команды управления swap
- •Команда mkfile
- •Специальные файлы
- •Класс устройства
- •Тип и номер
- •Связь физической и логической структур
- •Создание и монтирование файловой системы
- •Дисковые устройства в unix
- •Внутренняя структура файловой системы Распределение дискового пространства
- •Индексные дескрипторы
- •Системные вызовы unix для работы с файлами
- •Стандартные библиотечные функции ввода/вывода
- •Поточные функции ввода/вывода
- •Литература
- •Оглавление
-
Управление памятью в Windows
В Windows 9x и Windows 2000 каждый процесс имеет свое адресное пространство до 4 Гб памяти (виртуальное адресное пространство). Физическая память ограничена системными ресурсами : ОЗУ и дисковым пространством . Windows выделяет приложению 2 Гб памяти, а остальные 2 Гб резервируются для нужд ядра. Если объем ОЗУ меньше, чем 4 Гб , то Windows использует механизм виртуальной памяти : когда объем ОЗУ будет исчерпан, часть содержимого физической памяти переносится на жесткий диск. Этот механизм называется подкачкой.
Для каждого процесса ядро поддерживает таблицу страниц – структуру, позволяющую преобразовать виртуальные адреса в физические. Виртуальная память Windows использует механизм отображения области физической памяти на любую область 32-разрядных адресов для того, чтобы любая программа как бы обладала своим собственным физическим ОЗУ.
Каждая программа имеет собственное виртуальное адресное пространство , которое диспетчер виртуальной памяти преобразует в адреса физического ОЗУ или в файлы на жестком диске. Физическое и виртуальное (логическое) адресное пространство каждого процесса разделено на страницы – кванты памяти, размер которых зависит от компьютера. Ядро может перемещать страницы памяти в страничный файл на диске и обратно. Когда страница перемещается в физическую память, ядро обновляет таблицу страниц соответствующего процесса. Когда ядру требуется место в физической памяти, оно вытесняет самые старые страницы физической памяти в страничный файл. Все это происходит незаметно для приложения.
-
Выполнение приложений
Windows 9x и Windows NT выполняют приложения по –разному, особенно 16-разрядные.
Механизм сообщений Windows используется для управления приложениями. Сообщение генерируется всякий раз, когда происходит событие, например, перемещение мыши. Сообщения помещаются в очередь сообщений. Активное приложение постоянно просматривает свою очередь и извлекает из нее поступившие сообщения.
Обмен сообщениями в Windows основан на том, что у каждого приложения своя очередь сообщений, т.е. каждый поток имеет собственную очередь сообщений и не влияет на поведение других работающих приложений. Если одно из приложений разрушится, то остальные будут выполняться на основе вытесняющей многозадачности. 16-разрядные приложения используют общую очередь сообщений и в случае сбоя, пока проблема не будет решена, остальные приложения не получат доступа к очереди. Windows NT выполняет приложение в рамках виртуальной машины (ВМ). Фактически ВМ – среда для выполнения приложения, которая эмулирует все ресурсы компьютера. Для приложения ВМ – полноценный компьютер. Каждая виртуальная машина включает в себя следующие компоненты:
- карту памяти, определяющую объем виртуальной памяти , доступный этой виртуальной машине ;
- контекст выполнения , определяемый состоянием регистров виртуальной машины ;
- набор ресурсов , доступных приложению .
Основные достоинства виртуальной машины Windows:
- виртуальная память , выделенная отдельной ВМ , изолирована от виртуальной памяти , выделенной другой ВМ ;
- средства защиты памяти и портов ввода -вывода позволяют защитить каждое из входящих в систему устройств .
Драйвер устройства – программный компонент , получающий команды из ОС и преобразующий их в команды конкретным устройствам . Часто драйверы разрабатываются производителем устройства . Драйверы позволяют разрабатывать аппаратно независимые приложения . Компоненты , для которых используются драйверы :
-
дисплеи ;
-
звуковые карты ;
-
устройства связи ;
-
принтеры ;
-
сетевые адаптеры .
Драйвер может принадлежать к одной из групп : защищенного режима и реального режима .
Драйверы реального режима созданы для работы в реальном режиме ОС MS-DOS. Они не так безопасны и устойчивы , как драйверы защищенного режима . Драйвер защищенного режима (виртуальный драйвер) обеспечивает быстрый разделяемый доступ к устройству. Код защищенного режима выполняется более эффективно. Windows 9x поддерживает оба типа драйверов , а Windows NT только драйверы защищенного режима .