A truly portable application is one which can be run on multiple operating systems spanning diverse architectures without recompilation of code. One language which creates truly portable applications is Sun Microsystem's Java language. Programs created using Java can be run under any operating system - be it Mac OSX, Windows, Linux, OS/2 and so on. This is made possible because programs compiled using Java are not binaries in the original sense. When you compile a Java program, you get byte interpreted code. And it is the duty of the Java virtual machine which is installed in the parent OS to interpret the code to machine language which the OS and the architecture can understand.
Now there has been a new development for Linux. A startup company in Alameda, California has developed a technology called LINA (Not an acronym) which allows one to compile Linux applications to make them run in any operating system - be it Windows, Linux or Mac OSX. The idea is to have a virtual machine in similar lines of Java virtual machine which will be released as native builds for the respective operating systems. Then developers and independent software vendors can build Linux applications on top of LINA that run on all operating systems with native look and feel.
The company plans to dual license the technology, with GPL ver 2 for non-commercial uses and a separate license for commercial uses.
Salient features of LINA
- Applications written for LINA are distributed as Linux executables guaranteed to run on all machines, Linux and otherwise. So you can have say, one Firefox build which runs flawlessly in Windows, Linux, Mac OSX or any other operating system.
- Portable LINA applications enable users at home and in the enterprise to use Open Source applications on their existing operating systems.
- With LINA installed, programs written for Linux will run securely, regardless of changes made to the underlying operating system.
- Developers can write the code once and run their applications anywhere.
You can get an idea of running LINA applications by viewing this screencast which demonstrates how a Linux native build of links web browser packaged using LINA is run in Windows.The company has also released a white paper (PDF) describing the LINA technology. While some might see LINA as similar to what Sun Microsystems has accomplished with Java language, it is notably different. In the case of Java, it is required that programmers sit down and start developing programs using this language. But as far as LINA is concerned, the applications are already there in the form of 10s of 1000s of open source and Free Software programs for Linux. And it is only a matter of re-compiling the source of these programs to run using LINA virtual machine.
While many would consider this new project quite exiting (who wouldn't want a truly portable copy of their favorite Linux application, right?), there has been a somewhat similar project in existence for some time now which goes by the name Cooperative Linux. Short named as coLinux, it is a port of the Linux kernel that allows it to run cooperatively alongside another operating system on a single machine.
No comments:
Post a Comment