Оглавление
SCOOP (программное обеспечение)
-
SCOOP: Простое параллельное объектно-ориентированное программирование
- SCOOP – это модель параллелизма для языка программирования Eiffel, разработанная Бертраном Мейером.
- Она позволяет писать программы без использования потоков, блокировок и других методов мультипрограммирования.
- Компилятор или среда выполнения могут оптимизировать параллелизм и устранять проблемы, связанные с взаимоблокировкой.
-
История и развитие
- Модель была впервые описана в начале 1990-х и опубликована в 1993 году.
- Прототип реализации был разработан в 1995 году, а статья Комптона и Уокера содержит обзор SCOOP.
- Ниеналтовски, Арслан и Мейер опубликовали описание модели в 2003 году, а SCOOP стал доступен в EiffelStudio в 2011 году.
-
Технические аспекты
- SCOOP позволяет объявлять ссылки на объекты как отдельные, что позволяет процессорам SCOOP обрабатывать их независимо.
- Процессоры SCOOP не зависят от традиционных механизмов параллелизма, таких как потоки или ядра.
- Модель использует принципы проектирования по контракту для синхронизации доступа к ресурсам.
-
Применение и реализация
- При наличии SCOOP предварительное условие has_item становится условием ожидания, а не вызывает исключение при нарушении.
- В Eiffel без SCOOP ключевое слово separate игнорируется, и используется последовательная обработка.
-
Дополнительные ресурсы
- Ссылки на Эйфель, создание объектно-ориентированного ПО и рекомендации по SCOOP.
- Ссылки на онлайн-документацию по Eiffel и популярную исследовательскую страницу в ETH Zurich.