SlideShare uma empresa Scribd logo
1 de 11
Baixar para ler offline
FemtoLinux

Making real-time Linux applications a reality


             www.femtolinux.com

             info@femtolinux.com




 FemtoLinux. Making real-time Linux apps a reality.
FemtoLinux in a Nutshell
●   Allows execution of applications in kernel mode
●   Applications can access hardware and kernel resources
●   System call overhead is eliminated
    ●   Huge performance and latency improvement
●   Effortless porting from legacy RTOS
●   Geared towards real-time and embedded systems
●   Supports ARM,MIPS and PowerPC architectures
●   Fully working system




         FemtoLinux. Making real-time Linux apps a reality.
Features
●   Allows to run regular Linux processes in kernel
    mode
    ●   Some processes can run in kernel and some in user mode
    ●   The same process can run in either kernel or user mode
●   No application modifications are required
●   All user mode libraries are available
●   C, C++ and all other languages are supported



        FemtoLinux. Making real-time Linux apps a reality.
Features, continued
●   FemtoLinux applications have no restrictions
●   Can access kernel resources
    ●   System call overhead reduces to a function call
    ●   Can read, write and allocate kernel memory
●   Can access hardware resources
    ●   Access HW, including CPU, registers
    ●   Enable/disable interrupts
    ●   Etc...


        FemtoLinux. Making real-time Linux apps a reality.
FemtoLinux vs. VxWorks 5.x/6.x
●   VxWorks 5.x has flat memory model
    ●   Tasks communicate directly with kernel
    ●   Low latency and low system call overhead
●   VxWorks 6.x adds (optional) memory protection
    ●   Process based programming model
    ●   Memory protection
    ●   Significant system call overhead
●   FemtoLinux adds (optional) flat memory model to Linux
    ●   FemoLinux processes run in kernel mode
    ●   Similar to VxWorks tasks


         FemtoLinux. Making real-time Linux apps a reality.
FemtoLinux can be used to
●   Significantly improve embedded application
    performance
●   Improve embedded application latency
●   Easily port RTOS applications to Linux
●   Create zero-copy networking applications
●   Much more!




      FemtoLinux. Making real-time Linux apps a reality.
Porting From RTOS to plain Linux
●   RTOS applications tend to be monolithic
    ●   No separation between driver and application
●   Porting to RTOS from Linux requires
    architectural changes, not just API adaptation
    ●   Huge development effort
    ●   Kernel-user communications overhead
    ●   Hard to support both Linux and RTOS
    ●   Risk


        FemtoLinux. Making real-time Linux apps a reality.
Porting from RTOS to FemtoLinux
●   Similar to porting from one RTOS to another
●   No architectural changes
    ●   Faster time-to-marker
    ●   Smaller risk
●   The same code base can run on Linux & RTOS
    ●   With thin OS abstraction layer
●   Less support and QA issues



        FemtoLinux. Making real-time Linux apps a reality.
Benchmarks
●   Benchmarks performed on ARM9 based system
●   20% system call latency improvement
    ●   Measured for frequently used gettimeofday(2) call
●   30% networking performance improvement
    ●   Measured using standard iperf without any modifications
    ●   Not including optional memory copying optimizations
●   Up to 200% improvement applications that frequenyl
    copy memory to/from kernel (most networking apps)
    ●   Requires minor changes to application


        FemtoLinux. Making real-time Linux apps a reality.
FemtoLinux Delivery
●   Software                      ●   Services
    ●   Modified Linux kernel         ●   FemtoLinux porting to
        (or kernel patches)               client HW
    ●   Modified eglibc library       ●   Development
        (or patches)                      environment
    ●   Development                       adaptation to client
        environment – full                needs
        cross compiler                ●   Application porting to
        toolchain                         FemtoLinux
                                      ●   Training

        FemtoLinux. Making real-time Linux apps a reality.
For more information visit our web site at
http://www.femtolinux.com or contact us by email
             at info@femtolinux.com




   FemtoLinux. Making real-time Linux apps a reality.

Mais conteúdo relacionado

Mais procurados

Working with FME in an Agile Software Development Lifecycle
Working with FME in an Agile Software Development LifecycleWorking with FME in an Agile Software Development Lifecycle
Working with FME in an Agile Software Development LifecycleSafe Software
 
Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...
Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...
Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...Anne Nicolas
 
Overcoming software development challenges by using an integrated software fr...
Overcoming software development challenges by using an integrated software fr...Overcoming software development challenges by using an integrated software fr...
Overcoming software development challenges by using an integrated software fr...Design World
 
Version Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part IVersion Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part ISergey Aganezov
 
Building a Small DC
Building a Small DCBuilding a Small DC
Building a Small DCAPNIC
 
.NET Core Blimey! (dotnetsheff Jan 2016)
.NET Core Blimey! (dotnetsheff Jan 2016).NET Core Blimey! (dotnetsheff Jan 2016)
.NET Core Blimey! (dotnetsheff Jan 2016)citizenmatt
 
Clang compiler `
Clang compiler `Clang compiler `
Clang compiler `Rabin BK
 
Parallel language and compiler
Parallel language and compilerParallel language and compiler
Parallel language and compilerSVijaylakshmi
 
Flyway _ A Database Version Management Tool
Flyway _ A Database Version Management ToolFlyway _ A Database Version Management Tool
Flyway _ A Database Version Management ToolKnoldus Inc.
 
Using Jenkins for jobs scheduling
Using Jenkins for jobs scheduling  Using Jenkins for jobs scheduling
Using Jenkins for jobs scheduling Irek Romaniuk
 
A Science Project: Swift Serial Chat
A Science Project: Swift Serial ChatA Science Project: Swift Serial Chat
A Science Project: Swift Serial Chatyeokm1
 
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...linuxlab_conf
 

Mais procurados (17)

Working with FME in an Agile Software Development Lifecycle
Working with FME in an Agile Software Development LifecycleWorking with FME in an Agile Software Development Lifecycle
Working with FME in an Agile Software Development Lifecycle
 
JIT Compiler
JIT CompilerJIT Compiler
JIT Compiler
 
Vm final
Vm finalVm final
Vm final
 
Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...
Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...
Embedded Recipes 2017 - An easy-to-install real world embedded Linux distribu...
 
Overcoming software development challenges by using an integrated software fr...
Overcoming software development challenges by using an integrated software fr...Overcoming software development challenges by using an integrated software fr...
Overcoming software development challenges by using an integrated software fr...
 
Version Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part IVersion Control Systems -- Git -- Part I
Version Control Systems -- Git -- Part I
 
Building a Small DC
Building a Small DCBuilding a Small DC
Building a Small DC
 
.NET Core Blimey! (dotnetsheff Jan 2016)
.NET Core Blimey! (dotnetsheff Jan 2016).NET Core Blimey! (dotnetsheff Jan 2016)
.NET Core Blimey! (dotnetsheff Jan 2016)
 
Clang compiler `
Clang compiler `Clang compiler `
Clang compiler `
 
LWdatasheet
LWdatasheetLWdatasheet
LWdatasheet
 
Parallel language and compiler
Parallel language and compilerParallel language and compiler
Parallel language and compiler
 
Flyway _ A Database Version Management Tool
Flyway _ A Database Version Management ToolFlyway _ A Database Version Management Tool
Flyway _ A Database Version Management Tool
 
virtualization
virtualizationvirtualization
virtualization
 
Using Jenkins for jobs scheduling
Using Jenkins for jobs scheduling  Using Jenkins for jobs scheduling
Using Jenkins for jobs scheduling
 
Dot net
Dot netDot net
Dot net
 
A Science Project: Swift Serial Chat
A Science Project: Swift Serial ChatA Science Project: Swift Serial Chat
A Science Project: Swift Serial Chat
 
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
Luca Cipriani - Control your Embedded Linux remotely by using MQTT and a web ...
 

Semelhante a FemtoLinux Introduction

ERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsChristian Charreyre
 
Docker Online Meetup #31: Unikernels
Docker Online Meetup #31: UnikernelsDocker Online Meetup #31: Unikernels
Docker Online Meetup #31: UnikernelsDocker, Inc.
 
Build and deploy scientific Python Applications
Build and deploy scientific Python Applications  Build and deploy scientific Python Applications
Build and deploy scientific Python Applications Ramakrishna Reddy
 
Kostas Tzoumas - Apache Flink®: State of the Union and What's Next
Kostas Tzoumas - Apache Flink®: State of the Union and What's NextKostas Tzoumas - Apache Flink®: State of the Union and What's Next
Kostas Tzoumas - Apache Flink®: State of the Union and What's NextVerverica
 
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...ICS
 
Python quick guide1
Python quick guide1Python quick guide1
Python quick guide1Kanchilug
 
It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.
It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.
It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.All Things Open
 
Raspberry Pi - Lecture 1 Introduction
Raspberry Pi - Lecture 1 IntroductionRaspberry Pi - Lecture 1 Introduction
Raspberry Pi - Lecture 1 IntroductionMohamed Abdallah
 
Introduction To Flink
Introduction To FlinkIntroduction To Flink
Introduction To FlinkKnoldus Inc.
 
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...Codemotion
 
1.1.1.Introduction.pdf
1.1.1.Introduction.pdf1.1.1.Introduction.pdf
1.1.1.Introduction.pdfbemnitekalegn
 
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...Paris Open Source Summit
 
Modern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - BerlinModern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - BerlinDjalal Harouni
 
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.Idit Levine
 
Cigna Innovation Summit
Cigna Innovation SummitCigna Innovation Summit
Cigna Innovation SummitIdit Levine
 
Inria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoT
Inria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoTInria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoT
Inria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoTStéphanie Roger
 

Semelhante a FemtoLinux Introduction (20)

ERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projects
 
Docker Online Meetup #31: Unikernels
Docker Online Meetup #31: UnikernelsDocker Online Meetup #31: Unikernels
Docker Online Meetup #31: Unikernels
 
EOS
EOSEOS
EOS
 
RT linux
RT linuxRT linux
RT linux
 
Linux-Internals-and-Networking
Linux-Internals-and-NetworkingLinux-Internals-and-Networking
Linux-Internals-and-Networking
 
Build and deploy scientific Python Applications
Build and deploy scientific Python Applications  Build and deploy scientific Python Applications
Build and deploy scientific Python Applications
 
Kostas Tzoumas - Apache Flink®: State of the Union and What's Next
Kostas Tzoumas - Apache Flink®: State of the Union and What's NextKostas Tzoumas - Apache Flink®: State of the Union and What's Next
Kostas Tzoumas - Apache Flink®: State of the Union and What's Next
 
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
Software Update Mechanisms: Selecting the Best Solutin for Your Embedded Linu...
 
Python quick guide1
Python quick guide1Python quick guide1
Python quick guide1
 
Intro to linux
Intro to linux Intro to linux
Intro to linux
 
It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.
It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.
It’s 2021. Why are we -still- rebooting for patches? A look at Live Patching.
 
Raspberry Pi - Lecture 1 Introduction
Raspberry Pi - Lecture 1 IntroductionRaspberry Pi - Lecture 1 Introduction
Raspberry Pi - Lecture 1 Introduction
 
Introduction To Flink
Introduction To FlinkIntroduction To Flink
Introduction To Flink
 
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
 
1.1.1.Introduction.pdf
1.1.1.Introduction.pdf1.1.1.Introduction.pdf
1.1.1.Introduction.pdf
 
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
 
Modern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - BerlinModern IoT and Embedded Linux Deployment - Berlin
Modern IoT and Embedded Linux Deployment - Berlin
 
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
Linux, Unikernel, LinuxKit: towards redefining the cloud stack.
 
Cigna Innovation Summit
Cigna Innovation SummitCigna Innovation Summit
Cigna Innovation Summit
 
Inria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoT
Inria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoTInria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoT
Inria Tech Talk : RIOT, l'OS libre pour vos objets connectés #IoT
 

Último

Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintMahmoud Rabie
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarPrecisely
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxUdaiappa Ramachandran
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopBachir Benyammi
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdfPedro Manuel
 

Último (20)

Empowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership BlueprintEmpowering Africa's Next Generation: The AI Leadership Blueprint
Empowering Africa's Next Generation: The AI Leadership Blueprint
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
AI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity WebinarAI You Can Trust - Ensuring Success with Data Integrity Webinar
AI You Can Trust - Ensuring Success with Data Integrity Webinar
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
Building AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptxBuilding AI-Driven Apps Using Semantic Kernel.pptx
Building AI-Driven Apps Using Semantic Kernel.pptx
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
201610817 - edge part1
201610817 - edge part1201610817 - edge part1
201610817 - edge part1
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
NIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 WorkshopNIST Cybersecurity Framework (CSF) 2.0 Workshop
NIST Cybersecurity Framework (CSF) 2.0 Workshop
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
20150722 - AGV
20150722 - AGV20150722 - AGV
20150722 - AGV
 
Nanopower In Semiconductor Industry.pdf
Nanopower  In Semiconductor Industry.pdfNanopower  In Semiconductor Industry.pdf
Nanopower In Semiconductor Industry.pdf
 

FemtoLinux Introduction

  • 1. FemtoLinux Making real-time Linux applications a reality www.femtolinux.com info@femtolinux.com FemtoLinux. Making real-time Linux apps a reality.
  • 2. FemtoLinux in a Nutshell ● Allows execution of applications in kernel mode ● Applications can access hardware and kernel resources ● System call overhead is eliminated ● Huge performance and latency improvement ● Effortless porting from legacy RTOS ● Geared towards real-time and embedded systems ● Supports ARM,MIPS and PowerPC architectures ● Fully working system FemtoLinux. Making real-time Linux apps a reality.
  • 3. Features ● Allows to run regular Linux processes in kernel mode ● Some processes can run in kernel and some in user mode ● The same process can run in either kernel or user mode ● No application modifications are required ● All user mode libraries are available ● C, C++ and all other languages are supported FemtoLinux. Making real-time Linux apps a reality.
  • 4. Features, continued ● FemtoLinux applications have no restrictions ● Can access kernel resources ● System call overhead reduces to a function call ● Can read, write and allocate kernel memory ● Can access hardware resources ● Access HW, including CPU, registers ● Enable/disable interrupts ● Etc... FemtoLinux. Making real-time Linux apps a reality.
  • 5. FemtoLinux vs. VxWorks 5.x/6.x ● VxWorks 5.x has flat memory model ● Tasks communicate directly with kernel ● Low latency and low system call overhead ● VxWorks 6.x adds (optional) memory protection ● Process based programming model ● Memory protection ● Significant system call overhead ● FemtoLinux adds (optional) flat memory model to Linux ● FemoLinux processes run in kernel mode ● Similar to VxWorks tasks FemtoLinux. Making real-time Linux apps a reality.
  • 6. FemtoLinux can be used to ● Significantly improve embedded application performance ● Improve embedded application latency ● Easily port RTOS applications to Linux ● Create zero-copy networking applications ● Much more! FemtoLinux. Making real-time Linux apps a reality.
  • 7. Porting From RTOS to plain Linux ● RTOS applications tend to be monolithic ● No separation between driver and application ● Porting to RTOS from Linux requires architectural changes, not just API adaptation ● Huge development effort ● Kernel-user communications overhead ● Hard to support both Linux and RTOS ● Risk FemtoLinux. Making real-time Linux apps a reality.
  • 8. Porting from RTOS to FemtoLinux ● Similar to porting from one RTOS to another ● No architectural changes ● Faster time-to-marker ● Smaller risk ● The same code base can run on Linux & RTOS ● With thin OS abstraction layer ● Less support and QA issues FemtoLinux. Making real-time Linux apps a reality.
  • 9. Benchmarks ● Benchmarks performed on ARM9 based system ● 20% system call latency improvement ● Measured for frequently used gettimeofday(2) call ● 30% networking performance improvement ● Measured using standard iperf without any modifications ● Not including optional memory copying optimizations ● Up to 200% improvement applications that frequenyl copy memory to/from kernel (most networking apps) ● Requires minor changes to application FemtoLinux. Making real-time Linux apps a reality.
  • 10. FemtoLinux Delivery ● Software ● Services ● Modified Linux kernel ● FemtoLinux porting to (or kernel patches) client HW ● Modified eglibc library ● Development (or patches) environment ● Development adaptation to client environment – full needs cross compiler ● Application porting to toolchain FemtoLinux ● Training FemtoLinux. Making real-time Linux apps a reality.
  • 11. For more information visit our web site at http://www.femtolinux.com or contact us by email at info@femtolinux.com FemtoLinux. Making real-time Linux apps a reality.