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...
Gespeichert in:
Veröffentlicht in: | ACM transactions on embedded computing systems 2010-08, Vol.10 (1) |
---|---|
Hauptverfasser: | , , , |
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 |