QEMU/CPC: static analysis and CPS conversion for safe, portable, and efficient coroutines

@article{Kerneis2014QEMUCPCSA,
  title={QEMU/CPC: static analysis and CPS conversion for safe, portable, and efficient coroutines},
  author={Gabriel Kerneis and Charlie Shepherd and Stefan Hajnoczi},
  journal={ArXiv},
  year={2014},
  volume={abs/1310.3404}
}
Coroutines and events are two common abstractions for writing concurrent programs. Because coroutines are often more convenient, but events more portable and efficient, it is natural to want to translate the former into the latter. CPC is such a source-to-source translator for C programs, based on a partial conversion into continuation-passing style (CPS conversion) of functions annotated as cooperative. In this article, we study the application of the CPC translator to QEMU, an open-source… CONTINUE READING
1
Twitter Mention