Darwin

Darwin - открытая POSIX -совместимая операционная система, выдана Apple Inc. в 2000 году. Она сочетает код, написанный самой Apple с полученным из NeXTSTEP, FreeBSD и других свободных проектов. Darwin яавляе собой набор основных компонентов, используемых в Mac OS X и Apple iOS. Он совместим с третьей версией спецификации единой UNIX (SUSv3) и POSIX-приложениями и утилитами.


1. История

Darwin - потомок разработанной в NeXT операционной системы NeXTSTEP (позже известной как OpenSTEP), первая версия которой вышла в 1989 году. После того, как Apple поглотила NeXT в 1997 году, она заявила, что сделает очередную операционную систему на основе OpenSTEP. Эта система разрабатывалась в рамках проекта Rhapsody с 1997 года и в 1999 году вышел основанный на этих разработках Mac OS X Server 1.0. В 2000 году Rhapsody был выделен в Darwin, выданный как свободное программное обеспечение в рамках публичной лицензии на источники Apple (APSL) и компоненты Darwin присутствуют в Mac OS X до сих пор.

К Darwin 8.0 Apple выпускала выполняющих версию (в виде компакт-диска) после каждого крупного выпуска Mac OS X, позволяя устанавливать Darwin на компьютеры с архитектурой PowerPC и Intel x86 как отдельную операционную систему. Маленькие обновления выпускались в виде пакетов, которые можно было установить отдельно. В это время Darwin доступна только в сырцовых кодах, исключая версии для ARM, которая вообще никак не была выпущена отдельно от iOS.


2. Дизайн

2.1. Ядро

Darwkin построена на основе XNU - гибридного ядра включает микроядро Mach 3, некоторые части ОС семьи BSD (такие как модель процессоров, сетевой стек, виртуальная файловая система) и I / O Kit - объектно-ориентированный API для написания драйверов.

Некоторые преимущества от выбора такого ядра составляет использование формата Mach-O, что позволяет в одном исполнительном файле (включая само ядро) поддерживать несколько архитектур процессоров и возможности SMP в ядре. Гибридный дизайн ядра - это компромисс между гибкостью микроядер и мощностью монолитных решений.


2.2. Поддержка аппаратного и программного обеспечения

Сейчас Darwin поддерживает 32 - и 64-битные процессоры PowerPC и Intel x86, используемых в Macintosh и Apple TV, а также 32-битные процессоры ARM, которые используются в iPhone, iPod Touch и iPad.

Darwin унаследовала от BSD поддержку POSIX API и поэтому множество программ, написанных под различные UNIX-подобные системы могут быть собраны под Darwin без изменения их сердечного кода.

Darwin и Mac OS X используют I / O Kit в своих драйверах, поддерживая одно и то же оборудование, файловые системы и прочее. Apple распространяет Darwin с собственническими драйверами для своих сетевых карт AirPort.

Darwin не включает в себя многие элементы Mac OS X, такие как Carbon и Cocoa API или композитор Quartz и интерфейс Aqua, поэтому он не может запускать приложения для Mac


3. Хронология версий

  • 1.3.1 - Mac OS X 10.0, 10.0.1, 10.0.2, 10.0.3, 10.0.4
  • 1.4.1 - Mac OS XX 10.1
  • 5.1 - Mac OS X 10.1.1
  • 5.2 - Mac OS X 10.1.2
  • 5.3 - Mac OS X 10.1.3
  • 5.4 - Mac OS X 10.1.4
  • 5.5 - Mac OS X 10.1.5
  • 6.0 - Mac OS X 10.2 (Jaguar)
  • 6.1 - Mac OS X 10.2.1 (Jaguar)
  • 6.2 - Mac OS X 10.2.2 (Jaguar)
  • 6.3 - Mac OS X 10.2.3 (Jaguar)
  • 6.4 - Mac OS X 10.2.4 (Jaguar)
  • 6.5 - Mac OS X 10.2.5 (Jaguar)
  • 6.6 - Mac OS X 10.2.6 (Jaguar)
  • 6.7 - Mac OS X 10.2.7 (Jaguar)
  • 6.8 - Mac OS X 10.2.8 (Jaguar)
  • 7.0 - Mac OS X 10.3 (Panther)
  • 7.1 - Mac OS X 10.3.1 (Panther)
  • 7.2 - Mac OS X 10.3.2 (Panther)
  • 7.3 - Mac OS X 10.3.3 (Panther)
  • 7.4 - Mac OS X 10.3.4 (Panther)
  • 7.5 - Mac OS X 10.3.5 (Panther)
  • 7.6 - Mac OS X 10.3.6 (Panther)
  • 7.7 - Mac OS X 10.3.7 (Panther)
  • 7.8 - Mac OS X 10.3.8 (Panther)
  • 7.9 - Mac OS X 10.3.9 (Panther)
  • 8.0 - Mac OS X 10.4 (Tiger)
  • 9.2.2 - 19 марта 2008 года
  • 9.3.0 - Mac OS X 10.5.3 (Leopard)
  • 9.5.0 - Mac OS X 10.5.5 (Leopard)
  • 9.6.0 - Mac OS X 10.5.6 (Leopard)
  • 9.7.0 - Mac OS X 10.5.7 (Leopard)
  • 9.8.0 - Mac OS X 10.5.8 (Leopard)
  • 10.0.0 - Mac OS X 10.6 (Snow Leopard)
  • 10.1.0 - Mac OS X 10.6.1 (Snow Leopard)
  • 10.2.0 - Mac OS X 10.6.2 (Snow Leopard)
  • 10.3.0 - Mac OS X 10.6.3 (Snow Leopard)
  • 10.4.0 - Mac OS X 10.6.4 (Snow Leopard)
  • 10.5.0 - Mac OS X 10.6.5 (Snow Leopard)
  • 10.6.0 - Mac OS X 10.6.6 (Snow Leopard)
  • 10.7.0 - Mac OS X 10.6.7 (Snow Leopard)
  • 10.8.0 - Mac OS X 10.6.8 (Snow Leopard)
  • 11.0.0 - Mac OS X 10.7 (Lion)
  • 12.0.0 - Mac OS X 10.8 (Mountain Lion)

Примечания

  1. "Binary Drivers required for PureDarwin" - www.puredarwin.org / legal / binarydrivers . Проверено 2009-07-20 .