Sökning: onr:"swepub:oai:DiVA.org:ltu-71248" >
Heapless :
-
Aparicio Rivera, JorgeLuleå tekniska universitet,Datavetenskap
(författare)
Heapless : Dynamic Data Structures without Dynamic Heap Allocator for Rust
- Artikel/kapitelEngelska2018
Förlag, utgivningsår, omfång ...
-
Piscataway, NJ :IEEE,2018
-
printrdacarrier
Nummerbeteckningar
-
LIBRIS-ID:oai:DiVA.org:ltu-71248
-
https://urn.kb.se/resolve?urn=urn:nbn:se:ltu:diva-71248URI
-
https://doi.org/10.1109/INDIN.2018.8472097DOI
Kompletterande språkuppgifter
-
Språk:engelska
-
Sammanfattning på:engelska
Ingår i deldatabas
Klassifikation
-
Ämneskategori:ref swepub-contenttype
-
Ämneskategori:kon swepub-publicationtype
Anmärkningar
-
Dynamic memory management is typically implemented using a global memory allocator, which may negatively impact the performance, reliability, and predictability of a program; in effect standards around safety-critical applications often discourage or even disallow dynamic memory management. This paper presents heapless, a collection of dynamic data structures (for vectors, strings, and circular buffers) that can be either stack or statically allocated, thus free of global allocator dependencies. The proposed data structures for vectors and strings closely mimic the Rust standard library implementations while adding support to gracefully handling cases of capacity exceedance. Our circular buffers act as queues and allowing channel like usage (by splitting). The Rust memory model together with the ability of local reasoning on memory requirements (brought by heapless) facilitates establishing robustness/safety guarantees and minimize attack surfaces of (industrial) IoT systems. We show that the heapless data structures are highly efficient and have predictable performance, thus suitable for hard real-time applications. Moreover, in our implementation heapless data structures are non-relocatable allowing mapping to hardware, useful, e.g., to DMA transfers. The feasibility, performance, and advantages of heapless are demonstrated by implementing a JSON serialization and de-serialization library for an ARM Cortex-M based IoT platform.
Ämnesord och genrebeteckningar
Biuppslag (personer, institutioner, konferenser, titlar ...)
-
Lindner, MarcusLuleå tekniska universitet,EISLAB,Datavetenskap(Swepub:ltu)maalin
(författare)
-
Lindgren, PerLuleå tekniska universitet,EISLAB,Datavetenskap(Swepub:ltu)pln
(författare)
-
Luleå tekniska universitetDatavetenskap
(creator_code:org_t)
Sammanhörande titlar
-
Ingår i:2018 IEEE 16TH INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN)Piscataway, NJ : IEEE, s. 87-949781538648292
Internetlänk
Hitta via bibliotek
Till lärosätets databas