Recovering from distributable thread failures in distributed real-time Java

We consider the problem of recovering from the failures of distributable threads ("threads") in distributed real-time systems that operate under runtime uncertainties including those on thread execution times, thread arrivals, and node failure occurrences. When a thread experiences a node...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on embedded computing systems 2010-08, Vol.10 (1)
Hauptverfasser: Curley, Edward, Ravindran, Binoy, Anderson, Jonathan, Jensen, E Douglas
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 Curley, Edward
Ravindran, Binoy
Anderson, Jonathan
Jensen, E Douglas
description We consider the problem of recovering from the failures of distributable threads ("threads") in distributed real-time systems that operate under runtime uncertainties including those on thread execution times, thread arrivals, and node failure occurrences. When a thread experiences a node failure, the result is a broken thread having an orphan. Under a termination model, the orphans must be detected and aborted, and exceptions must be delivered to the farthest, contiguous surviving thread segment for resuming thread execution. Our application/scheduling model includes the proposed distributable thread programming model for the emerging Distributed Real-Time Specification for Java (DRTSJ), together with an exception-handler model. Threads are subject to time/utility function (TUF) time constraints and an utility accrual (UA) optimality criterion. A key underpinning of the TUF/UA scheduling paradigm is the notion of "best-effort" where higher importance threads are always favored over lower importance ones, irrespective of thread urgency as specified by their time constraints. We present a thread scheduling algorithm called HUA and a thread integrity protocol called TPR. We show that HUA and TPR bound the orphan cleanup and recovery time with bounded loss of the best-effort property. Our implementation experience for HUA/TPR in the Reference Implementation of the proposed programming model for the DRTSJ demonstrates the algorithm/protocol's effectiveness.
doi_str_mv 10.1145/1167999.1168002
format Article
fullrecord <record><control><sourceid>proquest</sourceid><recordid>TN_cdi_proquest_miscellaneous_901661927</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>901661927</sourcerecordid><originalsourceid>FETCH-proquest_miscellaneous_9016619273</originalsourceid><addsrcrecordid>eNqNijsPgjAYADtoIj5m125OaD8ehc5GY3Qz7qTAh9YU0D74_TKYuDpdLneErIFtAZJ0B8AzIcQoPGcsmpAA0liEguXZjMytfTIGWZSkAblcseoHNKq708b0La2VdUaV3slSI3UPg7KmjVTaG7RUdb8BazpGHTrVIj3LQS7JtJHa4urLBdkcD7f9KXyZ_u3RuqJVtkKtZYe9t4VgwDmIKIv_Pz8JUkV6</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>901661927</pqid></control><display><type>article</type><title>Recovering from distributable thread failures in distributed real-time Java</title><source>ACM Digital Library</source><creator>Curley, Edward ; Ravindran, Binoy ; Anderson, Jonathan ; Jensen, E Douglas</creator><creatorcontrib>Curley, Edward ; Ravindran, Binoy ; Anderson, Jonathan ; Jensen, E Douglas</creatorcontrib><description>We consider the problem of recovering from the failures of distributable threads ("threads") in distributed real-time systems that operate under runtime uncertainties including those on thread execution times, thread arrivals, and node failure occurrences. When a thread experiences a node failure, the result is a broken thread having an orphan. Under a termination model, the orphans must be detected and aborted, and exceptions must be delivered to the farthest, contiguous surviving thread segment for resuming thread execution. Our application/scheduling model includes the proposed distributable thread programming model for the emerging Distributed Real-Time Specification for Java (DRTSJ), together with an exception-handler model. Threads are subject to time/utility function (TUF) time constraints and an utility accrual (UA) optimality criterion. A key underpinning of the TUF/UA scheduling paradigm is the notion of "best-effort" where higher importance threads are always favored over lower importance ones, irrespective of thread urgency as specified by their time constraints. We present a thread scheduling algorithm called HUA and a thread integrity protocol called TPR. We show that HUA and TPR bound the orphan cleanup and recovery time with bounded loss of the best-effort property. Our implementation experience for HUA/TPR in the Reference Implementation of the proposed programming model for the DRTSJ demonstrates the algorithm/protocol's effectiveness.</description><identifier>ISSN: 1539-9087</identifier><identifier>DOI: 10.1145/1167999.1168002</identifier><language>eng</language><subject>Algorithms ; Failure ; Java (programming language) ; Programming ; Real time ; Recovering ; Scheduling ; Utilities</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>315,781,785,27926,27927</link.rule.ids></links><search><creatorcontrib>Curley, Edward</creatorcontrib><creatorcontrib>Ravindran, Binoy</creatorcontrib><creatorcontrib>Anderson, Jonathan</creatorcontrib><creatorcontrib>Jensen, E Douglas</creatorcontrib><title>Recovering from distributable thread failures in distributed real-time Java</title><title>ACM transactions on embedded computing systems</title><description>We consider the problem of recovering from the failures of distributable threads ("threads") in distributed real-time systems that operate under runtime uncertainties including those on thread execution times, thread arrivals, and node failure occurrences. When a thread experiences a node failure, the result is a broken thread having an orphan. Under a termination model, the orphans must be detected and aborted, and exceptions must be delivered to the farthest, contiguous surviving thread segment for resuming thread execution. Our application/scheduling model includes the proposed distributable thread programming model for the emerging Distributed Real-Time Specification for Java (DRTSJ), together with an exception-handler model. Threads are subject to time/utility function (TUF) time constraints and an utility accrual (UA) optimality criterion. A key underpinning of the TUF/UA scheduling paradigm is the notion of "best-effort" where higher importance threads are always favored over lower importance ones, irrespective of thread urgency as specified by their time constraints. We present a thread scheduling algorithm called HUA and a thread integrity protocol called TPR. We show that HUA and TPR bound the orphan cleanup and recovery time with bounded loss of the best-effort property. Our implementation experience for HUA/TPR in the Reference Implementation of the proposed programming model for the DRTSJ demonstrates the algorithm/protocol's effectiveness.</description><subject>Algorithms</subject><subject>Failure</subject><subject>Java (programming language)</subject><subject>Programming</subject><subject>Real time</subject><subject>Recovering</subject><subject>Scheduling</subject><subject>Utilities</subject><issn>1539-9087</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2010</creationdate><recordtype>article</recordtype><recordid>eNqNijsPgjAYADtoIj5m125OaD8ehc5GY3Qz7qTAh9YU0D74_TKYuDpdLneErIFtAZJ0B8AzIcQoPGcsmpAA0liEguXZjMytfTIGWZSkAblcseoHNKq708b0La2VdUaV3slSI3UPg7KmjVTaG7RUdb8BazpGHTrVIj3LQS7JtJHa4urLBdkcD7f9KXyZ_u3RuqJVtkKtZYe9t4VgwDmIKIv_Pz8JUkV6</recordid><startdate>20100801</startdate><enddate>20100801</enddate><creator>Curley, Edward</creator><creator>Ravindran, Binoy</creator><creator>Anderson, Jonathan</creator><creator>Jensen, E Douglas</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>Recovering from distributable thread failures in distributed real-time Java</title><author>Curley, Edward ; Ravindran, Binoy ; Anderson, Jonathan ; Jensen, E Douglas</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-proquest_miscellaneous_9016619273</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2010</creationdate><topic>Algorithms</topic><topic>Failure</topic><topic>Java (programming language)</topic><topic>Programming</topic><topic>Real time</topic><topic>Recovering</topic><topic>Scheduling</topic><topic>Utilities</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Curley, Edward</creatorcontrib><creatorcontrib>Ravindran, Binoy</creatorcontrib><creatorcontrib>Anderson, Jonathan</creatorcontrib><creatorcontrib>Jensen, E Douglas</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>Curley, Edward</au><au>Ravindran, Binoy</au><au>Anderson, Jonathan</au><au>Jensen, E Douglas</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Recovering from distributable thread failures in distributed real-time Java</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>We consider the problem of recovering from the failures of distributable threads ("threads") in distributed real-time systems that operate under runtime uncertainties including those on thread execution times, thread arrivals, and node failure occurrences. When a thread experiences a node failure, the result is a broken thread having an orphan. Under a termination model, the orphans must be detected and aborted, and exceptions must be delivered to the farthest, contiguous surviving thread segment for resuming thread execution. Our application/scheduling model includes the proposed distributable thread programming model for the emerging Distributed Real-Time Specification for Java (DRTSJ), together with an exception-handler model. Threads are subject to time/utility function (TUF) time constraints and an utility accrual (UA) optimality criterion. A key underpinning of the TUF/UA scheduling paradigm is the notion of "best-effort" where higher importance threads are always favored over lower importance ones, irrespective of thread urgency as specified by their time constraints. We present a thread scheduling algorithm called HUA and a thread integrity protocol called TPR. We show that HUA and TPR bound the orphan cleanup and recovery time with bounded loss of the best-effort property. Our implementation experience for HUA/TPR in the Reference Implementation of the proposed programming model for the DRTSJ demonstrates the algorithm/protocol's effectiveness.</abstract><doi>10.1145/1167999.1168002</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_901661927
source ACM Digital Library
subjects Algorithms
Failure
Java (programming language)
Programming
Real time
Recovering
Scheduling
Utilities
title Recovering from distributable thread failures in distributed real-time Java
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-17T18%3A47%3A33IST&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=Recovering%20from%20distributable%20thread%20failures%20in%20distributed%20real-time%20Java&rft.jtitle=ACM%20transactions%20on%20embedded%20computing%20systems&rft.au=Curley,%20Edward&rft.date=2010-08-01&rft.volume=10&rft.issue=1&rft.issn=1539-9087&rft_id=info:doi/10.1145/1167999.1168002&rft_dat=%3Cproquest%3E901661927%3C/proquest%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=901661927&rft_id=info:pmid/&rfr_iscdi=true