Цитата:
Так многоядерная система -- это и есть многопроцессорная, просто несколько процессоров выполнены в одной микросхеме.
В том то и дело что не просто. В многоядерной системе L2 кэш у них общий. А L1 принадлежит каждый своему ядру.
А под много процессорной системой. Я понимаю кластер. У каждого процессора своя RAM свой HDD.
Цитата:
Сначала планировщик должен ставить на выполнение на каждом процессоре только "его" потоки, и лишь в случае, если для одного процессора "родной" работы нет, а у другого ещё есть потоки, ожидающие выполнения, можно перекидывать какой-либо из "чужих" потоков на простаивающий процессор.
В том то и вопрос как оценить затраты на перекидывания? В мобильной системе лучше вообще не перекидывать.
В двух ядерной системе более или менее понятно.
А если ядер 16 штук(ближайшее будущее). То вопрос как их раскидывать. Толи все на одну задачу толи один на антивирус 12 на основную задачу 2 на другии задачу и 1 спит. Толи еще как.
А да еще раз замечу в вопросе я говорил о задачах, а не о потоках.
Кэш третьего уровня я вообще не рассматриваю. Он как обычная память.