Since the first official release of Rust 1.0 in 2015, the language has become one of the most well-liked programming languages among developers and has emerged as a competitor to other systems programming languages such as C and C++. Due to its unique ownership model, Rust is able to ensure memory safety, while also maintaining performance comparable to C and C++. An area that could potentially benefit from using Rust in its software is Radio Access Networks (RANs). The introduction of 5G mobile networks have lead to an increasing amount of base stations, making the network harder to manage. Therefore it is crucial that the software tasked with managing the network is of high quality. In this study, Rust will be compared to other systems programming languages and investigated as a potential alternative to C for use in RAN node management software. The two languages will be compared with regards to performance as well as safety. The results show that the execution speed of Rust applications are on par or better than their C counterpart, while the peak memory usage generally is higher in Rust. It was also shown that significant improvements in safety can be achieved, even in cases where the application is fairly straight forward. / Sedan första officiella utgåvan av Rust 1.0 2015 har språket blivit ett av de mest omtyckta språken bland utvecklare och seglat upp som en utmanare till andra system-programmeringsspråk såsom C och C++. Tack vare sin unika ägarmodell så kan Rust garantera minnessäkerhet, och samtidigt också erbjuda prestanda i paritet med C och C++. Ett område som med fördel skulle kunna använda Rust är programvaran i radionätverk. Introduktionen av 5G i mobila nätverk har lett till ett ökat antal basstationer, vilket gjort nätverken mer utmanande att underhålla. Det är därför viktigt att programvaran som utför underhållsfunktionerna är av hög kvalitet. I denna studie jämförs Rust med andra systemprogrammeringsspråk och undersöks som ett möjligt alternativ till C för underhållsfunktionerna i nätverksnoderna. De två språken undersöks med avseende på prestanda och säkerhet. Resultaten visar att exekveringshastigheten med Rust är i paritet med, eller bättre än, motsvarigheten i C, medan toppminnesutnyttjandet är högre med Rust. Studien visar också att signifikanta förbättringar i minnessäkerhet kan uppnås, även i fall då applikationen är ganska rättfram.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-325822 |
Date | January 2023 |
Creators | Olsson, Viktor |
Publisher | KTH, Skolan för elektroteknik och datavetenskap (EECS) |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-EECS-EX ; 2023:49 |
Page generated in 0.003 seconds