The OSAL is extending for Operating System Abstraction Layer. An operating system abstraction layer (OSAL) provides an application programming interface (API) to an abstract operating system making it easier and quicker to develop the application code for multiple software or hardware platforms.

Implementing projects using OSALs allows for the development of portable embedded system software that is independent of a particular real-time operating system. It also allows for embedded system software to be developed and tested on desktop workstations, providing a shorter development and debug time. This will be helpful for Embedded application developers to work with any platform and any unknown projects if they know the OASL and it is implemented in projects, then without any hesitation, you can start working on it.
The goal of this library is to promote the creation of portable and reusable real-time embedded system software. Given the necessary OS abstraction layer implementations, the same embedded software should compile and run on a number of platforms ranging from spacecraft computer systems to desktop PCs. The OSAL library is a former project from NASA and has been taken by ESA which is maintaining his own flavor.
What is the Operating System Abstraction Layer?
- A small layer of software that allows programs to run on many different operating systems and hardware platforms.
- Independent of the underlying OS & hardware.
- Self-contained.
Why do we want OASL?
- It Removes dependencies from any one operating system.
- It Promotes portable, reusable flight software.
- Core FSW can be built for multiple processors and operating systems. Example: different missions require different hardware & operating system.
What does OSAL do?
- OSAL allows the developers to write and maintain one version of the code.
- OSAL allows for easy reuse across different missions with different hardware.
- OSAL allows for desktop development of flight software; reduces the impact of potential hardware delays.
How to download the OSAL library?
You can download the OSAL library from below link: