Details
Original language | English |
---|---|
Title of host publication | 2019 IEEE Real-Time Systems Symposium (RTSS) |
Pages | 69-79 |
Number of pages | 11 |
ISBN (electronic) | 978-1-7281-6463-2 |
Publication status | Published - Dec 2019 |
Event | 2019 IEEE Real-Time Systems Symposium (RTSS) - Hong Kong, Hong Kong Duration: 3 Dec 2019 → 6 Dec 2019 |
Publication series
Name | IEEE Real-Time Systems Symposium |
---|---|
ISSN (Print) | 1052-8725 |
ISSN (electronic) | 2576-3172 |
Abstract
For billions of deployed browsers, JavaScript provides the platform-independent lingua franca that enabled the triumphal march of web-based applications. Originally intended for simple UI-event processing, JavaScript comes with an event-driven programming model, where event-callback functions are executed in strict sequential order. However, with applications getting more complex and tasks becoming more computation intensive, its first-come-first-serve and run-to-completion semantic is hitting a limit, when reactions to user inputs are delayed beyond the human perception threshold. With the rise of the Internet of Things, this leads to friction-filled user experiences in everyday situations. With RT.js, we selectively introduce pseudo-preemption points into JavaScript functions and sequence the execution of event callbacks with well-known real-time scheduling policies, like EDF. Thereby, we provide a soft real-time abstraction that mitigates the described shortcomings of the JavaScript execution model without modifying the actual engine; making RT.js compatible with billions of devices. Applied to generated real-time task sets, we can almost eliminate the 30-percent deadline-miss ratios of baseline JavaScript at moderate costs. In a browser-based macro benchmark, we could diminish the influence of computation-intensive background tasks on the page-rendering performance.
Keywords
- Browser, JavaScript, Preemption, Real-Time System
ASJC Scopus subject areas
- Computer Science(all)
- Software
- Computer Science(all)
- Hardware and Architecture
- Computer Science(all)
- Computer Networks and Communications
Cite this
- Standard
- Harvard
- Apa
- Vancouver
- BibTeX
- RIS
2019 IEEE Real-Time Systems Symposium (RTSS). 2019. p. 69-79 9052116 (IEEE Real-Time Systems Symposium).
Research output: Chapter in book/report/conference proceeding › Conference contribution › Research › peer review
}
TY - GEN
T1 - RT.js
T2 - 2019 IEEE Real-Time Systems Symposium (RTSS)
AU - Dietrich, Christian
AU - Naumann, Stefan
AU - Thrift, Robin
AU - Lohmann, Daniel
N1 - Funding information: This work was partly supported by the German Research Foundation (DFG) under grant no. LO 1719/3-1 and LO 1719/4-1.
PY - 2019/12
Y1 - 2019/12
N2 - For billions of deployed browsers, JavaScript provides the platform-independent lingua franca that enabled the triumphal march of web-based applications. Originally intended for simple UI-event processing, JavaScript comes with an event-driven programming model, where event-callback functions are executed in strict sequential order. However, with applications getting more complex and tasks becoming more computation intensive, its first-come-first-serve and run-to-completion semantic is hitting a limit, when reactions to user inputs are delayed beyond the human perception threshold. With the rise of the Internet of Things, this leads to friction-filled user experiences in everyday situations. With RT.js, we selectively introduce pseudo-preemption points into JavaScript functions and sequence the execution of event callbacks with well-known real-time scheduling policies, like EDF. Thereby, we provide a soft real-time abstraction that mitigates the described shortcomings of the JavaScript execution model without modifying the actual engine; making RT.js compatible with billions of devices. Applied to generated real-time task sets, we can almost eliminate the 30-percent deadline-miss ratios of baseline JavaScript at moderate costs. In a browser-based macro benchmark, we could diminish the influence of computation-intensive background tasks on the page-rendering performance.
AB - For billions of deployed browsers, JavaScript provides the platform-independent lingua franca that enabled the triumphal march of web-based applications. Originally intended for simple UI-event processing, JavaScript comes with an event-driven programming model, where event-callback functions are executed in strict sequential order. However, with applications getting more complex and tasks becoming more computation intensive, its first-come-first-serve and run-to-completion semantic is hitting a limit, when reactions to user inputs are delayed beyond the human perception threshold. With the rise of the Internet of Things, this leads to friction-filled user experiences in everyday situations. With RT.js, we selectively introduce pseudo-preemption points into JavaScript functions and sequence the execution of event callbacks with well-known real-time scheduling policies, like EDF. Thereby, we provide a soft real-time abstraction that mitigates the described shortcomings of the JavaScript execution model without modifying the actual engine; making RT.js compatible with billions of devices. Applied to generated real-time task sets, we can almost eliminate the 30-percent deadline-miss ratios of baseline JavaScript at moderate costs. In a browser-based macro benchmark, we could diminish the influence of computation-intensive background tasks on the page-rendering performance.
KW - Browser
KW - JavaScript
KW - Preemption
KW - Real-Time System
UR - http://www.scopus.com/inward/record.url?scp=85083204037&partnerID=8YFLogxK
U2 - 10.1109/rtss46320.2019.00017
DO - 10.1109/rtss46320.2019.00017
M3 - Conference contribution
SN - 978-1-7281-6464-9
T3 - IEEE Real-Time Systems Symposium
SP - 69
EP - 79
BT - 2019 IEEE Real-Time Systems Symposium (RTSS)
Y2 - 3 December 2019 through 6 December 2019
ER -