Reflexes: Abstractions for integrating highly responsive tasks into Java applications

Achieving submillisecond response times in a managed language environment such as Java or CNUMBER requires overcoming significant challenges. In this article, we propose Reflexes, a programming model and runtime system infrastructure that lets developers seamlessly mix highly responsive tasks and ti...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on embedded computing systems 2010-08, Vol.10 (1)
Hauptverfasser: Spring, Jesper Honig, Pizlo, Filip, Privat, Jean, Guerraoui, Rachid, Vitek, Jan
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue 1
container_start_page
container_title ACM transactions on embedded computing systems
container_volume 10
creator Spring, Jesper Honig
Pizlo, Filip
Privat, Jean
Guerraoui, Rachid
Vitek, Jan
description Achieving submillisecond response times in a managed language environment such as Java or CNUMBER requires overcoming significant challenges. In this article, we propose Reflexes, a programming model and runtime system infrastructure that lets developers seamlessly mix highly responsive tasks and timing-oblivious Java applications. Thus enabling gradual addition of real-time features, to a non-real-time application without having to resort to recoding the real-time parts in a different language such as C or Ada. Experiments with the Reflex prototype implementation show that it is possible to run a real-time task with a period of 45 mu s with an accuracy of 99.996% (only 0.001% worse than the corresponding C implementation) in the presence of garbage collection and heavy load ordinary Java threads.
doi_str_mv 10.1145/1324969.1324974
format Article
fullrecord <record><control><sourceid>proquest</sourceid><recordid>TN_cdi_proquest_miscellaneous_901662530</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>901662530</sourcerecordid><originalsourceid>FETCH-proquest_miscellaneous_9016625303</originalsourceid><addsrcrecordid>eNqNi8sOATEUQLsg8VzbdmeFdp5qJ0LEUlhPrsmdUWo6ekv4e4_4AKuzOOcwNpBiLGUUT2QYRCpR4y_TqMHaMg7VSIlp2mIdopMQMg2iuM32WywMPpBmfH4g7yD32lbEC-u4rjyWDryuSn7U5dE8uUOq31rfkXugM30ayzdwBw51bXQO373HmgUYwv6PXTZcLXeL9ah29npD8tlFU47GQIX2RpkSMkmCOBTh_-ULOBlJlQ</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>901662530</pqid></control><display><type>article</type><title>Reflexes: Abstractions for integrating highly responsive tasks into Java applications</title><source>ACM Digital Library Complete</source><creator>Spring, Jesper Honig ; Pizlo, Filip ; Privat, Jean ; Guerraoui, Rachid ; Vitek, Jan</creator><creatorcontrib>Spring, Jesper Honig ; Pizlo, Filip ; Privat, Jean ; Guerraoui, Rachid ; Vitek, Jan</creatorcontrib><description>Achieving submillisecond response times in a managed language environment such as Java or CNUMBER requires overcoming significant challenges. In this article, we propose Reflexes, a programming model and runtime system infrastructure that lets developers seamlessly mix highly responsive tasks and timing-oblivious Java applications. Thus enabling gradual addition of real-time features, to a non-real-time application without having to resort to recoding the real-time parts in a different language such as C or Ada. Experiments with the Reflex prototype implementation show that it is possible to run a real-time task with a period of 45 mu s with an accuracy of 99.996% (only 0.001% worse than the corresponding C implementation) in the presence of garbage collection and heavy load ordinary Java threads.</description><identifier>ISSN: 1539-9087</identifier><identifier>DOI: 10.1145/1324969.1324974</identifier><language>eng</language><subject>Ada (programming language) ; C (programming language) ; Embedded computer systems ; Java (programming language) ; Programming ; Real time ; Reflexes ; Tasks</subject><ispartof>ACM transactions on embedded computing systems, 2010-08, Vol.10 (1)</ispartof><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,776,780,27901,27902</link.rule.ids></links><search><creatorcontrib>Spring, Jesper Honig</creatorcontrib><creatorcontrib>Pizlo, Filip</creatorcontrib><creatorcontrib>Privat, Jean</creatorcontrib><creatorcontrib>Guerraoui, Rachid</creatorcontrib><creatorcontrib>Vitek, Jan</creatorcontrib><title>Reflexes: Abstractions for integrating highly responsive tasks into Java applications</title><title>ACM transactions on embedded computing systems</title><description>Achieving submillisecond response times in a managed language environment such as Java or CNUMBER requires overcoming significant challenges. In this article, we propose Reflexes, a programming model and runtime system infrastructure that lets developers seamlessly mix highly responsive tasks and timing-oblivious Java applications. Thus enabling gradual addition of real-time features, to a non-real-time application without having to resort to recoding the real-time parts in a different language such as C or Ada. Experiments with the Reflex prototype implementation show that it is possible to run a real-time task with a period of 45 mu s with an accuracy of 99.996% (only 0.001% worse than the corresponding C implementation) in the presence of garbage collection and heavy load ordinary Java threads.</description><subject>Ada (programming language)</subject><subject>C (programming language)</subject><subject>Embedded computer systems</subject><subject>Java (programming language)</subject><subject>Programming</subject><subject>Real time</subject><subject>Reflexes</subject><subject>Tasks</subject><issn>1539-9087</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2010</creationdate><recordtype>article</recordtype><recordid>eNqNi8sOATEUQLsg8VzbdmeFdp5qJ0LEUlhPrsmdUWo6ekv4e4_4AKuzOOcwNpBiLGUUT2QYRCpR4y_TqMHaMg7VSIlp2mIdopMQMg2iuM32WywMPpBmfH4g7yD32lbEC-u4rjyWDryuSn7U5dE8uUOq31rfkXugM30ayzdwBw51bXQO373HmgUYwv6PXTZcLXeL9ah29npD8tlFU47GQIX2RpkSMkmCOBTh_-ULOBlJlQ</recordid><startdate>20100801</startdate><enddate>20100801</enddate><creator>Spring, Jesper Honig</creator><creator>Pizlo, Filip</creator><creator>Privat, Jean</creator><creator>Guerraoui, Rachid</creator><creator>Vitek, Jan</creator><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>20100801</creationdate><title>Reflexes: Abstractions for integrating highly responsive tasks into Java applications</title><author>Spring, Jesper Honig ; Pizlo, Filip ; Privat, Jean ; Guerraoui, Rachid ; Vitek, Jan</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-proquest_miscellaneous_9016625303</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2010</creationdate><topic>Ada (programming language)</topic><topic>C (programming language)</topic><topic>Embedded computer systems</topic><topic>Java (programming language)</topic><topic>Programming</topic><topic>Real time</topic><topic>Reflexes</topic><topic>Tasks</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Spring, Jesper Honig</creatorcontrib><creatorcontrib>Pizlo, Filip</creatorcontrib><creatorcontrib>Privat, Jean</creatorcontrib><creatorcontrib>Guerraoui, Rachid</creatorcontrib><creatorcontrib>Vitek, Jan</creatorcontrib><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><jtitle>ACM transactions on embedded computing systems</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Spring, Jesper Honig</au><au>Pizlo, Filip</au><au>Privat, Jean</au><au>Guerraoui, Rachid</au><au>Vitek, Jan</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Reflexes: Abstractions for integrating highly responsive tasks into Java applications</atitle><jtitle>ACM transactions on embedded computing systems</jtitle><date>2010-08-01</date><risdate>2010</risdate><volume>10</volume><issue>1</issue><issn>1539-9087</issn><abstract>Achieving submillisecond response times in a managed language environment such as Java or CNUMBER requires overcoming significant challenges. In this article, we propose Reflexes, a programming model and runtime system infrastructure that lets developers seamlessly mix highly responsive tasks and timing-oblivious Java applications. Thus enabling gradual addition of real-time features, to a non-real-time application without having to resort to recoding the real-time parts in a different language such as C or Ada. Experiments with the Reflex prototype implementation show that it is possible to run a real-time task with a period of 45 mu s with an accuracy of 99.996% (only 0.001% worse than the corresponding C implementation) in the presence of garbage collection and heavy load ordinary Java threads.</abstract><doi>10.1145/1324969.1324974</doi></addata></record>
fulltext fulltext
identifier ISSN: 1539-9087
ispartof ACM transactions on embedded computing systems, 2010-08, Vol.10 (1)
issn 1539-9087
language eng
recordid cdi_proquest_miscellaneous_901662530
source ACM Digital Library Complete
subjects Ada (programming language)
C (programming language)
Embedded computer systems
Java (programming language)
Programming
Real time
Reflexes
Tasks
title Reflexes: Abstractions for integrating highly responsive tasks into Java applications
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-29T01%3A27%3A37IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Reflexes:%20Abstractions%20for%20integrating%20highly%20responsive%20tasks%20into%20Java%20applications&rft.jtitle=ACM%20transactions%20on%20embedded%20computing%20systems&rft.au=Spring,%20Jesper%20Honig&rft.date=2010-08-01&rft.volume=10&rft.issue=1&rft.issn=1539-9087&rft_id=info:doi/10.1145/1324969.1324974&rft_dat=%3Cproquest%3E901662530%3C/proquest%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=901662530&rft_id=info:pmid/&rfr_iscdi=true