Операционные системы и сети. Клиентское программное обеспечение. Сетевые и распределенные операционные системы

К таким возможностям можно отнести:

  • поддержку сетевого оборудования
  • поддержку сетевых протоколов
  • поддержку протоколов маршрутизации
  • поддержку фильтрации сетевого трафика
  • поддержку доступа к удалённым ресурсам, таким как принтеры, диски и т. п. по сети
  • поддержку сетевых протоколов авторизации
  • наличие в системе сетевых служб позволяющих удалённым пользователям использовать ресурсы компьютера

Примеры сетевых операционных систем:

  • Microsoft Windows (NT, XP, Vista, Seven)
  • Различные UNIX системы, такие как Solaris , FreeBSD
  • Различные GNU/Linux системы
  • ZyNOS компании ZyXEL

Основное назначение

Главными задачами являются разделение ресурсов сети (например, дисковые пространства) и администрирование сети. С помощью сетевых функций системный администратор определяет разделяемые ресурсы, задаёт пароли, определяет права доступа для каждого пользователя или группы пользователей. Отсюда деление:

  • сетевые ОС для серверов;
  • сетевые ОС для пользователей.

Существуют специальные сетевые ОС, которым приданы функции обычных систем (Пр.: Windows NT) и обычные ОС (Пр.: Windows XP), которым приданы сетевые функции. Сегодня практически все современные ОС имеют встроенные сетевые функции.


Wikimedia Foundation . 2010 .

  • Моргунов

Смотреть что такое "Сетевая операционная система" в других словарях:

    Сетевая операционная система - операционная система, обеспечивающая обработку, хранение и передачу данных в информационной сети. Сетевая операционная система определяет взаимосвязанную группу протоколов верхних уровней, обеспечивающих основные функции сети: адресацию объектов … Финансовый словарь

    сетевая операционная система - Программы, управляющие сетью. Обеспечивают разделение ресурсов, средства обеспечения безопасности и управления. В общем случае сетевая ОС работает поверх стандартной (несетевой) ОС. Тематики сети… …

    Сетевая операционная система Cairo - разработанная корпорацией Microsoft сетевая операционная система с объектно ориентированной архитектурой. Основу ОС Cairo составляет объектно ориентированная файловая система. ОС Cairo обеспечивает распределенную среду обработки данных. По… … Финансовый словарь

    Сетевая операционная система AIX - разработанная корпорацией IBM версия операционной системы UNIX, допускающая возможность ее использования на вычислительных системах любых размеров и производительности. ОС AIX выполняет симметричную мультипроцессорную обработку, распараллеливает… … Финансовый словарь

    сетевая (операционная) система, базирующаяся на стандарте Ethernet - — [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом EN Xerox Network SystemXNS … Справочник технического переводчика

Сетевой операционной системой признается ОС, которая имеет встроенные возможности для работы с компьютерными сетями. К таким своеобразным возможностям могут относиться:

  • различная поддержка сетевого оборудования и ;
  • настройка поддержки и фильтрации сетевого трафика,
  • наличие в данной системе сетевых служб, которые позволяли бы использовать удаленным пользователям ресурсы данного компьютера.

Сетевые операционные системы - пример таких оболочек:

  • Novell NetWare.
  • Многие GNU/Linux системы.
  • Microsoft Windows (95, NT и более поздние).
  • Многие UNIX системы, такие как Solaris, FreeBSD.
  • IOS; ZyNOS компании ZyXEL.

Главными задачами системных ОС являются разделение ресурсов сети (например, дисковых пространств) и ее администрирование. С помощью сетевых функций системный администратор определяет разделяемые ресурсы, задает пароли, определяет права доступа для каждого пользователя или группы пользователей.

Которых приведен выше, имеют деление на:

  • сетевые ОС для серверов;
  • сетевые ОС для пользователей.

Имеются особые ОС такого типа, которым даны функции типичных конструкций (Windows NT) и простые ОС (Windows XP), каковым даны сетевые функции. В настоящее время фактически всегда используемые ОС обладают интегрированными функциями.

Структура общесетевой ОС

Сетевая автооперационная концепция является базой для какой-либо вычислительной системы. Любое вычислительное устройство является самостоятельным в своей работе. Вследствие этого под сетевой ОС в современном значении подразумевается комплекс нескольких единичных ПК, взаимодействующих между собой посредством отправки друг другу информации и распределения ресурсов согласно общим законам — протоколам.

В более узком значении такие операционные системы, пример которых можно увидеть на большинстве современных устройств - это комплекс программ, установленных на компьютере, позволяющих ему функционировать в связке с другими устройствами.

Особенности

Следует особо отметить ряд элементов, благодаря которым ОС такого типа может функционировать:

  • распределение временной памяти для управления процессорами в многопроцессорных устройствах;
  • возможность управления удаленными компьютерами.

Другими словами, возможность предоставления своих ресурсов и информации в единое использование являются неотделимым элементом сетевой ОС. Кроме того, операционные системы, примеры которых рассматривались выше, в обязательном порядке включают в себя функции:

  • блокировки файлов и записей (что является необходимым, когда устройства используют совместно);
  • управления справочниками имен ресурсов сети;
  • обработку запросов допуска к системе файлов и различной информации в удаленной форме;
  • управления очередностями запросов удаленных юзеров к собственным устройствам.

Составные элементы

Средства запроса допуска к удаленным ресурсам и возможности их применения представляют собой клиентский элемент ОС, называемый редиректором. Данный элемент осуществляет определение и переадресацию запросов в сеть к отдаленным ресурсам от пользователей и различных приложений. В данном случае запрос исходит от приложения в локальном виде, а переходит в сеть в ином формате, соответствующем условиям сервера.

Клиентская часть, кроме того, принимает с других серверов ответы и видоизменяет их в локальные форматы. Поэтому удаленные и локальные запросы воспринимаются приложениями одинаково.

Сетевые операционные системы, пример функционирования которых описан выше, также обладают коммуникационные средствами, обеспечивающими в сети обмен информацией. Данные средства гарантируют адресацию и буферизацию поступающих уведомлений, подбор маршрута передачи в сети сообщения, безопасность передачи и т. п. Другими словами, этот элемент отвечает за транспортировку в сети информации.

Исходя из функций, имеющихся в том или ином компьютере, его ОС может не обладать серверной либо клиентской составляющей.

Примеры сетевых операционных систем первого поколения

Первые сетевые операционные системы выглядели как комплекс имеющейся локальной ОС и сетевой оболочки в виде надстройки над ней. В таком случае локальная ОС обладала минимальным количеством сетевых функций, поскольку их выполнением занималась непосредственно оболочка. Наиболее известной системой такого типа, получившей по всему миру широкое распространение, стала MS DOS. Начиная с третьего дистрибутива этой оболочки, у нее появились такие интегрированные функции, равно как блокирование записей и файлов, требуемые с целью общего допуска к файлам. Аналогичный принцип действия имеют и современные повсеместно используемые сетевые ОС - LANtastic и PersonalWare.

Современные этапы развития

Однако наиболее перспективным является способ разработки сетевых ОС, первоначально специализированных для запуска в сети. Функции таких оболочек интегрированы глубоко в их ключевые системные модули, что гарантирует их логичную слаженность, несложность эксплуатации и обновления, а также хорошую эффективность. Сегодня выделяется много ресурсов именно на то, чтобы совершенствовать такие операционные системы. Примеры программ такого типа - различные дистрибутивы Windows NT компании Microsoft.

Такое понятие, как сетевые операционные системы, начало приобретать широкое распространение в 1995 году. Как можно догадаться, этому поспособствовало появление нового продукта от компании Microsoft. А именно - операционной системы Windows 95. Она и считается родоначальницей данного класса продуктов. Основное отличие такой ОС - это возможность полноценной работы в сети, в сетевом окружении. Конечно, были и до этого программы, которые могли в таком режиме функционировать. Например, UNIX и Novell NetWare - это тоже сетевые операционные системы. Но они активно использовались лишь в строго определенных кругах, из-за этого не получили широкого распространения. А вот Microsoft сделал действительно успешный продукт, который стал родоначальником целого семейства таких программ.

Какими они бывают

Наибольшее распространение получили следующие ОС такого класса:

  • Windows;
  • Linux и Unix;
  • Android;
  • Novell Net Ware;
  • Mac OS.

Некоторые из них успешно развиваются, некоторые морально и физически устарели, встретить их уже достаточно проблематично. Но одно можно с уверенностью утверждать: все это - сетевые операционные системы.

ПО Microsoft

Как было сказано ранее, все продукты североамериканского софтверного гиганта в обязательном порядке снабжаются полноценной поддержкой работы в сети. Последняя версия Windows с индексом 8 - не исключение, она обладает возможностью полноценной работы в сети. Это наиболее массовый продукт для персональных компьютеров, который нашел повсеместное применение. Самой популярной по количеству установок является операционная система Windows XP. Несмотря на то, что она выпущена был более 10 лет назад, она все равно продолжает работать на достаточно большом количестве компьютеров и устраивает пользователей, которые ее используют.

Linux и Unix

Многие квалифицированные специалисты с уверенностью заявляют, что у Linux и Unix мало общего. Но это на самом деле не так. Linux был разработан на базе Unix, и исходный код у них был похожим. Дальнейшим развитием этой линейки ОС стало появление Android. Первые два программных продукта ориентированы на работу на компьютере, а вот последняя - это наиболее успешная операционная система для мобильных устройств. Наиболее часто она применяется в планшетах, "умных" часах и смартфонах. Это тоже сетевые операционные системы.

Novell Net Ware

Продукт компании Novell с названием Net Ware не приобрел большого распространения. Это и закономерно, поскольку данная ОС является серверной. Сейчас она получила логическое продолжение в виде Open Enterprise Server, которую еще можно встретить на некоторых серверах. Она еще является достаточно свежим продуктом, выпущенным в 2011 году.

iOS и Mac OS

Компания Apple разработала два подобных продукта. Первый - это iOS, используемый в мобильном сегменте продукции данного производителя (планшеты и смартфоны). Второй - это Mac OS, применяемый на персональных компьютерах.

Заключение

Загрузка операционной системы с поддержкой сети отличается от обычной тем, что в ее процессе происходит инициализация сетевых служб. Именно за счет них и стал возможен обмен информацией между двумя различными компьютерами. Это и послужило первоисточником цифровой революции, свидетелями которой мы поневоле стали. Теперь без проблем ПК, которые находятся в разных частях мира, могут связаться между собой.

Реферат по курсу “ КОМПЬЮТЕРНЫЕ СЕТИ ”

СЕТЕВЫЕ ОПЕРАЦИОННЫЕ СИСТЕМЫ

Студента группы К7-05П

Ненарокова С.С.

Общий обзор сетевых ОС

Сетевая операционная система необходима для управления потоками сообщении между рабочими станциями и серверами. Она может позволить любой рабочей станции работать с разделяемым сетевым диском или принтером, которые физически не подключены к этой станции.

В некоторых компьютерных сетях есть выделенный автономный компьютер который выполняет функции только файлового сервера. Такие системы называются ЛВС с файловым сервером. В других, малых ЛВС, рабочая станция может одновременно выполнять и функии файлового сервера. Это одноранговые ЛВС.

Компоненты сетевой операционной системы на каждой рабочей станции и файловом сервере взаимодействуют друг с другом посредством языка, называемым протоколом.Одним из общих протоколов является протокол фирмы IBM NetBIOS (Network Basic Input Output System - Сетевая операционная система ввода-вывода). Другим распространенным протоколом является IPX (Internet-work Packet Exchange - Межсетевой обмен пакетами) фирмы Novell.

Ниже приведен список некоторых сетевых опнрационных систем с указанием их производителей:

Операционная система Производитель
Apple Talk Apple
LANtastic Artisoft
NetWare Novell
NetWare Lite Novell
Personal NetWare Novell
NFS Sun Microsystems
OS/2 LAN Manager Microsoft
OS/2 LAN Server IBM
Windows NT Advanced Server Microsoft
POWERfusion Performance Technology
POWERLan Performance Technology
Vines Ba

ОС NetWare фирмы Novell

Novell была одной из первых компаний, которые начали создавать ЛВС.

Она производила как аппаратные средства, так и программные, однако в последнее время фирма Novell сконцентрировала усилия на программных средствах ЛВС.

В среде NetWare способно работать большее количество приложений чем в любой другой ЛВС.

ОС NetWare способна поддерживать рабочие станции, управляемые DOS, DOS и Windows, OS/2, UNIX, Windows NT, Mac System 7 и другими ОС.

ЛВС NetWare может работать с большим количеством различных типов сетевых адаптеров, чем любая другая операционная система.Для достижения поставленных целей вы можете выбрать аппарвтные средства от множества разных поставщиков. С NetWare можно использовать ARCnet, EtherNet, Token Ring или практически любой другой тип сетевого адаптера.

ЛВС NetWare может разростаться до огромных размеров.

ЛВС NetWare надежно работает.

Средства защиты данных, предоставляемые NetWare, более чем достаточны для большинства ЛВС.

NetWare допускает использование более, чем 200 типов сетевых адаптеров, более чем 100 типов дисковых подсистем для хранения данных, устройств дублирования данных и файловых серверов.

Фирма Novell имеет контракты о поддержке ОС NetWare с наиболее крупными и мощными из независимых организаций, таких как Bell Atlantic, DEC, Hewlett-Packard, Intel, Prime, Unisys и Xerox.

Рассмотрим подробнее структуру данной ОС

Файловый сервер в NetWare является обычным ПК, сетевая ОС которого осущест-вляет управление работой ЛВС.Функции управления включают координацию рабочих станций и регулирование процесса разделения файлов и принтера в ЛВС.Сетевые файлы всех рабочих станций хранятся на жестком диске файлового сервера, а не на дисках рабочих станций.

Имеется три версии ОС NetWare. Версия 2.2 может работать на компьютере 80286 (или более поздних моделях), используемом в качестве файлового сервера. При покупке ОС необходимо приобретать лицензию на число пользователей (5, 10, 50, 100). Версии ОС NetWare 3.12 и более новая 4.0 ориентированы на 32 разрядные шинные архитектуры и процессоры 80386, 80486 или Pentium. Есть также варианты сетевой ОС NetWare, предназначенные для работы под управлением многозадачных, многопользовательских операционных систем OS/2 и UNIX. Версию 3.12 ОС NetWare можно приобрести для 20, 100 или 250 пользователей, а версия 4.0 имеет возможность поддержки до 1000 пользователей.

Все версии ОС хорошо совместимы между собой, поэтому в одной и той же компьютерной сети можно иметь файловые серверы с разными версиями ОС NetWare.

Некоторые команды ОС NetWare .

NPRINT - передача текстового файла на принтер.

LOGIN - команда подсоединения к серверу (для отсоединения - LOGOUT)

WHOAMI - идентификация пользователя (информация о текущем сеансе).

USERLIST - выдача имен пользователей, подсоединенных к ЛВС в данный момент.

SEND - посылка сообщения какому-либо пользователю.

В NetWare различают три типа накопителей: локальные накопители, сетевые накопители и поисковые накопители. Локальные накопители физически подключены к рабочим станциям. Сетевые накопители - это накопители на жестких дисках файлового сервера. Аналогично тому, как в DOS, применяется средство PATH для задания списка накопителей и директорий, в которых по умолчанию разыскиваются прикладные программы, в ОС NetWare используется понятие поискового накопителя.

МАР - просмотр текущего статуса накопителей (без параметров), и переназначение их (с параметрами).

ОС NetWare позволяет манипулировать файлами и директориями различными способами.Можно копировать, уничтожать, переименовывать, записывать, распечатывать и разделять файлы в ЛВС. Есть также определённая система прав доступа к файлам и директориям.

Как файлы так и директории на сервере в ЛВС под управлением ОС NetWare имеют аттрибуты.Эти аттрибуты могут отменять права, предоставленные пользователям в ЛВС.

RIGHTS - список прав которыми вы обладаете для данной директории.

NCOPY - копирование файлов.

NDIR - список файлов данной директории. В отличие от команды DOS DIR она выводит дополнительную информацию для каждого файла и директории.

CAPTURE - перенапрвление печати на разделяемый сетевой принтер.

Сервер и файловая система с ОС NetWare

Есть некоторые отличия сервера ЛВС NetWare от обычного ПК. Для накопителя на жестком диске этого компьютера применена структура форматирования совершенно отличная от той, которая применяется в DOS. Невозможно получить доступ к жесткому диску такого сервера, если вы загрузили DOS с дискеты. Но для пользователя ЛВС который работает под управлением DOS и получил доступ к серверу со своего терминала,жесткий диск сервера представляется просто как дополнительный к уже существующим.

Формат записи данных на жестком диске, который применен в ОС NetWare, включает большее количество информации о файлах и директориях, чем это было возможно в DOS. Файлы в ОС NetWare наряду с аттрибутами “только для чтения”, “скрытый” и “архивный” могут дополнительно иметь атрибут “неразделяемый” и “разделяемый” (он указывает на возможность разделения файла в ЛВС многими пользователями одновременно). Кроме этого, ОС NetWare добавляет к информации о файле следующие элементы: исходную дату создания, имя создателя файла, дату последнего доступа к файлу, дату последней модификации файла, дату и время последней архивации файла.

Защита данных в ОС NetWare

Система защиты данных в ЛВС NetWare включает в себя следующие меры:

Защита от несанкционированного присоединения к ЛВС путем присвоения имен и паролей пользователям, а также ограничениями на доступ к ЛВС пользователей с определенными именами в определенное время дня.

Система доверяемых прав (trustee rights), позволяющая контролировать, к каким файлам и директориям может имет доступ пользователь, а также какие операции он может производить с ними.

Система аттрибутов для директорий или файлов, которые определяют возможность копирования, просмотра, записи и разделения их в ЛВС.

Для каждой директории существует маска максимальных прав , хранящая максимальные привелегии, которые может в ней иметь пользователь. Ниже перечислены восемь прав, которые могут быть указаны в этой маске:

Право чтения из открытых файлов

Право записи в открытые файлы

Право открывать файлы

Право создавать новые файлы

Право уничтожать файлы

Право создавать, переименовывать или стирать поддиректории, и устанавливать доверяемые права над директориями внутри директории и ее поддиректориях

Право производить поиск файлов в директории

Право модификации аттрибутов файла

Отказоустойчивость системы NetWare

Отказоустойчивость является на сегодняшний день одной из наиболее важных характеристик, и разработчики NetWare уделили должное внимание этому вопросу. В версиях 2.2, 3.12 и 4.0 ОС NetWare применена технология SFT (System Fault Tolerant - C истема защиты при отказах оборудования ). C истема защиты при отказах оборудо -вания означает бесперебойную работу файлового сервера при различного рода отказах аппаратных средств. Во всех версиях NetWare имеются средства минимизации потерь данных в случае физических повреждений поверхности накопителей. Система SFT пошла дальше в этом отношении предложив методы зеркального отображения дисков и дублирования дисков

В системе NetWare имеется возможность контроля сигналов источника беспере-бойного питания UPS. При обнаружении перебоя с подачей электроэнергии ОС уведомляет пользователей об этом и сообщает им каким промежутком времени они распологают для завершения своей работы. По истечении этого промежутка времени ОС автоматически закроет все файлы в системе и выключит себя.

Наконец, система SFT предлагает систему TTS (трассировки обработки запроса). Прикладные программы, использующие эту систему, интерпретируют последова-тельность действий с базами данных как одну операцию - либо все действия выполнены успешно, либо ни одно из них

Сравнительные характеристики различных версий

Сетевая операционная система (англ. Network operating system) – это операционная система, которая обеспечивает обработку, хранение и передачу данных в информационной сети.

Главными задачами сетевой ОС являются разделение ресурсов сети (например, дисковые пространства) и администрирование сети. Системный администратор определяет разделяемые ресурсы, задаёт пароли, определяет права доступа для каждого пользователя или группы пользователей. Отсюда сетевые ОС делят на сетевые ОС для серверов и сетевые ОС для пользователей.

Существуют специальные сетевые ОС, которым приданы функции обычных систем (например, Windows NT) и обычные ОС (Windows XP), которым приданы сетевые функции. Практически все современные ОС имеют встроенные сетевые функции.

Сетевая операционная система составляет основу любой вычислительной сети. Каждый компьютер в сети в значительной степени автономен, поэтому под сетевой операционной системой в широком смысле понимается совокупность операционных систем отдельных компьютеров, взаимодействующих с целью обмена сообщениями и разделения ресурсов по единым правилам - протоколам. Эти протоколы обеспечивают основные функции сети: адресацию объектов, функционирование служб, обеспечение безопасности данных, управление сетью. В узком смысле сетевая ОС - это операционная система отдельного компьютера, обеспечивающая ему возможность работать в сети.

В зависимости от того, как распределены функции между компьютерами сети, сетевые операционные системы, а следовательно, и сети делятся на два класса: одноранговые и двухранговые, которые чаще называют сетями с выделенными серверами.

Если компьютер предоставляет свои ресурсы другим пользователям сети, то он играет роль сервера. При этом компьютер, обращающийся к ресурсам другой машины, является клиентом. Компьютер, работающий в сети, может выполнять функции либо клиента, либо сервера, либо совмещать обе функции.

Если выполнение серверных функций является основным назначением компьютера, то такой компьютер называется выделенным сервером. В зависимости от того, какой ресурс сервера является разделяемым, он называется файл-сервером, факс-сервером, принт-сервером, сервером приложений и т.д. Выделенный сервер не принято использовать в качестве компьютера для выполнения текущих задач, не связанных с его основным назначением, так как это может уменьшить производительность его работы как сервера.

На выделенных серверах желательно устанавливать ОС, специально оптимизированные для выполнения определенных серверных функций. Поэтому в подобных сетях с чаще всего используются сетевые операционные системы, в состав которых входит нескольких вариантов ОС, отличающихся возможностями серверных частей. Например, сетевая ОС Novell NetWare имеет серверный вариант, оптимизированный для работы в качестве файл-сервера.

В одноранговых сетях все компьютеры равны в правах доступа к ресурсам друг друга. Каждый пользователь может по своему желанию объявить какой-либо ресурс своего компьютера разделяемым, после чего другие пользователи могут его использовать. В таких сетях на всех компьютерах устанавливается одна и та же ОС.

14) Архитектура ОС Windows Первые версии системы имели микроядерный дизайн, основанный на микроядре Mach, которое было разработано в университете Карнеги-Меллона. Архитектура более поздних версий системы микроядерной уже не является.

Причина заключается в постепенном преодолении основного недостатка микроядерных архитектур - дополнительных накладных расходов, связанных с передачей сообщений. По мнению специалистов Microsoft, чисто микроядерный дизайн коммерчески невыгоден, поскольку неэффективен. Поэтому большой объем системного кода, в первую очередь управление системными вызовами и экранная графика, был перемещен из адресного пространства пользователя в пространство ядра и работает в привилегированном режиме. В результате в ядре ОС Windows переплетены элементы микроядерной архитектуры и элементы монолитного ядра (комбинированная система). Сегодня микроядро ОС Windows слишком велико (более 1 Мб), чтобы носить приставку "микро". Основные компоненты ядра Windows NT располагаются в вытесняемой памяти и взаимодействуют друг с другом путем передачи сообщений, как и положено в микроядерных операционных системах. В тоже время все компоненты ядра работают в одном адресном пространстве и активно используют общие структуры данных, что свойственно операционным системам с монолитным ядром.

Высокая модульность и гибкость первых версий Windows NT позволила успешно перенести систему на такие отличные от Intel платформы, как Alpha (корпорация DEC), Power PC (IBM) и MIPS (Silicon Graphic). Более поздние версии ограничиваются поддержкой архитектуры Intel x86. Упрощенная схема архитектуры, ориентированная на выполнение Win32-приложений, показана на рис.

Управление процессами

Важнейшей частью операционной системы, непосредственно влияющей на функционирование вычислительной машины, является подсистема управления процессами. Процесс (или по-другому, задача) - абстракция, описывающая выполняющуюся программу. Для операционной системы процесс представляет собой единицу работы, заявку на потребление системных ресурсов. Подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими в системе процессами, а также занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми системными ресурсами, поддерживает взаимодействие между процессами.

Понятие процесса характеризует некоторую совокупность набора исполняющихся команд, ассоциированных с ним ресурсов (выделенная для исполнения память или адресное пространство, стеки, используемые файлы и устройства ввода-вывода и т. д.) и текущего момента его выполнения (значения регистров, программного счетчика, состояние стека и значения переменных), находящуюся под управлением операционной системы. Не существует взаимно-однозначного соответствия между процессами и программами, обрабатываемыми вычислительными системами. Как будет показано далее, в некоторых операционных системах для работы определенных программ может организовываться более одного процесса или один и тот же процесс может исполнять последовательно несколько различных программ. Более того, даже в случае обработки только одной программы в рамках одного процесса нельзя считать, что процесс представляет собой просто динамическое описание кода исполняемого файла, данных и выделенных для них ресурсов. Процесс находится под управлением операционной системы, поэтому в нем может выполняться часть кода ее ядра (не находящегося в исполняемом файле!), как в случаях, специально запланированных авторами программы (например, при использовании системных вызовов), так и в непредусмотренных ситуациях (например, при обработке внешних прерываний).

16) Планирование процессов включает в себя решение следующих задач:

Определение момента времени для смены выполняемого процесса;

Выбор процесса на выполнение из очереди готовых процессов;

Переключение контекстов "старого" и "нового" процессов.

Первые две задачи решаются программными средствами, а последняя в значительной степени аппаратно (см. раздел 2.3. "Средства аппаратной поддержки управления памятью и многозадачной среды в микропроцессорах Intel 80386, 80486 и Pentium").

Существует множество различных алгоритмов планирования процессов, по разному решающих вышеперечисленные задачи, преследующих различные цели и обеспечивающих различное качество мультипрограммирования. Среди этого множества алгоритмов рассмотрим подробнее две группы наиболее часто встречающихся алгоритмов: алгоритмы, основанные на квантовании, и алгоритмы, основанные на приоритетах.

В соответствии с алгоритмами, основанными на квантовании, смена активного процесса происходит, если:

процесс завершился и покинул систему,

произошла ошибка,

процесс перешел в состояние ОЖИДАНИЕ,

исчерпан квант процессорного времени, отведенный данному процессу.

Управление памятью

Память является важнейшим ресурсом, требующим тщательного управления со стороны мультипрограммной операционной системы. Распределению подлежит вся оперативная память, не занятая операционной системой. Обычно ОС располагается в самых младших адресах, однако может занимать и самые старшие адреса. Функциями ОС по управлению памятью являются: отслеживание свободной и занятой памяти, выделение памяти процессам и освобождение памяти при завершении процессов, вытеснение процессов из оперативной памяти на диск, когда размеры основной памяти не достаточны для размещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место, а также настройка адресов программы на конкретную область физической памяти.

Типы адресов

Для идентификации переменных и команд используются символьные имена (метки), виртуальные адреса и физические адреса

Символьные имена присваивает пользователь при написании программы на алгоритмическом языке или ассемблере.

Виртуальные адреса вырабатывает транслятор, переводящий программу на машинный язык. Так как во время трансляции в общем случае не известно, в какое место оперативной памяти будет загружена программа, то транслятор присваивает переменным и командам виртуальные (условные) адреса, обычно считая по умолчанию, что программа будет размещена, начиная с нулевого адреса. Совокупность виртуальных адресов процесса называется виртуальным адресным пространством. Каждый процесс имеет собственное виртуальное адресное пространство. Максимальный размер виртуального адресного пространства ограничивается разрядностью адреса, присущей данной архитектуре компьютера, и, как правило, не совпадает с объемом физической памяти, имеющимся в компьютере.

Физические адреса соответствуют номерам ячеек оперативной памяти, где в действительности расположены или будут расположены переменные и команды. Переход от виртуальных адресов к физическим может осуществляться двумя способами. В первом случае замену виртуальных адресов на физические делает специальная системная программа - перемещающий загрузчик. Перемещающий загрузчик на основании имеющихся у него исходных данных о начальном адресе физической памяти, в которую предстоит загружать программу, и информации, предоставленной транслятором об адресно-зависимых константах программы, выполняет загрузку программы, совмещая ее с заменой виртуальных адресов физическими.

Второй способ заключается в том, что программа загружается в память в неизмененном виде в виртуальных адресах, при этом операционная система фиксирует смещение действительного расположения программного кода относительно виртуального адресного пространства. Во время выполнения программы при каждом обращении к оперативной памяти выполняется преобразование виртуального адреса в физический. Второй способ является более гибким, он допускает перемещение программы во время ее выполнения, в то время как перемещающий загрузчик жестко привязывает программу к первоначально выделенному ей участку памяти. Вместе с тем использование перемещающего загрузчика уменьшает накладные расходы, так как преобразование каждого виртуального адреса происходит только один раз во время загрузки, а во втором случае - каждый раз при обращении по данному адресу.

В некоторых случаях (обычно в специализированных системах), когда заранее точно известно, в какой области оперативной памяти будет выполняться программа, транслятор выдает исполняемый код сразу в физических адресах.