•  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

하이쿠OS

최근 수정 시각 : 2022-08-03 02:36:55 | 조회수 : 25

이 문서의 내용 중 전체 또는 일부는 넥스32 위키에서 가져왔으며 GNU Free Documentation License 1.3에 따라 이용할 수 있습니다.
본 문서의 원본은 링크에서 확인할 수 있습니다.

Haiku Operation System

하이쿠OS는 Be사가 내놓았던 BeOS의 설계 개념을 이어받은 PC용 운영체제이다. BeOS의 직계후손이라고 할 수 있는 물건으로, BeOS의 가장 큰 특징이라고 할 수 있는 빠른 부팅속도와 가벼운 메모리 점유율, C++기반의 객체지향 프로그래밍 지원 등이 특징이다.

원래 BeOS가 중점적으로 내세웠던 미디어 분야는 이미 타 OS에서 워낙 개발이 진척되어 사실상 앞으로 내세울만한 요소로서는 부족함이 많다.

목차

1. 역사
2. 개발
3. 특이사항
4. 외부

1. 역사

BeOS를 만들던 Be사는 경영악화로 2001년 Palm사에 인수합병되었는데, 이후 Palm 측은 BeOS 개발을 중단하겠다는 발표를 했다. 많은 사용자를 거느린 운영체제는 아니었으나 빠른 속도와 간결한 인터페이스로 매니악한 유저층을 거느리고 있던 BeOS는 여러 형태로 오픈소스 프로젝트가 개설되어 개발이 진행되었다. 그 중 현재 살아남은 것은 OpenBeOS라는 이름으로 시작된 프로젝트로, 개발 중 프로젝트 명이 변경되어 ‘하이쿠’라는 이름의 운영체제로 완성이 되어가고 있다.

BeOS 개발 중단 직후 오픈소스 진영에서 일어난 BeOS의 후속 프로젝트는 여러가지가 있었는데, Cosmoe와 Blue Eyed OS 프로젝트는 이미 안정화를 걷고있는 리눅스나 BSD 커널을 기반으로 BeOS의 API를 재구성하여 리눅스나 BSD의 커널 위에서 BeOS를 끌어안으려고 했으나, OpenBeOS 프로젝트는 운영체제의 바닥부터 전부 새롭게 작성하려고 했으며, 이 계획은 현재 거의 완성 단계에 이르러 기존의 BeOS에서 사용하던 거의 모든 프로그램이 별도의 컴파일 과정 없이 실행파일(바이너리) 단계에서 호환이 된다.

2004년 OpenBeOS 프로젝트는 Palm 측에서 상표권 문제 여지를 제기함에 따라 이 문제 해결을 위해 새로운 이름을 공모하였고, 공모 결과로 현재의 프로젝트 명칭인 하이쿠를 새 이름으로 정했다. 일본 고유의 시 형식인 하이쿠처럼 BeOS의 우아함과 단순함을 그대로 계승하고자 하는 의미가 있다고 한다.

2009년 9월부터 불안정버전인 ‘R1 알파1’ 버전을 배포하였으며, 2011년 6월 20일 알파3 버전에서는 안정화가 상당히 이루어져 후원금 지원자에게는 디스크 배포를 진행하는 등의 행사를 진행하고 있다. 따로 디스크를 구매하지 않아도 인터넷에서 Anyboot이나 ISO 포맷으로 된 파일을 다운받을 수 있으며, VMware용의 이미지도 제공하고 있다. 이를 이용해서 가상PC에 설치해볼 수 있다. 또한 가상머신 이미지 외의 설치용 이미지에는 라이브 기능이 기본으로 들어있어 실제 컴퓨터에 설치하지 않고도 디스크로 부팅해서 간단한 라이브 테스트를 실시해볼 수 있다.

현재 이 프로젝트는 뉴욕에 본사를 두고 있는 비영리 기관인 Haiku Incorportated가 맡고 있다.

2. 개발

하이쿠는 C++을 기본 언어로 개발되며 객체지향의 API를 제공한다. BeOS에 있던 기능을 자원봉사 프로그래머들이 각각의 개별적인 API들을 작성하여나가고 있다.

하이쿠 커널은 하이브리드 커널구조를 가지고 있으며 Be 사의 전 직원인 Travis Geiselbrecht가 만든 NewOS의 커널을 포크(folk)하여 생성되었다. 커널 부분은 이미 거의 완성된 상태로, 가상 파일 시스템(VFS) 레이어와 초보적구조의 대칭 멀티 프로세싱(SMP)를 지원한다.

원래 BeOS는 GCC 2.95버전을 기반으로 제작된 OS이지만 GCC 2가 워낙 오래되었기 때문에 하이쿠는 GCC 4를 기본으로 제작되어있으며 GCC 4/2 혼용구조로 호환성을 확보하고 있다.

하이쿠의 API들은 다음과 같은 기능들을 포함한다.
  • 응용 프로그램 / 인터페이스 - 키트를 개발하는 인터페이스, 응용 프로그램 및 지원.
  • BFS – 현재 OpenBFS로 이미 완성된 프로젝트. BFS(Be File System)를 구현한다.
  • 게임 - 게임에 사용되는 API와 기타 킷을 지원.
  • 입력서버(Input Server) - 다양한 입력장비의 입력을 처리하는 입력서버는 키보드, 마우스, 조이패드, 미디키 등의 장비의 입력을 받아 다른 어플리케이션과 통신을 중계한다.
  • 커널 - 운영체제의 중심이 되는 커널의 개발.
  • 미디어 - 오디오 및 비디오 관련의 API 및 미디어서버(내부통신)를 지원.
  • MIDI - MIDI 프로토콜을 지원.
  • 네트워크 - 네트워크 장비의 지원과, 네트워크를 통한 어플리케이션의 중계를 지원.
  • OpenGL - 내장 OpenGL을 지원.
  • 환경 설정 - 간결하고 편리한 환경설정의 구현.
  • 프린터 - 프린터 드라이버와 내부통신 서버 환경을 구현.
  • 스크린 세이버 - 스크린세이버 기능을 구현.
  • 스토리지 - 파일 시스템(디스크)와 내부 프로세서간에 통신을 위한 드라이버와 서버기능 구현.
  • 번역 - 하이쿠OS를 위한 다양한 설명 및 안내를 추가 및 번역하여 다양한 언어로 지원.

3. 특이사항

현재 개발이 아직 진행중이지만 알파1 판에서 구형 BeOS의 대다수 프로그램이 호환되는 것을 확인가능하다.

그러나 아직 개발중인데다 하드웨어 업체의 지원이 없는 상태이기 때문에 장비의 드라이버 등이 많이 취약한 상태여서 실제 PC에 설치하려면 의외로 부딪히게 되는 장벽이 높은 편이다.

사용시의 특이사항으로는 윈도우나 기타 운영체제와 키 배치가 미묘하게 다르다. 복사 및 붙여넣기 등에 사용하는 시스템 조합키가 Ctrl키가 아니라 Alt키로 되어있는 것이 특징이다. 즉 복사&붙여넣기는 Alt+C & Alt+V키가 된다. 처음에는 상당히 어색하게 느껴지지만 적응되면 큰 문제는 없다.

4. 외부