Сайт о телевидении

Сайт о телевидении

» » FreeBSD в деталях. О плюсах и минусах системы. FreeBSD хороша для серверов, но не для настольных компьютеров. Недостатки программного обеспечения FreeBSD

FreeBSD в деталях. О плюсах и минусах системы. FreeBSD хороша для серверов, но не для настольных компьютеров. Недостатки программного обеспечения FreeBSD

С момента выпуска стабильной версии FreeBSD 9.0 прошло меньше двух лет, а команда разработчиков уже готова представить следующий релиз своей ОС под красивым номером 10. Новая FreeBSD теперь компилируется с помощью Clang, поставляется в комплекте с DNS-сервером Unbound, имеет собственный гипервизор, аналогичный KVM, умеет работать со сжатыми томами ZFS и включает в себя еще несколько десятков интересных изменений.

Clang вместо GCC

Летом 2007 года фонд свободного ПО опубликовал окончательную редакцию лицензии GPLv3, на которую в скором времени должны были перейти все крупнейшие свободные проекты, координируемые фондом. Сообщество FreeBSD изначально не приняло эту лицензию, поскольку она еще более ограничивала реальную свободу ПО, чем GPLv2, а впоследствии отказалось от включения любого GPLv3-софта в базовую поставку ОС, как противоречащего лицензии BSD.

Из-за полного запрета в тексте GPLv3 так называемой тивоизации, то есть возможности создания железа на базе открытого ПО без возможности установки на него модификаций этого же ПО, разработчикам FreeBSD пришлось полностью отказаться от перехода на новые версии GCC и остаться на GCC 4.2.1. Включение в состав более поздних версий, распространяемых под GPLv3, автоматически создало бы проблемы многим хардварным компаниям, выпускающим железо на базе FreeBSD.

Так как поддерживать устаревшую версию GCC бесконечно нельзя, FreeBSD требовался идеологически правильный компилятор, и открытие исходных текстов Clang в том же году оказалось как нельзя кстати. В отличие от GCC, Clang распространялся под лицензией BSD и, по сути, компилятором не являлся. Это был всего лишь сырой фронтенд, который генерировал промежуточный код LLVM и передавал его последнему для оптимизации и компиляции.

Неспешно, но безостановочно Clang доводился до состояния полноценного компилятора, и к началу 2009 года всю FreeBSD, включая ядро и пользовательские утилиты, уже можно было скомпилировать без помощи GCC. В середине 2010 года Clang становится частью FreeBSD, но пока только в качестве альтернативы GCC. В 2012 году переход на Clang завершается, и он становится компилятором по умолчанию.

Для рядового пользователя такой переход, конечно, пройдет практически незамеченным: make buildworld будет работать так, как и раньше, порты будут собираться без всяких проблем, и даже такие команды, как gcc helloworld.c , будут работать без вопросов благодаря симлинкам. Зато настоящую выгоду это принесет разработчикам, многие из которых и раньше использовали Clang для прогона кода на предмет наличия ошибок (о которых Clang информирует гораздо подробнее GCC), но теперь этот инструмент будет использоваться по умолчанию.

Отключить Clang и перейти на GCC 4.2.1, который еще остается в комплекте FreeBSD, можно, добавив опции WITHGCC и WITH GNUCXX в файл /etc/src.conf .

BHyVe или KVM под лицензией BSD

Благодаря следованию идее тотальной свободы, гарантированной лицензией BSD и сведенной в одну знаменитую цитату «Делайте с кодом что хотите, но только не говорите, что он написан вами», фонд FreeBSD за время своего существования успел обзавестись многими покровителями. В их числе такие мастодонты, как Apple, NetApp и Juniper Networks, которые регулярно открывают код своих наработок на базе FreeBSD и смежных технологий (Clang, например, детище Apple). Очередной такой наработкой стал гипервизор BHyVe, созданный NetApp для использования в своем оборудовании. Его код был открыт в 2011 году и практически сразу включен в состав FreeBSD.

Bsdconfig

Начиная с девятой версии, FreeBSD была переведена на использование инсталлятора bsdinstall, пришедшего на смену неуклюжему sysinstall, который сами разработчики называли «запутанным куском кода, который никто не хочет поддерживать». Новый инсталлятор отличался простотой, интеллектуальностью, модульностью и расширяемостью, однако очень сильно уступал sysinstall в плане постинсталляционных настроек. Этот недочет исправили к выходу десятой версии, включив в комплект утилиту bsdconfig.

Новый конфигуратор, как и установщик, написан на шелл, обладает модульной структурой и может быть использован обособленно или в составе другого приложения (в данном случае bsdinstall). Уже сейчас bsconfig позволяет настраивать следующие сущности:

  • управлять настройками /etc/rc.conf (используется утилита sysrc);
  • создавать аккаунты и группы пользователей в системе и управлять ими;
  • конфигурировать часовые пояса (используется tzdialog);
  • конфигурировать сетевые интерфейсы, указывать параметры хоста, используемые DNS-серверы и шлюзы по умолчанию;
  • создавать и редактировать дисковые разделы;
  • настраивать консоль (шрифты, кодировки, локаль, хранитель экрана и прочее);
  • управлять запуском сервисов.

Другое

Из менее заметных, но значимых изменений можно назвать замену DNS-сервера BIND и сопутствующих утилит на кеширующий рекурсивный сервер Unbound и утилиты из комплекта LDNS. О полноценной замене здесь, конечно, речи не идет, а всего лишь выполняется требование иметь в базовой поставке ОС кеширующий DNS-сервер и валидатор DNSSEC. BIND, используемый для этой цели десятилетиями, успел превратиться в дырявого неповоротливого монстра, который уже просто неприлично включать в базовый комплект (BIND 10 требует, например, SQLite 3 и Python 3), а вот компактный и производительный Unbound выполняет эту работу на отлично. Те же, кому нужен полноценный DNS-сервер, могут установить BIND 10 из портов.

В комплект включен демон auditdistd, предназначенный для безопасной отправки логов системного аудита по сети на другую машину. Ранее логи аудита, содержащие подробнейшие сведения о работе системы, сохранялись на локальной машине, что позволяло взломщику удалить их, чтобы скрыть следы своего проникновения. Теперь все логи направляются демону auditdistd, который может не только сохранять их на диск, но и передавать на удаленный сервер, используя зашифрованное соединение.

Во FreeBSD 10 будут включены новые инструменты установки и управления пакетами, названные pkgng. В отличие от устаревших утилит pkg_*, которые были всего лишь инструментом для выкачивания пакетов с FTP-сервера и разворачивания их в систему, pkgng представляет собой полноценный современный менеджер пакетов в стиле apt-get. Он работает с сетевыми репозиториями, учитывает зависимости и умеет правильно обновлять пакеты, а также удалять установленные как зависимости пакеты при удалении приложения. Со стороны пользователя работа с новым менеджером пакетов будет выглядеть примерно так:

# pkg update # pkg install gimp # pkg search firefox

INFO

Слово тивоизация происходит от названия выпущенного в 1999 году видеоплеера TiVo, который работал на ОС Linux, но при этом не позволял никоим образом изменить свою прошивку.

Кроме правильно лицензированного компилятора, в FreeBSD также появились собственные версии утилит sort и patch.

В FreeBSD 10.0 реализована поддержка USB Audio 2.0.



Вариантные символические ссылки

Из DragonFlyBSD во FreeBSD наконец портировали реализацию вариантных символических ссылок (varsym). По своей сути varsym - это та же символическая ссылка, в путях которой могут использоваться переменные, при изменении их значений автоматически меняется и сам путь. Основное преимущество таких ссылок в возможности их изменения пачками с помощью одной команды.


Переключение видеорежимов на уровне ядра

При подготовке FreeBSD 10 была проведена работа по интеграции KMS (переключение видеорежимов на уровне ядра) в драйверы для карт AMD, в дополнение к поддержке KVM в драйверах для Intel GPU, появившейся в 9.1. На данный момент технология KMS не имеет практически никакого значения для FreeBSD, однако она является одним из кирпичиков, используемых для построения графических систем будущего. Тот же Wayland, например, для своей работы требует поддержку KMS в ядре.

Выводы

FreeBSD - одна из тех ОС, за развитием которых приятно наблюдать. В отличие от Linux и Windows, здесь нет погони за максимально эффективными технологиями, нет желания воткнуть в ОС все, что только можно, и включить в код каждый присланный патч. ОС планомерно развивается в нужном направлении, не изменяя традициям и не гоняясь за модой.

Устройств и базовых пользовательских программ (т. н. userland) , таких как командные оболочки и т. п., содержится в одном дереве системы управления версиями (до 31 мая 2008 - CVS , сейчас - SVN). Это отличает FreeBSD от GNU/Linux - другой свободной UNIX-подобной операционной системы - в которой ядро разрабатывается одной группой разработчиков, а набор пользовательских программ - другими (например, проект GNU), а многочисленные группы собирают это всё в единое целое и выпускают в виде различных дистрибутивов Linux .

FreeBSD хорошо зарекомендовала себя как система для построения интранет - и интернет-серверов . Она предоставляет достаточно надёжные сетевые службы и эффективное управление памятью .

Помимо своей стабильности, FreeBSD популярна и благодаря своей лицензии , которая существенно отличается от широко известной лицензии GNU GPL - она позволяет использовать код не только в свободном ПО , но и в проприетарном . В отличие от GNU LGPL , которая тоже позволяет использовать свободный код в закрытой программе , лицензия BSD более простая и короткая.

История

FreeBSD 3

3.0-RELEASE анонсирована 13 октября 1998 года. Основное отличие от 2.2 - переход на ELF исполняемые файлы. Последний 3.5-RELEASE вышел 23 июня 2000 года.

FreeBSD 4

Одним из главных недостатков FreeBSD 4 считается плохая поддержка многопроцессорных систем, особенно в режиме многопоточности .

FreeBSD 4 поставила своеобразный рекорд по продолжительности разработки одной ветки операционной системы - за пять лет было устранено большое количество ошибок и получена на редкость стабильная система.

В середине разработки FreeBSD 4 от нее отпочковался проект DragonFlyBSD , основатели которого поставили своей целью серьезную оптимизацию ядра для высоконагруженных систем, в частности лучшую поддержку многопроцессорности (уменьшение времени, необходимого для переключения потоков и пр.).

FreeBSD 5

Наибольшие архитектурные изменения в FreeBSD 5 - это изменение механизма блокировки на нижнем уровне ядра, чтобы улучшить поддержку многопроцессорных SMP -систем. Это освободило большую часть ядра от так называемой «гигантской блокировки» (Giant lock). Теперь в ядре появилась возможность выполнять более одной задачи одновременно. Другим важным изменением была реализация «родной» поддержки многопоточности типа M:N под названием Kernel Scheduled Entities (KSE). Начиная с FreeBSD 5.3, эта реализация потоков была установлена по умолчанию, пока не была заменена на реализацию модели 1:1 во FreeBSD 7.

Во FreeBSD 5 была серьёзно изменена система блочного ввода-вывода посредством введения модульной структурной системы преобразования запросов ввода-вывода GEOM (внесённой Poul-Henning Kamp). GEOM даёт возможность создавать различную функциональность, такую как зеркалирование (mirroring) или шифрование (модули GBDE и GELI).

Версии 5.4 и 5.5 были признаны стабильными и высокопроизводительными, но более ранние версии не годились для использования в рабочих условиях.

FreeBSD 6

Участники проекта разрабатывают ветку CURRENT («текущая» версия) и несколько STABLE («стабильная», стабильность означает гарантию неизменности интерфейсов, как то API, ABI и так далее).

Новый код помещают в ветку CURRENT, где он получает более широкое тестирование. Новые функции, добавленные в CURRENT, могут остаться в системе или от них могут отказаться, если реализация окажется неудачной. Иногда эта версия может оказаться в непригодном для использования состоянии. С началом использования perforce как вспомогательного репозитория, и с выделением projects/ области в svn, проект стремится гарантировать постоянную работоспособность CURRENT.

STABLE-версия содержит только те нововведения, которые прошли проверку в CURRENT. Тем не менее, эта версия тоже предназначена, в основном, для разработчиков. Не рекомендуется обновлять ответственные рабочие серверы до STABLE, предварительно её не протестировав. На основе STABLE регулярно создаются тщательно протестированные разработчиками, группой release-инженеров и более широким кругом пользователей RELEASE-версии.

После выпуска релизов создаются дополнительные ветви разработки для поддержки релизов, но в них вносятся лишь самые необходимые изменения, исправляющие серьёзные ошибки или проблемы с безопасностью системы. До четвёртой версии FreeBSD у стабильной и текущей веток был один и тот же старший номер версии. Затем текущей ветви был присвоен номер 5, а у стабильной остался номер 4.

В настоящее время поддерживаются стабильные ветви разработки 7-STABLE, 8-STABLE и 9-STABLE и текущая 10-CURRENT. Группа разработчиков, исправляющих проблемы безопасности системы (security officers) поддерживает ветвь 7-STABLE для тех пользователей, которые ещё не обновили FreeBSD до версии 8 и 9.

Варианты установки

Операционная система FreeBSD может быть установлена с различных носителей, таких как:

  • FAT -раздел жёсткого диска;
  • удалённый сервер (по протоколу FTP или NFS).

Порты и пакеты

В настоящее время FreeBSD предоставляет пользователю две взаимодополняющие технологии установки программного обеспечения сторонних разработчиков: коллекция портов FreeBSD и бинарные пакеты с программным обеспечением. Любая из этих систем может быть использована для установки самых последних версий приложений с локальных носителей или прямо из сети.

Коллекция портов, как подсистема система сборки и сопровождения устанавливаемых программ, периодически обновляется. Сейчас она насчитывает порядка 22 тысячи портированных на FreeBSD программ , среди которых: графические среды GNOME 2.32.1, KDE 4 4.7.4, офисные приложения и пакеты OpenOffice.org 3.3.2, LibreOffice 3.4.5, система поддержки печати CUPS 1.5.2, программы доступа в интернет Mozilla Firefox 10.0.2 и Thunderbird 10.0.2, Google Chromium 17.0.963.65, системы управления базами данных PostgreSQL 8.2.23, 8.3.18, 8.4.11, 9.0.7 и 9.1.3, MySQL 4.1.25, 5.0.95, 5.1.61 и 5.5.21, комплекты Java-разработки OpenJDK 6 b24 и OpenJDK7 7.2.13, среды разработки Eclipse 3.6.2 c дополнениями для Web-разработки и баз данных и NetBeans 7.1. Инфраструктура интерпретирующих языков представлена Perl 5.12.4 c возможностью перехода на Perl 5.14.2, Python 2.7.2 и Ruby 1.8.7 и 1.9.3.

Талисманы-логотипы

Основным талисманом системы является красный демонёнок, известный также как Beastie . Кроме него, талисманом также считается Devilette , девушка в красном костюме демона.

Производные системы

BSD-лицензия позволяет сохранять коммерческую тайну при модификации FreeBSD для встраиваемых систем и производить другие производные проприетарные системы , что делает FreeBSD привлекательной для промышленности . Вместе с тем, остаётся неизвестным, в какой конкретно технике применяют FreeBSD, кроме маршрутизаторов Juniper и ТВ-панелей . Ниже приведены свободные производные операционные системы.

  • DragonFly BSD - ответвление от FreeBSD 4.8, созданное как логическое продолжение 4-й ветви. Она включает систему потоковой обработки сообщений, похожую на ту, которая используется в системах с микроядром .
  • FreeSBIE - LiveCD -дистрибутив FreeBSD, похожий на дистрибутив Linux под названием Knoppix .
  • Frenzy - другой проект по созданию LiveCD на основе FreeBSD, ориентированный в первую очередь на русскоязычных системных администраторов .
  • TrueBSD - белорусский LiveDVD-дистрибутив на основе FreeBSD.
  • BSDeviant - ещё один LiveCD.
  • MiniBSD - компактный дистрибутив FreeBSD.
  • NanoBSD - ещё один компактный дистрибутив FreeBSD.
  • mfsBSD - миниатюрный загрузочный LiveCD на базе FreeBSD, загружаемой полностью в оперативную память компьютера.
  • Debian GNU/kFreeBSD - производная версия, базирующаяся на наборе инструментов GNU , разрабатывается группой пользователей Debian .
  • Darwin - ядро Mac OS X , многие команды взяты от FreeBSD 4/5, разрабатывается компанией Apple , весьма дальний родственник FreeBSD, так как использует ядро Mach .
  • m0n0wall - встраиваемый межсетевой экран , основанный на FreeBSD.
  • pfSense - ответвление от проекта m0n0wall, отличающееся большей функциональностью.
  • FreeNAS - основанное на m0n0wall сетевое хранилище NAS .
  • PC-BSD - дистрибутив с графическим инсталлятором и настольной средой KDE по умолчанию.
  • РУС-BSD - клон PC-BSD, русифицированный дистрибутив для пользователей стран СНГ, с версии 8.1 РУС-BSD опирается на Frenzy и свои разработки.
  • GhostBSD - LiveCD с настольной средой GNOME по умолчанию.
  • DesktopBSD - ещё один дистрибутив для домашнего использования.
  • BSD Router Project (BSDRP) - компактный программный роутер на базе FreeBSD.

Пасхальные яйца

См. также

  • Как пропатчить KDE2 под FreeBSD?

Литература

Книги

  • Christopher Negus, Francois Caen, BSD UNIX Toolbox: 1000+ Commands for FreeBSD, OpenBSD and NetBSD, Wiley, May 5 2008, 309 стр., ISBN 0-470-37603-1 .
  • Babak Farrokhi , Network Administration with FreeBSD 7: Building, securing, and maintaining networks with the FreeBSD operating system, Packt Publishing, April 14 2008, 280 стр., ISBN 1-84719-264-5 .
  • Bryan J. Hong, Building a Server with FreeBSD 7, No Starch Press, April 1 2008, 288 стр., ISBN 5-8459-0741-1 .
  • Joseph Kong, Designing BSD Rootkits: An Introduction to Kernel Hacking, No Starch Press, April 10 2007, 144 стр., ISBN 1-59327-142-5 .
  • Брайан Таймэн. FreeBSD 6. Полное руководство = FreeBSD 6 Unleashed. - М .: «Вильямс», 2007. - 1056 с. - ISBN 5-8459-0741-1
  • Harald Zisler, FreeBSD, Franzis Verlag GmbH, August 31 2006, 381 стр., ISBN 3-7723-6538-8
  • Родерик Смит. Полный справочник по FreeBSD = FreeBSD: The Complete Reference. - М .: «Вильямс», 2005. - 672 с. - ISBN 5-8459-0576-1
  • Yanek Korff, Paco Hope, Bruce Potter., Mastering FreeBSD and OpenBSD Security , O’Reilly, March 2005. ISBN 0-596-00626-8 .
  • Майкл Лукас. = Absolute BSD. The Ultimate Guide to FreeBSD. - СПб. : Символ-Плюс, 2004. - 616 с. - ISBN 5-93286-066-9
  • Dru Lavigne. BSD Hacks, 100 Industrial-Strength tips for BSD users and administrators. O’Reilly, May 2004. ISBN 0-596-00679-9 .
  • Michael Urban, Brian Tiemann. FreeBSD Unleashed, Second Edition. Sams Publishing , April 2003. ISBN 0-672-32456-3 .
  • Greg Lehey. The Complete FreeBSD, 4th Edition, Documentation from the Source. O’Reilly, April 2003. ISBN 0-596-00516-4 .
  • Marshall Kirk McKusick, George V. Neville-Neil. The Design and Implementation of the FreeBSD Operating System . Addison Wesley Professional, August, 2004. ISBN 0-201-70245-2 .
  • Ted Mittelstaedt. The FreeBSD Corporate Networkers Guide. Addison-Wesley, December 2000. Paperback, book & CD edition, 401 pages. ISBN 0-201-70481-1 .
  • The FreeBSD Handbook, Volume 1: User Guide, 3rd Edition. FreeBSD Documentation Project. FreeBSD Mall, November 2003. ISBN 1-57176-327-9 .
  • The FreeBSD Handbook, Volume 2: Admin Guide, 3rd Edition. FreeBSD Documentation Project. FreeBSD Mall, September 2004. ISBN 1-57176-328-7 .

Журналы

Ссылки

Примечания

FreeBSD 4

4.0-RELEASE появилась в марте 2000 года и последняя версия 4.11 была выпущена в январе 2005 года. FreeBSD 4 была очень популярной у провайдеров интернет и хостингов во время первого ≪пузыря доткомов≫ и считалась одной из самых стабильных и высокопроизводительных систем класса Unix. До сих пор в интернете можно найти серверы с FreeBSD 4, которые обслуживают миллионы запросов изо дня в день.

Одним из главных недостатков FreeBSD 4 считается плохая поддержка нескольких процессоров, особенно в режимe многопоточности.

FreeBSD 4 поставила своеобразный рекорд по продолжительности разработки одной ветки операционной системы - за пять лет были устранено большое количество ошибок и получена на редкость стабильная система.

В середине разработки FreeBSD 4 от нее отпочковался проект DragonFlyBSD, основатели которого положили своей целью серьезную оптимизацию ядра для высоконагруженных систем, в частности лучшую поддержку многопроцессорности (уменьшение времени, необходимого для переключения потоков и пр.).

FreeBSD 5

Через 3 года разработки, в январе 2003 года, была выпущена долгожданная версия 5.0- RELEASE. Эта версия предоставляла расширенную поддержку многопроцессорности и многопоточности, а также поддержку платформ UltraSPARC и IA-64.

Наибольшие архитектурные изменения в FreeBSD 5 - это изменение механизма блокировки на нижнем уровне ядра, чтобы улучшить поддержку многопроцессорных SMP- систем. Это освободило большую часть ядра от так называемой ≪гигантской блокировки≫ (Giant lock). Теперь в ядре появилась возможность выполнять более одной задачи одновременно. Другим важным изменением была реализация ≪родной≫ поддержки многопоточности типа M:N под названием Kernel Scheduled Entities (KSE). Начиная с FreeBSD 5.3 эта реализация потоков была установлена по-умолчанию, пока не была заменена на реализацию модели 1:1 во FreeBSD 7.

В FreeBSD 5 была серьёзно изменена система блочного ввода-вывода посредством введения модульной структурной системы преобразования запросов ввода-вывода GEOM (внесённой Poul-Henning Kamp). GEOM даёт возможность создавать различную функциональность, такую как зеркалирование (mirroring) или шифрование.

Версии 5.4 и 5.5 были признаны стабильными и высокопроизводительными, но более ранние версии не годились для использования в рабочих условиях.

FreeBSD 6

FreeBSD 6.0 была выпущена 4 ноября 2005 года. 11 ноября 2008 года была выпущена версия 6.4. Эти версии являются продолжением оптимизации поддержки SMP и многопоточности вкупе с расширенной поддержкой стандарта 802.11, записью событий безопасности проекта TrustedBSD, серьезными улучшениями производительности сетевой подсистемы. Основное достижение этого релиза - исключение ≪гигантской блокировки≫ (Giant lock) из виртуальной файловой подсистемы (VFS), реализация дополнительной, более производительной поддержки многопоточности (libthr) с моделью 1:1, и добавление OpenBSM -первичного модуля безопасности, который был создан проектом TrustedBSD.

FreeBSD 7

FreeBSD 7.0 выпущена 27 февраля 2008 года. 5 января 2009 года вышла версия 7.1. Новое в этой ветке включает в себя: оптимизированный сетевой протокол транспортного уровня SCTP, журналирование в файловой системе UFS2, экспериментальная адаптированная версия файловой системы ZFS (разработанной компанией Sun), компилятор GCC4.2, базовая поддержка платформы ARM, новый менеджер памяти jemalloc, оптимизированный для параллельных вычислений, и большие изменения и оптимизации подсистем работы с сетями, аудио-устройствами и SMP-системами. Новая система показала значительные улучшения в скорости по сравнению с предыдущими версиями и системой Linux.

4 мая 2009 года вышла версия 7.2. Нововведения в этой версии: поддержка семейства процессоров UltraSPARC III ("Cheetah") и SPARC64; возможность назначения нескольких IPv4- и IPv6-адресов каждой клетке - виртуальной машине Jail; реализация техники Superpages, прозрачного для приложений увеличения размера (с 4КБ до 4МБ) страниц виртуальной памяти; увеличенное до 6 Гб адресное пространство ядра для 64-разрядных процессоров; включена поддержка множественных таблиц маршрутизации, в том числе для клеток; улучшена совместимость в работе 32-разрядных клеток в 64-разрядном окружении; из NetBSD портирован демон btpand с реализацией поддержки профилей Bluetooth Network Access Point (NAP), Group Ad-hoc Network (GN) и Personal Area Network User (PANU); добавлен новый драйвер sdhci с поддержкой PCI-SD хост-контроллеров (кард-ридеров); обновлен модуль ядра DRM (Direct Rendering Manager) в котором улучшена поддержка графических процессоров (GPU) AMD/ATI, XGI, Intel; обновлены драйверы сетевых и дисковых устройств. В скором времени ожидается разработка видеодрайвера NVIDIA для 64- разрядной архитектуры amd64. Окончательная адаптация файловой системы ZFS v.13 для этой ветки почти завершена.

FreeBSD 8

7 июля 2009 года выпущена первая публичная бета версия FreeBSD 8.0, первый кандидат в релизы доступен для пользователей 21 сентября 2009 года, второй кандидат в релизы планируется на 14 октября, третий кандидат в релизы на 28 октября. Релиз будет объявлен 5 ноября 2009 года.

Версия 8.0 включает в себя большое количество новой функциональности, такой как:

  • Система Dtrace (фреймворк динамической трассировки, для выявления неправильной работы ядра и приложений на работающей системе в режиме реального времени), взятая от Sun из Solaris 10 (включена и работает в версии 7.2).
  • Поддержка Xen DomU.
  • Виртуализация сетевой поддержки.
  • Улучшенная поддержка ZFS.
  • Новая подсистема USB.

В данной статье рассмотрим операционную систему – FreeBSD, чем она привлекает пользователей и какие недостатки имеет. Еще в 1993 году началась разработка операционной системы FreeBSD (Berkeley Software Distribution) , в этом же году вышла первая официальная версия. Последний релиз системы появился в августе 2015. Как видим, ОС FreeBSD стабильно развивается и естественно имеет своих поклонников. Давайте разберемся, за что так пользователи любят FreeBSD и какие недостатки имеет данная система.

Многие пользователи часто сравнивают FreeBSD с Linux , так как обе эти системы похожи между собой. Общая черта: свободная загрузка из сети, открытые исходники, бесплатность, форумы поддержки, где можно найти много приверженцев данной ОС. Основные отличия Linux и BSD более подробно .

Главные преимущества системы FreeBSD:

  • Стабильность работы. Несколько лет назад компания Netcraft привела к сведенью результаты анализа работы сайтов. Наиболее долгую непрерывную работу (по календарным дням) имели веб-проекты, которые работали под управлением FreeBSD.
  • Бесплатное скачивание ОС. Большинство пользователей всегда делают выбор в пользу бесплатных систем, и не обременяют себя покупкой дорогих лицензий для ОС. Таким образом скачать и установить FreeBSD Вы можете абсолютно бесплатно.
  • Открытый исходный код. Любой желающий может вносить свои правки в код и выполнять желаемые проверки без проблем, правда, есть некие ограничения, но они слишком минимальны.
  • Качественность. Многие популярные на весь мир веб-сервисы используют данную систему, что есть беспорным подтверждением качества работы. За оценками экспертов почти 40% серверов на рынке СНГ работают именно на данной ОС.
  • Надежность. Данный фактор обеспечивается монолитным ядром и законченной логической структурой ОС, которая по сути является целостной.

Структура системы FreeBSD:

  1. Библиотека С используется в качестве системного интерфейса программирования.
  2. Ядро, которое предназначено для планировки всех процессов, управлением памяти, работы с устройствами и тп.
  3. Разнообразные файловые утилиты, компиляторы, оболочки, редакторы связей, и другие программы для конечного пользователя, некоторые из них основываются на коде GNU.
  4. За графический дизайн отвечает встроенная в FreeBSD X Window.
  5. Огромный выбор системных и прикладных программ.

Разработкой FreeBSD занимаются почти 4 тыс. добровольцев , которые и выпускают оновленные версии. Всего релизов насчитывают десять, последний из которых был выпущен 13 августа 2015 года. Но все-таки система не является столь популярной, как к примеру Linux. Давайте разберемся в причинах, почему FreeBSD имеет небольшое количество пользователей. В превую очередь, это “заслуга” разработчиков, которые занимаются шлифовкой кода системы, и очень мало времени уделяют рекламе своего продукта. Кроме того, они мало заботятся о рядовом пользователи и не упрощают процесс настройки и установки ОС, что для многих является ключевым этапом при выборе операционной системы. Ведь настроить Linux намного проще чем FreeBSD .

Недостатки системы FreeBSD .

Среди минусов ОС пользователи чаще всего выделяют сложность установки и настройки системы, но с приходом определенных навыков в администрировании, этот недостаток становится несущественным. Кроме того, для изучения работы FreeBSD недостаточное количество литературы и трудный доступ к документации. Если Вы все-таки хотите, чтобы данная ОС работала на вашем выделенном сервере, можете обратиться в нашу тех.поддержку и они быстро и качественно установят и настроят FreeBSD. Также достаточно будет просто при сервера выбрать FreeBSD желаемой ОС и она будет предустановлена на Ваш сервер.

Вывод. Если Вы выбираете ОС для своего сервера, прочитайте следующие советы, которые, надеемся, помогут Вам сделать правильный выбор. Часто можно встретить информацию на интернет-ресурсах, что FreeBSD улучшает производительность, это действительно так, но данное правило не следует считать универсальным. Хорошая репутация FreeBSD вполне заслуженная благодаря предоставленному качеству ОС. И последнее, если Вы уже используете выбранную ранее ОС, не стоит ее менять.

К Вашему сведению, ОС FreeBSD (9,10) уже предустановленна на наших ВПС серверах и Вы сможете ощутить все преимущества данной системы, сделав заказ виртуального сервера в компании Hyper Host™ . ?

6486 раз(а) 13 Сегодня просмотрено раз(а)

  • Системное администрирование ,
  • Хостинг
    • Перевод

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

    У FreeBSD есть полнофункциональная звуковая подсистема c низкой задержкой, а смешивание в ядре позволяет нескольким приложениям воспроизводить звуки одновременно (с независимыми настройками громкости) без дополнительных настроек. Дефолтные настройки включают в себя 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.11n и других улучшений.

    Это не означает, что 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.11n чипсеты), большинство звуковых карт 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. И вызвано это не только чувством альтруизма, ведь поддержка любого проекта, который быстро развивается, очень дорогое удовольствие.