헬리오스

HeliOS
헬리오스
개발자페리헬리온 소프트웨어
OS 제품군유닉스 유사
작업 상태역사적인
소스 모델오픈 소스
초기 릴리즈1988; 34년 전 (1998년)
최신 릴리즈1.3.1 / (날짜 알 수 없음)
커널형마이크로커널
면허증GPL v3
공식 웹사이트https://github.com/axelmuhr/Helios-NG

헬리오스병렬 컴퓨터용 유닉스급 운영체제(OS)가 단종된 것이다.페리헬리온 소프트웨어에서 개발하여 출판하였다.그것의 주요 구조트랜스푸터다.헬리오스의 마이크로커널은 분산된 네임스페이스와 메시징 프로토콜을 구현하며, 이 프로토콜을 통해 서비스에 액세스한다.POSIX 호환성 라이브러리는 유닉스 애플리케이션 소프트웨어를 사용할 수 있게 하며, 시스템은 대부분의 일반적인 유닉스 유틸리티를 제공한다.

헬리오스에 대한 작업은 1986년 가을에 시작되었다.[1]그것의 성공은 트랜스퍼퍼터의 상업적 실패에 의해 제한되었고, 다른 아키텍처로 이동하려는 노력은 제한적인 성공에 도달했다.페리엘리온은 1998년에 거래를 중단했다.[2]

개발

1980년대 초, 팀 킹은 배스 대학에서 메타콤코에 입사하여 TIPOS라고 불리는 운영체제에 대한 약간의 권리를 가지고 왔다.[3]메타컴코는 코모도어로부터 아미가오스아미가오스에 대한 작업 계약을 확보했다.DOS 구성요소는 TRIPOS에서 파생된다.1986년 킹은 MetaComCo를 떠나 Perihelion Software를 찾았고, 초기에는 INMOS Transputer 시리즈 프로세서를 목표로 한 병렬 운영체제 개발을 시작했다.Helios는 TRIPOS의 경량 메시지 전달 아키텍처를 네트워크 병렬 기계로 확장했다.

Helios 1.0은 1988년 여름 최초의 상용 출시였으며, 1989년 가을 버전 1.1, 1990년 초 1.1a, 1990년 12월 1.2.1, 1.2.2 업데이트 순으로 나타났다.버전 1.3은 많은 유틸리티, 라이브러리, 서버 및 드라이버가 개선된 중요한 업그레이드였습니다.마지막 상용 버전은 1.3.1이었다. 후에 팀 킹과 닉 가넷은 GNU 공용 라이센스 v3에 따라 출처를 공개하도록 허가했다.[4]

커널과 핵

헬리오스는 여러 개의 고대역폭 통신 링크에 의해 연결된 복수의 노드 네트워크를 위해 설계되었다.노드는 전용 처리 노드 또는 연결된 I/O 장치가 있는 프로세서일 수 있다.소형 시스템은 여러 처리 노드의 집합에 연결된 호스트 PC 또는 워크스테이션으로 구성될 수 있는 반면, 대형 시스템에는 스토리지, 그래픽 또는 사용자 단말기에 대한 전용 노드에서 지원하는 수백 개의 처리 노드가 있을 수 있다.

Helios 네트워크는 처리 노드에 대해 파일 시스템 서버, 콘솔 서버 및 재설정 제어를 제공할 수 있는 하나 이상의 I/O 서버 노드를 필요로 한다.전원이 켜질 때 헬리오스 핵은 I/O 서버에서 네트워크로 부트스트랩된다.각 노드는 작은 1단 로더를 사용하여 부팅되며, 이 로더는 핵을 적절히 다운로드하고 초기화한다.일단 실행되면, 노드는 이웃과 통신하고, 필요할 경우 차례로 부팅한다.

헬리오스 핵은 커널, 라이브러리, 로더 서비스, 프로세서 관리자 서비스로 구성되어 있다.

커널

헬리오스 커널은 사실상 마이크로커널로, 대부분의 서비스가 권한 없는 서버 프로세스로 구현되는 하드웨어 위에 최소한의 추상화를 제공한다.그것은 메모리 할당, 프로세스 관리, 메시지 전달 및 동기화 원시 요소들을 제공한다.

도서관

헬리오스 핵에는 시스템, 서버 및 유틸리티 라이브러리라는 세 개의 라이브러리가 있다.유틸리티 라이브러리는 다른 라이브러리가 공유하는 C 프로그래밍을 위한 몇 가지 기본 라이브러리 루틴을 제공한다.시스템 라이브러리는 기본 커널 인터페이스를 제공하여 C 함수 호출을 커널로 송수신하는 메시지로 변환한다.네트워크에서의 위치에 관계없이 프로세스 간 통신이 가능한 추상화를 구현한다.서버 라이브러리는 아래와 같이 헬리오스 서버 작성을 위한 이름 공간 지원 기능을 제공한다.

로더 및 프로세서 관리자

핵의 나머지 구성요소는 로더와 프로세서 관리자 서버들이다.일단 커널이 로드되면 이러한 프로세스는 부트스트랩되며, 새롭게 실행되는 노드를 헬리오스 네트워크에 통합한다.

이름 지정 및 서버

헬리오스의 주요 특징은 그것의 분산된 이름 시스템이다.Helios 네트워크는 가상 루트 노드, 선택적 가상 네트워크 구조 노드, 각 프로세서의 노드, 서비스에서 제공하는 서브 프로세서 이름 공간을 포함하는 단일 통합 이름 공간을 구현한다.이름은 앞쪽 슬래시 문자와 텍스트 이름 요소를 사용하여 Unix의 이름과 유사하다.

이름 공간은 네트워크 서버에 의해 관리되며, 이는 첫 번째 연결된 노드에서 핵이 부팅되면 I/O 서버에 의해 시작된다.네트워크 서버는 제공된 네트워크 맵을 사용하여 네트워크의 특정 노드에서 하드웨어 장치의 프로세서 이름을 할당하고 드라이버를 초기화한다.커널은 이름 확인자를 포함하며 이전에 확인된 이름에 대한 경로의 로컬 캐시를 관리한다.

서버는 일반적으로 서버 라이브러리의 지원을 받아 General Server Protocol을 구현하는 Helios 프로세스다.서버 프로토콜은 개념적으로 Unix VFS API와 유사하며, Plan 99P와 더 밀접하다.서버는 오픈/읽기/쓰기/닫기 방식의 표준화된 운영을 통해 리소스를 파일로 나타낼 것을 요구한다.Plan 9의 /proc 같은 시설이나 기타 Unix와 유사한 운영 체제와 마찬가지로 파일, I/O 기기, 사용자, 프로세스 등의 자원은 모두 관리 프로세스가 제공하는 네임스페이스의 가상 파일로 표현된다.

Helios의 주요 서버는 이전에 언급된 로더, 프로세서 관리자, 네트워크 서버로서 세션 관리자, 윈도우 서버, 파일 서버와 함께 한다.그 밖에 키보드, 마우스, RS232Centronics 서버(호스트 I/O 서버에 내장), null 서버(유닉스의 /dev/null과 같은) 및 로거 서버(유닉스의 syslog와 같은)가 있다.

프로그래밍 및 유틸리티

사용자 입장에서 보면 헬리오스는 유닉스와 상당히 비슷하다.일반적인 유틸리티 프로그램은 대부분 제공되며, 일부 프로그램은 다중 시스템의 가용성을 반영하기 위한 확장 기능이 있다.

당장 드러나지 않는 것은 헬리오스가 유닉스 파이프의 개념을 CDL(Component Distribution Language)이라는 언어로 확장하고 있다는 점이다.CDL에서 다음과 같은 일반적인 Unix 셸 파이프라인 많은 것을 Task Force라고 하며, Task Force Manager 서버에 의해 사용 가능한 CPU에 걸쳐 투명하게 분산된다.CDL은 양방향 파이프, 순차 및 병렬 프로세스 팜 운영자, 로드 밸런싱 및 리소스 관리를 위한 추가 운영자를 통해 기존의 Unix 구문을 확장한다.

헬리오스 애플리케이션은 C, C++, FORTRAN, Modula-2를 사용하여 작성할 수 있다.POSIX 라이브러리는 기존 유닉스 소프트웨어의 포팅을 지원하고 프로그래머들에게 친숙한 환경을 제공한다.헬리오스는 오캄 프로그래밍 언어로 작성된 프로그램을 지원하지 않는다.

하드웨어

Helios는 주로 Transputer 시스템과 함께 사용되도록 의도되었다.인모스의 트램 시스템, 마이코 CS, 파시텍 멀티클러스터 및 슈퍼클러스터, 텔마트 T 등 다양한 제조사의 제품과 호환된다.노드. 아타리 트랜스푸터 워크스테이션은 적어도 학계 밖의 헬리오스 하드웨어일 것이다.

헬리오스는 T4xx와 T8xx, 32비트 Transputers(T2xx 16비트 모델은 아님)에서 구동할 수 있으며 Inmos, Transstech 등의 다양한 SCSI, 이더넷 및 그래픽 하드웨어용 장치 드라이버를 포함한다.

이후 버전에서 Helios는 TI TMS320C40 DSP와 Active Book 태블릿 장치에서 사용하는 [5]ARM 아키텍처에 포팅되었다.[6]

참조

  1. ^ Perihelion Software Ltd. (May 1991). The Helios parallel operating system (PDF). Prentice Hall International. p. 9. ISBN 0-13-381237-5.
  2. ^ King, Tim. "Tim King - CV". Retrieved 2007-03-18.
  3. ^ Richards, M.; Aylward, A.R.; Bond, P.; Evans, R.D.; Knight, B.J. (September 1979). "TRIPOS -- a Portable Operating System for Mini-computers". Software: Practice and Experience. 9 (7): 513–526. doi:10.1002/spe.4380090702. S2CID 2847052.
  4. ^ Muhr, Axel. "Axel Muhr". Retrieved 2019-04-07.
  5. ^ "Helios on the Arm". Acorn User. June 1994. p. 16. Retrieved 5 August 2021.
  6. ^ "Xmas Launch for Active Books". Acorn User. August 1990. p. 7. Retrieved 6 May 2021.

추가 읽기

  • Perihelion Software (1989). The Helios operating system. Prentice Hall International (UK) Ltd. ISBN 0-13-386004-3.
  • Perihelion Software (1991). The Helios parallel operating system. Prentice Hall International (UK) Ltd. ISBN 0-13-381237-5.

외부 링크