쿼크(커널)

Quark (kernel)
쿼크
개발자랄프 슈미트, 티무 수이키
기입처C, 어셈블리 언어
OS 패밀리아미가OS
동작 상태현재의
마케팅 대상아미가
이용가능기간:영어
갱신 방법소스 코드에서 컴파일
플랫폼Motorola 68000 시리즈(MC680x0, 68k),
PowerPC(PPC)
커널 타입마이크로커널
체납
사용자 인터페이스
명령줄 인터페이스
선행아미가OS

컴퓨팅에서 쿼크는 MorphOS에서 사용되는 운영 체제 커널입니다.박스라고 불리는 완전히 가상화된 컴퓨터를 실행하도록 설계된 마이크로커널입니다(샌드박스 참조).2020년 현재, 현존하는 Amiga를 실행할 수 있는 ABOX1개뿐입니다.Motorola 68000 시리즈(MC680x0 또는 68k) 및 Power용으로 컴파일된 OS 소프트웨어PC Central Processing Unit(CPU; 중앙처리장치)

설계 목표

쿼크 마이크로커널은 L4 마이크로커널 패밀리의 멤버가 아니지만 클랜(작업 그룹), ID 개념 및 재귀 주소 매핑 등의 개념을 차용합니다.Quark는 또한 Amiga의 Exec 커널과 유사하지만 메모리 보호 기능이 있는 환경에 맞게 조정된 비동기/동기 메시지 인터페이스를 가지고 있습니다.

기타 쿼크 기능은 다음과 같습니다.

이 새로운 커널에서는 모든 Amiga Zorro II 버스 보드, PCI(Peripheral Component Interconnect) 보드 및 로컬 하드웨어 [1][2]리소스 검색 등 필요한 하드웨어 리소스 정보를 제공하는 하드웨어 추상화 레이어가 사용됩니다.

기능들

  • SYS_AddLinkMessage
  • SYS_AttemptSemaphore
  • SYS_AttemptSemaphoreShared
  • SYS_CopyCPUHALConfig
  • SYS_CreateMemList
  • SYS_CreateTask
  • SYS_DeletePort
  • SYS_DeleteSemaphore
  • SYS_Dump Mem Header
  • SYS_FindFreeMemArea
  • SYS_Find Skip Size
  • SYS_GetLinkMessage
  • SYS_GetMessageAttr
  • SYS_GetNextCPU
  • SYS_Init
  • SYS_InsideClan
  • SYS_IsClan Member
  • SYS_MMUAdd 페이지
  • SYS_MMUGet 엔트리
  • SYS_Move Rom Module To Memory End
  • SYS_ObtainPort
  • SYS_ObtainSemaphore
  • SYS_ObtainSemaphoreShared
  • SYS_ReleaseSemaphore
  • SYS_Reply Message
  • SYS_Send Message
  • SYS_SetMessageAttr
  • SYS_SetupPageTable
  • SYS_Show Exception스레드
  • SYS_Show Forbid스레드
  • SYS_ShowIntThreads
  • SYS_ShowQuarkState
  • SYS_ShowReady스레드
  • SYS_Show Run Threads
  • SYS_Show Threads
  • SYS_ShowWaitIntThreads
  • SYS_ShowWait스레드
  • SYS_시작
  • SYS_StartNextThread
  • SYS_Start Thread
  • SYS_WaitPort

트랜스 JIT부문

트랜스 JIT는 MorphOS 환경에서 68k 애플리케이션을 실행하기 위한 MorphOS JIT(Just-In-Time) 컴파일러 또는 코드 변환기입니다.MorphOS 1.4부터 [3]MorphOS 운영체제의 일부입니다.

MorphOS는 68k 프로세서를 위해 거의 독점적으로 컴파일된 많은 Amiga 애플리케이션을 실행하기 위해 완전히 통합된 68k 에뮬레이터를 가지고 있지만 MorphOS는 PowerPC에서 실행됩니다.트랜스는 J를 추가하여 이 기능을 보완합니다.IT 컴파일, 에뮬레이션 속도 향상68k와 MorphOS가 [1]제공하는 PowerPC 태스크의 완전한 통합을 방해하지 않습니다.

트랜스는 실행 파일, 부팅 시 실행 및 공유 라이브러리의 형태로 존재합니다.엄밀히 말하면 커널의 일부가 아니며 MorphOS가 없어도 실행할 수 있지만 Transe는 MorphOS의 기본 부분으로 가장 강력한 기능 중 하나로 간주됩니다.

트랜스의 호환성은 매우 높은 것으로 간주되며 68k의 명령 시퀀스나 어플리케이션 중 문제를 일으키는 것은 거의 없습니다.또, 68,000 프로그램과 네이티브 파워의 차이를 거의 눈치채지 못하는 등, 매우 고속으로 평가되고 있습니다.PC [4][5][6]코드

Trance는 Ralph Schmidt와 Teemu Suikki에 의해 개발되었으며, 다른 MorphOS 팀원 Mark Olsen, Sigbjörn Skjéret 및 Harry Sintonen의 약간의 지원을 받았다.

ABOX

Quark 커널에서는 Commodore International A1000, A500(+), A600, A2000, A1200, A3000(T) 및 A4000(T) 시스템에서 알려진 OS의 PowerPC 네이티브 구현이 가상 에뮬레이션과 드라이버의 혼합으로 실행됩니다.이 OS 드라이버는 ABOX라고 불립니다.

68k 에뮬레이션은 C로 작성되어 복잡한 명령어를 고속화하기 위해 필요한 경우 GNU 컴파일러 컬렉션(GCC) 어셈블리 언어 매크로를 사용합니다.

MorphOS에는 Trance라는 이름의 JIT 엔진도 있어 기존 에뮬레이션의 현재 상태보다 오래된 68k 프로그램의 속도를 높일 수 있습니다.

PPC 네이티브 Exec은 Power를 지원합니다.PC 레지스터 모델은 68k 또는 Power를 실행해도 아무런 차이가 없음을 의미합니다.PC 코드일부 호스트 시스템의 태스크에서 68k 코드가 에뮬레이트된 경우처럼 PowerPC 코드는 OS 박스 내의 멀티태스킹을 차단하지 않습니다(이 환경 이외의 모든 액세스는 에뮬레이트된 환경에서 멀티태스킹을 정지합니다).

이 새로운 PowerPC ABOX 커널 68k 코드로 실행되는 애플리케이션의 경우 PowerPC 태스크 내에서 서브루틴으로 실행됩니다.68k 또는 PowerPC 어플리케이션에서는 라이브러리, 후크, 인터럽트가 68k이거나 이미 Power를 사용하고 있는 경우 완전히 투과적입니다.PC [7]코드

레퍼런스

  1. ^ a b "MorphOS? What's that, then?". AmigActive. July 2000. pp. 14–17.
  2. ^ Gerber, David (2002). "MorphOS Full Features List" (PDF). Retrieved 28 July 2010.
  3. ^ "MorphOS 1.4 available". 9 August 2003. Retrieved 28 July 2010.
  4. ^ "How fast is MorphOS?". 8 February 2003. Retrieved 28 July 2010.
  5. ^ "MorphOS 68k speed". 3 November 2002. Retrieved 28 July 2010.
  6. ^ "Comparatif: performances entre AmigaOS 4.1 et MorphOS 2.3 sur Pegasos II" (in French). September 2009. Retrieved 28 July 2010.
  7. ^ "MorphOS Full Features List". 11 December 2002. Retrieved 28 July 2010.