10 points par GN⁺ 2024-10-17 | 3 commentaires | Partager sur WhatsApp
  • Asterinas est un noyau OS offrant sécurité, rapidité et polyvalence, avec un ABI compatible Linux
  • Il peut remplacer Linux, tout en améliorant la sécurité mémoire et l’ergonomie pour les développeurs
    • Il donne la priorité à la sécurité mémoire en utilisant Rust comme unique langage de programmation et en limitant au minimum l’usage de unsafe Rust, restreint à une base de calcul de confiance (TCB) clairement définie
    • Grâce à son architecture de framekernel, Asterinas s’impose comme une option de noyau plus sûre et plus fiable
    • Sur le plan de l’ergonomie développeur, il dépasse Linux en (1) s’appuyant sur le langage Rust, très productif, (2) en simplifiant le workflow grâce à un toolkit dédié appelé OSDK, et (3) en offrant, via la flexibilité de la MPL, le choix entre publier les modules en open source ou les conserver propriétaires
  • À l’heure actuelle, Asterinas ne prend en charge que les VM x86-64, mais l’objectif est d’atteindre un état prêt pour la production sur VM x86-64 d’ici 2024

Le récapitulatif de GN⁺

  • Asterinas est un noyau OS écrit en Rust, qui met l’accent sur la sécurité mémoire et l’ergonomie développeur tout en offrant une compatibilité Linux
  • En tirant parti de la sécurité et de la productivité de Rust, il propose un environnement de développement de noyau plus sûr et plus efficace
  • L’architecture framekernel d’Asterinas améliore la fiabilité et la sécurité, et la MPL offre la flexibilité de choisir si les modules doivent être rendus publics ou non
  • Il peut constituer une alternative intéressante pour les développeurs qui s’intéressent au développement du noyau Linux, et montre le potentiel du développement de noyau en exploitant les atouts de Rust
  • Un projet similaire offrant des fonctionnalités comparables est Redox OS

3 commentaires

 
xguru 2024-10-17

Parmi les projets récemment publiés sur Hacker News, quand on regarde de plus près ceux qui semblent plaire au grand public, on constate que beaucoup ont principalement des committers chinois. En particulier, quand le README est en anglais avec en plus une documentation en chinois, c’est presque toujours le cas.

 
cosine20 2024-10-17

Du côté de l’IA aussi, quand on regarde des projets pratiques — conversion ONNX, bibliothèques d’exploitation basées sur des langages natifs, environnements immédiatement utilisables, etc. — on constate souvent que les principaux acteurs sont des Chinois.

 
GN⁺ 2024-10-17
Avis Hacker News
  • Je n’aime pas particulièrement Rust, mais j’aime les kernels, donc je regarde toujours ce genre de projet. Ce projet utilise de façon conservatrice les fonctionnalités avancées de Rust, le code est facile à lire et les commentaires sont présents sans excès. Pas mal.
  • Je m’intéresse à un kernel pour exécuter des services réseau / d’E/S à haute performance. Le support matériel, en particulier le matériel réseau, est une grosse préoccupation. Une approche consistant à démarrer avec un kernel FreeBSD ou Linux puis à utiliser un OS / une couche d’abstraction en Rust me semblerait intéressante.
  • Microsoft utilise TockOS, un OS basé sur Rust, dans le firmware Pluton.
  • Si Asterinas vous intéresse, Redox, un OS complet écrit en Rust, devrait aussi vous intéresser.
  • Le fait de créer un ABI compatible avec l’ensemble de Linux est impressionnant. La comparaison disant que Rust est plus productif n’est pas scientifique et peut être un signal d’alerte pour le projet. Le langage le plus productif pour un développeur est celui qui lui permet de comprendre ce qui se passe sous le niveau d’abstraction.
  • Il existe une présentation d’Asterinas : un kernel OS sûr basé sur Rust pour les TEE.
  • Dans l’architecture OS Framekernel, l’OS entier se trouve dans le même espace d’adressage et doit être écrit en Rust. Le kernel est divisé en deux parties, et les services non privilégiés ne doivent être écrits qu’en Rust sûr. Je me demande quel serait l’impact, sur le modèle de sécurité, de services non privilégiés capables d’exploiter des bugs du compilateur.
  • Il existe un autre OS écrit en Rust, Twizzler. C’est un OS de recherche, mais il reste intéressant.
  • Il y avait un projet similaire appelé Kerla, mais son développement a été interrompu. Certains estimaient qu’il serait plus facile de créer ce type d’alternative que de travailler sur Rust-for-Linux. Je me demande s’il y a assez d’intérêt pour en faire un projet durable.
  • Asterinas ne prend actuellement en charge que les VM x86-64, et l’objectif est d’atteindre un niveau prêt pour la production sur des VM x86-64 d’ici 2024. C’est déroutant.