심보스

SymbOS
심보스
Screenshot of the SymbOS desktop on the Amstrad CPC
Amstrad CPC에 있는 SymbOS 데스크톱 스크린샷
개발자심비오시스
기록 위치어셈블리 언어(Zilog Z80)
작업 상태현재
소스 모델프리웨어
초기 릴리즈2006년 5월 1일; 15년(2006-05-01)
최신 릴리즈3.1 / 2021년 12월 30일; 2개월(2021-12-30)
다음에서 사용 가능영어
플랫폼Amstrad CPC, MSX, Amstrad PCW, Enterprise 64/128
커널형마이크로커널
체납
사용자 인터페이스
그래픽 사용자 인터페이스
공식 웹사이트www.symbos.de

Symbiosis Multitasking Based Operating System(SymbOS)은 질로그 Z80 기반 8비트 컴퓨터 시스템을 위한 멀티태스킹 운영 체제다.

초기 8비트 운영 체제와는 달리, 선제적이고 우선순위 지향적인 멀티태스킹을 제공하고 최대 1024KB 크기의 RAM(Random Access Memory)을 관리하는 마이크로커널을 기반으로 한다.심보스에는 그래픽 사용자 인터페이스(GUI)와 같은 마이크로소프트 윈도우가 내장되어 있으며, 용량이 최대 128GB인 하드 디스크를 지원하며, 확장되지 않은 암스트라드 CPC-6128, 128K-MSX2 및 암스트라드 PCW에서 이미 부팅이 가능하다.

2017년 8월 30일 현재 암스트라드 CPC 시리즈 컴퓨터, MSX2 표준에서 시작하는 모든 MSX 모델, V9990 그래픽 칩이 장착된 MSX 모델, 모든 암스트라드 PCW 모델, CPC-TREX, C-ONE 및 Enterprise 64/128 컴퓨터에 사용할 수 있다.[1]

동기 및 근거

심보스(SymbOS)는 원래 1985년부터 8비트 컴퓨터에서 창으로 된 GUI로 멀티태스킹 운영체제를 어느 정도 구현하는 것이 가능한지 알아보기 위한 실험으로 시작되었다.GEOS는 동기에 기여했지만, 심보스의 구조와 특징은 그 시스템과 비슷하지 않다.2006년 발매는 이러한 '미니 윈도우' 시스템이 당시 20년 된 가정용 컴퓨터에서 양적 한계만으로 가능하다는 것을 증명했다.심보스(SymbOS)는 최근 몇 년간 가장 규모가 큰 레트로 컴퓨팅 소프트웨어 프로젝트 중 하나이다.이 프로젝트의 목표 중 하나는 하드웨어 확장을 사용하여 이러한 오래된 컴퓨터를 현대식 PC처럼 사용할 수 있도록 하는 것이다.

비록 8비트 CPU에 불과하지만 Z80은 선제적멀티태스킹 운영 체제를 실행할 수 있다.Z80이 부족한 메모리 보호와 같은 기능은 이러한 OS에서 필수적인 것이 아니다.예를 들어 아미가OS도 메모리 보호가 미흡하다.MP/M OS는 Z80 CPU에서 멀티태스킹이 가능하다는 것을 증명했다.하지만, 그것은 일반적으로 가정용 컴퓨터에는 사용할 수 없었다.

MOS Technology 6502스택 포인터를 이동할 수 없지만 Z80은 메모리 내 어느 위치로든 자유롭게 재배치할 수 있어 선제적 멀티태스킹 구현이 용이하다.대체 레지스터 세트의 존재는 작업 간의 컨텍스트 전환을 극적으로 가속화한다.Z80 시스템의 64KB 주소 공간 제한은 은행 전환으로 해결할 수 있다.이런 식으로 암스트라드 CPCPCW, MSX, Enterprise 또는 SAM Coupé와 같은 컴퓨터는 수백 킬로바이트의 메모리에 접근할 수 있다.

디자인

심보스에는 마이크로커널이 포함되어 있어 작업 관리, 메모리 관리, 프로세스통신을 수행할 수 있다.[2]

작업관리

과제관리의 경우 선제적·협동적 멀티태스킹의 조합이 선택되어 다른 과제 우선순위가 가능해졌다.선제적이란 CPU 시간을 다른 작업과 공유하기 위해 운영 체제에 의해 일정 시간이 지나면 작업이 중단되는 것을 말한다.협업은 작업 자체가 CPU 시간 사용을 중지하는 것을 의미한다.현재 업무를 마치거나 특정 이벤트를 기다리면 그렇게 한다.이 조합 때문에 우선순위를 지정할 수 있다.우선 순위가 낮은 태스크는 우선 순위가 높은 모든 태스크가 작동하지 않는 경우에만 CPU 시간을 얻는다.

메모리 및 뱅킹 관리

메모리 관리는 전체 RAM을 256바이트의 작은 블록으로 나눠 동적으로 할당할 수 있다.애플리케이션은 항상 운영 체제나 비디오 메모리가 메모리 공간을 차지하지 않는 보조 64KB RAM 뱅크에서 실행된다.이를 통해 한 번에 최대 63KB까지 예약할 수 있다.

은행 관리는 Z80 CPU가 16비트 주소 버스만 가지고 있더라도 시스템이 최대 1메가바이트의 크기로 메모리를 관리할 수 있도록 보장한다.다른 64KB은행에 배치된 메모리와 기능에 투명하게 접근할 수 있도록 했다.

프로세스 간 통신

다른 업무와 운영체제 간의 통신은 보통 통화를 통해 이루어지는 것이 아니라 메시지를 통해 이루어진다.이는 스택, 전역 변수 및 공유 시스템 리소스의 조직 문제를 방지하기 위해 멀티태스킹 환경 내에서 필요하다.더 심브OS 커널은 동기식 및 비동기식 IPC를 지원한다.

파일 시스템 관리

심볼OS는 모든 플랫폼에서 파일 시스템 CP/M, AMSDOS, FAT(파일 할당 테이블) 12-16-32를 지원한다.마지막 제품으로 심보스(SymbOS)는 최대 128GB 용량의 대용량 저장 장치를 처리할 수 있다.또한 8비트 시스템에서는 최대 2GB의 파일을 관리하는 기능이 드물다.대부분의 32비트 및 64비트 운영 체제가 3개의 FAT 파일 시스템을 지원하므로 다른 컴퓨터와의 FAT 지원 데이터 교환은 매우 쉽다.

인터페이스

MSX 버전의 심볼 스크린샷OS

심볼의 그래픽 사용자 인터페이스(GUI)OS는 완전히 객체 지향적으로 작동한다.모양과 느낌은 마이크로소프트 윈도의 그것과 닮았다.시계와 "시작" 메뉴가 있는 잘 알려진 태스크바를 포함하고 이동, 크기 조정, 스크롤이 가능한 최대 32개의 창을 열 수 있다.전체 시스템은 최적화된 어셈블리 언어로 작성되며, 이는 GUI가 호스트 시스템이 지원하는 속도만큼 실행된다는 것을 의미한다.

창의 내용은 슬라이더, 확인란, 텍스트 라인, 버튼 또는 그래픽과 같은 원시 GUI 요소인 "제어장치"로 정의된다.창의 배경 또는 보이지 않는 영역은 별도의 비트맵 버퍼에 저장할 필요가 없다.표시장치에서 영역을 복원해야 할 경우, 그 내용을 대신 다시 그리게 된다.이것은 대부분의 다른 8비트 GUI에 비해 SymbOS GUI를 훨씬 더 메모리 친화적으로 만든다.

적용들

다른 운영 체제에서 사용할 수 있는 유사한 소프트웨어와 유사하도록 설계된 SymbOS에는 몇 가지 표준 애플리케이션이 있다.예를 들어 메모장, SymCommander(노턴 커맨더와 유사), SymShell(cmd.exe), SymZilla(Mozilla Firefox), SymPlay(QuickTime), SymAmP(Winamp), 지뢰 찾기 등이 있다.[3]

명령

SymShell에서 지원하는 명령 목록은 다음과 같다.[4]

개발 및 릴리스

심볼OS는 원래 암스트라드 CPC를 위해 개발되었다.일반 부품과 하드웨어 부품이 엄격히 분리되어 있는 그것의 모듈 구조는 다른 Z80 기반 시스템에 비교적 쉽게 포팅할 수 있게 한다.

MSX2 표준으로 시작하는 MSX 컴퓨터는 2006년 여름부터 지원되고 있다.[5]암스트라드 PCW 포트는 2007년 8월부터 이용할 수 있다.[6]Enterprise 128, SAM Coupé 및 ZXSpectrum 복제(ATM-turbo 2+), ZX-Evolution/BaseConf 등의 버전도 심보스 요구 사항을 충족하므로 가능하다.

운영 체제에 대한 기본 조건, 즉 중간 계층에 의한 하드웨어와 애플리케이션 소프트웨어의 엄격한 분리를 유지함으로써, 심보스 애플리케이션은 각 컴퓨터에서 독립적으로 플랫폼으로 실행되며 특정 하드웨어에 직접 액세스하는 애플리케이션을 제외하고 다른 시스템에 맞게 조정할 필요가 없다.

참고 항목

참조

외부 링크