Befehl "syscall"
Zweck
Führt einen angegebenen Subroutinenaufruf aus.
Syntax
syscall ( -n ) Name [ Argument1 ... ArgumentN ] [ ; Name [ Argument1 ... ArgumentN ] ] ...
Beschreibung
Der Befehl syscall führt ein Schnittstellenprogramm für Systemaufrufe aus, das den mit dem Parameter Name angegebenen Subroutinenaufruf ausführt. Wenn Sie das Flag -n angeben, führt der Befehl syscall den Aufruf n Mal aus. Die mit dem Parameter Argument angegebenen Argumente werden ohne Fehlerprüfung an die Subroutine übergeben. Der Parameter Argument kann in den folgenden Formaten ausgedrückt werden:
| Element | Beschreibung |
|---|---|
| 0x nnn | Hexadezimalkonstante nnn. |
| 0 nnn | Oktalkonstante nnn. |
| nnn | Dezimalkonstante nnn. |
| +nnn | Dezimalkonstante nnn. |
| - nnn | Dezimalkonstante nnn. |
| "Zeichenfolge | Die Zeichenfolge "Zeichenfolge". |
| 'Zeichenfolge | Die Zeichenfolge "Zeichenfolge". |
| \Zeichenfolge | Die Zeichenfolge "Zeichenfolge". |
| #zeichenfolge | Die Länge der Zeichenfolge "Zeichenfolge". |
| & &n | Die Adresse des n'ten Arguments für diese Subroutine. (n=0 ist der Subroutinenname.) |
| &n | Die Adresse des n'ten Byte in einem internen 10-KB-Puffer. |
| $n | Das Ergebnis der n'ten Subroutine. (n=0 ist die erste Subroutine.) |
| string | Alles andere ist eine Literalzeichenfolge. |
Der Befehl syscall gibt eine Nachricht aus und wird für unbekannte Subroutinen und Subroutinen, die den Wert -1 zurückgeben, beendet.
Hinweis: Der Befehl syscall versteht die Subroutine sleep als Subroutine für Sonderfälle.
Flags
| Element | Beschreibung |
|---|---|
| -N | Gibt an, wie oft der Befehl syscall die angegebene Subroutine ausführt. |
| ; | Trennt mehrere Subroutinen (maximal 20), die in demselben Aufruf des Befehls syscall ausgeführt werden. |
Beispiele
Zum Simulieren des C-Programmfragments
output=open("x", 401, 0755); write(output, "hello", strlen("hello"));Geben Sie Folgendes ein:
syscall open x 401 0755 \; write \$0 hello \#helloHinweis: Sonderzeichen in der Shell müssen mit Escapezeichen versehen werden.
Dateien
| Element | Beschreibung |
|---|---|
| /usr/bin/syscall | Enthält den Befehl syscall. |