Общая память
-
Определение и использование разделяемой памяти
- Разделяемая память — это память, доступная нескольким программам для связи и предотвращения избыточных копий.
- Общая память используется для обмена данными между программами.
-
Аппаратное обеспечение
- В аппаратном обеспечении разделяемая память — это блок ОЗУ, доступный нескольким процессорам в многопроцессорных системах.
- Системы с общей памятью могут использовать UMA, NUMA или COMA.
-
Проблемы систем с общей памятью
- Конфликты при доступе к памяти несколькими процессорами.
- Сложности с согласованностью данных между процессорами.
-
Технологии для устранения узких мест
- Использование коммутаторов, Omega сетей, HyperTransport или front-side bus для улучшения производительности.
-
Гетерогенная архитектура и управление памятью
- Необходимость в общих характеристиках MMU и IOMMU для работы с гетерогенной архитектурой.
-
Программные аспекты
- Общая память в программном обеспечении используется для IPC и экономии места в памяти.
- IPC с общей памятью применяется для передачи данных между процессами.
-
Поддержка в Unix-подобных системах
- POSIX предоставляет API для работы с общей памятью.
- Unix System V и BSD предоставляют аналогичные API.
-
Поддержка в Windows
- Windows предлагает функции для отображения областей файла в памяти.
-
Кроссплатформенная поддержка
- Библиотеки C++ предоставляют переносимый доступ к функциям общей памяти.
- PHP предоставляет API для создания общей памяти.
-
Рекомендации и внешние ссылки
- Ссылки на дополнительные ресурсы и литературу по теме.
Полный текст статьи: