NetBSD

Материал из Википедии — свободной энциклопедии
Перейти к навигацииПерейти к поиску
NetBSD
Изображение логотипа
Скриншот графического входа в NetBSD 9.2 с помощью X Display Manager (xdm)
Скриншот графического входа в NetBSD 9.2 с помощью X Display Manager (xdm)
РазработчикThe NetBSD Project
Семейство ОСBSD UNIX
Основана на386BSD[3]
Исходный кодОткрытый
Последняя версия
Последняя тестовая версия
Менеджеры пакетовPkgsrc
Поддерживаемые платформыDEC Alpha, ARM architecture, PA-RISC, Motorola 68000[вд], MIPS, PowerPC, SuperH, SPARC, RISC-V, VAX и X86
ТипядраМонолитное с поддержкой подгружаемых модулей
Интерфейсинтерфейс командной строки
ЛицензияBSD[4]
СостояниеАктуальное
Репозиторий исходного кодаcvsweb.netbsd.org
СледующаяOpenBSD
Веб-сайтnetbsd.org (англ.)
Логотип Викисклада Медиафайлы на Викискладе

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

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

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

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

Содержание

История

[править |править код]
Снимок экрана NetBSD

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

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

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

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

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

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

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

[править |править код]

NetBSD содержит собственную систему пакетов —pkgsrc. На сентябрь 2015 года, в ней находится более 14000 пакетов[53][54]. Установка любой программы, будь то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[55]. 22 января 2004 года, NetBSD Foundation стал 501(c)3—некоммерческой организацией, свободной отналогов. Участниками NetBSD Foundation являются разработчики, у которых есть доступ к CVS[56]. Фонд NetBSD имеет Совет директоров, избираемый голосованием членов фонда в течение двух лет[57].

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

[править |править код]

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

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

Логотип

[править |править код]

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

Лицензия

[править |править код]

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

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

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

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

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

См. также

[править |править код]

Примечания

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

Ссылки

[править |править код]
Инструкции
[править |править код]
Информация
[править |править код]
Дистрибутивы
[править |править код]
Перейти к шаблону «NetBSD»
ПроектNetBSD
Операционная система
Связанные проекты
Notable subsystems
Перейти к шаблону «Berkeley Software Distribution»
Люди
Производные
Активные
Остановленные проекты
Компании
Другие темы
Перейти к шаблону «Unix-like»
Операционные системы
Слои совместимости
Источник —https://ru.wikipedia.org/w/index.php?title=NetBSD&oldid=148776273
Категории:
Скрытые категории: