Haiku

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
Вікно Haiku

Розробник - Haiku Inc .

Сімейство ОС - BeOS

Заснована на - BeOS

Остання тестова версія -R1/Alpha 4.1 - 14 листопада 2012

Тип ядра - Гібридне ядро

Ліцензія - MIT License

Стан - Альфа

Haiku - вільна операційна система для персональних комп'ютерів , перша версія якої націлена на двійкову сумісність з операційною системою BeOS . Із закриттям розробки операційної системи BeOS і продажем всій її інтелектуальної власності фірмі Palm , перед ентузіастами BeOS постало завдання подальшого розвитку та існування цієї операційної системи взагалі. Оскільки система була багато в чому унікальною і передової , її прихильники вирішили , щоб уникнути юридичних і технічних проблем , переписати операційну систему BeOS з нуля , повністю під вільною ліцензією , забезпечивши максимально можливу двійкову сумісність з останньою версією BeOS - 5.0. Проект спочатку називався OpenBeOS , потім OBOS , і, врешті -решт , Haiku . В даний час міжнародна група розробників активно трудиться над компонентами системи.

Haiku втілює в собі основні ідеї BeOS . Це модульна система , архітектурно вирішена як гібридне ядро : мікроядерна архітектура , здатна динамічно довантажувати необхідні модулі . Мережевий стек працює в режимі ядра , але , в цілях двійковій сумісності з BeOS R5 , має також інтерфейс в користувача області пам'яті.

Однією з відмінних особливостей системи є архітектура трансляторів - системних інтерпретаторів файлових форматів ( наприклад , JPEG) . Крім того , Haiku продовжує традиції BeOS з активного використання файлових мета- атрибутів , що дозволяє реалізувати роботу з даними простими і очевидними методами (див. OpenTracker ) .

Файлова система OpenBFS підтримує розширені атрибути файлів , журналювання , 64 - розрядні покажчики , підтримку зберігання мета- тегів , максимальний розмір файлу - 260 гігабайт , розділу - 2 ексабайта ( 261 байт або 2 мільярди гігабайт) .

Історія та інформація

Ім'я проекту було вибрано на честь повідомлень про помилки , що видаються браузером NetPositive : вони представляли собою неримовані японські тривірші - хайку .

  • 14 вересня 2009 вийшла перша альфа- версія Haiku , яка була націлена в основному на розробників .
  • Двоє російських розробників портували набір інструментів Qt , завдяки чому стало можливим легко перенести на Haiku програми , написані з використанням Qt.
  • 10 травня 2010 вийшла друга альфа- версія Haiku . Внесено безліч оптимізацій , помітно розширена функціональність.
  • 1 липня 2010 представлений оновлений Qt версії 4.7 для Haiku .
  • 9 вересня 2010 Стефан Ассмус оновив зовнішній вигляд програми MediaPlayer , а також вніс до нього багато корисних поліпшень.
  • 8 травня 2011 Майкл Лотц реалізував IRQ Routing .
  • 20 червня 2011 відбувся реліз третьої альфа -версії Haiku .
  • 12 листопада 2012 відбувся реліз четвертої альфа -версії Haiku

Технічна реалізація

Haiku розробляється переважно мовою програмування C + + , з невеликою кількістю коду на асемблері . Існують декілька команд розробників , що займаються різними сферами :

  • App / Interface - розробляють інтерфейс , додатки і Support Kits .
  • BFS - розробляють BeFS / OpenBFS
  • Game - розробляють Game Kit і його API.
  • Input Server - сервер, що підтримує пристрої введення , такі як клавіатура і миша та їх взаємодія з іншими частинами ОС.
  • Kernel - розробляють ядро ОС.
  • Media - аудіо -сервер і пов'язаний з ним API.
  • MIDI - реалізують MIDI- протокол.
  • Network - пишуть драйвера для мережевих пристроїв і API , пов'язане з мережею.
  • OpenGL - розробляють підтримку OpenGL .
  • Preferences - відтворюють налаштування BeOS .
  • Printing - працюють над print -сервером і драйверами для пристроїв друку.
  • Screen Saver - реалізують функціонал скрінсейвера .
  • Storage - розробляються сервер зберігання і драйвера для необхідних файлових систем .
  • Translation - відтворюють модулі для читання \ запису \ конвертації різних форматів даних.

В якості однієї з цілей проекту заявлена ​​повна двійкова сумісність з BeOS 5 , тому розробка додатків під Haiku може вестися засобами BeOS . Розробникам додатків насамперед надається об'єктно-орієнтована API на C + + . Використовуваний компілятор - gcc .

У Haiku коректно працюють додатки, скомпільовані різними, бінарно несумісними між собою версіями gcc ( 2.95 і 4). Це досягнуто шляхом компіляції всіх бібліотек операційної системи , що використовуються в додатках , обома версіями gcc . Потім , під час запуску програми, операційна система Haiku визначає , за допомогою якої версії gcc цей додаток був скомпільовано і виконує динамічне зв'язування з версією системних бібліотек , скомпільованих відповідної версією компілятора.

Інші мови програмування , використовуючи які , можна створювати додатки для Haiku :

  • C - з використанням компілятора gcc
  • Basic
  • Pascal - з використанням Free Pascal
  • Python - з використанням бібліотеки PyHaiku ( для побудови графічного інтерфейсу )
  • Perl
  • Асемблер - з використанням NASM і Yasm
  • Fortran
  • Mono - в даний момент ведеться портування . Дозволить писати програми на C # , C + + , VB.NET .
  • Java - в даний момент ведеться портування віртуальної машини і необхідних бібліотек ( AWT , Swing ) .
  • Ruby