Already most types of software are represented in the cloud by alternative or additional versions of their desktop equivalents but we are yet to see a fully functional cloud-based OS. For instance, systems such as Java were developed to allow applications to run in a web browser irrespective of the computer or operating system on which that browser was running.