Archive

Archive for the ‘RTOS’ Category

Exclusion Is Not Always Mutual

June 26th, 2010 Peter Bushell No comments

Most embedded software practitioners – sadly, not all – know that some form of what is normally called “Mutual Exclusion” is necessary when a read-write resource is shared among two or more concurrent activities, particularly (but not necessarily only) when test-and-set operations are involved. The expression “Mutual Exclusion” is so entrenched as a generic concept that I feel obliged to use it as such, but sometimes it is anything but mutual. Read more…

New version of dynamic memory software for C++

May 9th, 2010 Peter Bushell 3 comments

Since Easter, when I promised a new release of this software, I’ve been exceptionally busy in a money-earning sort of way. I’ve noticed that others are blogging less now that their business has (presumably) picked up, so I’m not alone in disappointing my readers, but that is no excuse and so I have just uploaded the software I promised. Read more…

Free software: thwarted by g++

March 8th, 2010 Peter Bushell No comments

The free software you may have downloaded from this site embodies an error of principle (details another time). It compiles with VC++ and IAR (ARM), and the code is correct and runs properly. However, I tried g++ today and it was less forgiving. Unfortunately, it’s right and I’m wrong, even though I got away with it up to now. I’m working on a fix and will post again when I have finished it.

Free software updated

February 4th, 2010 Peter Bushell No comments

The C++ dynamic memory software I published last week has been updated with a small but useful enhancement.

Find out more by downloading it: start by going to the Subscribers’ page.

Free software!

January 28th, 2010 Peter Bushell No comments

For the last couple of months, my software efforts have been diluted by the need to attend to other matters no less important but somewhat distracting. Now I have finally released some software. It is not the whole of SKC++, though. I learned so many things, at a detailed level (mainly about C++), in developing SKC++ that I realised that I had built “one to throw away”, as the saying goes.  The refactoring is well underway and I have decided initially to release some of the essential elements of SKC++ in stages, as library modules which can be used more generally Read more…

SKC++: No semaphores!

January 7th, 2010 Peter Bushell 12 comments

Hypothesis: SKC++ doesn’t need semaphores. If you disagree with this, please comment, with supporting arguments. In the meantime, I’ll present a few arguments of my own, Read more…

Categories: Projects, RTOS, SKC++, Synchronisation Tags:

SKC++: Interrupt handling

December 15th, 2009 Peter Bushell No comments

When it comes to interrupts, SKC++’s guiding principle is “minimum interference”.

Some kernels require that interrupts be processed internally, the internal Interrupt Service Routine (ISR) calling out to an ordinary user function, sometimes also called an ISR, confusingly. Some others let you code the ISR yourself but impose restrictions on how you do it.

SKC++ does not require you to alter the way you program ISRs; Read more…

Categories: Interrupts, Projects, RTOS, SKC++ Tags:

SKC++: Mutual Exclusion

December 2nd, 2009 Peter Bushell No comments

Just a short article today as SKC++’s mutual exclusion facilities follow a familiar pattern Read more…

Categories: Mutual Exclusion, Projects, RTOS, SKC++ Tags:

SKC++: Receiving messages

November 19th, 2009 Peter Bushell No comments

Although I separated the ideas of posting an untrammelled event, using post, and sending a message (which also posts an event), using send, this is not such a good idea for receiving messages. One of the key things about an SKC++ task is that it should be able to wait at a single point in its processing in order to get something to process and that it should deal with only one event or message at a time. Accordingly, the wait function has been enhanced to deal with message reception, as well as with raw events. Read more…

Categories: Message-Passing, Projects, RTOS, SKC++ Tags:

SKC++: Change to “send” function

November 18th, 2009 Peter Bushell No comments

I have simplified the prototype for send in order to make its use a little easier and also to improve the efficiency of the implementation. Here is the new prototype: Read more…

Categories: Message-Passing, Projects, RTOS, SKC++ Tags: