Linda

Из Википедии, бесплатной энциклопедии

Linda
Класс языка язык программирования
Появился в 1985
Автор Дэвид Гелернтер[en], Nicholas Carriero
Разработчик Дэвид Гелернтер[d]

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

Язык Linda позволяет писать параллельные программы на обычных языках: языке Си, языке Фортран, языке Лисп, дополняя их операциями организации межпроцессорного обмена данными. Важной характеристикой языка Linda является то, что он может использоваться для написания программ, выполняемых на суперкомпьютерах с различной архитектурой. Благодаря тому, что Linda позволяет большой прикладной процесс разбивать на много небольших, это упрощает и распараллеливает этот процесс. Между тем, нужно соблюдать и некоторую осторожность. Если процесс будет разделен на большое число мелких, то теряется много времени на обмен данными между процессами, результатами и получением новых заданий.

Основные операции[править | править код]

В изначальной модели Linda существовало 4 операции для работы над кортежами и пространством кортежей:

  • in атомарно считывает и стирает кортеж из пространства
  • rd неизменяющее чтение кортежа
  • out запись кортежа в пространство кортежей
  • eval порождает новый процесс для обработки кортежей; результат работы процесса будет записан в общее пространство.

Факты[править | править код]

Примечания[править | править код]

  1. Markoff, John (1992-01-19). "David Gelernter's Romance With Linda". The New York Times. Архивировано 22 апреля 2016. Дата обращения: 28 сентября 2017.

Литература[править | править код]

Ссылки[править | править код]