Ändra sökning
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Heapless: Dynamic Data Structures without Dynamic Heap Allocator for Rust
Luleå tekniska universitet, Institutionen för system- och rymdteknik, Datavetenskap.
Luleå tekniska universitet, Institutionen för system- och rymdteknik, EISLAB. Luleå tekniska universitet, Institutionen för system- och rymdteknik, Datavetenskap.ORCID-id: 0000-0002-1791-535x
Luleå tekniska universitet, Institutionen för system- och rymdteknik, EISLAB. Luleå tekniska universitet, Institutionen för system- och rymdteknik, Datavetenskap.
2018 (Engelska)Ingår i: 2018 IEEE 16TH INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN), Piscataway, NJ: IEEE, 2018, s. 87-94, artikel-id 8472097Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

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.

Ort, förlag, år, upplaga, sidor
Piscataway, NJ: IEEE, 2018. s. 87-94, artikel-id 8472097
Serie
IEEE International Conference on Industrial Informatics INDIN, ISSN 1935-4576, E-ISSN 2378-363X
Nationell ämneskategori
Datavetenskap (datalogi)
Forskningsämne
Kommunikations- och beräkningssystem
Identifikatorer
URN: urn:nbn:se:ltu:diva-71248DOI: 10.1109/INDIN.2018.8472097ISI: 000450180200012Scopus ID: 2-s2.0-85055553702ISBN: 978-1-5386-4829-2 (digital)OAI: oai:DiVA.org:ltu-71248DiVA, id: diva2:1256725
Konferens
16th International Conference on Industrial Informatics (INDIN), Porto, Portugal, 18-20 July 2018
Tillgänglig från: 2018-10-17 Skapad: 2018-10-17 Senast uppdaterad: 2019-01-15Bibliografiskt granskad

Open Access i DiVA

Fulltext saknas i DiVA

Övriga länkar

Förlagets fulltextScopus

Personposter BETA

Lindner, MarcusLindgren, Per

Sök vidare i DiVA

Av författaren/redaktören
Aparicio Rivera, JorgeLindner, MarcusLindgren, Per
Av organisationen
DatavetenskapEISLAB
Datavetenskap (datalogi)

Sök vidare utanför DiVA

GoogleGoogle Scholar

doi
isbn
urn-nbn

Altmetricpoäng

doi
isbn
urn-nbn
Totalt: 322 träffar
RefereraExporteraLänk till posten
Permanent länk

Direktlänk
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annat format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annat språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf