Haiku | это... Что такое Haiku? (original) (raw)
Haiku | |
---|---|
Рабочий стол ОС Haiku | |
Разработчик | Haiku Inc. |
Семейство ОС | BeOS |
Последняя тестовая версия | R1/Alpha 4.1 — 14 ноября 2012 |
Тип ядра | Гибридное ядро |
Лицензия | MIT License |
Состояние | Альфа |
Веб-сайт | www.haiku-os.org |
Haiku — свободная операционная система для персональных компьютеров, первая версия которой нацелена на двоичную совместимость с операционной системой BeOS.
С закрытием разработки операционной системы BeOS, и продажей всей её интеллектуальной собственности фирме Palm, перед энтузиастами BeOS встала задача дальнейшего развития и существования этой операционной системы вообще. Поскольку система была во многом уникальной и передовой, её сторонники решили, дабы избежать юридических и технических проблем, переписать всё с нуля, полностью под свободной лицензией, обеспечив максимально возможную двоичную совместимость с последней версией BeOS — 5.0. Проект изначально назывался OpenBeOS, потом OBOS, и, в конце концов, Haiku.
В настоящее время международная группа разработчиков активно трудится над компонентами системы.
Содержание
- 1 Техническая реализация
- 2 История и информация
- 3 История выпусков
- 4 Разработка
- 5 См. также
- 6 Примечания
- 7 Ссылки
Техническая реализация
Haiku воплощает в себе основные идеи BeOS. Это будет модульная система, архитектурно решённая как гибридное ядро[1]: микроядерная архитектура, способная динамически подгружать необходимые модули. Сетевой стек работает в режиме ядра, но, в целях двоичной совместимости с BeOS R5, имеет также интерфейс в пользовательской области памяти.
К интересным особенностям системы следует отнести архитектуру трансляторов — системных интерпретаторов файловых форматов (например, JPEG). Кроме того Haiku продолжает традиции BeOS по активному использованию файловых мета-атрибутов, что позволяет реализовать работу с данными простыми и очевидными методами (см.: OpenTracker).
Файловая система OpenBFS поддерживает расширенные атрибуты файлов, журналирование, 64-разрядные указатели, поддержку хранения мета-тегов, максимальный размер файла — 260 гигабайт, раздела — 2 эксабайта (261 байт или 2 миллиарда гигабайт).
История и информация
Новый внешний вид приложения MediaPlayer расположен слева, справа — старый.
- Имя проекта было выбрано в честь сообщений об ошибках, выдаваемых браузером NetPositive: они представляли собой нерифмованые японские трёхстишия — хайку.
- Как и было запланировано, 14 сентября 2009 года вышла первая альфа-версия Haiku. Она нацелена в основном на разработчиков.
- Двое русских разработчиков портировали тулкит Qt, благодаря чему стало возможным легко портировать на Haiku программы написанные с использованием тулкита.
- 10 мая 2010 года вышла вторая альфа-версия Haiku. Внесено множество оптимизаций, заметно расширена функциональность.
- 1 июля 2010 представлен обновленный тулкит Qt версии 4.7 для Haiku.
- 9 сентября 2010 Стефан Ассмус обновил внешний вид приложения MediaPlayer, а также внес в него много полезных улучшений.
- 8 мая 2011 Майкл Лотц реализовал IRQ Routing.
- 20 июня 2011 состоялся релиз третей альфа Haiku.
- 12 ноября 2012 состоялся релиз четвертой альфа-версии Haiku[2].
История выпусков
Версия | Дата выпуска | Описание |
---|---|---|
R1 Alpha 1 | 14 сентября 2009 | Первая широко доступная альфа-версия; |
R1 Alpha 2 | 10 мая 2010 | Вторая широко доступная альфа-версия; |
R1 Alpha 3 | 20 июня 2011 | Третья широко доступная альфа-версия; |
R1 Alpha 4 | 12 ноября 2012 | Четвертая широко доступная альфа-версия; |
Разработка
Фотография оригинального диска с альфа-версией Haiku OS R1. Фотография была сделана внутри Центра Исследований и Разработок компании Microsoft, г. Хайфа, Израиль.
Разработка операционной системы
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 — в данный момент ведётся портирование виртуальной машины[3] и необходимых библиотек (AWT, Swing).
- Ruby
См. также
Примечания
- ↑ Haiku Kernel Architecture Questions (англ.). Forums → Haiku → General Haiku Discussion. Официальный сайт (29 октября 2008). Архивировано из первоисточника 25 августа 2011. Проверено 29 января 2009.
- ↑ Haiku Release 1 Alpha 4
- ↑ По некоторым источникам, виртуальная машина уже портирована. Вот, к примеру, видео с работающей Java 1.4.2 на Haiku.
Ссылки
Haiku на Викискладе? |
---|
Операционные системы (история • список) | |
---|---|
Free / Open source | Unix-подобные: Linux • BSD • Minix • GNU • Plan 9 • Не Unix-подобные: ReactOS • FreeDOS • Haiku • osFree • KolibriOS • Syllable • AROS • |
Proprietary | Unix-подобные: Apple MacOS X • HP-UX • IBM AIX • QNX • SCO OpenServer • Solaris • Tru64 • Не Unix-подобные: MS Windows • Встраиваемые: BlackBerry OS • Apple iOS • PSP OS • Symbian OS • MS Windows (Embedded • Phone) |