DC Field | Value | Language |
dc.contributor.author | Köppen, M. | |
dc.contributor.author | Traue, J. | |
dc.contributor.author | Borchert, C. | |
dc.contributor.author | Nolte, J. | |
dc.contributor.author | Spinczyk, O. | |
dc.date.accessioned | 2021-12-23T16:33:17Z | - |
dc.date.available | 2021-12-23T16:33:17Z | - |
dc.date.issued | 2019 | |
dc.identifier.isbn | 9781450370172 | |
dc.identifier.uri | https://osnascholar.ub.uni-osnabrueck.de/handle/unios/17655 | - |
dc.description | Conference of 10th Workshop on Programming Languages and Operating Systems, PLOS 2019, held in conjunction with the 27th ACM Symposium on Operating Systems Principles, SOSP 2019 ; Conference Date: 27 October 2019; Conference Code:154261 | |
dc.description.abstract | With the availability of systems that contain large amounts of byte-addressable non-volatile memory (NVRAM), there is a growing need for data structures that can be mapped into a process's address space and be used without data (de-)serialization. While NVRAM is able to retain memory contents during system failure and power loss, data consistency has to be preserved by using transactional operations for data manipulation. This paper describes a lightweight and efficient transaction mechanism for small data structures in memory-mapped NVRAM. The size per data structure is limited to half a cache-line, so that the approach cannot serve as a general purpose mechanism for arbitrary applications, but could be used within an operating system as a low-level building block for more complex data structures. By using aspect-oriented programming with AspectC++, the mechanism can be used in an almost transparent manner, which helps to avoid many possible sources for bugs. © 2019 Copyright held by the owner/author(s). | |
dc.description.sponsorship | ACMS IGOPS | |
dc.language.iso | en | |
dc.publisher | Association for Computing Machinery, Inc | |
dc.relation.ispartof | PLOS 2019 - Proceedings of the 10th Workshop on Programming Languages and Operating Systems, Part of SOSP 2019 | |
dc.subject | Aspect-oriented programming | |
dc.subject | Building blockes | |
dc.subject | Cache memory | |
dc.subject | Complex data structures | |
dc.subject | Data consistency | |
dc.subject | Data manipulations | |
dc.subject | Data structures | |
dc.subject | Non-volatile memory | |
dc.subject | Nonvolatile storage | |
dc.subject | Object oriented programming | |
dc.subject | Persistent data structures | |
dc.subject | System failures | |
dc.subject | Systems engineering, Address space | |
dc.subject | Transaction mechanism, Aspect oriented programming | |
dc.title | Cache-line transactions: Building blocks for persistent kernel data structures enabled by AspecTC++ | |
dc.type | conference paper | |
dc.identifier.doi | 10.1145/3365137.3365396 | |
dc.identifier.scopus | 2-s2.0-85075744421 | |
dc.identifier.url | https://www.scopus.com/inward/record.uri?eid=2-s2.0-85075744421&doi=10.1145%2f3365137.3365396&partnerID=40&md5=bf1e7edcc19496176acad84ebf64a158 | |
dc.description.startpage | 38 | |
dc.description.endpage | 44 | |
dcterms.isPartOf.abbreviation | PLOS - Proc. Workshop Program. Lang. Oper. Syst., Part SOSP | |
crisitem.author.dept | FB 06 - Mathematik/Informatik | - |
crisitem.author.deptid | fb06 | - |
crisitem.author.orcid | 0000-0001-9469-2367 | - |
crisitem.author.parentorg | Universität Osnabrück | - |
crisitem.author.netid | SpOl063 | - |