Языки программирования - концепции и принципы

Прямой параллелизм знаком большинству программистов


      Прямой параллелизм знаком большинству программистов в следующих формах:

• Мультипрограммные (multi-programming) операционные системы дают возможность одновременно использовать компьютер нескольким поль­зователям. Системы разделения времени, реализованные на обычных больших машинах и миникомпьютерах, в течение многих лет были единственным способом сделать доступными вычислительные средства для таких больших коллективов, как университеты.

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

• Встроенные системы (embedded systems) на заводах, транспортных систе­мах и в медицинской аппаратуре управляют наборами датчиков и приводов в «реальном масштабе времени». Для этих систем характерно требо­вание, чтобы они выполняли относительно небольшие по объему вы­числения через очень короткие промежутки времени: каждый датчик должен быть считан и проинтерпретирован, затем программа должна выбрать соответствующее действие, и, наконец, данные в определенном формате должны быть переданы к приводам. Для реализации встроен­ных систем используются многозадачные операционные системы, по­зволяющие координировать десятки обособленных вычислений.

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


Содержание  Назад  Вперед