Сетевые операционные системы
Сетевые операционные системы позволяют управлять работой компьютерной сети и обеспечивают совместный доступ пользователей к сетевым файлам и ресурсам.
Сетевые операционные системы бывают одноранговыми и серверными. Серверные
системы отличаются от одноранговых большей сложностью и мощностью и полностью заменяют собой стандартную операционную систему. Одноранговые операционные системы могут устанавливаться на любой рабочей станции.
Серверные операционные системы состоят из двух частей: одна часть располагается на сервере, другая – на рабочих станциях.
Одноранговые сетевые ОС применяются на ПК самостоятельно в виде отдельньк программных средств, либо входят в состав пакетов, другую половину которых представляют программы, обслуживающие мощные компьютеры управления сетями, – серверы. Операционные системы, например OS/2 WarpConnect, Windows NT Workstation, Windows for Workgroups, Artisoft LANtastic Network Operating System, Performance Technologies PowerLan, — одноранговые.
К числу серверных операционных систем с высокой производительностью и широкими сетевыми возможностями
относятся Novell NetWare, Windows NT Server, OS/2 LAN Server, OS/2 SMP, VINES, UNIX Ware, SCO Open Server, Solans.
Операционная система Windows 2000 Server базируется на платформе Windows NT Server, в отличие от которой имеет более высокую производительность и надежность. В состав семейства входят. Windows 2000 Server – для серверов рабочих групп, Windows 2000 Advanced Server – для приложений и более надежных серверов, Windows 2000 Datacenter Server –для наиболее ответственных систем обработки данных.
1.6 Как Windows выполняет программный код
Операционная система Windows для поддержки своей эффективности и целостности использует два режима: пользователя и ядра. Архитектура процессора Intel 80386 и следующих моделей определяет четыре уровня привилегий, называемых кольцами, для защиты кода и данных системы от случайного или преднамеренного изменения со стороны менее привилегированного кода. Такой метод выполнения кода называется моделью защиты Intel.
Уровень привилегий 0, известный как режим ядра,
максимальный. Уровень привилегий 3, или режим пользователя, – минимальный. Когда код выполняется на некотором уровне привилегий, говорят, что он выполняется в соответствующем кольце.
Операционные системы семейства Windows
используют только кольца 0 и 3 (рис.1).
Режим ядра (кольцо 0) — это наиболее привилегированный режим. Работая в нем, код имеет прямой доступ ко всей аппаратуре и всему адресному пространству. Программное обеспечение, выполняющееся в режиме ядра:
·
имеет прямой доступ к аппаратному обеспечению;
· имеет доступ ко всей памяти компьютера;
· не может быть вытеснено в страничный файл на жестком диске;
· выполняется с большим приоритетом, чем процессы режима пользователя.
В частности, в кольце 0 выполняется код ядра операционных систем Windows 95/98 и Windows NT. Поскольку компоненты режима ядра защищены архитектурно, процессор предотвращает их изменение другой программой. Хотя кольцо 0 предоставляет максимальную защиту, не следует запускать в кольце 0 что попало – ведь компоненты этого режима имеют доступ ко всей системе. Если программный компонент в режиме ядра потерпит крах, это может разрушить всю систему.
Поскольку одна из задач Windows 98 – максимальная обратная совместимость, многие старые 16-разрядные драйверы и приложения используют прямой доступ к аппаратуре. Windows NT не предоставляет таким приложениям требуемый уровень доступа, поэтому зачастую они не могут работать под управлением Windows NT Workstation и Windows NT Server.
Режим пользователя
предоставляет меньше привилегий, нежели режим ядра, –в частности, он не обеспечивает прямой доступ к аппаратуре. Код, выполняющийся в кольце 3, ограничен выделенным ему адресным пространством, а для вызова системных сервисов использует интерфейс прикладного программирования (API) Windows.
Процессы режима пользователя характеризуются следующими особенностями.
· Не имеют прямого доступа к аппаратуре.
Это защищает систему от неисправных приложений или неавторизованного доступа.
· Ограничены выделенным им адресным пространством. Таким образом операционная система обеспечивает свою целостность. Процессу выделяется определенная область адресов и запрещено выходить за эту область.
· Могут быть вытеснены из физической памяти в виртуальную память на жестком диске.
Механизм виртуальной памяти позволяет использовать пространство на жестком диске как дополнительное ОЗУ. О виртуальной памяти подробно рассказано чуть позже в этой главе.
· Выполняются с меньшим приоритетом, чем компоненты режима ядра. Поскольку приоритет процессов режима пользователя ниже, они получают меньший доступ к процессору, чем процессы режима ядра. Это гарантирует, что операционная система не будет ожидать окончания работы такого процесса. Кроме того, неисправный программный компонент, выполняющийся в режиме пользователя, не вызовет крах всей системы и не повлияет на другие приложения, работающие параллельно.
Приложение, разработанное для Windows, состоит из одного или более процессов (рис. 2). Процесс принадлежат адресное пространство и выделенные ресурсы, а также один или более потоков, выполняющихся в его контексте.
Поток – это основная единица, которой операционная система выделяет процессорное время, и минимальный «квант» кода, который может быть запланирован для выполнения. Кроме того, это часть процесса, выполняющаяся в каждый момент времени. Поток работает в адресном пространстве процесса и использует ресурсы, выделенные процессу.