Міфи про FreeBSD



FreeBSD хороша для серверів, але не для настільних комп'ютерів

У FreeBSD є повнофункціональна звукова підсистема з низькою затримкою, а змішування в ядрі дозволяє декільком додаткам відтворювати звуки одночасно (з незалежними налаштуваннями гучності) без додаткових налаштувань. Дефолтні налаштування включають в себе X.org і налаштування робочого столу, такі як KDE або GNOME, це так само просто, як вибрати метапакунок в залежності від того, який ви віддаєте перевагу.

Навіть якщо це здається занадто складним, PC-BSD — повнофункціональна настільна система, створена поверх FreeBSD з простим у використанні установником та опцією комерційної підтримки.

FreeBSD використовує модель закритого розвитку

FreeBSD розвивають більш 400 розробників по всьому світу, всі вони мають повний доступ до всієї системи і даними цієї ОС. Треті особи так само часто фиксят рідні патчі. Якщо Ви хочете побачити кількість виправлених патчів, ви можете пошукати 'Submitted by' в логах фіксації.

Немає ніяких жорстких рамок для FreeBSD. Рішення прийняті людьми готовими зробити роботу. Якщо все ж виникають спори, то вони вирішуються групою розробників, які обираються кожні два роки. Обов'язковим критерієм, за яким обираються розробники є обов'язкове виправлення або доробка коду проекту в минулих роках.

FreeBSD — Просто OS X без красивого GUI інтерфейсу

Це такий же міф про OS X, як і про FreeBSD: OS X, просто FreeBSD з гарним графічним інтерфейсом. Ці дві операційні системи спільно використовують частину коду, наприклад більшість утиліт користувача простору і бібліотека C OS X отримані з версій FreeBSD. Частина цього коду розвивається в різний час і в різних напрямках, наприклад FreeBSD 9.1 пізніше включила стек C++ і компілятор, який спочатку були розроблені для OS X співробітниками Apple. Так само є і кардинально різні деталі.

Ядро XNU, яке використовується на OS X включає в себе декілька підсистем з більш старих версій FreeBSD, але в основному вважаються незалежної реалізацією. Але все ж за рахунок свого подібності продукти реалізовані на OS X значно простіше адаптувати під FreeBSD. Наприклад libdispatch і libc ++ були записані для OS X і працювали на FreeBSD раніше ніж на будь-який інший ОС.

У FreeBSD все необхідно компілювати з вихідного коду

Колекція портів FreeBSD являє собою дуже потужний спосіб установки програмного забезпечення, що дозволяє налаштовувати параметри для різних сторонніх програм і бібліотек. Однак, це не єдиний спосіб установки програмного забезпечення на FreeBSD. Завжди можна встановити програмне забезпечення з бінарних пакетів. Проект pkgng додав новий формат пакету та інструмент управління пакетами, забезпечивши сучасний набір інструментів для двійкового управління.

Ви можете встановити pkgng з портів (ports-mgmt/pkg) на більш старих версіях FreeBSD. Вона включена за замовчуванням на FreeBSD 9.1 і більш пізні версії.

FreeBSD це UNIX з 90-х (або 80-их)

FreeBSD — лінійний нащадок вихідного UNIX через Розподіл програмного забезпечення Берклі, але вона продовжувала розвиватися окремо. За останні кілька років ми бачили, що ZFS стає значно продуктивніше: підтримка 10 ГБ, 40 ГБ і 100 ГБ каналу, покращена звукова підсистема, підтримка 802.11 n і інших поліпшень.

Це не означає, що FreeBSD відмовилася від своїх UNIX коренів. Є багато причин, чому UNIX системи стали популярними. Вони включають в себе вільно поширювану систему, яку легко перенести на нові платформи, набір простих інструментів і ядро, яке добре зарекомендувало себе на різних платформах. FreeBSD підтримує ці традиції.

Весь хороший код в FreeBSD родом з Solaris

FreeBSD імпортувала дві функції високого профілю з OpenSolaris: DTrace і ZFS. Обидві тепер добре підтримуються FreeBSD. ZFS, зокрема, знаходиться в центрі уваги багатьох розробників FreeBSD, у тому числі тих, які використовуються iXsystems, компанією, яка підтримує розвиток FreeNAS і продає комерційні NAS пристрої на базі FreeBSD. Розробники FreeBSD також працюють в тісній співпраці з розробниками Illumos, однієї з гілок з відкритим вихідним кодом Solaris, для поліпшення обох цих функцій.

Незважаючи на переваги ZFS, це як і раніше відносно невелика частина загальної системи. ZFS і DTrace становлять менш ніж 4% коду в ядрі, що дорівнює майже 10% коду в основній системі. Якщо вважати, що лише 0.4% FreeBSD хороші, то система не набула б такої популярності.

FreeBSD не має драйверів

Це проблема, з якою стикаються всі операційні системи — навіть нові версії Windows. Більшу частину часу користувачі не піклуються про загальну кількість драйверів, тільки якщо драйвери вже встановлені за промовчанням. Є деякі упущення з точки зору підтримки драйверів, але FreeBSD підтримує широкий спектр мережевих карт (у тому числі 802.11 n чіпсети), більшість звукових карт AMD, Intel і графічні процесори NVIDIA.

Підтримка апаратних засобів — це та частина реалізації, яка вимагає постійної доробки, тому що не можна просто сказати виробникам апаратних засобів, щоб вони почекали кілька років, поки розробники їх наздоженуть. Забезпечення підтримки нових пристрої займає час для налаштування, хоча деякі виробники самі забезпечують драйвери, наприклад Nvidia забезпечує драйвери для їх GPU і Intel для новітніх мережевих контролерів. Інші виробники забезпечують допомогу в розробці драйверів FreeBSD, включаючи Broadcom, JMicron, HP, Mellanox, Chelsio і Solarflare. Якщо Ви знаєте пристрої, які не підтримуються FreeBSD, краще повідомити про це розробникам і виробникам пристроїв. Як правило, кращим поштовхом для вирішення проблеми з боку виробників — повідомлення про те, що їхні клієнти не можуть використовувати їх продукти.

FreeBSD 4.x найкраще з усього що було

4.x реліз був найбільш стабільним і FreeBSD пишалися тим, що вони змогли реалізувати такий продукт. Багато користувачів продовжували використовувати його протягом багатьох років. Серія 5.x вийшла під час переходу до оптимізації багатопоточності. Ця включала заміну одного блокування навколо ядра з рядом менших блокувань які використовуються окремими підсистемами. Це вимагало великого шматка роботи, що не могло не призвести до деяких помилок. 5.x поставлялася з двома реалізаціями потокової обробки, а це ще більше ускладнювало ситуацію. Перші два випуски в серії 5.x були відзначені «тільки розробникам», але 5.2 була націлена на більш широку аудиторію і не виправдала очікувань користувачів системи FreeBSD. Ряд великих користувачів вирішили не міняти серію 4.x.

Серія 5.x була болючим уроком для проекту. У серії 6.x відновили стабільність випуску 4.x., а в серії 7.x відновили продуктивність одного процесора. Під час випуску серії 8.x можна було побачити ряд опублікованих третіми особами тестів, які продемонстрували кращу масштабованість FreeBSD на багатопроцесорних системах, ніж будь-яка інша операційна система.

Всі ці релізи мали значну кількість поліпшень, такі як вдосконалена звукова підсистема, ZFS, DTrace, ведення журналів UFS і багато іншого, але стабільність і продуктивність залишилися ключовими завданнями системи FreeBSD.

Недоліки програмного забезпечення FreeBSD

Колекція FreeBSD в даний час містить понад 26 000 одиниць програмного забезпечення. Важко порівняти це число із іншими репозиторіями, тому що програми розділені по-іншому (наприклад, GCC порт у FreeBSD встановлює програми та бібліотеки, які розділені між 6-10 пакунками Debian, в залежності від версії GCC), але більшість речей Ви все ж можете там знайти. Однією з причин, по якій користувачі вибирають FreeBSD є той факт, що набір портів забезпечує певну, щодо неясну частина програмного забезпечення, в якому вона потребує, в той час як інші системи цього не роблять.

Велика частина програмного забезпечення в наборі портів працює початково на FreeBSD. Велика частина програмного забезпечення з відкритим вихідним кодом — агностик щодо ОС і вимагає, щоб мінімальна модифікація була скомпільована і працювала на FreeBSD. Є винятки, такі як Valgrind, які вимагають детального розуміння системи. Пропрієтарне програмне забезпечення може бути більш серйозною проблемою. Деякі розробники, такі як Opera, забезпечують FreeBSD своїм вихідним кодом.

Інше програмне забезпечення повинно працювати в режимі емуляції. Наприклад, двійкові файли Linux можуть працювати на рівні Linux ABI, де системні виклики Linux переводяться на їх еквіваленти FreeBSD. Єдиний недолік — трохи збільшена навантаження системних викликів, зазвичай складно виміряти різницю в продуктивності між виконанням програм Linux Linux і FreeBSD: в деяких випадках програми працюють швидше на FreeBSD, ніж на Linux з-за більш ефективних реалізацій базових викликів. Наприклад, версія Linux Flash-плагіна може працювати, використовуючи NSPluginWrapper на рівні Linux ABI з власним веб-браузером.

Аналогічне рішення існує для запуску Windows-додатків.

FreeBSD не підтримує віртуалізацію

FreeBSD 9, працює як гість Xen (domU) і на x86, і на x86-64, включаючи Amazon EC2. Завдяки роботі, проведеній спільно з Microsoft, NetApp і Citrix, FreeBSD можна запускати на Hyper-V гіпервізора Microsoft. FreeBSD 11 включатиме Dom0 підтримку домену управління.

FreeBSD підтримує VirtualBox і в якості гостя, і в якості хоста. Ви можете знайти гостьові доповнення VirtualBox, а потім і сам гіпервізор в наборі портів. FreeBSD 10 також працює в якості хоста операційної системи для гіпервізора BSD, даючи багато можливостей для запуску FreeBSD віртуальних машин на базі FreeBSD.

І нарешті, якщо Вам не потрібна повна віртуалізація, Ви можете використовувати підсистему контейнерів, щоб виконати ізольовані простору користувача FreeBSD (або навіть простору користувача Linux, використовуючи рівні Linux ABI) на одному ядрі FreeBSD. Контейнера можна навіть надати їх власний незалежний мережевий стек і т. д., і таким чином, одна машина може використовуватися, щоб емулювати цілий парк машин.

Ліцензія BSD сприяє взаємній співпраці.



Поки розробники коду FreeBSD не подадуть на вас позов про порушення авторських прав, Ви вільно можете його використовувати. Але, якщо вірити твердженням самих розробників, такого не станеться.

Деякі компанії, майже напевно візьмуть наш код, змінять його і ніколи нічого не нададуть натомість.


Розглянемо в якості прикладу випадок двох найбільших інтернет-компаній Google і Yahoo! Перш за їх внутрішня інфраструктура ґрунтувалася на операційній системі GPL, в той час як більш пізні версії вже використовують FreeBSD. Оскільки Google не розподіляє їх змінену операційну систему, вони можуть зберегти наприклад GoogleFS у приватній власності. У таких випадках, як цей, де програмне забезпечення розроблене для внутрішнього використання, за ліцензійною угодою компанія не зобов'язана розкривати свої доробки для розробників FreeBSD.

Існують, однак, деякі проблеми із з'єднанням: наприклад, не можна використовувати бібліотеку з ліцензією GPL, якщо вже використовується BSD.

Протягом багатьох років не мало компаній внесло значний внесок у FreeBSD. І викликано це не тільки почуття альтруїзму, адже підтримка будь-якого проекту, який швидко розвивається, дуже дороге задоволення.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.