Bochs

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Bochs

Basisdaten

Entwickler Kevin Lawton
Volker Ruppert
Stanislav Shwartsman
Erscheinungsjahr 1994[1]
Aktuelle Version 2.8[2]
(10. März 2024)
Betriebssystem AmigaOS, BeOS, BSD (FreeBSD, NetBSD, OpenBSD), iOS, Linux, macOS, MorphOS, OS/2, Windows
Programmier­sprache C++
Kategorie Emulation, Virtualisierung
Lizenz LGPL (Freie Software)
deutschsprachig nein
bochs.sf.net

Bochs [bɔks] ist ein freier x86- und AMD64-Emulator (x86-Architektur) und Debugger, der den Bedingungen der LGPL unterliegt.

Viele Betriebssysteme, wie etwa Windows oder Linux, können unter Bochs betrieben werden. Ebenso ist Bochs für viele verschiedene Betriebssysteme erhältlich.

Bochs dient auch als Plattform, um etwa ein Betriebssystem oder hardwarenahe Anwendungen für einen PC zu entwickeln und zu testen. Ziel der Entwickler ist es, eine vollständige PC-Kompatibilität zu erreichen. Da Bochs allerdings als reiner Emulator die Maschinenbefehle nicht direkt ausführt, sind die Ausführungsgeschwindigkeiten entsprechend niedriger als bei virtuellen Maschinen wie VirtualBox, VMware Workstation oder Virtual PC.

Bochs ist in der Lage, auch auf einer Nicht-x86-Architektur einen x86-Prozessor zu emulieren. So kann man zum Beispiel unter Mac OS X auf dem Apple Macintosh mit PowerPC-Prozessor oder unter Solaris auf der SPARC-Architektur ein x86-Gastsystem wie Windows nutzen.

Inzwischen sind auch Varianten entstanden, wie etwa die Portierung von Bochs auf die PlayStation Portable, das iPhone oder den GP2X.

Virtuelle Hardware

[Bearbeiten | Quelltext bearbeiten]

Bochs emuliert die komplette Hardware eines IBM-kompatiblen PC. Dadurch ist die Ausführungsgeschwindigkeit im Verhältnis zur Geschwindigkeit des Wirtsystems sehr langsam, jedoch ist dadurch die virtuelle Hardware auf jedem Wirtsystem gleich. Diese besteht zu einem Minimum aus:[3]

  1. Prozessor (englisch Central Processing Unit, CPU)
  2. Programmable Interval Timer (PIT)
  3. Programmable Interrupt Controller (PIC)
  4. DMA-Controller für Speicherdirektzugriff
  5. Arbeitsspeicher (RAM und BIOS-ROM)
  6. eine Grafikkarte (am häufigsten wird eine VGA-Karte emuliert)
  7. Intel-8042-Controller für Tastatur und Maus
  8. Echtzeituhr (englisch Real Time Clock, RTC) inklusive Batterie-gepuffertem NVRAM
  9. diverse Hauptplatinen-Schaltkreise (englisch integrated circuits, ICs), die die genannten Bauteile virtuell miteinander verbinden

Damit der virtuelle PC wie ein echter PC verwendet werden kann, emuliert Bochs zusätzlich Anschlüsse für virtuelle Festplatten, Audio über eine virtuelle Soundkarte und eine Netzwerkkarte. Dies ist u. a. folgende virtuelle Hardware:

Commons: Bochs – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. bochs.sourceforge.net.
  2. github.com.
  3. Stanislav Shwartsman, Darek Mihoka: How Bochs Works Under the Hood, 2nd edition. (PDF; 833k) Juni 2012, abgerufen am 2. November 2016 (englisch).