Kaja Kallas

NetBSD — свободная и открытая Unix-подобная операционная система, основанная на BSD. NetBSD происходит из систем 4.3BSD и 386BSD.[4][5] Она продолжает активно развиваться и доступна для многих платформ, включая серверы, настольные компьютеры, карманные компьютеры и встраиваемые системы.[6][7][8][9] Проект NetBSD фокусируется на ясности кода, тщательном проектировании и переносимости на многие компьютерные архитектуры. Его исходный код находится в открытом доступе.[10][11][12]

NetBSD портирована на огромное количество компьютерных архитектур. Лозунг NetBSD — «Конечно, это работает с NetBSD» (англ. «Of course it runs NetBSD»). Поддерживаются 53 аппаратные платформы[13] (существуют 57 портов, включая последний официальный выпуск[14] и мгновенные копии[15]). Компиляция пакетов происходит из одного дерева исходных кодов, поэтому новые функции в машинно-независимых частях появляются сразу для всех платформ без необходимости адаптации. Разработка драйверов также машинно-независима, поэтому один драйвер для карты, работающей, например, на шине PCI, будет работать на платформах i386, Alpha, PowerPC, SPARC и других, поддерживающих шину PCI. Такая платформонезависимость позволяет разрабатывать встраиваемые системы с помощью целого набора инструментов: компиляторов, отладчиков и других инструментов, поддерживающих кросс-компиляцию.

«NetBSD» — зарегистрированная торговая марка Фонда NetBSD[16].

В конце 1995 года от NetBSD появился форкOpenBSD[17].

История

Снимок экрана NetBSD

NetBSD произошла от релиза 4.4BSD, сделанного Berkeley Software Distribution из Computer Systems Research Group Университета Калифорнии в Беркли через посредство их релиза исходного Net/2 и проекта 386BSD. Проект NetBSD создался в результате фрустрации в сообществе разработчиков 386BSD из-за скорости, и направления разработки системы[18]. Четыре основателя проекта NetBSD: Chris Demetriou, Theo de Raadt, Adam Glass и Charles Hannum — чувствовали, что более открытая модель разработки могла бы принести пользу проекту, который сконцентрирован на портируемом чистом корректном коде. Они стремились создать унифицированную мультиплатформенную систему на базе BSD, пригодную для производственного применения. Название «NetBSD», основанное на важности и росте сетей, подобных Интернету, в то время, и распределенном, совместном характере её разработки, было предложено Raadt’ом.

Репозиторий исходного кода NetBSD был основан 21 марта 1993 года, а первый официальный релиз NetBSD 0.8 сделали в апреле 1993[19][20]. Он происходил от 386BSD 0.1 плюс версия 0.2.2 неофициального набора патчей, с реинтеграцией нескольких программ из релиза Net/2, исчезнувших в 386BSD, и различными другими усовершенствованиями[21]. Первый мультиплатформенный релиз, NetBSD 1.0, сделали в октябре 1994[22]. Также в 1994 по спорным причинам одного из основателей, Theo de Raadt’а удалили из проекта. Позже, к концу 1995 года, он основал новый проект — OpenBSD — форк NetBSD 1.0[17]. В 1998 году, NetBSD 1.3 ввела в использование менеджер пакетов pkgsrc[23].

До 2004 года, релизы NetBSD 1.x выпускались примерно ежегодно, с небольшими релизами-«патчами» между ними. Начиная с релиза 2.0, NetBSD использует семантическое версионирование, и каждый важный релиз NetBSD соответствует увеличенному номеру версии, то есть важные релизы следующие за 2.0 будут 3.0, 4.0, и так далее. Более ранние меньшие релизы сейчас разделены на две категории: x.y — «стабильные» поддерживаемые релизы, и x.y.z релизы — содержащие только исправления ошибок безопасности и критических ошибок[24].

В качестве предварительно настроенного графического интерфейса (оконного менеджера), начиная с версии 9.1 (выпущена в 2020 году), предшественник TWM был заменен на более современный и универсальный CTWM.[25]

История версий

Цвет Легенда
красный Неподдерживаемая версия
жёлтый Старая поддерживаемая версия
зелёный Текущая версия
золотой Последняя тестовая версия
Версия Дата релиза Примечания
10.0 28 марта 2024
9.0[27] 14 февраля 2020
  • Появилась поддержка архитектуры 64-bit Armv8-A и была расширена поддержка Armv7-A;
  • Обновлены драйвера GPU для x86 и добавлены для ARM;
  • Первый релиз с ZFS, пригодной для каждодневного использования, но ZFS по-прежнему нельзя использовать в качестве корневой файловой системы;
  • Переработана подсистема SATA для поддержки NCQ и более качественной обработки ошибок;
  • Появились новые драйвера USB Ethernet.
8.0[28] 2 июля 2018
  • Добавлена поддержка USB 3.0[29], микшер аудио в ядре, ASLR включён по умолчанию, поддержка новых драйверов, большинство обновлений программ и т. д.
  • Начиная с NetBSD 8.0, релизов минорных версий ОС больше не будет[30].
7.1[31] 11 марта 2017
7.0[32][33] 8 октября 2015
6.1[34] 18 мая 2013
6.0[35] 17 октября 2012
5.0[36][37][38] 29 апреля 2009
4.0[39] 19 декабря 2007
3.0[40] 23 декабря 2005
2.0[41] 9 декабря 2004
1.6[42] 14 сентября 2002
1.5[43] 6 декабря 2000
1.4[44] 12 мая 1999
1.3[45] 9 марта 1998
1.2[46] 4 октября 1996
1.1[47] 26 ноября 1995
1.0[48] 26 октября 1994
0.9[49] 20 августа 1993
0.8[50] 20 апреля 1993

Коллекция пакетов

NetBSD содержит собственную систему пакетов — pkgsrc. На сентябрь 2015 года, в ней находится более 14000 пакетов[51][52]. Установка любой программы, будь то GNOME, KDE, Apache или Perl, сводится к тому, что надо войти в соответствующий каталог и набрать команду make install clean. После этого исходные коды будут загружены, распакованы, скомпилированы и установлены. Альтернативой самостоятельной сборки служат прекомпилированные (двоичные) пакеты. В любом случае все необходимые зависимости пакетов будут соблюдены автоматически.

Согласно своему лозунгу о портируемости, коллекция пакетов NetBSD портирована не только на все доступные аппаратные платформы, но и — с помощью системы autoconf — на многие другие операционные системы, например, Linux, FreeBSD, OpenBSD, QNX, Solaris, Darwin/Mac OS X, IRIX и другие.

Разработчики

  • Алистер Крукс — разработчик и основатель пакетной системы pkgsrc, с 1999 года является президентом фонда «The NetBSD Foundation».
  • Тэо де Раадт — программист, сооснователь проекта NetBSD, основатель и лидер проекта OpenBSD
  • Саймон Бурж — разработчик, реализовавший в NetBSD журналирование метаданных в файловой системе FFS (fast file system)
  • Даррин Джьюэлл — сотрудник Wasabi Systems, автор подсистемы WAPBL (Write Ahead Physical Block Logging), реализующей поддержку журналируемых файловых систем в NetBSD
  • Люк Мьюберн — автор системы инициализации rc.d (известной также под названием rc-ng), первоначально созданной для NetBSD, а в настоящее время используемой в FreeBSD и DragonFly BSD
  • Чак Сильверс — автор подсистемы UBC, унифицированной системы ввода-вывода и кэширования памяти
  • Чарльз Д. Кранор — автор подсистемы UVM — новой системы управления памятью

Полный состав разработчиков NetBSD.

NetBSD Foundation

NetBSD Foundation является юридическим лицом, которое владеет интеллектуальной собственностью и товарными знаками, связанными с NetBSD[53]. 22 января 2004 года, NetBSD Foundation стал 501(c)3—некоммерческой организацией, свободной от налогов. Участниками NetBSD Foundation являются разработчики, у которых есть доступ к CVS[54]. Фонд NetBSD имеет Совет директоров, избираемый голосованием членов фонда в течение двух лет[55].

Руководящие принципы

4 апреля 2004 года была опубликована первая версия руководящих принципов выполнения обязательств, которые определяют стандарты проекта NetBSD по внесению изменений в дерево кода CVS, 1.1.[56] В мае 2024 года второй пункт был расширен, чтобы объявить — нельзя помещать в репозиторий испорченный код:[57][58]

Код, сгенерированный большой языковой моделью или аналогичной технологией, такой как GitHub/Microsoft's Copilot, OpenAI's ChatGPT, или Facebook/Meta's Code Llama, считается испорченным кодом и не должен вводиться без предварительного письменного одобрения основной команды.

Логотип

«Флаг» NetBSD, разработанный Грантом Биссеттом, был представлен в 2004 году, и является абстракцией старого логотипа, разработанного Шоном Мюллером в 1994 году[59]. Версия Мюллера была основана на знаменитой фотографии Второй мировой войны «Водружение флага над Иводзимой», которые некоторые воспринимают как культурно нечувствительной, и неподходящей фотографией для международных проектов[60].

Лицензия

Ядро и большая часть дерева исходного кода NetBSD находятся под лицензией BSD. Некоторые части исходного дерева покрываются лицензией GPL.

Разработчики NetBSD разрабатывают свои условия лицензии по образцу того, что известно как «лицензия Беркли». Эта лицензия использовалась в Калифорнийском университете, втором выпуске Berkeley Networking и выпуске программного обеспечения 4.4BSD Lite. Лицензия NetBSD Foundation (TNF) — это лицензия в стиле Беркли с «2 пунктами»:

1. При повторном распространении исходного кода должны сохраняться указанные выше авторские права.
2. Распространение в двоичной форме должно воспроизводить вышеуказанные авторские права.

, которая используется для всего кода, вносимого в TNF. Хотя лицензия Беркли обычно используется в качестве шаблона для условий лицензии работ, которые являются частью исходного дерева NetBSD, она не применяется ко всем работам в исходном дереве.[61]

GCC используется в ранних версиях, а также в более поздних, которые распространяются под лицензией GPLv3. Одной из причин этого является широкая поддержка экзотического оборудования.

См. также

Примечания

  1. Husemann M. NetBSD 10.1 available! (англ.) — 2024.
  2. https://www.netbsd.org/about/history.html
  3. http://BXR.SU/NetBSD/sys/kern/init_main.c
  4. Open Sources: Voices from the Open Source Revolution. Дата обращения: 22 июля 2018. Архивировано 11 июня 2018 года.
  5. McKusick, Marshall Kirk. Open Sources: Voices from the Open Source Revolution (амер. англ.). 1-56592-582-3 (29 марта 1999). Дата обращения: 16 февраля 2025.
  6. Get to know NetBSD. Архивная копия от 1 мая 2008 на Wayback Machine
  7. Embedded Hardware: Know It All - Jack Ganssle, Tammy Noergaard, Fred Eady, Lewin Edwards, David J. Katz, Rick Gentile, Ken Arnold, Kamal Hyder, Bob Perrin (англ.). Google Книги. Дата обращения: 22 июля 2018. Архивировано 22 июля 2018 года.
  8. IBM Developer. developer.ibm.com. Дата обращения: 16 февраля 2025.
  9. Embedded hardware / Jack G. Ganssle. — Amsterdam Boston: Elsevier/Newnes, 2008. — 520 с. — (Newnes know it all series). — ISBN 978-0-7506-8584-9, 978-0-08-056074-8.
  10. About NetBSD. www.netbsd.org. Дата обращения: 16 февраля 2025.
  11. NetBSD features. web.archive.org (27 февраля 2017). Дата обращения: 16 февраля 2025.
  12. Robert Love. Linux kernel development. — 2nd ed. — Indianapolis (Ind.): Novell Press, 2005. — ISBN 978-0-672-32720-9.
  13. Portability and supported hardware platforms Архивная копия от 22 декабря 2021 на Wayback Machine  (Дата обращения: 5 мая 2009)
  14. NetBSD Formal Releases. Дата обращения: 3 июня 2009. Архивировано 3 мая 2009 года.
  15. Hardware Supported by NetBSD. Дата обращения: 3 июня 2009. Архивировано 10 июня 2009 года.
  16. Latest Status Info Архивная копия от 3 января 2006 на Wayback Machine  (Дата обращения: 28 апреля 2009)
  17. 1 2 Архивированная копия. Дата обращения: 22 июня 2018. Архивировано 12 июня 2018 года.
  18. The History of the NetBSD Project. Дата обращения: 22 июня 2018. Архивировано 6 августа 2011 года.
  19. Архивированная копия. Дата обращения: 22 июня 2018. Архивировано 17 января 2020 года.
  20. OS Review: NetBSD 1.6.2 on SPARC64. Дата обращения: 22 июня 2018. Архивировано 22 июня 2018 года.
  21. Information about NetBSD 0.8. Дата обращения: 22 июня 2018. Архивировано 29 июня 2018 года.
  22. Information about NetBSD 1.0. Дата обращения: 22 июня 2018. Архивировано 3 ноября 2019 года.
  23. Chapter 1. What is pkgsrc? Дата обращения: 22 июня 2018. Архивировано 22 июня 2018 года.
  24. NetBSD release glossary and graphs. Дата обращения: 22 июня 2018. Архивировано 19 июля 2011 года.
  25. online, heise. NetBSD 9.1 mit mehr ZFS und "neuem" Fenstermanager CTWM (нем.). heise online (26 октября 2020). Дата обращения: 16 февраля 2025.
  26. 1 2 Husemann, Martin. NetBSD 10.0 RC4 available! NetBSD Blog (7 февраля 2024). Дата обращения: 25 февраля 2024. Архивировано 25 февраля 2024 года.
  27. Announcing NetBSD 9.0 (Feb 14, 2020). Дата обращения: 28 мая 2020. Архивировано 29 мая 2020 года.
  28. NetBSD 8.0 Release Candidate 1 available. Дата обращения: 22 июля 2018. Архивировано 15 июля 2018 года.
  29. NetBSD 8.0 Is Approaching Release With USB 3.0 Support — Phoronix. Дата обращения: 31 июля 2018. Архивировано 31 июля 2018 года.
  30. Changes to NetBSD release support policy. Дата обращения: 9 августа 2018. Архивировано 25 июля 2018 года.
  31. NetBSD 7.1 released (March 11, 2017). Дата обращения: 22 июня 2018. Архивировано 27 июня 2018 года.
  32. Announcing NetBSD 7.0. Дата обращения: 22 июня 2018. Архивировано 9 октября 2015 года.
  33. DistroWatch Weekly, Issue 638, 30 November 2015. Дата обращения: 22 июня 2018. Архивировано 22 июня 2018 года.
  34. Announcing NetBSD 6.1. Дата обращения: 22 июня 2018. Архивировано 21 мая 2013 года.
  35. Announcing NetBSD 6.0. Дата обращения: 22 июня 2018. Архивировано 15 января 2016 года.
  36. Announcing NetBSD 5.0. Дата обращения: 22 июня 2018. Архивировано 17 июля 2011 года.
  37. Distributions [LWN.net]. Дата обращения: 22 июня 2018. Архивировано из оригинала 27 мая 2018 года.
  38. DistroWatch Weekly, Issue 386, 3 January 2011. Дата обращения: 22 июня 2018. Архивировано 22 июня 2018 года.
  39. Announcing NetBSD 4.0. Дата обращения: 22 июня 2018. Архивировано 18 июля 2011 года.
  40. Announcing NetBSD 3.0. Дата обращения: 22 июня 2018. Архивировано 6 августа 2011 года.
  41. Announcing NetBSD 2.0. Дата обращения: 22 июня 2018. Архивировано 6 августа 2011 года.
  42. NetBSD 1.6 Release Announcement. Дата обращения: 22 июня 2018. Архивировано 6 августа 2011 года.
  43. NetBSD 1.5 Release Announcement. Дата обращения: 22 июня 2018. Архивировано 6 августа 2011 года.
  44. NetBSD 1.4 Release Announcement. Дата обращения: 22 июня 2018. Архивировано 13 апреля 2011 года.
  45. Information about NetBSD 1.3. Дата обращения: 22 июня 2018. Архивировано 7 июня 2011 года.
  46. Information about NetBSD 1.2. Дата обращения: 22 июня 2018. Архивировано 7 июня 2011 года.
  47. Information about NetBSD 1.1. Дата обращения: 22 июня 2018. Архивировано 7 июня 2011 года.
  48. NetBSD 1.0 Release Announcement. Дата обращения: 22 июня 2018. Архивировано 7 июня 2011 года.
  49. Архивированная копия. Дата обращения: 22 июня 2018. Архивировано 30 мая 2012 года.
  50. Архивированная копия. Дата обращения: 22 июня 2018. Архивировано 10 июня 2011 года.
  51. pkgsrc.se | The NetBSD package collection Архивная копия от 17 апреля 2009 на Wayback Machine  (Дата обращения: 27 декабря 2009)
  52. pkgsrc: The NetBSD Packages Collection Архивная копия от 29 апреля 2009 на Wayback Machine  (Дата обращения: 27 декабря 2009)
  53. The NetBSD Foundation, Inc. Дата обращения: 17 июля 2018. Архивировано 6 августа 2011 года.
  54. NetBSD Developers. Дата обращения: 17 июля 2018. Архивировано 19 июля 2011 года.
  55. Bylaws of The NetBSD Foundation. Дата обращения: 17 июля 2018. Архивировано 26 июня 2014 года.
  56. CVS log for htdocs/developers/commit-guidelines.html. cvsweb.netbsd.org. Дата обращения: 17 февраля 2025.
  57. NetBSD Commit Guidelines. www.netbsd.org. Дата обращения: 12 февраля 2025.
  58. В NetBSD введён запрет на использование кода, сгенерированного AI-системами. www.opennet.ru. Дата обращения: 12 февраля 2025.
  59. Архивированная копия. Дата обращения: 17 июля 2018. Архивировано 18 июля 2011 года.
  60. netbsd-advocacy: NetBSD logo design competition. Дата обращения: 17 июля 2018. Архивировано 7 июля 2013 года.
  61. NetBSD Licensing and Redistribution. www.netbsd.org. Дата обращения: 19 февраля 2025.

Ссылки

Дистрибутивы
  • Jibbed — Live-CD на базе последних наработок NetBSD
  • g4u — загрузочный диск / CD-ROM на основе NetBSD
Инструкции
Информация

Эволюция NetBSD

No tags for this post.