Does FreeRTOS works on Linux?

Greg KH greg at kroah.com
Sat May 8 04:46:22 EDT 2021


On Fri, May 07, 2021 at 10:14:34PM +0530, Raul Piper wrote:
> On Fri, May 7, 2021 at 12:07 PM Greg KH <greg at kroah.com> wrote:
> >
> > On Thu, May 06, 2021 at 08:12:48PM +0530, Raul Piper wrote:
> > > On Thu, May 6, 2021 at 1:01 AM loďc tourlonias
> > > <loic.tourlonias at gmail.com> wrote:
> > > >
> > > > On Wed, May 5, 2021 at 8:07 PM Raul Piper <raulpblooper at gmail.com>
> wrote:
> > > > >
> > > > > Hello,
> > > > Hi
> > > > > I am having an embedded linux system and wanted to use any  RTOS on
> > > > > it. Can I use Free RTOS?
> > > > > My project has 2 tasks , one is producer and another is consumer
> > > > > working parallely.
> > > > I'm afraid I don't understand what you are requesting and I hope that
> > > > someone else understand more clearly. But I'll still explain my
> > > > understanding.
> > > > You want to run a RTOS upon Linux OS, doesn't make it too much OSes?
> > > > Then I have several questions:
> > > > Do you really need a Real Time Operating System, can't you run your
> > > > project in Linux userspace?
> > > I can do that but Linux is not an ROS afaik. Even though i dont have
> > > strict timing requirements , its like a sensor on i2c(producer) and
> > > then another consumer tasks which not
> > > only feeds on this data but also tell the i2c sensor by sending some
> > > commands to it.
> >
> > That should be fine, Linux can be a "Real Time Operating system" if you
> > use the RT patchset if your workloads require it.
> >
> OK I need to check on this RT Patchset if at all I need real time features.
> 
> > If you do NOT have strict timing requirements, then there is no need to
> > worry about any of this, so I do not understand your wish to slow your
> > system down by running a "ROS".  Why?
> >
> Typo this is RTOS (not R OS - Robot operating system ;) )
> > > > Have you tried Linux RTOS extension (again I'm no expert and haven't
> > > > tried them but you can look at Xenomai)?
> > > I will explore this.I was thinking if i can use Posix thread to have
> > > two tasks one reading sensors and another sending commands to it.But
> > > then again i am confused
> > > if using a posix thread full fills the requirement of RTOS. The reason
> > > I want to use RTOS is , I am porting a Microcontroller code using RTOS
> > > (free RTOS) to Linux and
> > > afaik FreeRTOS doesnt work on Linux.
> >
> > What is your "requirement" exactly?
> Read the data from the sensor and also change the type of data sent by the
> sensor by analysing the received data by sending the command to the sensor
> periodically based on trigger.There is some batch of data which a
> "simultaneously" running algorithm
> is evaluating and send the command based on calculated trigger,  to sensor
> to change the data stream.This batch of data is of size 40-60 bytes length
> and may vary each time a batch is  being read.
> So in summary i wany two tasks to run together.
> RTOS is one option
> Posix thread is Another

"real time" has nothing to do with "posix threads" at all.

I suggest reading up on what these terms really mean and figure out your
specific requirements to determine what you have to do here.

good luck!

greg k-h



More information about the Kernelnewbies mailing list