Jump to content
 







Main menu
   


Navigation  



Main page
Contents
Current events
Random article
About Wikipedia
Contact us
Donate
 




Contribute  



Help
Learn to edit
Community portal
Recent changes
Upload file
 








Search  

































Create account

Log in
 









Create account
 Log in
 




Pages for logged out editors learn more  



Contributions
Talk
 



















Contents

   



(Top)
 


1 Sandboxing  





2 Integration with Swift  





3 History  





4 See also  





5 References  





6 External links  














ZeroVM







 

Edit links
 









Article
Talk
 

















Read
Edit
View history
 








Tools
   


Actions  



Read
Edit
View history
 




General  



What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Cite this page
Get shortened URL
Download QR code
Wikidata item
 




Print/export  



Download as PDF
Printable version
 
















Appearance
   

 






From Wikipedia, the free encyclopedia
 


ZeroVM
Original author(s)Camuel Gilyadov, Constantine Peresypkin & Dmitri Bortok
Developer(s)LiteStack which was acquired by Rackspace
Stable release

1.0[1] Edit this on Wikidata / 20 March 2014; 10 years ago (20 March 2014)

Repository
Written inC, assembly
Operating systemLinux
Platformx86-64
TypeApplication virtualization
LicenseApache License 2.0
Websitezerovm.org

ZeroVM is an open source light-weight virtualization and sandboxing technology. It virtualizes a single process using the Google Native Client platform. Since only a single process is virtualized (instead of a full operating system), the startup overhead is in the order of 5 ms.[2][third-party source needed]

Sandboxing[edit]

ZeroVM creates a sandbox around a single process,[3] using technology based on Google Native Client (NaCl). The sandbox ensures that the application executed cannot access data in the host operating system, so it is safe to execute untrusted code. The programs executed in ZeroVM must first be cross-compiled to the NaCl platform. ZeroVM can only execute NaCl code compiled for the x86-64 platform, not the portable Native Client (PNaCl) format.

Code executed in ZeroVM cannot call normal system calls and initially cannot interact with the host environment. All communication with the outside world takes place over channels, which must be declared before the program starts. Outside the sandbox, a channel can be connected to a local file, to a pipe, or to another ZeroVM instance.[4] Inside the sandbox, the program sees the channel as a file descriptor. The sandboxed program can read/write data from/to the channel, but does not know where the channel is connected in the host.

Programs compiled for ZeroVM can optionally use the ZeroVM Runtime library called ZRT. This library aims to provide the program with a POSIX environment.[5] It does this by replacing parts of the C standard library. In particular, ZRT replaces C file input/output functions such as fopen and opendir with versions that operate on an in-memory filesystem. The root filesystem is provided as a tarball. This allows a program to "see" a normal Unix environment.

The ZRT also replaces C date and time functions such as time to give programs a fixed and deterministic environment. With fixed inputs, every execution is guaranteed to give the same result. Even non-functional programs become deterministic in this restricted environment.[6] This makes programs easier to debug since their behavior is fixed.

Integration with Swift[edit]

ZeroVM has been integrated with Swift, the distributed object storage component of OpenStack.[7] When the ZeroCloud middleware is installed into Swift, a client can make a request to Swift containing a ZeroVM program. The program is then executed directly on the storage nodes. This means that the program has direct access to the data.

History[edit]

ZeroVM was developed by LiteStack, an Israeli startup. The first commit in the zerovm Git repository was added in November 2011.[8] LiteStack was bought by Rackspace in October 2013.[2][9][10] ZeroVM participated in Techstars Cloud 2013 incubator program and got $500,000 in seed funding.[11][12] The first ZeroVM Design Summit was held in January 2014 at the University of Texas at San Antonio.[13]

See also[edit]

References[edit]

  1. ^ "Release 1.0". 20 March 2014. Retrieved 23 July 2018.
  • ^ a b Lindberg, Van. "ZeroVM: Smaller, Lighter, Faster". Rackspace Blog. Archived from the original on 19 September 2015. Retrieved 14 April 2014.
  • ^ Yegulalp, Serdar (23 October 2013). "ZeroVM virtualizes apps, not machines". InfoWorld. Retrieved 14 April 2014.
  • ^ "ZeroVM Channels". GitHub. Retrieved 14 April 2014.
  • ^ "ZRT Readme". GitHub. Retrieved 14 April 2014.
  • ^ "ZeroVM Architecture". Retrieved 14 April 2014.
  • ^ "ZeroCloud". GitHub. Retrieved 14 April 2014.
  • ^ Gilyadov, Camuel. "First Commit". GitHub. Retrieved 18 April 2014.
  • ^ Shamah, David (October 24, 2013). "Rackspace picks up ZeroVM's 'built-for-cloud' hypervisor". ZDNet. Retrieved 14 April 2014.
  • ^ Clark, Jack (25 October 2013). "Rackspace goes to Israel, picks up slick new weapon for cloud wars". The Register. Retrieved 14 April 2014.
  • ^ Idan, Henn (3 November 2013). "Israeli ZeroVM acquired by RackSpace". Geektime. Retrieved 14 April 2014.
  • ^ Lorek, Laura (19 April 2013). "ZeroVM Creates Software for Cloud Computing". Silicon Hills News. Retrieved 14 April 2014.
  • ^ Rackspace. "ZeroVM Design Summit". YouTube. Retrieved 18 April 2014.
  • External links[edit]


    Retrieved from "https://en.wikipedia.org/w/index.php?title=ZeroVM&oldid=1159216669"

    Categories: 
    Free virtualization software
    Virtualization software for Linux
    Free software for cloud computing
    Free software projects
    Operating system security
    Hidden categories: 
    All articles lacking reliable references
    Articles lacking reliable references from July 2015
     



    This page was last edited on 9 June 2023, at 00:43 (UTC).

    Text is available under the Creative Commons Attribution-ShareAlike License 4.0; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Mobile view



    Wikimedia Foundation
    Powered by MediaWiki