Xen Hypervisor Toolkit Rework Initiative zu Rust

D'Entwéckler vun der XCP-ng Plattform, entwéckelt ënner dem Flillek vum Xen Projet, hunn e Plang publizéiert fir e Rust Ersatz fir verschidde Komponenten vum Xen Software Stack ze kreéieren. Den Xen Hypervisor selwer gëtt nach net veraarbecht, d'Aarbecht konzentréiert sech haaptsächlech op d'Wiederaarbecht vun eenzelne Komponenten vum Toolkit.

D'Plattform benotzt de Moment Komponenten an C, Python, OCaml, a Go, e puer vun deenen sinn al a verursaache Ënnerhaltsprobleemer. Et gëtt bemierkt datt d'Benotzung vu Rust net zu enger allgemenger Erhéijung vun der Unzuel u Sproochen involvéiert ass, well nëmmen ee Komponent am Go implementéiert ass, dee geplangt ass fir iwwerhaapt ersat ze ginn.

Rust gouf ausgewielt als Kombinatioun vun héijer Output Code Leeschtung mat Erënnerung-sécher Fäegkeeten, Dreck Sammler-gratis ze sinn, gëeegent fir béid niddereg-Niveau an Héich-Niveau Komponenten z'entwéckelen, an zousätzlech Funktiounen ubidden fir potenziell Bugs ze reduzéieren, sou wéi Variabel Prêtchecker (léinen). checker).) Rust ass och méi verbreet wéi déi aktuell XAPI Sprooch OCaml, wat et méi einfach mécht nei Entwéckler un de Projet unzezéien.

Op der éischter Etapp ass et geplangt Ersatzstécker fir verschidde Komponenten z'entwéckelen fir d'Prozesser auszeschaffen an d'Basis virzebereeden fir aner Deeler vum Software Stack z'ersetzen. Besonnesch fir d'éischt ginn d'Linux Gaascht-Tools a Rust nei geschriwwe ginn, fir déi d'Go Sprooch am Moment benotzt gëtt, an den Hannergrondprozess fir Metriken ze sammelen, geschriwwen an OCaml.

D'Linux Gaascht Tools (xe-guest-Utilities) mussen nei designt ginn wéinst Codequalitéitsprobleemer an Entwécklung ausserhalb vum Xen Project ënner der Kontroll vun der Cloud Software Group, wat et schwéier mécht fir d'Verpakung an d'Gemeinschaftsafloss op d'Entwécklung. Eng nei Versioun vum Toolkit (xen-guest-agent) ass geplangt komplett vun Null erstallt ze ginn, sou einfach wéi méiglech ze maachen an d'Agentlogik vun de Bibliothéiken ze trennen. Et gouf decidéiert den Hannergrondprozess fir Metriken ze sammelen (rrdd) z'änneren, well et kompakt a separat ass, wat et méi einfach mécht mat der Notzung vun enger neier Sprooch während der Entwécklung ze experimentéieren.

D'nächst Joer fänkt d'Aarbecht un der Entwécklung vun der xenopsd-ng Komponent am Rust un, wat eis erlaabt d'Architektur vum Software Stack ze optimiséieren. D'Haaptidee ass d'Aarbecht mat engem Low-Level API an engem Komponent ze konzentréieren an d'Bereetstellung vun all High-Level APIen op de Rescht vum Stack duerch et z'organiséieren.

Aktuell Xen Stack Architektur:

Xen Hypervisor Toolkit Rework Initiative zu Rust

Recommandéiert Xen Stack Architektur baséiert op xenopsd-ng:

Xen Hypervisor Toolkit Rework Initiative zu Rust


Source: opennet.ru

Setzt e Commentaire