Operating system abstraction layer: Difference between revisions

Content deleted Content added
Fix capitalization.
m References: common typo "Embeded" corrected
 
(5 intermediate revisions by 5 users not shown)
Line 1:
{{Short description|Application programming interface}}
{{More citations needed|date=June 2024}}
{{Unreferenced}}
 
An '''operating system abstraction layer''' ('''OSAL''') provides an [[application programming interface]] (API) to an [[Abstraction (computer science)|abstract]] [[operating system]] making it easier and quicker to develop code for multiple [[software]] or [[computer hardware|hardware]] platforms. It can make an application less dependent on any one specific operating system.<ref>{{Cite book |last=Beningo |first=J. |title=Embedded Software Design |date=2022 |publisher=Apress |isbn=978-1-4842-8279-3 |___location=Berkeley, California |pages=29–52 |chapter=Embedded Software Architecture Design |doi=10.1007/978-1-4842-8279-3_2}}</ref>
 
OS abstraction layers deal with presenting an abstraction of the common system functionality that is offered by any operating system by the means of providing meaningful and easy to use wrapper functions that in turn encapsulate the system functions offered by the OS to which the code needs porting. A well designed OSAL provides implementations of an API for several [[real-time operating system]]s (such as [[vxWorks]], [[eCos]], [[RTLinux]], [[RTEMS]]). Implementations may also be provided for non real-time operating systems, allowing the abstracted software to be developed and tested in a developer friendly desktop environment.
Line 11 ⟶ 12:
== Implementations ==
* [[TnFOX]]
* MapuSoft Technologies - provides a commercial OS Abstractionabstraction implementation allowing software to support multiple RTOS operating systems.
* ClarinoxSoftFrame – middleware which provides OS abstraction targeting wireless embedded device and system development. It comprises wireless protocol stacks, development tools and memory management techniques in addition to the support of desktop and a range of real-time operating systems
*[https://www.ibm.com/us-en/marketplace/systems-design-rhapsody IBM's Rhapsody]
* [https://web.archive.org/web/20080512022438/http://www.cs.wustl.edu/~schmidt/ACE.html ACE]
 
==References==
{{reflist}}
 
==External links==