syscall.sh : tables Linux pour 27 architectures
Original : Show HN: I've updated my Linux System Call website and API
Pourquoi c'est important
Référence rare et directement issue du source du noyau, utile pour le développement bas niveau et la sécurité.
syscall.sh recense les appels système Linux de 27 architectures (x64, arm64, RISC-V…), des versions 3.3 à 7.3 du noyau, avec numéros, arguments, registres et une API REST publique.
Le site syscall.sh vient d'être mis à jour et propose désormais l'une des références les plus complètes sur les appels système Linux. Chaque architecture y est documentée avec ses conventions d'appel : instruction d'entrée dans le noyau, numéro de syscall, registres d'arguments (ARG0 à ARG5) et registre de retour. On y trouve x64 (369 syscalls), x86 (441), arm64 (326), arm (426), RISC-V 64 bits (327) ou encore LoongArch64 (323), parmi 27 architectures au total.
Toutes les données sont extraites directement du code source du noyau Linux : le générateur parcourt les tables de syscalls et les macros SYSCALL_DEFINE pour chaque version principale. L'historique est complet — chaque entrée indique depuis quelle version elle existe (champ `since`) et, le cas échéant, dans quelle version elle a été supprimée (`removed_in`). Les entrées retirées restent visibles avec le sélecteur « all, with removed ».
Une API REST publique (`api.syscall.sh/v2`) permet d'interroger les tables par architecture et version de noyau, d'obtenir les différences entre deux releases, ou de télécharger les données complètes en JSON via `/<arch>/syscalls.json`.