ВУЗ:
учетных записей пользователей, определение лимитов дискового пространства для отдельных пользователей и координацию
усилий по решению возникающих в системе проблем.
Главным недостатком традиционной пакетной обработки является то, что пользователь лишен возможности взаимодей-
ствовать с программой с того момента, как она поставлена в очередь. Такой подход допустим для приложений, в которых все
данные и процедуры определены заранее (например, при подготовке платежных ведомостей). Однако он неприемлем, если
пользователю необходимо взаимодействовать с программой в процессе ее выполнения. Примером могут служить системы
резервирования (мест, билетов), в которых информация о резервировании и отказах должна быть доступна сразу же после
поступления; системы обработки текстов, поддерживающие интерактивное создание и обновление документов; а также ком-
пьютерные игры, в которых взаимодействие с машиной является основным элементом игры.
Для решения этих проблем были созданы новые операционные системы, которые позволяют выполнять программы, ве-
дущие диалог с пользователем, работающим за удаленным терминалом или рабочей станцией. Такой режим функциониро-
вания называется интерактивной или диалоговой обработкой (interactive processing) (рис. 3.2). Для работы интерактивных
систем требуется, чтобы выполняемые машиной действия координировались с происходящими в ее среде событиями. Эта
координация действий машины и среды именуется обработкой в реальном времени (real-time processing).
Если бы от интерактивных систем требовалось обслуживать в каждый момент времени только одного пользователя, то
обработка в реальном времени не вызвала бы никаких проблем. Однако вычислительные машины стоили дорого, поэтому
каждая машина должна была обслуживать несколько пользователей. Вполне типичной являлась ситуация, когда нескольким
пользователям одновременно требовалось получить доступ к машине в интерактивном режиме, поэтому выполнение работы
в реальном времени оказывалось затруднительным.
Рис. 3.2. Интерактивная обработка
Если в такой многопользовательской среде операционная система будет придерживать строго поочередного выполнения
заданий, то только один из пользователей сможет получить удовлетворительное обслуживание в реальном времени.
Решение этой проблемы состоит в разработке операционной системы, способной организовать постоянное чередование
выполнения частей различных заданий с помощью процесса разделения времени (time sharing). Этот метод заключается в
разделении машинного времени на интервалы, или кванты, с последующим ограничением времени непрерывного выполне-
ния каждой программы одним квантом времени за один раз. В конце каждого интервала текущее задание выгружается, за
время следующего кванта выполняется новое. При быстром чередовании заданий подобным образом создается иллюзия, что
несколько заданий выполняется в машине одновременно. В зависимости от типа выполняемых заданий ранние системы раз-
деления времени позволяли обслуживать в реальном времени одновременно до 30 пользователей.
Сегодня разделение времени активно используется как в многопользовательских системах, так и в системах с одним
пользователем, хотя раньше этот режим назывался многозадачным (multitasking), поскольку создавалась полная иллюзия
односменного выполнения нескольких задач. Независимо от того, одно- или многопользовательской является данная вычис-
лительная среда, было установлено, то применение режима разделения времени повышает эффективность работы машины.
Конечно, вас это может удивить, особенно если принять во внимание, что процесс переключения заданий, обязательный при
разделении времени, требует немалых дополнительных затрат времени. Действительно, время, потраченное на переключе-
ния между задачами, непродуктивно. Однако без использования такого режима разделения времени компьютер большую
часть своего рабочего времени будет проводить в ожидании того, когда завершат работу периферийные устройства или
пользователь введет свой следующий запрос. Режим разделения времени позволяет использовать это бесполезно теряемое
время на решение других задач. В результате пока одно задание ожидает какое-либо событие, выполняется другое задание. В
конечном итоге при использовании режима разделения времени вся группа одновременно запущенных заданий будет вы-
полнена быстрее, чем в случае их последовательного выполнения.
Многопроцессорные системы. В последние годы необходимость в совместном использовании информации и ресурсов
различными машинами породила потребность соединить компьютеры для обмена информацией. Для этого были созданы
ставшие популярными объединенные компьютерные системы, называемые сетями (network или net). Сегодня концепция
большой центральной машины, обслуживающей многих пользователей, в основном уступила место концепции множества
маленьких машин, объединенных в сеть, в которой пользователи совместно используют ресурсы, рассредоточенные по всей
системе, – устройства печати, программные пакеты, устройства памяти и информацию. Основной пример – это Интернет
(Internet), глобальная сеть сетей, которая сегодня объединяет миллионы компьютеров во всем мире. Мы познакомимся с
Internet подробнее в разделах 3.5 и 3.6.
Большинство проблем координации действий, возникающих при создании сетей, очень похожи на проблемы, с которы-
ми пришлось столкнуться при разработке операционных систем. Фактически программное обеспечение для управления се-
тью может рассматриваться как сетевая операционная система. В этом свете разработка сетевого программного обеспечения
является естественным расширением концепции операционной системы. Хотя первые сети создавались как свободно соеди-
няемые между собой отдельные машины, каждая из которых являлась собственной операционной системой, дальнейшие
исследования в области сетевой технологии привели к появлению сетевых систем, обеспечивающих совместное использова-
ние имеющихся ресурсов всеми выполняемыми в сети задачами. Различные ресурсы поочередно выделяются выполняемым
Страницы
- « первая
- ‹ предыдущая
- …
- 52
- 53
- 54
- 55
- 56
- …
- следующая ›
- последняя »
