История изменений
Исправление shkolnick-kun, (текущая версия) :
А в других контролерах сколько?
Тут не про контроллеры речь, а про ядра ОС.
В случае BuguRTOS спин блокировки нужны для синхронизации «ядерных» потоков (по одному потоку на ядро процессора), в которых обрабатываются «ядерные» события (виртуальные прерывания и т.п.).
По-мне на первый взгляд даже одного спинлока достаточно, чтобы сделать сколько угодно мьютексов, а на мьютексах уже можно делать что хочешь.
Это будет аналог BKL, которую выпилили из ядра версии 2.6.39 в 2011, или GIL, которую никак не могут выпилить из cpython.
Сейчас все стремятся применять мелкоструктурные блокировки, т.е. блокировать объект, а лучше - его часть.
Исходная версия shkolnick-kun, :
А в других контролерах сколько?
Тут не про контроллеры речь, а про ядра ОС.
В случае BuguRTOS спин блокировки нужны для синхронизации «ядерных» потоков (по одному потоку на ядро процессора), в которых обрабатываются «ядерные» события (виртуальные прерывания и т.п.).
По-мне на первый взгляд даже одного спинлока достаточно, чтобы сделать сколько угодно мьютексов, а на мьютексах уже можно делать что хочешь.
Это будет аналог BKL, которую выпилили из ядра версии 2.6.39 в 2011, или GIL, которую никак не могут выпилить из cpython.
Сейчас все стремятся применять мелкоструктурные блокировки в ядрах ОС.