RTOS Feasibility Study
Lee Courtney <leec2124@...>
Thanks, that is good to know. Following with interest. Lee On Mon, May 16, 2022 at 10:35 PM Karthik Thangavel <kthangav@...> wrote:
--
Lee Courtney +1-650-704-3934 cell |
|
Carles Cufi
Hi there,
Some responses to your original email:
HW Spec:- ARM Cortex R52 (32-bit) Number of Cores ==> 2/4 Zephyr has basic support for Cortex-R
License: Looking for no-royalty, Open Source free redistribution license. Apache v2.0, so you are good.
SMP: RTOS should be able to see all Cortex R52(Same Architecture). CPU’s will share the common memory space. Single instance of RTOS that runs on all the CPUs, dividing work between them. As far as I know SMP is supported in Cortex-R.
Memory Footprint: RTOS memory footprint should be < 100KB. What is the memory footprint of Zephyr RTOS. Memory footprint heavily depends on what features you enable. There are multiple ways to measure how flash and RAM is being used, both at compile time and runtime.
Scheduling Algorithm & Policy: Scheduler determines which thread to run on each CPU in the system at any given time. What is the scheduling algorithm used in Zephyr RTOS. https://docs.zephyrproject.org/latest/kernel/services/scheduling/index.html#scheduling-algorithm
CPU Affinity: Affine particular task to specific CPU core. Group a list of process & assign it to particular CPU core. Zephyr supports this ? Yes, via CPU mask, see https://docs.zephyrproject.org/latest/kernel/services/smp/smp.html
Interrupt Affinity: Affine particular interrupt to specific CPU core. Always IRQ-x will be routed to specific CPU core to service the interrupt. Zephyr supports this ? Not sure, I recommend you ask on Discord, #kernel channel.
Interrupt Handling: Process the interrupt even the CPU executing the user process. May be disables the scheduler to avoid interrupt handler preemption. Provision to initialize interrupt vector with the proper interrupt handler. Triggers the specific handler associated with the IRQ. Yes Thread Safety feature: Safe for use from multiple threads; operation is protected by an RTOS primitive and can be used from multiple threads. Yes
Safety Certified: Automotive functional safety certified ISO 26262. Not yet, in progress
Context Switching: Save the current task state (with the intention for it to be restored at a later point in time) and switching it with another task/process already saved task state. Yes
RTOS Components Configurable: Suppose File System is not required, in that case to reduce the memory print of OS. There should be a configuration to enable to disable such modules. Yes
Toolchain: Compatible with ARM Cortex R52 ? I assume you mean compatible with GNU Arm Embedded. Then yes.
Any existing automotive customers using Zephyr RTOS ? No idea.
From: devel@... <devel@...>
On Behalf Of Karthik Thangavel via lists.zephyrproject.org
Sent: 17 May 2022 07:35 To: Lee Courtney <leec2124@...> Cc: devel@...; P Hanumath Prasad <phanumat@...>; Veera Venkata Satish Kumar Kothamasu <vkothama@...> Subject: Re: [Zephyr-devel] RTOS Feasibility Study
Hi Lee,
Yes, that’s the expectation from Zephyr project. Initially, I posted the same set of questions in https://zephyrproject.org/contact-us/. They recommended to post these questions in dev & user mailing list.
Regards, Karthik
From: Lee Courtney <leec2124@...>
Karthik,
Is your expectation with this post that someone with the Zephyr Open Source Project will research your questions, complete your RFP, and return to you? I may be wrong, but that's not the way typical Open Source project work.
If I am wrong I would love to see the results, especially for the automotive space as that is the area I am looking at Zephyr for.
Lee Courtney
On Mon, May 16, 2022 at 10:12 AM Karthik Thangavel <kthangav@...> wrote:
-- Lee Courtney +1-650-704-3934 cell |
|
Karthik Thangavel <kthangav@...>
Hi Lee,
Yes, that’s the expectation from Zephyr project. Initially, I posted the same set of questions in https://zephyrproject.org/contact-us/. They recommended to post these questions in dev & user mailing list.
Regards, Karthik
From: Lee Courtney <leec2124@...>
Sent: Monday, May 16, 2022 11:07 PM To: Karthik Thangavel <kthangav@...> Cc: devel@...; P Hanumath Prasad <phanumat@...>; Veera Venkata Satish Kumar Kothamasu <vkothama@...> Subject: Re: [Zephyr-devel] RTOS Feasibility Study
Karthik,
Is your expectation with this post that someone with the Zephyr Open Source Project will research your questions, complete your RFP, and return to you? I may be wrong, but that's not the way typical Open Source project work.
If I am wrong I would love to see the results, especially for the automotive space as that is the area I am looking at Zephyr for.
Lee Courtney
On Mon, May 16, 2022 at 10:12 AM Karthik Thangavel <kthangav@...> wrote:
-- Lee Courtney +1-650-704-3934 cell |
|
Lee Courtney <leec2124@...>
Karthik, Is your expectation with this post that someone with the Zephyr Open Source Project will research your questions, complete your RFP, and return to you? I may be wrong, but that's not the way typical Open Source project work. If I am wrong I would love to see the results, especially for the automotive space as that is the area I am looking at Zephyr for. Lee Courtney On Mon, May 16, 2022 at 10:12 AM Karthik Thangavel <kthangav@...> wrote:
--
Lee Courtney +1-650-704-3934 cell |
|
Karthik Thangavel <kthangav@...>
Hi Zephyr Dev Team,
We are evaluating different RTOS for our upcoming project. Can you share us below details for Zephyr RTOS,
HW Spec:- ARM Cortex R52 (32-bit) Number of Cores ==> 2/4
RTOS Requirement:-
Below are the different RTOS requirements,
License: Looking for no-royalty, Open Source free redistribution license.
SMP: RTOS should be able to see all Cortex R52(Same Architecture). CPU’s will share the common memory space. Single instance of RTOS that runs on all the CPUs, dividing work between them.
Memory Footprint: RTOS memory footprint should be < 100KB. What is the memory footprint of Zephyr RTOS.
Scheduling Algorithm & Policy: Scheduler determines which thread to run on each CPU in the system at any given time. What is the scheduling algorithm used in Zephyr RTOS.
CPU Affinity: Affine particular task to specific CPU core. Group a list of process & assign it to particular CPU core. Zephyr supports this ?
Interrupt Affinity: Affine particular interrupt to specific CPU core. Always IRQ-x will be routed to specific CPU core to service the interrupt. Zephyr supports this ?
Interrupt Handling: Process the interrupt even the CPU executing the user process. May be disables the scheduler to avoid interrupt handler preemption. Provision to initialize interrupt vector with the proper interrupt handler. Triggers the specific handler associated with the IRQ.
Thread Safety feature: Safe for use from multiple threads; operation is protected by an RTOS primitive and can be used from multiple threads.
Safety Certified: Automotive functional safety certified ISO 26262.
Context Switching: Save the current task state (with the intention for it to be restored at a later point in time) and switching it with another task/process already saved task state.
RTOS Components Configurable: Suppose File System is not required, in that case to reduce the memory print of OS. There should be a configuration to enable to disable such modules.
Toolchain: Compatible with ARM Cortex R52
Any existing automotive customers using Zephyr RTOS ?
Even if you don’t have RTOS readily supports all the above features, share the RTOS details which comes closure to our requirement & whether it can be extended to fulfill the requirements.
Regards, Karthik |
|