Operating System Embedded: Difference between revisions

Content deleted Content added
AFD closed as merge (XFDcloser)
Cewbot (talk | contribs)
m Fixing broken anchor: Reminder of an inactive anchor: ENEA AB#OSE
 
(4 intermediate revisions by 2 users not shown)
Line 1:
#REDIRECT [[ENEA AB#OSE]]{{Broken anchor|date=2025-06-13|bot=User:Cewbot/log/20201008/configuration|target_link=ENEA AB#OSE|reason= The anchor (OSE) [[Special:Diff/1295439991|has been deleted]].|diff_id=1295439991}} {{R from Merge}} {{R to Section}}
{{Afd-merge to|ENEA AB|Operating System Embedded|15 September 2020}}
{{Multiple issues|
{{Advert|date=April 2012}}
{{more citations needed|date=August 2012}}
}}
{{Infobox OS
| name = Enea OSE
| logo = ENEA AB logo.png
| screenshot =
| caption =
| developer = [[ENEA AB]]
| family = [[Real-time operating system|Real-time]] [[embedded operating system]]
| working state = Current
| released = <!-- {{Start date and age|19??|mm|dd}} -->
| source model = Closed-source
| kernel type = [[Microkernel]]
| supported platforms = [[ARM architecture|ARM]], [[PowerPC]], [[MIPS architecture|MIPS]]
| latest release version = 5.9.1
| latest release date = {{Start date and age|2018|03|20}}
| latest preview version =
| latest preview date =
| marketing target = [[Multi-core processor|Multi-core]] [[embedded system]]s
| programmed in = [[Assembly language|Assembly]], [[C (programming language)|C]], [[C++]]
| language = English
| update model =
| package manager =
| ui =
| license = [[Proprietary software|Proprietary]]
| preceded by =
| succeeded by =
| website = {{URL|www.enea.com/ose}}
| other articles =
}}
The '''Operating System Embedded''' ('''OSE''') is a [[real-time operating system|real-time]] [[embedded operating system]] created by the [[Sweden|Swedish]] information technology company [[ENEA AB]]. Bengt Eliasson, who at the time was a consultant from ENEA with an assignment at [[Ericsson]], wrote the basic parts of the [[Kernel (operating system)|kernel]]. The early version for the [[Zilog Z80]] processor was named OS80.
 
== Architecture and abilities ==
OSE uses [[event (computing)|events]] (named ''[[signal programming|signals]]'' due to ENEA's telecom background) in the form of messages passed to and from [[computer process|processes]] in the system. Messages are stored in a [[Queue (abstract data type)|queue]] attached to each process. A ''link handler'' mechanism allows signals to be passed between processes on separate machines, over a variety of transports. The OSE signalling mechanism formed the basis of an [[open-source software|open-source]] inter-process kernel design project called [[LINX (IPC)|LINX]].
 
* [[Fault tolerant]], [[distributed architecture]]
* Modular, layered [[microkernel]] architecture
* Multilevel process scheduling
* [[Event-driven architecture|Event-driven]], deterministic [[Real-time computing|real-time]] response
* Asynchronous direct [[message-passing]] model
* Scalable hybrid [[Multi-core processor|multicore]] system exploiting the advantages from both [[asymmetric multiprocessing]] (AMP) and [[symmetric multiprocessing]] (SMP) models
* [[Memory protection]]
* Centralized [[error handling]] and remediation
* Built-in task (process) monitoring and failure detection
* Dynamic, run-time program loading
* [[Power management]] with low-power sleep mode
* [[Demand paging]] support for optimizing [[random-access memory]] (RAM) use
* Comprehensive networking and security support
* Multiple file system choices including crash-safe, [[journaling file system]]
* Distributed system-level simulation
* Run mode monitor (RMM) for [[remote monitoring]], tracing, profiling, and debugging
* Optima, an [[Eclipse (software)|Eclipse]]-based integrated development environment and tools suite
 
== Multicore Edition ==
Enea OSE Multicore Edition was released in 2009. It is based on the same microkernel architecture. The kernel design that combines the advantages of both traditional [[asymmetric multiprocessing]] (AMP) and [[symmetric multiprocessing]] (SMP).
 
The hybrid AMP–SMP kernel in OSE Multicore Edition is based on a number of:
* Essential services in OSE are implemented according to a microkernel model which allows IP stacks, [[file system]]s, application loaders, etc., to be located on different cores, while applications can access these services regardless of ___location in the system (___location transparency).
* A kernel that instantiates a separate scheduler on each core with associated data structures to preserve determinism and realtime traits.
* User-defined process migration and load balancing based on low intrusion mechanisms to measure CPU load on each core.
* A lightweight kernel internal IPC mechanism called kernel events used to perform asynchronous, cross core transactions to avoid use of fine-granular locking designs, which has a detrimental effect on performance.
 
The Enea OSE family of RTOS features 3 OSs: ''OSE'' for [[ARM architecture|ARM processors]], [[PowerPC]] and [[MIPS architecture|MIPS]], ''OSE<sub>ck</sub>'' for various DSP's, and ''OSE Epsilon'' for minimal devices, written in pure assembly ([[ARM architecture|ARM]], [[ColdFire]]) .
 
== Processor support ==
OSE supports many processors, mainly 32-bit:
* ARM family:
** [[ARM9E]]
** [[ARM11]]
** [[Xscale]]
** [[ARM Cortex]]
* [[PowerPC]] family:
** IBM PPC4xx
** IBM [[PowerPC 7xx|PPC7xx]]
** [[Freescale]] MPC86xx (multicore support on MPC8641D)
** Freescale MPC85xx (multicore support on MPC8572DS, QorIQ P2020, P4080)
** Freescale MPC83xx
** Freescale MPC82xx
** Freescale MPC74xx
* [[MIPS architecture|MIPS]] family
** [[Cavium Networks|Cavium]] Octeon Plus (CN58xx and CN56xx)
** MIPS32
 
==See also==
* [[Smartphone]]
 
==References==
{{Reflist}}
 
==External links==
* {{Official website}}
 
{{Real-time operating systems}}
{{Microkernel}}
 
[[Category:Real-time operating systems]]
[[Category:Embedded operating systems]]
[[Category:ARM operating systems]]
[[Category:Proprietary operating systems]]
[[Category:Microkernel-based operating systems]]
[[Category:Microkernels]]