{"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\/de\/blog\/news\/v-yadro-linux-6-18-prinyata-realizacziya-binder-ipc-dlya-android-napisannaya-na-rust","title":{"rendered":"Im Linux-Kernel 6.18 wurde die Binder IPC-Implementierung f\u00fcr Android aufgenommen, die in Rust geschrieben wurde.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>In den Code-Basis des Linux-Kernels, auf dessen Grundlage die Version 6.18 erstellt wird, ist die Implementierung des Inter-Prozess-Kommunikationsmechanismus Binder aufgenommen, der in Rust geschrieben wurde. Binder wird in Android verwendet, um die Interaktion zwischen Prozessen zu organisieren und entfernte Methodenaufrufe zu erm\u00f6glichen (ein Android-Prozess kann eine Methode oder Funktion in einem anderen Android-Prozess aufrufen, indem er Binder verwendet, um zwischen Prozessen zu identifizieren, zu rufen und Argumente zu \u00fcbermitteln). Der Code von Binder wurde im Rahmen eines Projekts zur Verbesserung der Sicherheit, F\u00f6rderung sicherer Programmierpraktiken und zur Steigerung der Effizienz bei der Erkennung von Speicherproblemen in Android auf Rust umgeschrieben (etwa 70 % aller gef\u00e4hrlichen Sicherheitsl\u00fccken, die in Android entdeckt wurden, sind auf Speicherfehler zur\u00fcckzuf\u00fchren).       <\/p>\n<p>Die Verwendung von Rust hat es erm\u00f6glicht, einige Probleme zu l\u00f6sen, mit denen die Entwickler von Binder konfrontiert waren, einschlie\u00dflich Fehlern bei der Referenzz\u00e4hlung, Sperrproblemen und Grenz\u00fcberpr\u00fcfungen, und hat gleichzeitig die Fehlerbehandlung erheblich vereinfacht. Die Implementierung von Binder in Rust hat eine \u00e4hnliche Funktionalit\u00e4t wie die urspr\u00fcngliche Version in C, besteht alle AOSP (Android Open-Source-Projekt) Tests und kann zur Erstellung von funktionierenden Android-ROMs verwendet werden. Trotz der erweiterten M\u00f6glichkeiten und der Unterst\u00fctzung von Objekten mit komplexer Besitzsemantik ist der Rust-Treiber kleiner als die C-Variante \u2013 5,5 gegen\u00fcber 5,8 Tausend Zeilen Code.      <\/p>\n<p>Im Commit-Beschreibung erw\u00e4hnt der Autor folgende Beweggr\u00fcnde f\u00fcr das Umschreiben von Binder:  <\/p>\n<ul>\n<li class=\"l\"> Binder entwickelt sich bereits seit 15 Jahren, und in dieser Zeit haben sich sowohl seine Funktionalit\u00e4t als auch seine Komplexit\u00e4t erheblich erh\u00f6ht \u2013 das Projekt befindet sich an der Schnittstelle aller Android-Komponenten und umfasst viele Aufgaben, die \u00fcber IPC hinausgehen:\n<ul>\n<li class=\"l\"> korrekte Analyse und Umwandlung des Inhalts von Transaktionen, die mehrere Objekte unterschiedlicher Typen (z. B. Zeiger, Dateideskriptoren) enthalten k\u00f6nnen, die miteinander interagieren;\n<li class=\"l\"> Kontrolle der Gr\u00f6\u00dfe von Thread-Pools im Benutzerraum und Gew\u00e4hrleistung der Zuweisung von Transaktionen an Threads, um gegenseitige Sperrungen bei Ersch\u00f6pfung der Threads im Pool zu vermeiden;\n<li class=\"l\"> \u00dcberwachung der Z\u00e4hler f\u00fcr Objekte, die von mehreren Prozessen gemeinsam genutzt werden, indem \u00c4nderungen der Z\u00e4hler zwischen den Prozessen korrekt \u00fcbermittelt werden;\n<li class=\"l\"> Verarbeitung einer Vielzahl von Fehlerszenarien und Kombination von 13 verschiedenen Sperren, 7 Linkz\u00e4hlern und atomaren Variablen. Dabei sollte er solche Aufgaben so schnell und korrekt wie m\u00f6glich ausf\u00fchren.  <\/ul>\n<li class=\"l\"> Im alten Code hat sich eine signifikante technische Schulden angeh\u00e4uft, die sowohl die Fehlersuche als auch die weitere Entwicklung erschwerte. Beispielsweise finden sich im Kern umfangreiche Funktionen mit mehr als tausend Codezeilen, fragw\u00fcrdige Methoden zur Fehlerbehandlung und verworrene Strukturen.\n<li class=\"l\"> Der Binder ist ein sicherheitskritisches Element von Android, da Plattformbestandteile, die in isolierten Sandbox-Umgebungen arbeiten, wie der Renderprozess in Chrome und SW Codec, direkten Zugriff darauf haben. Eine Schwachstelle im Binder k\u00f6nnte die Isolation umgehen. Die hohe Komplexit\u00e4t in Verbindung mit technischen Schulden erschwert das Aufrechterhalten eines hohen Sicherheitsniveaus im Binder.    <\/ul>\n<p>Quelle: <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\/de\/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=\"de_DE\" \/>\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\/de\/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\udd47Im Linux-Kernel 6.18 wurde die Implementierung von Binder IPC f\u00fcr Android, geschrieben in Rust, \u00fcbernommen | ProHoster","description":"In den Code-Basis des Linux-Kernels, auf dessen Grundlage das Release 6.18 entsteht, wurde die Implementierung des Interprozesskommunikationsmechanismus Binder, geschrieben in Rust, \u00fcbernommen.","canonical_url":"https:\/\/prohoster.info\/de\/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":"de_DE","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\/de\/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\/de\/wp-json\/wp\/v2\/posts\/146042","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=146042"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/146042\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=146042"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=146042"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=146042"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}