Hi,
I am working on freeRTOS. from FreeRTOS wiki, the kernel type is MicroKernel. I wanna query how FreeRTOS kernel is Microkernel and not monolithic?? I mean how it is catarozied as Microkernel?
FreeRTOS in itself is just the scheduler. All other services an OS kernel usually provides have to be added. But I think it’s a rather theoretical distinction.
The typical distinction between a ‘Micro Kernel’ and a ‘Monoolithic OS’ is that in a Micro Kernel, you have a very small core (the Micro Kernel) that provides very basic services (like scheduling) and then you add serivces outside of the kernel for other operations, those services built using the kernel themselves. This is a fairly good description of how FreeRTOS is setup. The Kernel, provides Scheduling, simple inter-task communications, and optionally memory space protection, and the higher level services (like I/O) are provided by other layers of softeare.
Thanks Richard Damon. So a FreeRtos itself provides basic functionalities like schaduling, inter-thread communication and memory management. All the other OS services has to be provided and integrated by USER thats why FreeRTOS kernel is MicroKernel.