rtos

Throughput calculation using cycle count

Is it possible to determine the throughput of an application on a processor from the cycle counts (Processor instruction cycles) consumed by the application ? If yes, how to calculate it ? ...

Determining the load on a particular core in a multicore processor

In a multicore processor, there are ways to tell the particular application to run in either single core or 2 cores or 3 cores. Considering a scenario in which the application(having lot threads) is running on more than one core, how will a scheduler be able to determine the load(number of threads) on a particular core in a multicore pro...

Communication between processor and high speed perihperal

Considering that a processor runs at 100 MHz and the data is coming to the processor from an external device/peripheral at the rate of 1000 Mbit/s (8 Bits/Clockcycle @ 125 MHz), which is the best way to handle traffic that comes at a higher speed to the processor ? ...

Polling or Interrupt based method

When should one use polling method and when should one use interrupt based method ? Are there scenarios in which both can be used ? ...

Processor can support/require an RTOS ?

I have few queries related with going in for an RTOS for the different processors in hand. These are generic questions. Maybe you can clarify with examples specific to any processor/rtos or even generally. How to determine if a processor can support a RTOS ? How to know if the processor requires a RTOS ? ...

Handling many sources of interrupts

Consider that there are 100 plus ways of interrupts occuring from various sensors. There are chances that all can occur at the same time too. How can the software be designed to handle it efficiently ? ...

Difference between sem_init and sema_init

What is the difference between sema_init and sem_init ? Are there any specific usage scenarios and other dependencies for the respective APIs ? ...

Micrium uC-OS/II on Dynamic C/Rabbit - might have task starvation

Hi All, I'm trying to get 2 tasks to run in my Dynamic C under Micrium uC-OS/II. One task is the http handler, the other reads from the serial port. The serial port task seems to inhibit the http task from running. Any ideas why this is? I thought uC-OS/II was preemtive. void httptask(void* ptr) { http_init(); while(1) { http_...

Usage of spinlock and cli together

I recently downloaded linux source from http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.34.1.tar.bz2 . I came across the below paragraph in the file called spinlocks.txt in linux-2.6.34.1\Documentation folder. " it does mean that if you have some code that does cli(); .. critical section .. sti(); and another sequence that does...

What type of process control block for RTOS?

Hey guys Im designing an RTOS which uses a priority based preemptive scheduler. What would the PCB contain? Ive only been able to come up with these items 1)PID 2)Priority 3)Program counter 4)Status registers 5)Some flags Should I also include a deadline?Or any other fields ...

Why would I consider using an RTOS for my embedded project?

First the background, specifics of my question will follow: At the company that I work at the platform we work on is currently the Microchip PIC32 family using the MPLAB IDE as our development environment. Previously we've also written firmware for the Microchip dsPIC and TI MSP families for this same application. The firmware is prett...

Good method to pass messages between embedded RTOS tasks (but can handle message timeouts gracefully)

I'm working with an embedded RTOS (CMX), but I think this applies to any embedded RTOS. I want to pass messages between various tasks. The problem is that one task sometimes 'locks' every other task out for a long period of time (several seconds). Since I no longer wait for the message to be ACK'ed after ~100 ms or so, if I send a mai...

When should we use mutex and when should we use semaphore

When should we use mutex and when should we use semaphore ? ...