{"id":107333,"date":"2023-03-18T12:48:09","date_gmt":"2023-03-18T10:48:11","guid":{"rendered":"https:\/\/prohoster.info\/?p=107333"},"modified":"2023-03-20T11:22:13","modified_gmt":"2023-03-20T09:22:13","slug":"inicziativa-po-pererabotke-instrumentariya-dlya-gipervizora-xen-na-yazyke-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-pererabotke-instrumentariya-dlya-gipervizora-xen-na-yazyke-rust","title":{"rendered":"Initiative de r\u00e9vision des outils pour l'hyperviseur Xen en Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Les d\u00e9veloppeurs de la plateforme XCP-ng, d\u00e9velopp\u00e9e sous l'\u00e9gide du projet Xen, ont publi\u00e9 un plan pour cr\u00e9er, en langage Rust, un remplacement de divers composants de la pile logicielle Xen. Pour l'instant, il n'est pas pr\u00e9vu de retravailler l'hyperviseur Xen, le travail \u00e9tant principalement concentr\u00e9 sur la refonte de certains composants de l'outil.       <\/p>\n<p>Actuellement, la plateforme utilise des composants en langages C, Python, OCaml et Go, dont certains sont obsol\u00e8tes et posent des probl\u00e8mes de maintenance. Il est not\u00e9 que l'utilisation de Rust ne conduira pas \u00e0 une augmentation g\u00e9n\u00e9rale du nombre de langages utilis\u00e9s, car un seul composant a \u00e9t\u00e9 r\u00e9alis\u00e9 en Go, et celui-ci est pr\u00e9vu pour \u00eatre remplac\u00e9 en premier.         <\/p>\n<p>Le langage Rust a \u00e9t\u00e9 choisi pour sa capacit\u00e9 \u00e0 combiner une haute performance du code r\u00e9sultant avec des possibilit\u00e9s de gestion s\u00e9curis\u00e9e de la m\u00e9moire, \u00e9vitant le recours \u00e0 un ramasse-miettes, adapt\u00e9 au d\u00e9veloppement de composants \u00e0 la fois bas et haut niveau, tout en offrant des fonctionnalit\u00e9s suppl\u00e9mentaires pour r\u00e9duire les erreurs potentielles, telles que la v\u00e9rification de l'emprunt de variables (borrow checker). Rust est \u00e9galement plus r\u00e9pandu que le langage OCaml actuellement utilis\u00e9 dans XAPI, ce qui simplifiera l'int\u00e9gration de nouveaux d\u00e9veloppeurs dans le projet.        <\/p>\n<p>Dans un premier temps, il est pr\u00e9vu de d\u00e9velopper un remplacement pour plusieurs composants afin de tester les processus et de pr\u00e9parer la base pour le remplacement d'autres parties de la pile logicielle. En particulier, les outils pour invit\u00e9s Linux seront reprogramm\u00e9s en Rust en priorit\u00e9, ces outils \u00e9tant actuellement r\u00e9alis\u00e9s en Go, ainsi que le processus en arri\u00e8re-plan pour la collecte de m\u00e9triques, \u00e9crit en OCaml.     <\/p>\n<p>La n\u00e9cessit\u00e9 de retravailler les outils pour invit\u00e9s Linux (xe-guest-utilities) d\u00e9coule de probl\u00e8mes de qualit\u00e9 du code et du d\u00e9veloppement en dehors du projet Xen Project sous le contr\u00f4le de Cloud Software Group, ce qui complique la cr\u00e9ation de paquets et l'influence de la communaut\u00e9 sur le d\u00e9veloppement. Une nouvelle version de l'outil (xen-guest-agent) est pr\u00e9vue pour \u00eatre cr\u00e9\u00e9e enti\u00e8rement \u00e0 partir de z\u00e9ro, en la simplifiant autant que possible et en s\u00e9parant la logique de l'agent des biblioth\u00e8ques. Le processus en arri\u00e8re-plan pour la collecte de m\u00e9triques (rrdd) sera \u00e9galement retravaill\u00e9, car il est compact et isol\u00e9, ce qui facilite la conduite d'exp\u00e9rimentations sur l'utilisation d'un nouveau langage dans le d\u00e9veloppement.    <\/p>\n<p>L'ann\u00e9e prochaine, le d\u00e9veloppement d'un composant xenopsd-ng en Rust pourrait commencer, permettant d'optimiser l'architecture de la pile logicielle. L'id\u00e9e principale est de centraliser dans un seul composant le travail avec l'API de bas niveau et d'organiser la fourniture de toutes les API de haut niveau aux autres composants de la pile.     <\/p>\n<p>Architecture actuelle de la pile Xen :  <center><img decoding=\"async\" alt=\"Initiative de r\u00e9vision des outils pour l&#039;hyperviseur Xen en Rust\" src=\"\/wp-content\/uploads\/2023\/03\/4ccbecf3b1e1b5b8cb6d7907ac09c809.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>Architecture propos\u00e9e de la pile Xen bas\u00e9e sur xenopsd-ng :  <center><img decoding=\"async\" alt=\"Initiative de r\u00e9vision des outils pour l&#039;hyperviseur Xen en Rust\" src=\"\/wp-content\/uploads\/2023\/03\/dfb8378165eba7314c51f185114883e3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58815\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b XCP-ng, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043f\u043e\u0434 \u043a\u0440\u044b\u043b\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Xen, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u043b\u0430\u043d \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 Xen. \u041d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440 Xen \u043f\u043e\u043a\u0430 \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0442\u0441\u044f, \u0440\u0430\u0431\u043e\u0442\u0430 \u0441\u043e\u0441\u0440\u0435\u0434\u043e\u0442\u043e\u0447\u0435\u043d\u0430 \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u043d\u0430 \u043f\u0435\u0440\u0435\u0434\u0435\u043b\u043a\u0435 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f. \u0412 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u0432 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 C, Python, OCaml \u0438 Go, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0441\u0442\u0430\u0440\u0435\u043b\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":107334,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-107333","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b XCP-ng, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043f\u043e\u0434 \u043a\u0440\u044b\u043b\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Xen, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u043b\u0430\u043d \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 Xen.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-pererabotke-instrumentariya-dlya-gipervizora-xen-na-yazyke-rust\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0418\u043d\u0438\u0446\u0438\u0430\u0442\u0438\u0432\u0430 \u043f\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 Xen \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b XCP-ng, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043f\u043e\u0434 \u043a\u0440\u044b\u043b\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Xen, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u043b\u0430\u043d \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 Xen.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-pererabotke-instrumentariya-dlya-gipervizora-xen-na-yazyke-rust\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-03-18T10:48:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-03-20T09:22:13+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Initiative de refonte des outils pour l'hyperviseur Xen en Rust | ProHoster","description":"Les d\u00e9veloppeurs de la plateforme XCP-ng, d\u00e9velopp\u00e9e sous l'\u00e9gide du projet Xen, ont publi\u00e9 un plan pour remplacer divers composants de la pile logicielle Xen par des cr\u00e9ations en Rust.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-pererabotke-instrumentariya-dlya-gipervizora-xen-na-yazyke-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0418\u043d\u0438\u0446\u0438\u0430\u0442\u0438\u0432\u0430 \u043f\u043e \u043f\u0435\u0440\u0435\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 Xen \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b XCP-ng, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u043c\u043e\u0439 \u043f\u043e\u0434 \u043a\u0440\u044b\u043b\u043e\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Xen, \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u043b\u0430\u043d \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust \u0437\u0430\u043c\u0435\u043d\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u0441\u0442\u0435\u043a\u0430 Xen.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/inicziativa-po-pererabotke-instrumentariya-dlya-gipervizora-xen-na-yazyke-rust","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-03-18T10:48:11+00:00","article:modified_time":"2023-03-20T09:22:13+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/107333","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=107333"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/107333\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/107334"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=107333"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=107333"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=107333"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}