FreeBSD страдает от проблем с SMP?
Это не FreeBSD против [вставить любимый дистрибутив Linux-сервера].
Я заинтересован в том, чтобы знать, почему и как исправить проблемы, если они существуют.
Прежде всего, я планирую внедрить УАТС на базе FreeSwitch для местной больницы Красного Креста. Я являюсь собой, я хочу расширить свой кругозор. Я не являюсь полноправным экспертом ни в Linux, ни в FreeBSD, но я и не сутулый.
Теперь, после долгих поисков, я читал, что есть проблемы с FreeBSD и SMP, но не с linux, хотя, честно говоря, мне еще не приходилось видеть какие-либо проблемы, и у меня есть несколько серверов BSD наряду с CentOS, Ubuntu и Debian.
Итак, есть ли проблема? Если есть, как вы можете это исправить (если это возможно, потому что я читал на сайте FreeBSD, что FreeBSD был спроектирован для архитектуры x86).
1 ответ
У FreeBSD были проблемы с экспериментальным расписанием "ULE" в ветвях 6.x и 7.x (оно было представлено в 5.x, но было известно, что оно очень нестабильно). Это никогда не было планировщиком по умолчанию для любого производственного выпуска, когда у него были эти проблемы. Я запускал ULE, пока он находился в разработке, и у меня никогда не было с этим никаких проблем.
Проблемы заключались в исключительно технических условиях гонки, что было маловероятно, если у вас не был сильно загруженный сервер; проблема усугублялась большим количеством ядер, поэтому большинство компьютеров никогда бы этого не увидели. Но эффект был заблокированным, и он не будет автоматически перезагружаться; следовательно, проблема заключалась в производственной ответственности.
С тех пор состояние гонки было решено, и теперь ULE полностью стабильна. Он стал планировщиком по умолчанию для 8.x и более эффективен для большого количества ядер. Предыдущий планировщик (4BSD) работал для систем SMP, но плохо масштабировался; очень заметно на системах с более чем 4 ядрами.
PS: BSD изначально был написан для PDP-11, и код все еще очень пригоден для использования. FreeBSD и NetBSD оторвались друг от друга из-за различий в оптимизации (очень кратко об истории!), FreeBSD концентрируется на i386/AMD64; NetBSD концентрируется на мобильности. Пока я в этом: OpenBSD прервал NetBSD, чтобы сконцентрироваться на безопасности; и DragonflyBSD остановили FreeBSD, чтобы сконцентрироваться на чрезвычайной стабильности.