A Google szerint „fájdalmasan karbantartható” Binder C Linux‑meghajtót Rust‑os verzió váltja

enlightened Ez az oldal a közösségért készül. heart Kövess minket máshol is:  Linux Mint Magyar Közösség a Mastodon-on  Telegram csatorna – csak hírek  Beszélgessünk a Telegram – Linux csevegő csoport  Hírek olvasása RSS segítségével  Linux Mint Hivatalos Magyar Közösség a Facebook-on      Linux Mint Baráti Kör a Facebook-on
wink Ha hasznosnak találod, és szeretnéd, hogy folytatódjon, támogasd a munkát Ko-fi vagy Paypal segítségével. laugh

kami911 képe

A C nyelven írt Binder driver régóta része a mainline kernel kernelnek, Androidon ez az inter-process communication (IPC) mechanizmus. Az elmúlt években

a Binder drivert újraírták Rust-ban, ez volt az egyik első „valódi” driver a Rust programozási nyelven. A Rust-os Binder drivert a Linux 6.18-as verziójában fogadták be upstream, és a közelgő Linux 7.4 kernel ciklusban a régi, C-alapú Binder drivert nyugdíjazzák.

Mára a Rust-os Binder driver elég kiforrott, és bizonyította, hogy könnyebb karbantartani és új funkciókkal bővíteni. Emiatt a régi C-s Binder kódot eltávolítják. A Rust-os Binder driver teljesítményben is versenyképesnek bizonyult – sőt, sokszor gyorsabb is az eredeti Binder drivernél.

A Google mérnöke, Carlos Llamas az alábbiakat írta az 11 ezer soros, régi C-s Binder kód eltávolítását végző javítócsomaghoz:

„Eljött a nap. Eldobjuk a Binder IPC driver örökölt C-s megvalósítását, és a Rust-os verzióra váltunk.

Több mint 15 éve a C-s driver egyre bonyolultabbá vált, és borzasztóan fájdalmas lett karbantartani, illetve új funkciókat hozzáadni anélkül, hogy sebezhetőségekbe futnánk. A Rust-os megvalósítás a legtöbb ilyen problémát enyhíti, itt az ideje a váltásnak.

Alice Ryhl az elmúlt néhány évben rengeteget dolgozott a Rust-os Binder drivern, nemcsak elérte a teljes funkcióparitást, hanem azt is bizonyította, hogy fel tud nőni a C-s megfelelő teljesítményéhez, sőt gyakran le is körözi azt. Mivel már egy ideje sikeresen fut Android eszközökön, ezt már nem nevezhetjük „kísérletnek”.

Itt az idő továbblépni, kidobni a C-s kódot, és minden új funkciót és optimalizálást a Rust-os driverre összpontosítani.

Éljen az új Rust-os Binder király!”

Búcsút inthetünk a régi Binder drivernek. Greg Kroah-Hartman már beemelte az eltávolítást végző javítócsomagot a char-misc-next Git ágba. Mivel a char/misc kód „-next” ágába került, várhatóan bekerül a Linux 7.4 merge window során.