Active DSU: Dynamic Software Updates for Active Functions
summary
Claims ability to update active, long‑running functions by rewriting the call stack at runtime and replaces return addresses with stubs so the topmost frame can be grown and reinitialized. Prototype implemented in the interactive Java‑like Storm platform shows live edits (e.g., adding an exit flag) applied at message 40 and recursive updates at 20, with no steady‑state overhead and only work during updates. Limits include escaped stack pointers and imperfect control‑flow diffing; core idea works for simple programs.
AI-written summary · about
chapters (10)
- 0:00Active DSU introduction
- 2:07Live vs production updates
- 3:29Control flow updates matter
- 8:04Rewriting call stacks
- 11:57Prototype in Storm
- 14:25Live demo
- 17:33Open challenges
- 20:07Q&A: Past behavior changes
- 22:18Q&A: Stack frame pointers
- 24:25Q&A: Diffing challenges
related talks
35mRedundancy Driven Development - Navigating disruptive codebase changes.
21mModifiable Software Systems: Smalltalk and HyperCard
45mThe simplest way to build resilient applications
28mElectric Clojure: Differential Dataflow for UI
16mRuntime Programmable Switches
25mStretch: A Fault-Driven DSM Runtime for Distributed Multithreaded Applications
41mSurviving Continuous Deployment in Distributed Systems
51mTechniques for Wielding Data and Behaviors
