LINA Cross-platform Linux Binaries OSCON 2007
Introducing LINA <ul><li>With LINA, Linux binaries run with native look and feel on Windows, Mac OS X, and all flavors of ...
PART ONE What LINA Is
LINA in One Sentence LINA is a full-featured Linux virtual operating system that is slim and fast, has no GUI of its own, ...
LINA in One Picture A Picture of LINA
Selected Features <ul><li>Breaking it down </li></ul><ul><li>With LINA Linux applications run cross-platform </li></ul><ul...
Cross-platform Linux Applications <ul><li>Linux applications run without recompiling on Windows, Mac OS X and all flavors ...
Cross-platform Linux Applications <ul><li>Benefits </li></ul><ul><li>Run Linux applications on any operating system </li><...
Integrated with the Underlying OS <ul><li>LINA silently and invisibly allows Linux applications run with native look and f...
Integrated with the Underlying OS <ul><li>Benefits </li></ul><ul><li>Linux applications look and feel like native applicat...
Integrated with the Underlying OS A LINA App running on Linux
Integrated with the Underlying OS The same LINA App running on Mac OS X
Integrated with the Underlying OS The same LINA App running on Windows XP
Resource Mapping <ul><li>LINA maps host resources to their Linux counterparts rather than relying on system call mapping <...
Resource Mapping <ul><li>Benefits </li></ul><ul><li>LINA apps run as expected on all operating systems </li></ul><ul><li>R...
Applications Run Securely <ul><li>Each LINA application runs in its own partition of LINA's Linux kernel, isolating it at ...
Applications Run Securely <ul><li>Benefits </li></ul><ul><li>Applications running on LINA can't affect each other </li></u...
Simple Package Installation <ul><li>LINA includes an installer that allows developers to package applications for instant ...
Simple Package Installation <ul><li>Benefits </li></ul><ul><li>Users install LINA applications with minimal effort </li></...
PART TWO - Where LINA's Going
Project Status <ul><li>LINA Today </li></ul><ul><li>LINA Runtime Environment </li></ul><ul><li>LINA Tools </li></ul><ul><l...
The Road to 1.0 <ul><li>The next six months </li></ul><ul><li>Enables the use of GTK and QT GUI libraries  </li></ul><ul><...
A Peek into the Future LINA - the First  Cross-Platform Virtual Operating System
Platform Evolution Portability Uniform APIs C JAVASCRIPT LINA Uniform Runtime Uniform Environment 1970s - 1990s 1990s - 20...
Not a Uniform Environment Apache App1 App2 MySQL Network Stack Lib1 Lib2 ONE  BINARY .access
Example of Uniform Integration Network Stack /Users/Anne /home/Anne C:Documents~Anne Device .access
Uniform Integration Apache App1 App2 MySQL . access Network Stack Lib1 Lib2 WINDOWS XP
Higher Abstractions A uniform environment enables higher abstractions to be portable RESOURCES KERNEL NETWORK PROGRAMS
Internet Application Example Program Program Program 208.75.23.10 10.0.1.28 10.0.1.100 WEB SERVER 10.0.1.156 DATABASE WEB ...
The Web Service import mynetwork.mywebservice import mynetwork.databaseprovider MyWebService::MyWebService() { Type<String...
The Operating Systems import mynetwork.servicemanager import mynetwork.mydatabaseserver import mynetwork.mydatabaseprogram...
The Network import mynetwork.mynetwork” import mynetwork/mydatabaseserver MyNetwork::MyNetwork() { os1 = new MyDatabaseSer...
The Network import mynetwork.mynetwork” int main(int argc, char *argv) { MyNetwork network; network->start(); return 0; }
Compiling the Program My Program #include int main() dfsdfa sdfsaf My Network VOS Compiler
Beyond the Virtual Machine A virtual operating system language compiles programs into networks, operating systems, and pro...
The Ground Floor <ul><li>Universal Open Source Binaries </li></ul><ul><li>A Cross-Platform Virtual OS Programming Language...
PART THREE What LINA means for Linux
LINA - the Future of Linux Everyone who installs LINA installs Linux
LINA - the Future of Linux <ul><li>Whenever a user installs a Linux application packaged for LINA the user gets Linux   </...
LINA – open source everywhere openlina.org
Upcoming SlideShare
Loading in …5
×

Os Geisingerupdated

558 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
558
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Os Geisingerupdated

    1. 1. LINA Cross-platform Linux Binaries OSCON 2007
    2. 2. Introducing LINA <ul><li>With LINA, Linux binaries run with native look and feel on Windows, Mac OS X, and all flavors of Linux and UNIX. </li></ul>
    3. 3. PART ONE What LINA Is
    4. 4. LINA in One Sentence LINA is a full-featured Linux virtual operating system that is slim and fast, has no GUI of its own, accesses the libraries of the underlying OS, utilizes the host shell and file system, is robustly integrated through kernel resource mapping, allows apps to run securely on the partitioned kernel, and includes a means for simple installation of complex packages.
    5. 5. LINA in One Picture A Picture of LINA
    6. 6. Selected Features <ul><li>Breaking it down </li></ul><ul><li>With LINA Linux applications run cross-platform </li></ul><ul><li>LINA is integrated with the underlying OS </li></ul><ul><li>LINA maps system resources </li></ul><ul><li>Applications run securely on LINA </li></ul><ul><li>LINA allows simple installation of complex packages </li></ul>
    7. 7. Cross-platform Linux Applications <ul><li>Linux applications run without recompiling on Windows, Mac OS X and all flavors of UNIX </li></ul>
    8. 8. Cross-platform Linux Applications <ul><li>Benefits </li></ul><ul><li>Run Linux applications on any operating system </li></ul><ul><li>Developers write and compile these applications in an ordinary Linux environment </li></ul>
    9. 9. Integrated with the Underlying OS <ul><li>LINA silently and invisibly allows Linux applications run with native look and feel on Windows, Mac OS X and all flavors of UNIX </li></ul>
    10. 10. Integrated with the Underlying OS <ul><li>Benefits </li></ul><ul><li>Linux applications look and feel like native application </li></ul><ul><li>The Linux command line is integrated into the host shell </li></ul><ul><li>Native integration with no effort for the developer </li></ul>
    11. 11. Integrated with the Underlying OS A LINA App running on Linux
    12. 12. Integrated with the Underlying OS The same LINA App running on Mac OS X
    13. 13. Integrated with the Underlying OS The same LINA App running on Windows XP
    14. 14. Resource Mapping <ul><li>LINA maps host resources to their Linux counterparts rather than relying on system call mapping </li></ul>
    15. 15. Resource Mapping <ul><li>Benefits </li></ul><ul><li>LINA apps run as expected on all operating systems </li></ul><ul><li>Resources of the underlying operating system are mapped to Linux counterparts </li></ul><ul><li>Developers access these resources as Linux resources </li></ul>
    16. 16. Applications Run Securely <ul><li>Each LINA application runs in its own partition of LINA's Linux kernel, isolating it at run time from other applications and from the host </li></ul>
    17. 17. Applications Run Securely <ul><li>Benefits </li></ul><ul><li>Applications running on LINA can't affect each other </li></ul><ul><li>Applications running on LINA can't affect the host without permission </li></ul>
    18. 18. Simple Package Installation <ul><li>LINA includes an installer that allows developers to package applications for instant use on any platform </li></ul>
    19. 19. Simple Package Installation <ul><li>Benefits </li></ul><ul><li>Users install LINA applications with minimal effort </li></ul><ul><li>Developers easily create application packages using install tools </li></ul><ul><li>Packages are of arbitrary complexity </li></ul>
    20. 20. PART TWO - Where LINA's Going
    21. 21. Project Status <ul><li>LINA Today </li></ul><ul><li>LINA Runtime Environment </li></ul><ul><li>LINA Tools </li></ul><ul><li>LINA Build System </li></ul>
    22. 22. The Road to 1.0 <ul><li>The next six months </li></ul><ul><li>Enables the use of GTK and QT GUI libraries </li></ul><ul><li>The LINA installer </li></ul><ul><li>More access to host resources </li></ul>
    23. 23. A Peek into the Future LINA - the First Cross-Platform Virtual Operating System
    24. 24. Platform Evolution Portability Uniform APIs C JAVASCRIPT LINA Uniform Runtime Uniform Environment 1970s - 1990s 1990s - 2000s Now Adoption Example
    25. 25. Not a Uniform Environment Apache App1 App2 MySQL Network Stack Lib1 Lib2 ONE BINARY .access
    26. 26. Example of Uniform Integration Network Stack /Users/Anne /home/Anne C:Documents~Anne Device .access
    27. 27. Uniform Integration Apache App1 App2 MySQL . access Network Stack Lib1 Lib2 WINDOWS XP
    28. 28. Higher Abstractions A uniform environment enables higher abstractions to be portable RESOURCES KERNEL NETWORK PROGRAMS
    29. 29. Internet Application Example Program Program Program 208.75.23.10 10.0.1.28 10.0.1.100 WEB SERVER 10.0.1.156 DATABASE WEB SERVICE
    30. 30. The Web Service import mynetwork.mywebservice import mynetwork.databaseprovider MyWebService::MyWebService() { Type<String> addressName = “localhost”; databaseProvider.setAddress(addressName); databaseProvider.setPort(3306); databaseProvider.setDatabase(“postgresql”); }
    31. 31. The Operating Systems import mynetwork.servicemanager import mynetwork.mydatabaseserver import mynetwork.mydatabaseprogram MyDatabaseServer::MyDatabaseServer() { Type<MyServerProgram> databaseProgram; Type<Application> postgres; postgres = ServiceManager::find(“Postgres”); postgres.setPassword(“postgres”, “hywsdcs”); postgres.start(); databaseProgram.start(); }
    32. 32. The Network import mynetwork.mynetwork” import mynetwork/mydatabaseserver MyNetwork::MyNetwork() { os1 = new MyDatabaseServer() os1.setIPAddress(“10.0.2.2”); os2 = new OperatingSystem() os1.enableDHCP(); os1.setIPAddress(“10.0.2.3”); this.addSimpleServer(os1) this.addSimpleServer(os2) }
    33. 33. The Network import mynetwork.mynetwork” int main(int argc, char *argv) { MyNetwork network; network->start(); return 0; }
    34. 34. Compiling the Program My Program #include int main() dfsdfa sdfsaf My Network VOS Compiler
    35. 35. Beyond the Virtual Machine A virtual operating system language compiles programs into networks, operating systems, and processes My Program
    36. 36. The Ground Floor <ul><li>Universal Open Source Binaries </li></ul><ul><li>A Cross-Platform Virtual OS Programming Language </li></ul><ul><li>The Binary is a Network </li></ul><ul><li>Portable Dynamic Language modules </li></ul>
    37. 37. PART THREE What LINA means for Linux
    38. 38. LINA - the Future of Linux Everyone who installs LINA installs Linux
    39. 39. LINA - the Future of Linux <ul><li>Whenever a user installs a Linux application packaged for LINA the user gets Linux </li></ul><ul><li>Every great Linux application that you package for LINA generates new Linux users </li></ul>
    40. 40. LINA – open source everywhere openlina.org

    ×