Concepts
The Legato Application Framework is designed to simplify embedded IoT development and connect your applications to the cloud and network services. But how do we do that? We've developed a set of conventions and tools that let you easily hook up your custom apps to existing service apps (platform services) which then in turn hook up to the OS and hardware through an adapter. When you are developing your apps for a target you only need to worry about how to connect to services and send or receive data.
This section explains all of our concepts and how to integrate the concepts into developing your apps and building your system. Refer to our glossary to define some of our basic terminology.
Develop
The built product of the Legato Application Framework is the Legato runtime environment which is created from a system. A system is how you configure and customize the Legato Runtime Environment for your target and define what apps and platform services that you want to use. Apps are collections of components and files that run in a secure environment called a sandbox. At the heart of every app is one or more components, the component is the collection of code or other files that are functionally related and need to exist in the same space. Components communicate with each other and/or other apps through interfaces.
The following sections explain our strategies to use components and interfaces in developing your components, apps and systems:
Section | Description |
---|---|
Systems, Apps & Components | Overview of Systems, Apps and Components |
Definition Files | Use Definition Files to build systems, apps, and components |
Components | Learn about components and how to integrate your code into one |
Interfaces | Use interfaces to facilitate component and app communication |
Inter-process Communication | Use IPC to communicate between different processes |
Event-driven Programming | Use Event-driven Programming to trigger callback functions |
API Files | Work with the API files to develop Apps |
C Language Standards | Learn about the C Language Coding Standards used |
Internationalization | Learn about our basic Internationalization standards |
Runtime
Once you have created your components and apps you will be combining them into a system, and then installing that system onto a target. The runtime environment is the combination of your custom apps any platform services that you have included (or have been defaultly built into the system) and Legato Daemons that take care of the management of the target and the apps installed on the target.
The following sections provide more details on the runtime architecture:
Section | Description |
---|---|
Runtime Architecture | Learn about the daemons that administrate and monitor your apps |
Security | Learn about the Legato Security model |
App/System Configuration | Learn about our Configuration Management model for systems and apps |
Logging | Learn how Legato deals with logging |
Updates | Learn the different methods of updating your target |
Power Management | Learn about power management strategies within apps |