Я разработал драйвер блочного устройства Linux для устройства CD.Драйвер работает хорошо, но теперь существует требование, чтобы он работал в системе SMP.Когда я сделал тестовый запуск в системе SMP, я обнаружил, что производительность драйвера снижается.Скорость передачи данных для DATA CD значительно снизилась по сравнению с одноядерной системой.Поэтому я понимаю, что мой драйвер должен быть модифицирован, чтобы сделать его безопасным для SMP.
В моем драйвере я использовал: 1. Потоки ядра 2. Mutex 3. Семафор 4. Завершение
Моя SMP-система: ARM Cortex-A9 Dual Core 600 МГц
Может, кто-нибудь подскажет, какие факторы я должен учитывать при выполнении этого переноса?