• Save
Os Geisingerupdated
Upcoming SlideShare
Loading in...5

Os Geisingerupdated






Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Os Geisingerupdated Os Geisingerupdated Presentation Transcript

  • LINA Cross-platform Linux Binaries OSCON 2007
  • Introducing LINA
    • With LINA, Linux binaries run with native look and feel on Windows, Mac OS X, and all flavors of Linux and UNIX.
  • 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.
  • LINA in One Picture A Picture of LINA
  • Selected Features
    • Breaking it down
    • With LINA Linux applications run cross-platform
    • LINA is integrated with the underlying OS
    • LINA maps system resources
    • Applications run securely on LINA
    • LINA allows simple installation of complex packages
  • Cross-platform Linux Applications
    • Linux applications run without recompiling on Windows, Mac OS X and all flavors of UNIX
  • Cross-platform Linux Applications
    • Benefits
    • Run Linux applications on any operating system
    • Developers write and compile these applications in an ordinary Linux environment
  • Integrated with the Underlying OS
    • LINA silently and invisibly allows Linux applications run with native look and feel on Windows, Mac OS X and all flavors of UNIX
  • Integrated with the Underlying OS
    • Benefits
    • Linux applications look and feel like native application
    • The Linux command line is integrated into the host shell
    • Native integration with no effort for the developer
  • 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
    • LINA maps host resources to their Linux counterparts rather than relying on system call mapping
  • Resource Mapping
    • Benefits
    • LINA apps run as expected on all operating systems
    • Resources of the underlying operating system are mapped to Linux counterparts
    • Developers access these resources as Linux resources
  • Applications Run Securely
    • 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
  • Applications Run Securely
    • Benefits
    • Applications running on LINA can't affect each other
    • Applications running on LINA can't affect the host without permission
  • Simple Package Installation
    • LINA includes an installer that allows developers to package applications for instant use on any platform
  • Simple Package Installation
    • Benefits
    • Users install LINA applications with minimal effort
    • Developers easily create application packages using install tools
    • Packages are of arbitrary complexity
  • PART TWO - Where LINA's Going
  • Project Status
    • LINA Today
    • LINA Runtime Environment
    • LINA Tools
    • LINA Build System
  • The Road to 1.0
    • The next six months
    • Enables the use of GTK and QT GUI libraries
    • The LINA installer
    • More access to host resources
  • 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 - 2000s Now Adoption Example
  • 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 WEB SERVER DATABASE WEB SERVICE
  • The Web Service import mynetwork.mywebservice import mynetwork.databaseprovider MyWebService::MyWebService() { Type<String> addressName = “localhost”; databaseProvider.setAddress(addressName); databaseProvider.setPort(3306); databaseProvider.setDatabase(“postgresql”); }
  • 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(); }
  • The Network import mynetwork.mynetwork” import mynetwork/mydatabaseserver MyNetwork::MyNetwork() { os1 = new MyDatabaseServer() os1.setIPAddress(“”); os2 = new OperatingSystem() os1.enableDHCP(); os1.setIPAddress(“”); this.addSimpleServer(os1) this.addSimpleServer(os2) }
  • 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 processes My Program
  • The Ground Floor
    • Universal Open Source Binaries
    • A Cross-Platform Virtual OS Programming Language
    • The Binary is a Network
    • Portable Dynamic Language modules
  • PART THREE What LINA means for Linux
  • LINA - the Future of Linux Everyone who installs LINA installs Linux
  • LINA - the Future of Linux
    • Whenever a user installs a Linux application packaged for LINA the user gets Linux
    • Every great Linux application that you package for LINA generates new Linux users
  • LINA – open source everywhere openlina.org