Оглавление
- 1 Блокировка программного обеспечения
- 1.1 Проблема блокировки программного обеспечения в многопроцессорных системах
- 1.2 Критические секции ядра
- 1.3 Конфликт доступа к ресурсам
- 1.4 Влияние ожидания на производительность
- 1.5 Аналитические исследования блокировки
- 1.6 Смягчение последствий блокировки
- 1.7 Рекомендации и дальнейшее чтение
- 1.8 Полный текст статьи:
- 2 Программная блокировка — Википедия
Блокировка программного обеспечения
-
Проблема блокировки программного обеспечения в многопроцессорных системах
- Блокировка программного обеспечения снижает производительность из-за простоя процессоров в критических секциях.
- Блокировка ограничивает масштабируемость системы, ограничивая максимальное количество используемых процессоров.
-
Критические секции ядра
- В многопроцессорных системах каждый процессор контролирует свои действия, структуры данных ядра являются общими.
- Критические секции ядра включают операции синхронизации и управления устройствами.
-
Конфликт доступа к ресурсам
- Конфликт возникает, когда несколько процессоров одновременно пытаются получить доступ к одному ресурсу.
- Только один процессор может одновременно получить доступ к определенной структуре данных, остальные находятся в состоянии ожидания.
-
Влияние ожидания на производительность
- Ожидание в режиме ожидания необходимо для низкоуровневого планирования и синхронизации.
- Ожидание в режиме ожидания неудобно для управления устройствами.
- Микроядро оптимизировано для первых двух случаев.
-
Аналитические исследования блокировки
- Отношение времени в заблокированном состоянии к времени выполнения задач вне критических секций (L/E) является ключевым показателем блокировки.
- При L/E выше 0,05 добавление процессоров становится неэффективным.
-
Смягчение последствий блокировки
- Разбиение структур данных на более мелкие подструктуры снижает время разработки и позволяет нескольким процессорам одновременно обращаться к данным.
- Адаптация систем с иерархическими доменами защиты к многопроцессорной обработке может предотвратить чрезмерное увеличение L/E.
-
Рекомендации и дальнейшее чтение
- В статье приведены ссылки на исследования и материалы конференций, посвященные проблемам блокировки в многопроцессорных системах.