Rust programming language: Nagtutulak ng pagbabago sa mga hindi inaasahang lugar

kotse

Larawan: Getty Images/Jung Getty

Ang mga inhinyero ng software sa tagagawa ng kotse na Volvo ay nagdetalye kung bakit sila ay mga tagahanga ng Rust programming language at pinagtatalunan na ang Rust ay talagang "mabuti para sa iyong sasakyan". 

Mukhang gustung-gusto ng lahat ang Rust, mula sa Windows at Azure team ng Microsoft, hanggang sa Linux kernel maintainers, Amazon Web Services, Meta, ang Android Open Source Project at higit pa. At ngayon tila oras na para magdagdag ng mga software engineer sa Volvo sa listahang iyon.

Ipinaliwanag ni Julius Gustavsson, isang teknikal na eksperto at arkitekto ng sistema sa Volvo Cars Corporation, "Bakit ang Rust ay talagang mabuti para sa iyong sasakyan" sa isang panayam sa Medium kasama ang kapwa Volvo software engineer na si Johannes Foufas

Ang Rust ay isang medyo bata pang wika na tumutulong sa mga developer na maiwasan ang mga bug na nauugnay sa memorya na hindi awtomatikong ginagawa ng C at C++, kaya lumalago ang katanyagan ni Rust sa mga system programming. Ang mga bug na nauugnay sa memorya ay ang pinakakaraniwang malubhang isyu sa seguridad, ayon sa Microsoft at Chrome team ng Google. 

Nagdadala si Gustavsson ng pananaw mula sa pag-unlad ng mga naka-embed na system hanggang sa debate.

Ang Volvo, kasama ang industriya ng sasakyan sa pangkalahatan, ay tumitingin sa "mga kotse na tinukoy ng software" upang i-customize, ibahin at pahusayin ang mga sasakyan pagkatapos nilang umalis sa bakuran ng sasakyan. 

Ang mga pangunahing benepisyo na nakikita niya mula sa Rust ay kinabibilangan ng: hindi kinakailangang isipin ang tungkol sa mga kondisyon ng lahi at pagkasira ng memorya, at kaligtasan ng memorya sa pangkalahatan. "Alam mo, ang pagsulat lamang ng tama at matatag na code mula sa simula," sabi niya.

Sinabi ni Gustavsson na sinimulan niyang dalhin ang Rust sa Volvo gamit ang Low Power node ng core computer.

Nakikita ni Gustavsson ang isang magandang kinabukasan para sa Rust sa Volvo ngunit hindi iyon nangangahulugan na gamitin ito upang palitan ang gumagana nang code na nasubukan nang sapat. Sinabi niya na ang bagong Rust code ay maaaring umiral nang may "halos di-makatwirang granularity" sa umiiral na C at C++ at maaaring makatuwiran na pumili ng mga bahagi upang muling isulat ang Rust kung ang sangkap na iyon ay nangangailangan ng cybersecurity. 

“Gusto naming palawakin ang Rust dito sa Volvo Cars para paganahin ito sa mas maraming node at para magawa iyon, kailangan naming makakuha ng suporta sa compiler para sa ilang partikular na target ng hardware at suporta sa OS para sa iba pang mga target. Walang punto sa pagpapalit ng na-develop na at mahusay na nasubok na code, ngunit ang code na binuo mula sa simula ay dapat talagang binuo sa Rust, kung magagawa man.

"Hindi ibig sabihin na ang Rust ay isang panlunas sa lahat. Ang kalawang ay may ilang mga magaspang na gilid pa rin at ito ay nangangailangan sa iyo na gumawa ng ilang mga trade-off na maaaring hindi palaging ang pinakamahusay na paraan ng pagkilos. Ngunit sa pangkalahatan, sa tingin ko ang Rust ay may malaking potensyal na payagan kaming makagawa ng mas mataas na kalidad na code sa mas mababang halaga na kung saan ay makakabawas sa aming mga gastos sa warranty, kaya ito ay isang panalo para sa ilalim na linya, "sabi niya.

Ang Volvo ay hindi lamang ang automaker na interesado sa Rust. Autosar, isang automotive standards group — na ang mga miyembro ay kinabibilangan ng Ford, GM, BMW, Bosch, Volkswagen, Toyota, Volvo at marami pa — noong Abril anunsyado isang bagong subgroup sa loob ng Working Group nito para sa Functional Safety (WG-SAF) upang tuklasin kung paano magagamit ang Rust sa isa sa mga reference na platform nito. SAE International din magtayo ng task force upang tingnan ang Rust sa industriya ng automotive para sa mga sistemang nauugnay sa kaligtasan.

Nasa balita rin si Rust kasama si Mark Russinovich, ang punong opisyal ng teknolohiya ng Microsoft Azure, na nagsasabing dapat iwasan ng mga developer ang paggamit ng C o C++ programming language sa mga bagong proyekto at sa halip ay gumamit ng Rust.

pinagmulan