syscall.sh - Linux-Systemcall-Tabellen für 27 Architekturen

Show HN: I've updated my Linux System Call website and API

syscall.sh - Linux-Systemcall-Tabellen für 27 Architekturen

syscall.sh ist eine umfassende Referenz für Linux-Systemaufrufe: Für 27 Architekturen – von x64 und arm64 bis hin zu exotischen wie m68k oder sparc – findest du alle Syscall-Nummern, Argumente und Register in übersichtlichen Tabellen. Jede Tabelle zeigt die vollständige Historie, inklusive wann ein Syscall eingeführt und wann er entfernt wurde. Die Daten stammen direkt aus dem Kernel-Quellcode und werden als JSON-Dateien pro Architektur bereitgestellt. Eine API ermöglicht den programmatischen Zugriff auf alle Informationen. Ideal für Entwickler, die kernelnahe Software schreiben, Reverse Engineering betreiben oder einfach die Aufrufkonventionen verschiedener Plattformen vergleichen möchten.

Alles auf dieser Seite wird direkt aus dem Kernel-Quellcode gelesen – das sind die Nummern, die der Kernel tatsächlich verwendet.
  1. ozgrakkurt

    Ich würde außerdem empfehlen, Befehle wie diesen zu verwenden:

    echo '#include <sys/syscall.h>' | gcc -E -dM -xc - | grep -i "read"

    um die echten Werte auf deinem PC zu ermitteln und sicherzugehen.

    LLMs haben mir mehrmals falsche Zahlen oder Konstantendefinitionen gegeben, aber sie dazu zu bringen, einen solchen Befehl zu generieren und es selbst zu sehen, funktioniert jedes Mal.

    Außerdem hat die Chromium-Dokumentation eine Tabelle:

    https://www.chromium.org/chromium-os/developer-library/refer...

    Es wäre sehr nützlich, wenn diese Website direkt auf die Syscall-Nummer verlinken würde.

  2. bkallus

    Auf x86_64 und x32 geht die Syscall-Nummer in eax, nicht in rax. Die oberen 32 Bits von rax werden ignoriert und können beliebig sein.

  3. guitmz

    Ich habe auch eine CLI zum Nachschlagen der Syscall-API erstellt, als ich die Website ursprünglich veröffentlicht habe. Ich denke, ich kann den Code aufräumen und auch öffentlich machen. Sie verwendet einen eingebetteten Datensatz, sodass nicht ständig der API-Endpunkt abgefragt werden muss.

  4. DustinBrett

    Diese Website bringt aus irgendeinem Grund meine Grafik durcheinander.

  5. wg0

    Das ist wirklich eine großartige Ressource, wusste nichts davon. Aber eine Frage, die nichts mit der obigen Website zu tun hat – warum variieren die Syscalls je nach Architektur, wenn die Linux-API dieselbe ist?

    Oder verwechsle ich das mit der C-Standardbibliothek/POSIX und nehme an, dass es überall gleich sein sollte?

Mehr von diesem Tag

2026-11-02