Комментарии 54
Например, эту ОС использует 45% клиентов 1cloud.ru, в то время как 44% отдали предпочтение Linux-дистрибутивам
Ну как бы не совсем объективный показатель "предпочтения", потому что часто выбор windows обусловлен задачей заоблачить какой-то windows-специфичный продукт. У вас отдельным пунктом предложение 1C в облаке идёт.
Это само собой, но меня смутила именно формулировка. Так как тут речь об конкретном провайдере — то такой результат распределения может обуславливаться маркетингом, больше направленным на привлечение клиентов под windows-кейсы. Поэтому мне кажется не верным делать выводы о предпочтении.
Выбор ОС зависит от задач, а выбор облака зависит в том числе и от выбора ОС. Если у 1cloud.ru хорошие предложения на Windows-машинах, то конечно же Windows будет более популярна. Хорошо бы какую-то более широкую статистику. А то вот на Azure (где цены на Windows хорошие) Linux вроде как популярнее — https://www.zdnet.com/article/microsoft-developer-reveals-linux-is-now-more-used-on-azure-than-windows-server/
Причины распространенности LinuxА у Windows 10 процесс taskmgr.exe расположен прямо в глубокой свопе. К моменту, когда система его оттуда достанет, можно успеть забыть, зачем он вызывался.
Производительность. Ядро Linux монолитное и хранит в себе все необходимые компоненты — драйверы, планировщик задач, файловую систему. При этом kernel-сервисы выполняются в адресном пространстве ядра, что повышает общую производительность.
Ещё подписание драйверов. Вероятно, у суперкомпьютера найдётся парочка оригинальных устройств, за подписание драйверов к которым придётся заплатить, за каждую модификацию. Учитывая тираж данной модели, это быстро может стать довольно затратно.
А как на условия и стоимость техподдержки влияет отключение проверки подписей?
Какова стоимость сертификации из расчёта на 1 экземпляр?Беглое гугление показало, что это около $250 за версию драйвера и ещё пишут что с 2014 плата уже не требуется (без уточнения, что поменялось в процессе). На фоне общей стоимости современных HPC решений это вообще ни о чём. И я не очень понимаю, причём тут это. HPC это ниша для заведомо не массового и узкоспециального железа. Какой смысл жаловаться на то, что его структура цены не такая как у мышки? Она и не должна быть такой.
А как на условия и стоимость техподдержки влияет отключение проверки подписей?Если политику безопасности делать не через одно место — то никак. Туда, где это играет роль, всё равно имеют доступ только админы.
Неоднократно встречал упоминание введения обязательной платной подписи драйверов в качестве одной из причин отказа от продолжения разработки ПО различными небольшими компаниями.
Имелась в виду техподдержку Microsoft. Условия её предоставления точно распространяются на системы с отключённой проверкой подписи драйверов?
Или, скажем, распространённый в своё время сетевой чип Realtek 8129, карты на котором довольно часто содержали VID/PID, отличные от стандартных.
Да для одной модели ноутбука Lenovo на сайте в разделе драйверов может быть пять различных вариантов web-камеры, все разных производителей. Cтавят то, что есть на складе на момент сборки. К некоторым драйверов под Windows вообще никогда не было.
Также Linux обладает относительно универсальными требованиями к железу. Некоторые дистрибутивы функционируют на устройствах с объёмом памяти в 128 МБ.Это дистрибутивы общего назначения. OpenWrt работает на 4 MB flash и 32 MB RAM
=== cut ===
1. Специализированные интерконнекты для HPC. Даже Infiniband реализуется под Windows чуть хуже чем ужасно, про более редкие и не вспоминаю.
2. Специализированные приложения (протоколы) поверх интерконнектов, начиная с RDMA.
3. Ethernet-over-IB, IP-over-IB в вариантах, где есть что-то кроме unicast.
4. «Минимальные» узлы, на которых ничего нет, кроме процессора и PCI-E корня (даже BIOS подключается по сети), а PCI-E проброшен по IB.
5. В продолжение предыдущего — сетевая загрузка со средств типа iSCSI и работа с дисками по нему (включая динамическое подключение и отключение).
6. Динамическое подключение GPU по PCI-E, в конфигурациях типа «20 узлов в шасси, на них 10 GPU».
7. Эффективная виртуализация сетевых адаптеров виртуальных машин для соответствующих конфигураций (опять-таки, Ethernet в таких местах никого не интересует — минимум это IB). Эффективная — это значит, что VT-d/IOMMU должно быть задействовано в полную силу.
8. Лёгкая виртуализация стиля LXC, но с надёжным распределением всех ресурсов, как минимум процессор+RAM+сеть+диск.
9. Центральный гибко настраиваемый DHCP (тут уже можно поверх Ethernet, но не везде) на объёмы порядка 20 тысяч узлов. В гибкость настройки должны входить задания как однократных параметров, так и длительных, с грануляцией по ряду, стойке, шасси, отдельному узлу.
10. Распределённая FS пользовательских данных, хотя бы такая, как Lustre (которая далеко не идеал, но стартовая площадка по умолчанию). Динамическое подключение ресурсов с такой FS на клиентских системах.
11. MPI, поддерживающий специализированные протоколы того же IB эффективным образом. Желательно видеть все 30+ версий MPI для тех, кому оно нужно.
12. Huge pages в MMU с возможностью управления использования им по процессам.
13. Мониторинг аппаратных ресурсов на уровне ядра.
это действительно навскидку по памяти, я не копался в архивах и озвучил только те проблемы, решение которых активно видел сам, или даже участвовал.
Может, в одном конкретном случае даже 1-2 пункта реализуется:), но требование выполнить хотя бы 4 из них приводит вендора и интегратора в безвыходный ступор, из которого единственный выход звучит как «а давайте пойдём на linux»:)
=== end cut ===
Я не в этой области последние 5 лет, но крайне сомневаюсь, что начала выполняться хотя бы половина пунктов.
(Да, их выполнение для Linux это следствие открытости и лёгкой кастомизируемости. В остальном те эксперты из статьи ничего внятного не сказали.)
Лучше дела обстоят в облачной и IaaS-среде, хотя и здесь лидером остается Windows. Например, эту ОС использует 45% клиентов 1cloud.ru, в то время как 44% отдали предпочтение Linux-дистрибутивам.
Какая подача информации и выводы на ее основании. А где показатели от большой тройки aws, azure, gcp? или если бы привели, то оказалось, что и в IaaS в публичных облаках, в вебскейл сегменте преобладает линукс?
Ядро Linux монолитное
Вообще-то ядро Linux модульное, это одно из его основных преимуществ.
Это отменяет утверждение про "монолитность ядра Linux". Если человек допускает подобные "вольности", то ко всему последующему тексту отношение соответствующее.
Это вам сейчас, возможно, значения не имеет, а в начале 2000-х модульность Linux была одним из основных преимуществ по сравнению с остальными. Особенно критично это было для встраиваемых ОС во всевозможные кофемолки и утюги, и то, что Linux занял все эти рынки, включая, на минуточку, и мобильный рынок, являлось следствием именно модульности — т.е. гибкой расширяемости и, что важнее, "сужаемости" ядра Linux.
А вот как раз то, в каком адресном пространстве работают эти модули, было абсолютно перпендикулярно. Критичным был размер ядра и возможность оставить в нём только те модули, которые реально нужны, отрезав всё остальное.
Хотя не очень понятно, почему это включено в преимущества
Потому, что именно модульность ядра Linux позволяет его использовать максимально широко — от миниатюрных ПЛИС до суперкомпьютеров.
Ядро Linux модульное, при этом вы можете скомпилировать его по своему усмотрению — можете наглухо вкомпилировать модули в ядро, а можете сделать их подгружаемыми по необходимости. Также вы можете вообще удалить из ядра все модули, оставив только те, которые вам необходимы в данном конкретном случае (какая-нибудь миниатюрная программируемая ПЛИС), и получите микроядро со всеми вытекающими преимуществами.
И — да. Любопытно посмотреть, чем вы там таким пользуетесь, что у вас падение модуля вызывает kernel panic.
Еще раз для тех кто в танке, модль — это динамически подгружаемая часть ядра, но она после загрузки, выполняется в общем скопе ядра. И да, вспомним перепалку Линуса и Тененбаума?
www.oreilly.com/openbook/opensources/book/appa.html
Ещё раз, для тех, кто в танке.
Модули могут быть как намертво скомпилированными с ядром в одно целое, так и динамически подгружаемыми. Вы можете при желании вообще отказаться от использования многих модулей, оставив себе только самый необходимый минимум. Именно в этом смысле ядро Linux — модульное и, благодаря этой модульности, очень адаптивное под различные задачи.
Торвальдс и Таненбаум говорили о другом — об отличии между ядром Linux и микроядром MINIX и о преимуществах/недостатках этих типов ядер. И данный спор совсем не исключает того, что на самом деле Linux — это монолитное модульное ядро, где подгружаемые модули работают в адресном пространстве ядра.
P.S. К слову, жёсткость заявлений Торвальдса по поводу монолитности Linux в этом споре в большой степени было продиктовано необходимостью ответить на провокационный тезис Таненбаума о том, что, мол, "Linux устарел" и пришло время микроядер.
Linux kernel — это монолитное ядро, с возможностью динамически подгружать свои «куски», именуемыми module, после заргрузки этот кусок кода становится неотемлемой частью работающего монолитного ядра. То что у монолитного ядра (кстати и не только у монолитного) есть возможность динамически и на лету подгружать / выгружать свои куски — не делает его не монолитным. Монолитное ядро, микро ядро, экзо ядро — определяется совсем другими архитектрными моментами, а не динамической подгрозкой куска кода в рантайме.
Вы зря спорите. Преимуществом ядра Linux с самого начала была его модульность — способность не только подгружать/выгружать модули на лету, но и возможность компилировать ядро с определённым набором модулей. Именно об этом и речь. Эта модульность делает ядро Linux легко адаптируемым под самые различные нужды. Зачем вы спорите с фактами — вообще непонятно.

Поэтому отладку самописных модулей ядра приходится в виртуальной машине делать. Намучился в свое время: чуть где ошибся, все — kernel panic и перезагрузка компьютера. Решил после этого, что лучше я виртуальный компьютер в виртуалбоксе перезагружать буду!
"Лучше дела обстоят в облачной и IaaS-среде, хотя и здесь лидером остается Windows."
Вы не в первый раз пишите такие странные вещи, так что я снова отпишусь на эту тему.
Строить такие предположения основываясь на статистике вашего, заточенного на Windows, сервиса — очень странно.
Такое надо проверять по обычным провайдерам мирового значения и общего назначения.
В Амазоне доля windows 8%. http://thecloudmarket.com/stats#/totals
Для Google cloud не нашёл, сомневаюсь что отличается от aws.
Даже в самом azure доля linux теперь больше 50%
https://www.zdnet.com/article/linux-now-dominates-azure/
Вот на рабочем компьютере выбор немного больше: или линукс, или фряха…
Вот на рабочем компьютере выбор немного больше: или линукс, или фряха…
Большая часть суперкомпьютеров работают под управлением Linux — обсуждаем ситуацию