Was ist ein natives Entwicklungskit?

In der Computerprogrammierung und Softwareentwicklung befindet sich ein natives Entwicklungskit (NDK) normalerweise eine abstrakte Programmierschnittstelle (API), die einem Entwickler die Möglichkeit bietet, Funktionen zu verwenden oder Code direkt über das Kernbetriebssystem auszuführen. Diese Methode zur Ausführung eines Programms unterscheidet sich deutlich von der Ausführung von verwalteten Code oder interpretierten Programmen, bei denen der geschriebene Code von einem virtuellen Computer oder Interpreter ausgeführt wird, der als Softwareschicht zwischen den Funktionen des Kernbetriebssystems und dem benutzerbezogenen Code fungiert. Die Verwendung eines nativen Entwicklungskits kann für Anwendungen von wesentlicher Bedeutung sein, die die schnellstmöglichen Ausführungs- und Verarbeitungs- und Verarbeitungszeiten erfordern, da es direkten Zugriff auf Hardware und Bibliotheken ermöglicht, das das Betriebssystem verwendet. Abhängig von der Art des geschriebenen Programms und des Zielbetriebssystems erhöht die Verwendung eines nativen Entwicklungskits möglicherweise überhaupt nicht die Programmgeschwindigkeit und kann Code erstellen, der schwer zu warten, zu lesen und zu portieren kann.ihre Systeme.

Anwendungen, die für einige Geräte wie Smartphones oder verwenden interpretierte Computersprachen geschrieben werden, werden nicht direkt von den Kernbetriebssystemprozessen oder dem Kernel ausgeführt. Stattdessen wird der Programmcode von einem separaten Programm ausgeführt, das als Virtual Machine (VM) oder Interpreter bezeichnet wird. Die virtuelle Maschine liest den Code, erweitert und löst Befehle und Schnittstellen mit dem Kernel, um den Code auszuführen. Dies kann für einige Entwickler von Vorteil sein, da es eine gute Abstraktionsebene für die Portabilität bietet und den Erstellern der virtuellen Maschine viele komplexe Details wie Ressourcenverwaltung und Dateibehandlung hinterlässt.

In einigen Fällen kann die virtuelle Maschine jedoch ein Hindernis für einige Arten von Programmen sein. Die VM kann die Ausführung verlangsamen oder keinen Zugriff auf einige Funktionen innerhalb des Host -Kernels gewähren. Ein natives Entwicklungskit für das Ziel, das SY betreibtSTEM oder Gerät setzt die Funktionen des Kernels der geschriebenen Anwendung aus. Abhängig vom Ausmaß des Kits kann ein Programm direkt auf Hardware zugreifen, seine eigenen benutzerdefinierten Bibliotheken in den Kernel laden oder systemspezifische Optimierungen verwenden.

Ein natives Entwicklungskit wird am häufigsten nur für zeitkritische Teile eines Programms verwendet. Dies können Grafikverarbeitungsberechnungen, Ausgaben für die Anzeige- oder Dateieingabe und Ausgabe sein. Nicht alle Programme, die native Funktionen oder Routinen verwenden, werden einen Geschwindigkeitsvorteil erkennen, da die virtuelle Maschine möglicherweise bereits Optimierungen für den verwalteten Code erstellt, sodass der resultierende Maschinencode identisch ist, unabhängig davon, ob native Funktionen verwendet werden. Darüber hinaus bindet native Code ein Programm mit einer spezifischen Implementierung eines Betriebssystems und manchmal einer bestimmten Version eines Geräts, was bedeutet, dass der Code, das ein natives Entwicklungskit verwendet, möglicherweise nicht einfach auf andere Systeme portiert wird.

ANDERE SPRACHEN

War dieser Artikel hilfreich? Danke für die Rückmeldung Danke für die Rückmeldung

Wie können wir helfen? Wie können wir helfen?