Quark (kernel)

Quark (kernel)

The Quark kernel used in MorphOS is a microkernel designed to run totally virtualized computers, called "boxes" (see sandbox). Currently only one "Box" is available, the ABox, that lets users run old AmigaOS software compiled for MC680x0 processors.

MorphOS/Quark has the following basic design goals:
* High Super/Usermode switch speed
* Low interrupt latency
* IntThreads and Int PCode abstraction
* Memory protection
* Symmetrical multi processing (SMP)
* Task/Thread and Clan/Chief model
* Resource tracking
* Asynchronous message system
* Virtual memory (optional)
* Recursive Memory Management
* Distributed computing
* No access to Kernel structures
* Clean design with an elegant API
* Micro/pico kernel mixture

For this new kernel a hardware abstraction layer is used which provides the necessary hardware resource information like scanning all zorro boards, pci boards and local hardware resources.

Under the Quark kernel a PowerPC native reimplementation of the OS we know from the Commodore A1000, A500, A2000, A1200, A3000(T) and A4000(T) systems runs as a mixture of a virtual emulation and a driver. We call this OS driver from now on the A-Box.

The 68k emulation is written in C and uses gcc assembler macros where necessary to speed up certain complex instructions. Even though the emulation is written in C, its structure is on a level where handcoded assembler isn't significantly faster.

A JIT (Just In Time) engine for MorphOS to speed up old 68k programs beyond the current state of the traditional emulation is also available.

The new native PPC Exec supports the PowerPC register model which means there's no difference for this new Exec if it runs 68k or PowerPC code. PowerPC code does not block multitasking inside the OS box like in emulations where the 68k code is just emulated in some host system's task (then every access outside this environment would stop the multitasking in the emulated environment).

For applications running under this new PowerPC A-Box kernel 68k code runs as subroutines inside PowerPC tasks. For 68k or PowerPC applications it's completely transparent if some library, hook, interrupt is still 68k or already using PowerPC code.

Early in its development, there was a relatively common misconception that the Quark Microkernel in MorphOS is related to or borrowed from the QNX operating system. This is entirely false.


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • Quark (disambiguation) — A quark is a subatomic particle, Quark may also refer to:* Quark , a nonce word in James Joyce s Finnegans Wake (origin of the word) * Quark (cheese), a soft cheese * Peugeot Quark, a concept car * Quark (song), a song by Die Ärzte * The Quark,… …   Wikipedia

  • Quark Framework — CAL Paradigm(s) functional, non strict, modular Appeared in 2004 Designed by Luke Evans, Bo Ilic (Business Objects) Typing discipline static, strong …   Wikipedia

  • MorphOS — Basisdaten Entwickler MorphOS Team …   Deutsch Wikipedia

  • BRST quantization — In theoretical physics, BRST quantization (where the BRST refers to Becchi, Rouet, Stora and Tyutin) is a relatively rigorous mathematical approach to quantizing a field theory with a gauge symmetry. Quantization rules in earlier QFT frameworks… …   Wikipedia

  • Microkernel — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Ein Mikrokernel (oder auch Mikrokern) bezeichnet einen… …   Deutsch Wikipedia

  • Mikrokernel — Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung. Ein Mikrokernel (oder auch Mikrokern) bezeichnet einen… …   Deutsch Wikipedia

  • MorphOS — Company / developer The MorphOS Development Team Programmed in C OS family AmigaOS like …   Wikipedia

  • Mikrokern — Ein Mikrokernel bezeichnet einen Betriebssystemkern. Der Mikrokernel verfügt im Gegensatz zu einem monolithischen Kernel nur über grundlegende Funktionen – in der Regel lediglich Funktionen zur Speicher und Prozessverwaltung, sowie… …   Deutsch Wikipedia

  • Liste der Betriebssysteme — Inhaltsverzeichnis 1 DOS und Windows 1.1 DOS auf x86 Basis (DOS für IBM PC Kompatible) 1.1.1 Netzwerkserversysteme für DOS Programme 1.2 Windows Systeme von Microsoft 1.2.1 …   Deutsch Wikipedia

  • List of computer technology code names — Following is a list of code names that have been used to identify computer hardware and software products while in development. In some cases, the code name became the completed product s name, but most of these code names are no longer used once …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”