Global Sources
EE Times-India
Stay in touch with EE Times India
EE Times-India > Embedded

POSIX in the age of IoT: Benefits and limitations

Posted: 14 Jul 2014     Print Version  Bookmark and Share

Keywords:POSIX  API  operating systems  Linux  microprocessors 

More difficulties exist in the case of smaller systems because conformance with the PSE52 specification is insufficient for implementing IoT applications (no networking) and PSE53 requires an MMU. The provision of a MPU to replace the MMU is required to run on a microcontroller and often the elimination of the MPU is the most practical. Until the specification catches up to the reality in the field, a full implementation of PSE52 plus features from PSE53 and PSE54 are required to deliver this functionality.

Another important message is that size matters and although POSIX is universal for most operating systems (embedded Linux or QNX for example), size constraints have been ignored. To be capable of running on small platforms, the size of the system is critical and to control the size of the system, modularity and optimisation is required for each piece of code (figure 5).

Figure 5: Using modularity and optimisation at multiple levels, system size and performance can be tuned to the application.

Modularity happens on three levels: complete communication stacks or file systems (i.e. big pieces), driver level components (medium to small size pieces) and feature level options (medium to small pieces). With the elimination of all unnecessary components and features at all three levels the net effect is exploiting modularity to the fullest to minimise the system size.

Optimisation for each of these components is also required. By optimising for space and/or performance, size and performance can be controlled and compile time options can be provided to select appropriate size and performance characteristics. In addition, compile time options can change algorithmic implementations to further minimise size or maximise performance. Specific features should have the capabilities to be removed through optimisation settings as well. .

To do this using POSIX APIs is achievable and best accomplished with up front design. Often, bloat creeps into systems and it is important to look for systems built from the ground up for minimal footprints and tailorable performance. Total system redesign would be required to implement this after the fact which could easily lead to faulty behaviour and highly complex implementations.

The power consumption of the system is also critical for some IoT applications. To minimise power consumption, the hardware must support power down states and the software must utilise these states whenever possible. Options should be selectable programmatically to allow for dynamic power minimisation.

Secure POSIX systems are the norm. Standard IT security can ensure that systems are not broken into and that data is secured. As soon as dynamic loading or interpreters are included, system security is degraded and is more difficult to ensure.

Safe systems can be built using POSIX although this generally has not been done. Often safe systems are interpreted as those satisfying certain development standards. More powerful safe systems use design features to trap errors early and affect repair and recovery. In general this is approach is in its infancy.

An example of a MCU RTOS that Unison fits into the POSIX and IoT world by providing the embedded operating system and protocols necessary to build applications is Unison (figure 6). The nano-kernel architecture (figure 7) coupled with compile modularity and optimisation ensure that the memory footprint can be minimised and optimised.

In addition, it offers a range of additional features: zero boot time, 100% POSIX, I/O for broad sets of applications, wireless, security, a full suite of IoT protocols, lean product development options, modularity and optimisation for size and performance tuning and simple incremental enhancement with new protocols, I/O modules and IoT protocols.

Figure 6: Unison provides the embedded components, necessary documentation and examples to build IoT systems using a broad set of IoT protocols and sensors.

Figure 7: By using a nano-kernel approach with POSIX APIs, Unison offers the best of all worlds for MCU and small MPU IoT applications. Modularity and optimisation, incremental enhancement for new sensors and protocols and lean product development with embedded Linux on larger multi-core MPUs are achieved.

 First Page Previous Page 1 • 2 • 3 • 4 • 5 Next Page Last Page

Comment on "POSIX in the age of IoT: Benefits an..."
*  You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.


Go to top             Connect on Facebook      Follow us on Twitter      Follow us on Orkut

Back to Top