{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,8,6]],"date-time":"2024-08-06T15:31:19Z","timestamp":1722958279623},"reference-count":63,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2016,4,6]],"date-time":"2016-04-06T00:00:00Z","timestamp":1459900800000},"content-version":"vor","delay-in-days":0,"URL":"http:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Digital Economy and the Australian Research Council through the ICT Centre of Excellence program"},{"name":"Australian Government as represented by the Department of Broadband, Communications"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Comput. Syst."],"published-print":{"date-parts":[[2016,4,6]]},"abstract":"The L4 microkernel has undergone 20 years of use and evolution. It has an active user and developer community, and there are commercial versions that are deployed on a large scale and in safety-critical systems. In this article we examine the lessons learnt in those 20 years about microkernel design and implementation. We revisit the L4 design articles and examine the evolution of design and implementation from the original L4 to the latest generation of L4 kernels. We specifically look at seL4, which has pushed the L4 model furthest and was the first OS kernel to undergo a complete formal verification of its implementation as well as a sound analysis of worst-case execution times. We demonstrate that while much has changed, the fundamental principles of minimality, generality, and high inter-process communication (IPC) performance remain the main drivers of design and implementation decisions.<\/jats:p>","DOI":"10.1145\/2893177","type":"journal-article","created":{"date-parts":[[2016,4,7]],"date-time":"2016-04-07T22:16:10Z","timestamp":1460067370000},"page":"1-29","update-policy":"http:\/\/dx.doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":39,"title":["L4 Microkernels"],"prefix":"10.1145","volume":"34","author":[{"given":"Gernot","family":"Heiser","sequence":"first","affiliation":[{"name":"NICTA and UNSW, Sydney, Australia"}]},{"given":"Kevin","family":"Elphinstone","sequence":"additional","affiliation":[{"name":"NICTA and UNSW, Sydney, Australia"}]}],"member":"320","published-online":{"date-parts":[[2016,4,6]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"Proceedings of the 1986 Summer USENIX Technical Conference. US, 93--112","author":"Accetta Mike","year":"1986","unstructured":"Mike Accetta , Robert Baron , William Bolosky , David Golub , Richard Rashid , Avadis Tevanian , and Michael Young . 1986 . Mach: A new kernel foundation for UNIX development . In Proceedings of the 1986 Summer USENIX Technical Conference. US, 93--112 . Mike Accetta, Robert Baron, William Bolosky, David Golub, Richard Rashid, Avadis Tevanian, and Michael Young. 1986. Mach: A new kernel foundation for UNIX development. In Proceedings of the 1986 Summer USENIX Technical Conference. US, 93--112."},{"key":"e_1_2_1_2_1","volume-title":"AFIPS Conference Proceedings, 1972 Spring Joint Computer Conference. 585--591","author":"Alexander Michael T.","year":"1972","unstructured":"Michael T. Alexander . 1972 . Organization and features of the Michigan terminal system . In AFIPS Conference Proceedings, 1972 Spring Joint Computer Conference. 585--591 . Michael T. Alexander. 1972. Organization and features of the Michigan terminal system. In AFIPS Conference Proceedings, 1972 Spring Joint Computer Conference. 585--591."},{"key":"e_1_2_1_3_1","volume-title":"September","author":"Apple Inc. 2015.","year":"2015","unstructured":"Apple Inc. 2015. iOS security--iOS 9.0 or later. https:\/\/www.apple.com\/business\/docs\/iOS Security Guide.pdf , September 2015 . Apple Inc. 2015. iOS security--iOS 9.0 or later. https:\/\/www.apple.com\/business\/docs\/iOS Security Guide.pdf, September 2015."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629579"},{"key":"e_1_2_1_5_1","volume-title":"fast, maintainable choose any three&excl","author":"Blackham Bernard","unstructured":"Bernard Blackham and Gernot Heiser . 2012. Correct , fast, maintainable choose any three&excl ; In Proceedings of the Asia-Pacific Workshop on Systems (APSys) . 7. Bernard Blackham and Gernot Heiser. 2012. Correct, fast, maintainable choose any three! In Proceedings of the Asia-Pacific Workshop on Systems (APSys). 7."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/RTSS.2011.38"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2168836.2168869"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/362258.362278"},{"key":"e_1_2_1_9_1","volume-title":"Proceedings of the USENIX Workshop on Microkernels and Other Kernel Architectures. 95--112","author":"Bromberger Alan C.","unstructured":"Alan C. Bromberger , A. Peri Frantz , William S. Frantz , Ann C. Hardy , Norman Hardy , Charles R. Landau , and Jonathan S. Shapiro . 1992. The KeyKOS nanokernel architecture . In Proceedings of the USENIX Workshop on Microkernels and Other Kernel Architectures. 95--112 . Alan C. Bromberger, A. Peri Frantz, William S. Frantz, Ann C. Hardy, Norman Hardy, Charles R. Landau, and Jonathan S. Shapiro. 1992. The KeyKOS nanokernel architecture. In Proceedings of the USENIX Workshop on Microkernels and Other Kernel Architectures. 95--112."},{"key":"e_1_2_1_10_1","volume-title":"Proceedings of the 14th ACM Symposium on Operating Systems Principles. 120--133","author":"Bradley Chen J.","unstructured":"J. Bradley Chen and Brian N. Bershad . 1993. The impact of operating system structure on memory system performance . In Proceedings of the 14th ACM Symposium on Operating Systems Principles. 120--133 . J. Bradley Chen and Brian N. Bershad. 1993. The impact of operating system structure on memory system performance. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. 120--133."},{"key":"e_1_2_1_11_1","volume-title":"Microkernel Modularity with Integrated Kernel Performance. Technical report","author":"Condict Michael","unstructured":"Michael Condict , Don Bolinger , Dave Mitchell , and Eamonn McManus . 1994. Microkernel Modularity with Integrated Kernel Performance. Technical report . OSF Research Institute . Michael Condict, Don Bolinger, Dave Mitchell, and Eamonn McManus. 1994. Microkernel Modularity with Integrated Kernel Performance. Technical report. OSF Research Institute."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/365230.365252"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1435458.1435465"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the 1st Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure (OASIS).","author":"Fraser Keir","year":"2004","unstructured":"Keir Fraser , Steven Hand , Rolf Neugebauer , Ian Pratt , Andrew Warfield , and Mark Williamson . 2004 . Safe hardware access with the Xen virtual machine monitor . In Proceedings of the 1st Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure (OASIS). Keir Fraser, Steven Hand, Rolf Neugebauer, Ian Pratt, Andrew Warfield, and Mark Williamson. 2004. Safe hardware access with the Xen virtual machine monitor. In Proceedings of the 1st Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure (OASIS)."},{"key":"e_1_2_1_15_1","volume-title":"Proceedings of the 1999 USENIX Annual Technical Conference. 267--282","author":"Gabber Eran","year":"1999","unstructured":"Eran Gabber , Christopher Small , John Bruno , Jos\u00e9 Brustoloni , and Avi Silberschatz . 1999 . The Pebble component-based operating system . In Proceedings of the 1999 USENIX Annual Technical Conference. 267--282 . Eran Gabber, Christopher Small, John Bruno, Jos\u00e9 Brustoloni, and Avi Silberschatz. 1999. The Pebble component-based operating system. In Proceedings of the 1999 USENIX Annual Technical Conference. 267--282."},{"key":"e_1_2_1_16_1","volume-title":"Proceedings of the 2005 USENIX Annual Technical Conference. 264--278","author":"Gray Charles","year":"2005","unstructured":"Charles Gray , Matthew Chapman , Peter Chubb , David Mosberger-Tang , and Gernot Heiser . 2005 . Itanium\u2014a system implementor\u2019s tale . In Proceedings of the 2005 USENIX Annual Technical Conference. 264--278 . Charles Gray, Matthew Chapman, Peter Chubb, David Mosberger-Tang, and Gernot Heiser. 2005. Itanium\u2014a system implementor\u2019s tale. In Proceedings of the 2005 USENIX Annual Technical Conference. 264--278."},{"key":"e_1_2_1_17_1","volume-title":"Managing Kernel Memory Resources from User Level. Diploma Thesis. Dept of Computer Science","author":"Haeberlen Andreas","unstructured":"Andreas Haeberlen . 2003. Managing Kernel Memory Resources from User Level. Diploma Thesis. Dept of Computer Science , University of Karlsruhe . http:\/\/os.ibds.kit.edu\/english\/97_639.php. Andreas Haeberlen. 2003. Managing Kernel Memory Resources from User Level. Diploma Thesis. Dept of Computer Science, University of Karlsruhe. http:\/\/os.ibds.kit.edu\/english\/97_639.php."},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/858336.858337"},{"key":"e_1_2_1_19_1","volume-title":"Proceedings of the 8th SIGOPS European Workshop.","author":"H\u00e4rtig Hermann","year":"1998","unstructured":"Hermann H\u00e4rtig , Robert Baumgartl , Martin Borriss , Claude-Joachim Hamann , Michael Hohmuth , Frank Mehnert , Lars Reuther , Sebastian Sch\u00f6nberg , and Jean Wolter . 1998 . DROPS\u2014OS support for distributed multimedia applications . In Proceedings of the 8th SIGOPS European Workshop. Hermann H\u00e4rtig, Robert Baumgartl, Martin Borriss, Claude-Joachim Hamann, Michael Hohmuth, Frank Mehnert, Lars Reuther, Sebastian Sch\u00f6nberg, and Jean Wolter. 1998. DROPS\u2014OS support for distributed multimedia applications. In Proceedings of the 8th SIGOPS European Workshop."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/268998.266660"},{"key":"e_1_2_1_21_1","volume-title":"Proceedings of the 8th Real-Time Linux Workshop.","author":"H\u00e4rtig Hermann","year":"2006","unstructured":"Hermann H\u00e4rtig and Michael Roitzsch . 2006 . Ten years of research on L4-based real-time systems . In Proceedings of the 8th Real-Time Linux Workshop. Hermann H\u00e4rtig and Michael Roitzsch. 2006. Ten years of research on L4-based real-time systems. In Proceedings of the 8th Real-Time Linux Workshop."},{"key":"e_1_2_1_22_1","unstructured":"Gernot Heiser. 2009. The Motorola Evoke QA4: A Case Study in Mobile Virtualization. White paper. Open Kernel Labs. Retrieved from https:\/\/www.researchgate.net\/profile\/Gernot_Heiser\/publication\/242743911_The_Motorola_Evoke_QA4_A_Case_Study_in_Mobile_Virtualization\/links\/00b7d53acc2c9d970d000000.pdf. Gernot Heiser. 2009. The Motorola Evoke QA4: A Case Study in Mobile Virtualization. White paper. Open Kernel Labs. Retrieved from https:\/\/www.researchgate.net\/profile\/Gernot_Heiser\/publication\/242743911_The_Motorola_Evoke_QA4_A_Case_Study_in_Mobile_Virtualization\/links\/00b7d53acc2c9d970d000000.pdf."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/2465351.2465383"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/1851276.1851282"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.5555\/647055.715776"},{"key":"e_1_2_1_26_1","volume-title":"Proceedings of the 2nd Workshop on Programming Languages and Operating Systems (PLOS).","author":"Hohmuth Michael","year":"2005","unstructured":"Michael Hohmuth and Hendrik Tews . 2005 . The VFiasco approach for a verified operating system . In Proceedings of the 2nd Workshop on Programming Languages and Operating Systems (PLOS). Michael Hohmuth and Hendrik Tews. 2005. The VFiasco approach for a verified operating system. In Proceedings of the 2nd Workshop on Programming Languages and Operating Systems (PLOS)."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/HOTOS.1999.798399"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1145\/2560537"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1145\/1629575.1629596"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1145\/1519130.1519135"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1145\/2380356.2380376"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11390-005-0654-4"},{"key":"e_1_2_1_34_1","volume-title":"Wombat: A portable user-mode Linux for embedded systems. In 6th Linux.conf.au.","author":"Leslie Ben","year":"2005","unstructured":"Ben Leslie , Carl van Schaik , and Gernot Heiser . 2005 b. Wombat: A portable user-mode Linux for embedded systems. In 6th Linux.conf.au. Canberra . Ben Leslie, Carl van Schaik, and Gernot Heiser. 2005b. Wombat: A portable user-mode Linux for embedded systems. In 6th Linux.conf.au. Canberra."},{"key":"e_1_2_1_35_1","volume-title":"Proceedings of the 5th ACM Symposium on Operating Systems Principles. 132--140","author":"Levin Roy","unstructured":"Roy Levin , Ellis S. Cohen , William M. Corwin , Fred J. Pollack , and William A. Wulf . 1975. Policy\/mechanism separation in HYDRA . In Proceedings of the 5th ACM Symposium on Operating Systems Principles. 132--140 . Roy Levin, Ellis S. Cohen, William M. Corwin, Fred J. Pollack, and William A. Wulf. 1975. Policy\/mechanism separation in HYDRA. In Proceedings of the 5th ACM Symposium on Operating Systems Principles. 132--140."},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/168619.168633"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1109\/IWOOOS.1993.324932"},{"key":"e_1_2_1_38_1","volume-title":"Proceedings of the 15th ACM Symposium on Operating Systems Principles. 237--250","author":"Liedtke Jochen","year":"1995","unstructured":"Jochen Liedtke . 1995 . On μ-kernel construction . In Proceedings of the 15th ACM Symposium on Operating Systems Principles. 237--250 . Jochen Liedtke. 1995. On μ-kernel construction. In Proceedings of the 15th ACM Symposium on Operating Systems Principles. 237--250."},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/234215.234473"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/122120.122124"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/HOTOS.1997.595177"},{"key":"e_1_2_1_42_1","volume-title":"Proceedings of the 6th Workshop on Hot Topics in Operating Systems. IEEE, 73--79","author":"Liedtke Jochen","year":"1997","unstructured":"Jochen Liedtke , Nayeem Islam , and Trent Jaeger . 1997 b. Preventing denial-of-service attacks on a μ-kernel for WebOSes . In Proceedings of the 6th Workshop on Hot Topics in Operating Systems. IEEE, 73--79 . Jochen Liedtke, Nayeem Islam, and Trent Jaeger. 1997b. Preventing denial-of-service attacks on a μ-kernel for WebOSes. In Proceedings of the 6th Workshop on Hot Topics in Operating Systems. IEEE, 73--79."},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/800213.806537"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1145\/322017.322025"},{"key":"e_1_2_1_45_1","volume-title":"Proceedings of the Workshop on Mixed Criticality Systems. 9--14","author":"Lyons Anna","year":"2014","unstructured":"Anna Lyons and Gernot Heiser . 2014 . Mixed-criticality support in a high-assurance, general-purpose microkernel . In Proceedings of the Workshop on Mixed Criticality Systems. 9--14 . Anna Lyons and Gernot Heiser. 2014. Mixed-criticality support in a high-assurance, general-purpose microkernel. In Proceedings of the Workshop on Mixed Criticality Systems. 9--14."},{"key":"e_1_2_1_46_1","volume-title":"Proceedings of the Ottawa Linux Symposium.","author":"McKenney Paul E.","year":"2002","unstructured":"Paul E. McKenney , Dipankar Sarma , Andrea Arcangelli , Andi Kleen , Orran Krieger , and Rusty Russell . 2002 . Read copy update . In Proceedings of the Ottawa Linux Symposium. Paul E. McKenney, Dipankar Sarma, Andrea Arcangelli, Andi Kleen, Orran Krieger, and Rusty Russell. 2002. Read copy update. In Proceedings of the Ottawa Linux Symposium."},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1109\/SP.2013.35"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/800214.806541"},{"key":"e_1_2_1_50_1","volume-title":"A Physically-Addressed L4 Kernel. BE Thesis. School of Computer Science and Engineering","author":"Nourai Abi","unstructured":"Abi Nourai . 2005. A Physically-Addressed L4 Kernel. BE Thesis. School of Computer Science and Engineering , Sydney, Australia . Available from publications page at http:\/\/ssrg.nicta.com.au\/. Abi Nourai. 2005. A Physically-Addressed L4 Kernel. BE Thesis. School of Computer Science and Engineering, Sydney, Australia. Available from publications page at http:\/\/ssrg.nicta.com.au\/."},{"key":"e_1_2_1_51_1","volume-title":"Proceedings of the 1990 Summer USENIX Technical Conference. 247--56","author":"Ousterhout John K.","year":"1990","unstructured":"John K. Ousterhout . 1990 . Why aren\u2019t operating systems getting faster as fast as hardware? In Proceedings of the 1990 Summer USENIX Technical Conference. 247--56 . John K. Ousterhout. 1990. Why aren\u2019t operating systems getting faster as fast as hardware? In Proceedings of the 1990 Summer USENIX Technical Conference. 247--56."},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/2797022.2797042"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.5555\/1863181.1863182"},{"key":"e_1_2_1_54_1","volume-title":"Machine-independent virtual memory management for paged uniprocessor and multiprocessor architectures","author":"Rashid Richard","year":"1988","unstructured":"Richard Rashid , Avadis Tevanian , Jr., Michael Young , David Golub , Robert Baron , David Black , William J. Bolosky , and Jonathan Chew . 1988. Machine-independent virtual memory management for paged uniprocessor and multiprocessor architectures . IEEE Trans. Comput. C- 37 ( 1988 ), 896--908. Richard Rashid, Avadis Tevanian, Jr., Michael Young, David Golub, Robert Baron, David Black, William J. Bolosky, and Jonathan Chew. 1988. Machine-independent virtual memory management for paged uniprocessor and multiprocessor architectures. IEEE Trans. Comput. C-37 (1988), 896--908."},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-22863-6_24"},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1109\/SECPRI.2003.1199341"},{"key":"e_1_2_1_57_1","volume-title":"Proceedings of the 17th ACM Symposium on Operating Systems Principles. US, 170--185","author":"Shapiro Jonathan S.","unstructured":"Jonathan S. Shapiro , Jonathan M. Smith , and David J. Farber . 1999. EROS: A fast capability system . In Proceedings of the 17th ACM Symposium on Operating Systems Principles. US, 170--185 . Jonathan S. Shapiro, Jonathan M. Smith, and David J. Farber. 1999. EROS: A fast capability system. In Proceedings of the 17th ACM Symposium on Operating Systems Principles. US, 170--185."},{"key":"e_1_2_1_58_1","volume-title":"Proceedings of the USENIX Symposium on Operating Systems Design and Implementation.","author":"Soares Livio","year":"2010","unstructured":"Livio Soares and Michael Stumm . 2010 . FlexSC: Flexible system call scheduling with exception-less system calls . In Proceedings of the USENIX Symposium on Operating Systems Design and Implementation. Livio Soares and Michael Stumm. 2010. FlexSC: Flexible system call scheduling with exception-less system calls. In Proceedings of the USENIX Symposium on Operating Systems Design and Implementation."},{"key":"e_1_2_1_59_1","unstructured":"Udo Steinberg. 2013. Personal communication. Udo Steinberg. 2013. Personal communication."},{"key":"e_1_2_1_60_1","doi-asserted-by":"publisher","DOI":"10.1145\/1755913.1755935"},{"key":"e_1_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1109\/ECRTS.2005.16"},{"key":"e_1_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/2795228"},{"key":"e_1_2_1_64_1","volume-title":"2nd Workshop on Systems for Future Multi-core Architectures","author":"von Tessin Michael","year":"2012","unstructured":"Michael von Tessin . 2012 . The clustered multikernel: An approach to formal verification of multiprocessor OS kernels . In 2nd Workshop on Systems for Future Multi-core Architectures . Bern, Switzerland, 1--6. Michael von Tessin. 2012. The clustered multikernel: An approach to formal verification of multiprocessor OS kernels. In 2nd Workshop on Systems for Future Multi-core Architectures. Bern, Switzerland, 1--6."},{"key":"e_1_2_1_66_1","volume-title":"Single Kernel Stack L4. BE Thesis. School of Computer Science and Engineering","author":"Warton Matthew","unstructured":"Matthew Warton . 2005. Single Kernel Stack L4. BE Thesis. School of Computer Science and Engineering , Sydney, Australia . Matthew Warton. 2005. Single Kernel Stack L4. BE Thesis. School of Computer Science and Engineering, Sydney, Australia."},{"key":"e_1_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/2018396.2018419"}],"container-title":["ACM Transactions on Computer Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2893177","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,12,31]],"date-time":"2022-12-31T10:47:27Z","timestamp":1672483647000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2893177"}},"subtitle":["The Lessons from 20 Years of Research and Deployment"],"short-title":[],"issued":{"date-parts":[[2016,4,6]]},"references-count":63,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2016,4,6]]}},"alternative-id":["10.1145\/2893177"],"URL":"https:\/\/doi.org\/10.1145\/2893177","relation":{},"ISSN":["0734-2071","1557-7333"],"issn-type":[{"value":"0734-2071","type":"print"},{"value":"1557-7333","type":"electronic"}],"subject":[],"published":{"date-parts":[[2016,4,6]]},"assertion":[{"value":"2015-09-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-11-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2016-04-06","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}