Runtime Go : Proposition pour une exécution sans système d’exploitation

2025-05-07
Runtime Go : Proposition pour une exécution sans système d’exploitation

Cette proposition suggère d’ajouter une nouvelle cible GOOS (par exemple, GOOS=none) au runtime Go, permettant aux programmes Go de s’exécuter sous des fonctions de sortie définies par l’application au lieu de dépendre d’appels système arbitraires du système d’exploitation. Cela permet une exécution autonome sans support direct du système d’exploitation, une capacité déjà implémentée dans le projet TamaGo. La proposition préconise l’inclusion en amont. Les applications Go compilées avec GOOS=none s’exécuteraient sur du bare metal ; tout le support nécessaire provient du runtime Go et de paquets de pilotes externes en Go. Des fonctions clés telles que l’initialisation du CPU, l’initialisation du matériel, la sortie standard, la génération de nombres aléatoires et la récupération de l’heure système doivent être définies. Cela étend considérablement l’applicabilité de Go à des environnements tels que les systèmes embarqués, les machines virtuelles et UEFI.