Definition | #include <unistd.h> extern char **environ; int execl (const char *path, const char *arg0, ... , (char *)0 ); | |
Beschreibung | Die Funktionen der Wenn durch den Aufruf einer
Dabei ist argc der Argumentzähler und argv ein Vektor von Zusätzlich wird folgende Variable als Adresse eines Vektors von
argv und Die Argumente, die von einem Programm bei einer der path zeigt auf einen Pfadnamen, der die neue Prozessabbilddatei angibt. file wird benutzt, um den Pfadnamen für die neue Prozessabbilddatei zu erzeugen. Wenn file einen Schrägstrich enthält, wird es als Pfadname der Prozessabbilddatei angesehen. Wenn file keinen Schrägstrich enthält, wird das Pfadpräfix für diese Datei dadurch gefunden, dass die Dateiverzeichnisse durchsucht werden, die durch die Umgebungsvariable Wenn die Prozessabbilddatei kein gültiges ausführbares Objekt ist, verwenden arg0, ... sind Zeiger auf Zeichenketten, die mit dem Nullbyte abgeschlossen sind. Diese Zeichenketten bilden die Argumentliste, die dem neuen Prozessabbild zur Verfügung steht. Die Liste wird durch einen Nullzeiger abgeschlossen. Das Argument arg0 sollte auf einen Dateinamen zeigen, der dem Prozess zugeordnet ist, der von einer der argv ist ein Vektor aus Zeigern auf Zeichenketten, die mit einem Nullbyte abgeschlossen sind. Das letzte Element dieses Vektors muss ein Nullzeiger sein. Diese Zeichenketten stellen die Argumentliste für das neue Prozessabbild dar. Der Wert argv[0] sollte auf einen Dateinamen zeigen, der mit dem Prozess verbunden ist, der von einer der envp ist ein Vektor von Zeigern auf Zeichenketten, die mit dem Nullbyte abgeschlossen sind. Diese Zeichenketten bilden die Umgebung für das neue Prozessabbild. Der Vektor envp wird durch einen Nullzeiger abgeschlossen. Bei den Funktionen, die envp nicht als Argument übergeben ( Die Anzahl von Bytes, die für die Argument- und Umgebungsliste des Prozesses zur Verfügung steht, ist Dateideskriptoren des aufrufenden Prozessabbilds bleiben auch im neuen Prozessabbild offen, außer denen, für die das sbe-Bit Der Zustand von Umwandlungs- und Meldungskatalog-Deskriptoren im neuen Prozessabbild ist undefiniert. Für den neuen Prozess wird folgendes Äquivalent beim Systemstart ausgeführt:
Signale, die im aufrufenden Prozessabbild auf die Signalaktion Nach einem erfolgreichen Aufruf einer Wenn das s-Bit für den Eigentümer bei der neuen Prozessabbilddatei gesetzt ist (siehe auch Gemeinsam nutzbare Speicherbereiche, die an das aufrufende Prozessabbild angehängt sind, werden nicht an das neue Prozessabbild angehängt (siehe auch Der neue Prozess erhält außerdem folgende Attribute aus dem aufrufenden Prozessabbild:
Alle anderen Prozessattribute der XPG4-konformen Bibliotheksfunktionen sind im alten und neuen Prozessabbild identisch. Bei erfolgreicher Beendigung markieren die POSIX-Dateien werden beim Aufruf einer Werden Threads verwendet, so wirkt sich die Funktion auf den Prozess oder auf einen Thread wie folgt aus:
| |
Returnwert | -1 | bei Fehler. |
Fehler | Die | |
|
| Die Anzahl der Bytes, die von der neuen Argument- und Umgebungsliste des Prozessabbilds verwendet werden, ist größer als die systemspezifische Grenze von |
|
| Das Durchsuchrecht für ein Dateiverzeichnis im Pfad-Präfix der neuen Prozessabbilddatei ist nicht gegeben, |
Erweiterung | ||
|
| Programm konnte nicht geladen werden. |
|
| Ein Signal wurde abgefangen. |
|
| Beim Übersetzen von path oder file wurden zuviele symbolische Verweise angetroffen. (Ende) |
| ||
| Die Länge der Argumente path oder file oder ein Element der Umgebungsvariablen | |
| ||
|
| Eine oder mehrere Komponenten des Pfadnamens der neuen Prozessabbilddatei existieren nicht, oder path oder file zeigen auf eine leere Zeichenkette. |
|
| Ein neues Prozessabbild erfordert mehr Speicherplatz, als von der Hardware oder den systemspezifischen Speicherverwaltungseinschränkungen zugelassen ist. |
|
| Eine Komponente des Pfad-Präfixes der neuen Prozessabbilddatei ist kein Dateiverzeichnis. (Ende) |
Die | ||
|
| Die neue Prozessabbilddatei besitzt zwar die nötigen Zugriffsrechte, aber nicht das richtige Format. |
Hinweise | Da der Zustand von Umwandlungs- und Meldungskatalog-Deskriptoren im neuen Prozessabbild undefiniert ist, sollten sich portable Anwendungen nicht auf deren Verwendung abstützen und diese vor der Verwendung einer der BS2000 Die Umgebungsvariablen | |
Siehe auch |
|