>SMP - неправильнуй путь ведущий в тупик.
Но при этом что Intel что AMD клепают многоядерники только в путь. Хотя у AMD там совсем не SMP, там NUMA. Что конечно лучше чем SMP. Intel кстати тоже к этому идет.>Системным программистам приходится ставить много-много костылей чтобы несколько >процессоров могли работать вместе и не гадить друг другу.
Это не костыли это необходимость. Или вы считаете что овчинка выделки не стоит?
>Сама идея планировать на любой процессор любой процесс ошибочна
>так как трудно синхронизировать их работу: либо многочисленные костыли для блокировки
>что снижает производительность либо рисковать на авось а это глюки с
>крахом системы.
Как не странно, но системы работают стабильно. И многие годами. Видимо что-то программисты не так делают.
>Простой атомарный алгоритм в однопроцессорной системе "проверка_блокировки, установка_блокировки, операция, снятие блокировки" на
>SMP систему просто так не перенесёшь так как нет гарантии что
>между проверкой и установкой другой процессор не находится в стадии установки.
>Приходится ставить костыли.
А ваш алгоритм кстати тоже является костылем если пользоваться вашей терминологией. Т.к. обеспечивает мультизадачность на одном процессоре. Даешь каждой задаче по процессору!
>Мне нравится более простой и надёжный механизм когда на процессорах выполняются задачи
>которые не пересекаются по памяти.
Берите AMD. Там NUMA. Или там Cell. Хотя и это не слишком упрощает дело.
>Например, на одном процессоре выполняется ядро,
>а на другие планируются пользовательские процессы. Такое было в NetWare v5.0.
Это не симметричная архитектура. Это просто другой подход.
>На первый взгляд таким способом трудно равномерно загрузить процессоры, но в
>системах SMP частые простои из-за блокировок по доступу к одному региону
>памяти тоже снижают масштабируемость.
Именно по этому в больших системах SMP и не используют.
>Кривость SMP не стоит таких жарких споров у кого она лучше реализована.
Это не кривость, а ограниченность технологии. Дешево хорошо не бывает.
>Разработчикам Linux море поколено, а FreeBSD делают более осторожные люди.
Это в чем они осторожные люди ? ;)