{"id":146042,"date":"2025-10-21T23:12:38","date_gmt":"2025-10-21T21:12:38","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-rust"},"modified":"2025-10-21T23:12:38","modified_gmt":"2025-10-21T21:12:38","slug":"v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-rust","title":{"rendered":"Nel kernel Linux 6.18 \u00e8 stata accettata l'implementazione di Binder IPC per Android, scritta in Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Nella base di codice del kernel Linux, da cui viene sviluppata la release 6.18, \u00e8 stata adottata l'implementazione del meccanismo di comunicazione interprocesso Binder, scritta in linguaggio Rust. Binder \u00e8 utilizzato in Android per gestire l'interazione tra processi e la chiamata remota di metodi (un processo Android pu\u00f2 invocare un metodo o una funzione in un altro processo Android, utilizzando Binder per identificare, chiamare e trasferire argomenti tra processi). Il codice di Binder \u00e8 stato riscritto in Rust nell'ambito di un progetto volto a rafforzare la sicurezza, promuovere pratiche di programmazione sicura e migliorare l'efficacia nella rilevazione di problemi di gestione della memoria in Android (circa il 70% di tutte le vulnerabilit\u00e0 critiche identificate in Android \u00e8 causato da errori nella gestione della memoria).       <\/p>\n<p>L'uso di Rust ha risolto alcuni problemi affrontati dagli sviluppatori di Binder, inclusi errori legati al conteggio dei riferimenti, blocchi e verifica dei confini, e ha notevolmente ridotto la complessit\u00e0 della gestione degli errori. L'implementazione di Binder in Rust \u00e8 funzionalmente equivalente alla versione originale in C e supera tutti i test AOSP (Android Open-Source Project) ed \u00e8 utilizzabile per creare versioni funzionanti dei firmware Android. Nonostante le avanzate capacit\u00e0 e il supporto per oggetti con una semantica di propriet\u00e0 complessa, il driver in Rust \u00e8 risultato pi\u00f9 snello rispetto alla variante in C \u2014 5.5 contro 5.8 mila righe di codice.      <\/p>\n<p>Nella descrizione del commit, l'autore menziona i seguenti motivi per la riscrittura di Binder:  <\/p>\n<ul>\n<li class=\"l\"> Binder esiste da 15 anni e nel corso di questo tempo la sua funzionalit\u00e0 e complessit\u00e0 sono aumentate notevolmente \u2014 il progetto si colloca all'incrocio di tutti i componenti di Android e copre molteplici compiti che vanno oltre l'IPC:\n<ul>\n<li class=\"l\"> analisi e trasformazione corretta dei contenuti delle transazioni, che possono contenere pi\u00f9 oggetti di diversi tipi (ad esempio puntatori, descrittori di file), che interagiscono tra loro;\n<li class=\"l\"> controllo della dimensione dei pool di thread nello spazio utente e garanzia di assegnazione delle transazioni ai thread in modo da evitare deadlock esaurendo i thread nel pool;\n<li class=\"l\"> monitoraggio dei contatori di riferimenti di oggetti condivisi da pi\u00f9 processi, trasferendo correttamente le modifiche ai contatori di riferimenti tra processi;\n<li class=\"l\"> elaborazione di numerosi scenari di errore e combinazione di 13 diverse chiusure, 7 contatori di collegamenti e variabili atomiche. Deve eseguire tali compiti il pi\u00f9 rapidamente e correttamente possibile.  <\/ul>\n<li class=\"l\"> Nel codice legacy si \u00e8 accumulato un notevole debito tecnico, che ha complicato sia la ricerca di errori che lo sviluppo successivo. Ad esempio, nel core si possono trovare funzioni grandi pi\u00f9 di mille righe di codice, metodi di gestione degli errori discutibili e strutture intricate.\n<li class=\"l\"> Il Binder \u00e8 un componente critico dal punto di vista della sicurezza di Android, poich\u00e9 gli elementi della piattaforma che operano in ambienti sandbox isolati, come il processo di rendering in Chrome e SW Codec, hanno accesso diretto ad esso; una vulnerabilit\u00e0 nel Binder permetterebbe di eludere l'isolamento. L'alta complessit\u00e0, unita al debito tecnico, rende molto difficile mantenere un alto livello di sicurezza nel Binder.    <\/ul>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64092\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044f\u0434\u0440\u0430 Linux, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0440\u0435\u043b\u0438\u0437 6.18, \u043f\u0440\u0438\u043d\u044f\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u0435\u0436\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043d\u043e\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f Binder, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. Binder \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0432 Android \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u043c\u0435\u0436\u0434\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430\u043c\u0438 \u0438 \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0437\u043e\u0432\u0430 \u043c\u0435\u0442\u043e\u0434\u043e\u0432 (\u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0446\u0435\u0441\u0441 Android \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u0438\u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0432 \u0434\u0440\u0443\u0433\u043e\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 Android, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f Binder \u0434\u043b\u044f \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u0432\u044b\u0437\u043e\u0432\u0430 \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043c\u0435\u0436\u0434\u0443 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-146042","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044f\u0434\u0440\u0430 Linux, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0440\u0435\u043b\u0438\u0437 6.18, \u043f\u0440\u0438\u043d\u044f\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u0435\u0436\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043d\u043e\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f Binder, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\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\/it\/blog\/news\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-rust\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\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\u0412 \u044f\u0434\u0440\u043e Linux 6.18 \u043f\u0440\u0438\u043d\u044f\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Binder IPC \u0434\u043b\u044f Android, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043d\u0430 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044f\u0434\u0440\u0430 Linux, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0440\u0435\u043b\u0438\u0437 6.18, \u043f\u0440\u0438\u043d\u044f\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u0435\u0436\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043d\u043e\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f Binder, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-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=\"2025-10-21T21:12:38+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-10-21T21:12:38+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\udd47\u00c8 stata accettata l'implementazione del Binder IPC per Android nel kernel Linux 6.18, scritta in Rust | ProHoster","description":"Nel codice sorgente del kernel Linux, su cui si basa il rilascio 6.18, \u00e8 stata accettata l'implementazione del meccanismo di interazione fra processi Binder, scritta in Rust.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","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\u0412 \u044f\u0434\u0440\u043e Linux 6.18 \u043f\u0440\u0438\u043d\u044f\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f Binder IPC \u0434\u043b\u044f Android, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043d\u0430 Rust | ProHoster","og:description":"\u0412 \u043a\u043e\u0434\u043e\u0432\u0443\u044e \u0431\u0430\u0437\u0443 \u044f\u0434\u0440\u0430 Linux, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0440\u0435\u043b\u0438\u0437 6.18, \u043f\u0440\u0438\u043d\u044f\u0442\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043c\u0435\u0436\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043d\u043e\u0433\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f Binder, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u0430\u044f \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-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":"2025-10-21T21:12:38+00:00","article:modified_time":"2025-10-21T21:12:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"146042","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 15:29:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 15:29:20","updated":"2026-01-23 15:29:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/146042","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=146042"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/146042\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=146042"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=146042"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=146042"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}