Как прерывания обрабатываются на машинах SMP (Symmeteric multiprocessor/multicore)? Есть ли только один блок управления памятью или более?
Скажем два потока: A и B, работающие на разных ядрах, касаются страницы памяти (в то же время), которой нет в таблице страниц, и в этом случае будет ошибка страницы, и будет добавлена новая страница память.
Какова последовательность событий, которые произойдут? Если есть один блок управления памятью, к какому ядру относится переадресация страницы? Как ядро справляется с этим? Есть ли несколько экземпляров ядра, каждый из которых работает на другом ядре? Если да, то как они синхронизируются с такими событиями, как обработка ошибок страницы?