Befehlssatz und Assembler
Welche Beschreibung des ABI (Application Binary Interface) ist richtig?
- AEine Vereinbarung auf Quellcodeebene, die Funktionsnamen und Argumenttypen festlegt
- BEine Vereinbarung, die nur die Befehlsarten und Bitmuster der CPU festlegt
- CEine Vereinbarung auf Maschinenebene, die Programme untereinander verbindet, einschließlich Aufrufkonvention sowie Größe und Ausrichtung von Datentypen
Antwort und Erläuterung anzeigen
Antwort: C. Eine Vereinbarung auf Maschinenebene, die Programme untereinander verbindet, einschließlich Aufrufkonvention sowie Größe und Ausrichtung von Datentypen
Das ABI ist die Vereinbarung auf Maschinenebene, damit kompilierte Programme und Bibliotheken zusammenarbeiten; es umfasst Aufrufkonvention, Größen von int, long und Zeigern, Ausrichtung von Strukturen und die Art der Systemaufrufe. Die API legt im Quellcode fest, wie Funktionen benutzt werden; bei gleicher API, aber anderem ABI ist eine Bibliothek ohne Neuerstellung nicht verwendbar. Auch bei derselben RISC-V-ISA kann das ABI je nach Betriebssystem und Einsatzzweck unterschiedlich sein.