<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Software Integrity Ltd &#187; SKC++</title>
	<atom:link href="http://software-integrity.com/blog/tag/skc/feed/" rel="self" type="application/rss+xml" />
	<link>http://software-integrity.com/blog</link>
	<description>Realtime and Embedded Software</description>
	<lastBuildDate>Thu, 08 Mar 2012 14:40:22 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>SKC++: No semaphores!</title>
		<link>http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/</link>
		<comments>http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 15:17:46 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>
		<category><![CDATA[Synchronisation]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=464</guid>
		<description><![CDATA[Hypothesis: SKC++ doesn&#8217;t need semaphores. If you disagree with this, please comment, with supporting arguments. In the meantime, I&#8217;ll present a few arguments of my own, supporting this hypothesis, though I&#8217;m not enough of a mathematician to establish it as a law &#8211; or even as a theory. I emphasise that I&#8217;m talking here about [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/' rel='bookmark' title='SKC++: Tasks and Timers'>SKC++: Tasks and Timers</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/14/skc-event-handling/' rel='bookmark' title='SKC++: Event Handling'>SKC++: Event Handling</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/12/02/skc-mutual-exclusion/' rel='bookmark' title='SKC++: Mutual Exclusion'>SKC++: Mutual Exclusion</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>SKC++: Interrupt handling</title>
		<link>http://software-integrity.com/blog/2009/12/15/skc-interrupt-handling/</link>
		<comments>http://software-integrity.com/blog/2009/12/15/skc-interrupt-handling/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 20:26:51 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Interrupts]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=446</guid>
		<description><![CDATA[When it comes to interrupts, SKC++&#8217;s guiding principle is &#8220;minimum interference&#8221;. 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++ [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/10/14/skc-event-handling/' rel='bookmark' title='SKC++: Event Handling'>SKC++: Event Handling</a></li>
<li><a href='http://software-integrity.com/blog/2009/12/02/skc-mutual-exclusion/' rel='bookmark' title='SKC++: Mutual Exclusion'>SKC++: Mutual Exclusion</a></li>
<li><a href='http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/' rel='bookmark' title='SKC++: No semaphores!'>SKC++: No semaphores!</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/12/15/skc-interrupt-handling/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Mutual Exclusion</title>
		<link>http://software-integrity.com/blog/2009/12/02/skc-mutual-exclusion/</link>
		<comments>http://software-integrity.com/blog/2009/12/02/skc-mutual-exclusion/#comments</comments>
		<pubDate>Wed, 02 Dec 2009 21:08:27 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Mutual Exclusion]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=438</guid>
		<description><![CDATA[Just a short article today as SKC++&#8217;s mutual exclusion facilities follow a familiar pattern: It seemed like a good idea to provide another abstract interface as there can, in principle, be several kinds of mutex. The one I chose as &#8220;standard&#8221; for SKC++ is the priority-inheritance mutex. Fortunately, I don&#8217;t have to explain the ins [...]
No related posts.]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/12/02/skc-mutual-exclusion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Receiving messages</title>
		<link>http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/</link>
		<comments>http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 15:46:35 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Message-Passing]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=408</guid>
		<description><![CDATA[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 [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/18/skc-change-to-send-function/' rel='bookmark' title='SKC++: Change to &#8220;send&#8221; function'>SKC++: Change to &#8220;send&#8221; function</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/' rel='bookmark' title='SKC++: Tasks and Timers'>SKC++: Tasks and Timers</a></li>
<li><a href='http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/' rel='bookmark' title='SKC++: No semaphores!'>SKC++: No semaphores!</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Change to &#8220;send&#8221; function</title>
		<link>http://software-integrity.com/blog/2009/11/18/skc-change-to-send-function/</link>
		<comments>http://software-integrity.com/blog/2009/11/18/skc-change-to-send-function/#comments</comments>
		<pubDate>Wed, 18 Nov 2009 11:17:03 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Message-Passing]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=403</guid>
		<description><![CDATA[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: void send(MessagePtr&#38; pMessage, const Event event); The function no longer returns  a MessagePtr, and the concept of using a &#8220;system message&#8221;, in some circumstances, has [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/' rel='bookmark' title='SKC++: Receiving messages'>SKC++: Receiving messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/' rel='bookmark' title='SKC++: Message-Passing Classes'>SKC++: Message-Passing Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/' rel='bookmark' title='SKC++: Message-Passing Uses'>SKC++: Message-Passing Uses</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/11/18/skc-change-to-send-function/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Sending Messages</title>
		<link>http://software-integrity.com/blog/2009/11/16/skc-sending-messages/</link>
		<comments>http://software-integrity.com/blog/2009/11/16/skc-sending-messages/#comments</comments>
		<pubDate>Mon, 16 Nov 2009 12:26:33 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Message-Passing]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=382</guid>
		<description><![CDATA[This is a relatively short article, as the sending of messages from one task to another is straightforward. I decided to defer its counterpart, &#8220;Receiving Messages&#8221;, until next time because there are several things to consider there, making the subject worthy of an article of its own. A while ago, I stated that messages can [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/' rel='bookmark' title='SKC++: Receiving messages'>SKC++: Receiving messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/18/skc-change-to-send-function/' rel='bookmark' title='SKC++: Change to &#8220;send&#8221; function'>SKC++: Change to &#8220;send&#8221; function</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/' rel='bookmark' title='SKC++: Message-Passing Classes'>SKC++: Message-Passing Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/' rel='bookmark' title='SKC++: Message-Passing Uses'>SKC++: Message-Passing Uses</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/11/16/skc-sending-messages/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Message-Passing Classes</title>
		<link>http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/</link>
		<comments>http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 16:40:40 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Message-Passing]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=358</guid>
		<description><![CDATA[To avoid clutter, I haven&#8217;t shown the class methods. On this occasion, I&#8217;ll just describe the classes and their characteristics in the text. Message and aMessage The class aMessage, shown in green is some kind of message the application needs. The only rules for aMessage, as far as SKC++ is concerned, are: It must be [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/' rel='bookmark' title='SKC++: Message-Passing Uses'>SKC++: Message-Passing Uses</a></li>
<li><a href='http://software-integrity.com/blog/2009/09/30/skc-dynamic-memory-classes/' rel='bookmark' title='SKC++: Dynamic Memory Classes'>SKC++: Dynamic Memory Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/' rel='bookmark' title='SKC++: Receiving messages'>SKC++: Receiving messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SKC++: Message-Passing Uses</title>
		<link>http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/</link>
		<comments>http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/#comments</comments>
		<pubDate>Wed, 04 Nov 2009 16:29:18 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Message-Passing]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=335</guid>
		<description><![CDATA[Before jumping into the design of the message-passing classes, it is as well to consider how the facility might be used in applications. I start with a common, nicely encapsulated but rather restricted kind of use&#8230; Local Message-Passing In this slightly abused UML activity diagram we see that the message is created in someFunction, which [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/' rel='bookmark' title='SKC++: Message-Passing Classes'>SKC++: Message-Passing Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/' rel='bookmark' title='SKC++: Receiving messages'>SKC++: Receiving messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/18/skc-change-to-send-function/' rel='bookmark' title='SKC++: Change to &#8220;send&#8221; function'>SKC++: Change to &#8220;send&#8221; function</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Message-Passing Principles</title>
		<link>http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/</link>
		<comments>http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 16:07:04 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Message-Passing]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=328</guid>
		<description><![CDATA[Message-passing is used, in an RTOS-based system, to provide a safe way of transferring data from one context to another or, in other words, from task to task. What is safe, though, is not always efficient and vice versa. To copy or not to copy? Some systems use copying to transfer data across the context [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/' rel='bookmark' title='SKC++: Message-Passing Uses'>SKC++: Message-Passing Uses</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/' rel='bookmark' title='SKC++: Message-Passing Classes'>SKC++: Message-Passing Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/19/skc-receiving-messages/' rel='bookmark' title='SKC++: Receiving messages'>SKC++: Receiving messages</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/27/skc-pause-for-thought/' rel='bookmark' title='SKC++: Pause for Thought'>SKC++: Pause for Thought</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>SKC++: Pause for Thought</title>
		<link>http://software-integrity.com/blog/2009/10/27/skc-pause-for-thought/</link>
		<comments>http://software-integrity.com/blog/2009/10/27/skc-pause-for-thought/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 09:46:59 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Multitasking]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=280</guid>
		<description><![CDATA[I&#8217;ve been looking over my SKC++ postings so far and have come to the conclusion that it&#8217;s time for a review. Also, before launching into the details of the kernel&#8217;s message-passing techniques, I need to show why message-passing is needed in the first place. I&#8217;ll start by presenting some thoughts on the tasking model. Encapsulation, [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/10/14/skc-event-handling/' rel='bookmark' title='SKC++: Event Handling'>SKC++: Event Handling</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/' rel='bookmark' title='SKC++: Prototype Task Class'>SKC++: Prototype Task Class</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/' rel='bookmark' title='SKC++: Tasks and Timers'>SKC++: Tasks and Timers</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/10/27/skc-pause-for-thought/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SKC++: Tasks and Timers</title>
		<link>http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/</link>
		<comments>http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 17:43:14 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Multitasking]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=252</guid>
		<description><![CDATA[Just possibly, you may have been wondering why Task::wait does not include a timeout parameter. The answer is that it does not need to because a timeout is itself an event, so this can be waited for along with whatever event might be timed out. SKC++ has general-purpose timers which can be used not only [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/10/14/skc-event-handling/' rel='bookmark' title='SKC++: Event Handling'>SKC++: Event Handling</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/27/skc-pause-for-thought/' rel='bookmark' title='SKC++: Pause for Thought'>SKC++: Pause for Thought</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/' rel='bookmark' title='SKC++: Prototype Task Class'>SKC++: Prototype Task Class</a></li>
<li><a href='http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/' rel='bookmark' title='SKC++: No semaphores!'>SKC++: No semaphores!</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/16/skc-sending-messages/' rel='bookmark' title='SKC++: Sending Messages'>SKC++: Sending Messages</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SKC++: Event Handling</title>
		<link>http://software-integrity.com/blog/2009/10/14/skc-event-handling/</link>
		<comments>http://software-integrity.com/blog/2009/10/14/skc-event-handling/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 14:55:11 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Multitasking]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=234</guid>
		<description><![CDATA[Systems running a pre-emptive kernel are essentially event-driven. Primary events are things which happen outside the software system, in the real world. These are usually communicated to the software via Interrupt Service Routines (ISRs) which are pre-emptively &#8220;called&#8221; by the hardware interrupt mechanism of the processor. Our kernel becomes aware of the event if and [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/12/15/skc-interrupt-handling/' rel='bookmark' title='SKC++: Interrupt handling'>SKC++: Interrupt handling</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/' rel='bookmark' title='SKC++: Tasks and Timers'>SKC++: Tasks and Timers</a></li>
<li><a href='http://software-integrity.com/blog/2010/01/07/skc-no-semaphores/' rel='bookmark' title='SKC++: No semaphores!'>SKC++: No semaphores!</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/' rel='bookmark' title='SKC++: Prototype Task Class'>SKC++: Prototype Task Class</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/02/skc-message-passing-principles/' rel='bookmark' title='SKC++: Message-Passing Principles'>SKC++: Message-Passing Principles</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/10/14/skc-event-handling/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SKC++: Prototype Task Class</title>
		<link>http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/</link>
		<comments>http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 17:47:13 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Multitasking]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=155</guid>
		<description><![CDATA[Today&#8217;s post discusses the basic structure and characteristics of an SKC++ task. Here is a picture of the class, together with a skeletal but updated version of the Pooled class, from which Task inherits: I emphasise that this diagram displays only the features required to show how Task is structured and set up for use [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/10/14/skc-event-handling/' rel='bookmark' title='SKC++: Event Handling'>SKC++: Event Handling</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/19/skc-tasks-and-timers/' rel='bookmark' title='SKC++: Tasks and Timers'>SKC++: Tasks and Timers</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/27/skc-pause-for-thought/' rel='bookmark' title='SKC++: Pause for Thought'>SKC++: Pause for Thought</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/04/skc-message-passing-uses/' rel='bookmark' title='SKC++: Message-Passing Uses'>SKC++: Message-Passing Uses</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SKC++: Dynamic Memory Classes</title>
		<link>http://software-integrity.com/blog/2009/09/30/skc-dynamic-memory-classes/</link>
		<comments>http://software-integrity.com/blog/2009/09/30/skc-dynamic-memory-classes/#comments</comments>
		<pubDate>Wed, 30 Sep 2009 11:39:11 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Dynamic memory allocation]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=105</guid>
		<description><![CDATA[Following on from previous postings, here is a UML diagram showing two classes concerned with dynamic memory handling: Bear in mind that everything shown in this blog is work in progress; things will change as development continues. The System Class This class will eventually hold everything to do with system configuration and initialisation; it is [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/09/14/skc-and-dynamic-memory/' rel='bookmark' title='SKC++ and Dynamic Memory'>SKC++ and Dynamic Memory</a></li>
<li><a href='http://software-integrity.com/blog/2009/09/10/dynamic-memory-allocation/' rel='bookmark' title='Dynamic Memory Allocation'>Dynamic Memory Allocation</a></li>
<li><a href='http://software-integrity.com/blog/2009/11/05/skc-message-passing-classes/' rel='bookmark' title='SKC++: Message-Passing Classes'>SKC++: Message-Passing Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/10/06/skc-prototype-task-class/' rel='bookmark' title='SKC++: Prototype Task Class'>SKC++: Prototype Task Class</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/09/30/skc-dynamic-memory-classes/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SKC++ and Dynamic Memory</title>
		<link>http://software-integrity.com/blog/2009/09/14/skc-and-dynamic-memory/</link>
		<comments>http://software-integrity.com/blog/2009/09/14/skc-and-dynamic-memory/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 14:02:02 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Dynamic memory allocation]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=42</guid>
		<description><![CDATA[Today&#8217;s post is about the strategy of dynamic memory handling in SKC++. Last time, I recommended a short slide presentation for perusal. I will not repeat here what that says, except to quote the last slide: Preventing fragmentation • Always use pools, never heaps – Exception: memory which is never intended to be freed can [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/09/30/skc-dynamic-memory-classes/' rel='bookmark' title='SKC++: Dynamic Memory Classes'>SKC++: Dynamic Memory Classes</a></li>
<li><a href='http://software-integrity.com/blog/2009/09/10/dynamic-memory-allocation/' rel='bookmark' title='Dynamic Memory Allocation'>Dynamic Memory Allocation</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/09/14/skc-and-dynamic-memory/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SKC++: First Things Second!</title>
		<link>http://software-integrity.com/blog/2009/09/14/skc-first-things-second/</link>
		<comments>http://software-integrity.com/blog/2009/09/14/skc-first-things-second/#comments</comments>
		<pubDate>Mon, 14 Sep 2009 11:00:57 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=54</guid>
		<description><![CDATA[I have been thinking about SKC++ for longer than I have been blogging about it and dynamic memory allocation should not have been my first topic. Before all else, I should have taken the trouble to explain SKC++ in more general terms. I&#8217;ll do it now&#8230; What is SKC++? SKC++ is a real-time, pre-emptive multitasking [...]
No related posts.]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/09/14/skc-first-things-second/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dynamic Memory Allocation</title>
		<link>http://software-integrity.com/blog/2009/09/10/dynamic-memory-allocation/</link>
		<comments>http://software-integrity.com/blog/2009/09/10/dynamic-memory-allocation/#comments</comments>
		<pubDate>Thu, 10 Sep 2009 09:58:26 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Dynamic memory allocation]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=30</guid>
		<description><![CDATA[Today, I am working on the dynamic allocation scheme for SKC++. It&#8217;s very simple (as everything is supposed to be in SKC++), so it won&#8217;t be long before I post again, reporting on progress. In the meantime, if you&#8217;re wondering what&#8217;s wrong with using the standard new and delete mechanisms that come with C++ I [...]
Related posts:<ol>
<li><a href='http://software-integrity.com/blog/2009/09/14/skc-and-dynamic-memory/' rel='bookmark' title='SKC++ and Dynamic Memory'>SKC++ and Dynamic Memory</a></li>
<li><a href='http://software-integrity.com/blog/2009/09/30/skc-dynamic-memory-classes/' rel='bookmark' title='SKC++: Dynamic Memory Classes'>SKC++: Dynamic Memory Classes</a></li>
</ol>]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/09/10/dynamic-memory-allocation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simplifying RTOS</title>
		<link>http://software-integrity.com/blog/2009/09/09/simplifying-rtos/</link>
		<comments>http://software-integrity.com/blog/2009/09/09/simplifying-rtos/#comments</comments>
		<pubDate>Wed, 09 Sep 2009 09:00:03 +0000</pubDate>
		<dc:creator>Peter Bushell</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[SKC++]]></category>

		<guid isPermaLink="false">http://software-integrity.com/blog/?p=27</guid>
		<description><![CDATA[Most of today&#8217;s RTOS offerings are too complicated. Here are some reasons why this is so: Insufficient thought , before designing, as to what is really essential and what is not, leading to redundancy and confusion. The perceived need to offer everything already offered by competitors, then to add more features in an attempt to [...]
No related posts.]]></description>
		<wfw:commentRss>http://software-integrity.com/blog/2009/09/09/simplifying-rtos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

