<?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>Quadros Systems Blog</title>
	<atom:link href="http://info.quadros.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://info.quadros.com</link>
	<description>RTOS, Tools, TCP/IP, USB, File Systems for Embedded Development</description>
	<lastBuildDate>Thu, 26 Jun 2014 12:55:55 +0000</lastBuildDate>
	<language>en-US</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.9.1</generator>
	<item>
		<title>RTOS Explained: Components of a Real-Time Operating System</title>
		<link>http://info.quadros.com/blog/rtos-explained-components-rtos/</link>
		<comments>http://info.quadros.com/blog/rtos-explained-components-rtos/#comments</comments>
		<pubDate>Thu, 26 Jun 2014 12:55:55 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[RTOS Explained]]></category>
		<category><![CDATA[system optimization]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=109</guid>
		<description><![CDATA[<p>A Real-Time Operating System (RTOS), sometimes known as a Real-Time Executive or Real-Time Kernel, is a library of functions that implements time-critical allocation of a computer system’s resources. Scheduler The scheduler, the central element in an RTOS, determines which application code entities get access to the CPU and in what order. In most commercial RTOSes there are three scheduling models: preemptive, cooperative (also called Round Robin), and time-sliced. Function Library The function library of the RTOS serves as the interface between the application code and the kernel. Often known as Application Program Interfaces (APIs), these functions encapsulate the operational requirements of the RTOS into its various services. Application code entities make requests to the kernel through these APIs in order to cause the desired programmatic behavior of the application. Classes and User-defined Data Objects RTOSes use data structures generally organised into groups or classes by operation type. The user defines the set of objects in each class that the RTOS will use in controlling the application. The names may be somewhat different, depending on the RTOS, but Table 1 shows the most common classes and how they relate to RTOS functionality: RTOS Functionality Classes Used to Meet the Functionality Application code entities used to manage orderly use of the processor Tasks, Threads, Interrupt Service Routines (ISRs) Synchronizing with events Counting Semaphores, Event Flags Moving data between application entities Queues, Mailboxes, Pipes Managing the demands of the application with respect to time or some other independent variable. Timers, Counters, Event Sources, Alarms Managing RAM usage RAM Pools, Memory Partitions, Memory Regions Controlling exclusive access to a resource Binary Semaphores, Mutexes RTOS Properties and Functions Primary: Manage the microprocessor and other resources to meet the requirements of the application Respond to, and synchronize with, events Move data efficiently between processes Manage the demands of the process with respect to an independent variable such as time Perform in a predictable manner with operations that take place within a predictable period of time Secondary: Efficiently manage RAM Ensure exclusive access to resources &#160;</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/rtos-explained-components-rtos/">RTOS Explained: Components of a Real-Time Operating System</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>A Real-Time Operating System (RTOS), sometimes known as a Real-Time Executive or Real-Time Kernel, is a library of functions that implements time-critical allocation of a computer system’s resources.</p>
<h5>Scheduler</h5>
<p>The scheduler, the central element in an RTOS, determines which application code entities get access to the CPU and in what order. In most commercial RTOSes there are three scheduling models: preemptive, cooperative (also called Round Robin), and time-sliced.</p>
<h5>Function Library</h5>
<p>The function library of the RTOS serves as the interface between the application code and the kernel. Often known as Application Program Interfaces (APIs), these functions encapsulate the operational requirements of the RTOS into its various services. Application code entities make requests to the kernel through these APIs in order to cause the desired programmatic behavior of the application.</p>
<h5>Classes and User-defined Data Objects</h5>
<p>RTOSes use data structures generally organised into groups or classes by operation type. The user defines the set of objects in each class that the RTOS will use in controlling the application. The names may be somewhat different, depending on the RTOS, but Table 1 shows the most common classes and how they relate to RTOS functionality:</p>
<table>
<tbody>
<tr>
<td width="337"><strong>RTOS Functionality</strong></td>
<td width="344"><strong>Classes Used to Meet the Functionality</strong></td>
</tr>
<tr>
<td width="337">Application code entities used to manage orderly use of the processor</td>
<td width="344">Tasks, Threads, Interrupt Service Routines (ISRs)</td>
</tr>
<tr>
<td width="337">Synchronizing with events</td>
<td width="344">Counting Semaphores, Event Flags</td>
</tr>
<tr>
<td width="337">Moving data between application entities</td>
<td width="344">Queues, Mailboxes, Pipes</td>
</tr>
<tr>
<td width="337">Managing the demands of the application with respect to time or some other independent variable.</td>
<td width="344">Timers, Counters, Event Sources, Alarms</td>
</tr>
<tr>
<td width="337">Managing RAM usage</td>
<td width="344">RAM Pools, Memory Partitions, Memory Regions</td>
</tr>
<tr>
<td width="337">Controlling exclusive access to a resource</td>
<td width="344">Binary Semaphores, Mutexes</td>
</tr>
</tbody>
</table>
<h5>RTOS Properties and Functions</h5>
<p><strong>Primary:</strong></p>
<ul>
<li>Manage the microprocessor and other resources to meet the requirements of the application</li>
<li>Respond to, and synchronize with, events</li>
<li>Move data efficiently between processes</li>
<li>Manage the demands of the process with respect to an independent variable such as time</li>
<li>Perform in a predictable manner with operations that take place within a predictable period of time</li>
</ul>
<p><strong>Secondary:</strong></p>
<ul>
<li>Efficiently manage RAM</li>
<li>Ensure exclusive access to resources</li>
</ul>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/rtos-explained-components-rtos/">RTOS Explained: Components of a Real-Time Operating System</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/rtos-explained-components-rtos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is Heartbleed the inevitable result of open source software?</title>
		<link>http://info.quadros.com/blog/is-heartbleed-the-inevitable-result-of-open-source-software/</link>
		<comments>http://info.quadros.com/blog/is-heartbleed-the-inevitable-result-of-open-source-software/#comments</comments>
		<pubDate>Tue, 22 Apr 2014 18:05:15 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[device security]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[embedded network security]]></category>
		<category><![CDATA[Internet of Things]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=9</guid>
		<description><![CDATA[<p>Is open source software safe to deploy? Damien Choizit has written a thoughtful opinion piece in Software Development Times in the aftermath of the Heartbleed OpenSSL debacle. He writes, &#8220;the question on everyone’s mind is, &#8216;What does this mean for open-source software development?&#8217; The truth of the matter is, Heartbleed wasn’t the real problem. Rather, it was with how we currently view and deploy open-source and outsourced code.&#8221; Choizit goes on to blame, not the OpenSSL team, but the mindless OEM and ODM development teams who blindly use open source software with the assumption that it must be solid. At Quadros Systems we have long been skeptical of the lemming-like move to open source without a commensurate look at what is really in the code. The lure of &#8220;free&#8221; software has blinded many to some of the inherent risks. 1. Does the ready availability of open source software and the ability by malicioius hackers to study it make it more prone to trapdoors and backdoors? 2. Do developers assume that because it is open source, thousands of others must have already checked out the code, so it must be safe? In this new era of &#8220;the Internet of Everything&#8221; your embedded device may be more vulnerable than ever.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/is-heartbleed-the-inevitable-result-of-open-source-software/">Is Heartbleed the inevitable result of open source software?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p class="HeaderLabels arial_12_14">Is open source software safe to deploy? Damien Choizit has written a <a title="thoughtful opinion piece" href="http://sdt.bz/content/article.aspx?ArticleID=70095&amp;page=1" target="_blank">thoughtful opinion piece</a> in Software Development Times in the aftermath of the Heartbleed OpenSSL debacle.</p>
<p class="HeaderLabels arial_12_14"><span id="content_Placeholder_articleBody_Label" class="arial_12_14 normalLink" style="width: 400px;">He writes, &#8220;the question on everyone’s mind is, &#8216;What does this mean for open-source software development?&#8217; The truth of the matter is, Heartbleed wasn’t the real problem. Rather, it was with how we currently view and deploy open-source and outsourced code.&#8221; </span></p>
<p><span class="arial_12_14 normalLink" style="width: 400px;"><img id="img-1398111466428" class="alignLeft" style="float: left;" title="" src="http://info.quadros.com/Portals/62908/images/heartbleed-resized-600.png" alt="describe the image" width="295" height="319" border="0" />Choizit goes on to blame, not the OpenSSL team, but the mindless OEM and ODM development teams who blindly use open source software<span class="arial_12_14 normalLink" style="width: 400px;"> with the assumption that it must be solid.</span></span></p>
<p>At Quadros Systems we have long been skeptical of the lemming-like move to open source without a commensurate look at what is really in the code. The lure of &#8220;free<span class="arial_12_14 normalLink" style="width: 400px;"><span class="arial_12_14 normalLink" style="width: 400px;">&#8221; software has blinded many to some of the inherent risks.</span></span></p>
<p>1. Does the ready availability of open <span class="arial_12_14 normalLink" style="width: 400px;"><span class="arial_12_14 normalLink" style="width: 400px;">source software and the ability by malicioius hackers to study it make it more prone to trapdoors and backdoors?</span></span></p>
<p>2. Do developers assume that because it is open source, thousands of others must have already checked out the code, so it must be safe?</p>
<p>In this new era of &#8220;the Internet of Everything<span class="arial_12_14 normalLink" style="width: 400px;"><span class="arial_12_14 normalLink" style="width: 400px;">&#8221; your embedded device may be more vulnerable than ever.</span></span></p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/is-heartbleed-the-inevitable-result-of-open-source-software/">Is Heartbleed the inevitable result of open source software?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/is-heartbleed-the-inevitable-result-of-open-source-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Embedded Device Security</title>
		<link>http://info.quadros.com/blog/embedded-device-security/</link>
		<comments>http://info.quadros.com/blog/embedded-device-security/#comments</comments>
		<pubDate>Wed, 19 Mar 2014 10:58:14 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[device security]]></category>
		<category><![CDATA[embedded network security]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[system optimization]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=13</guid>
		<description><![CDATA[<p>Cyber security is one of the most critical topics for today&#8217;s embedded development teams.Security guru, Bruce Schneier, recently wrote in Wired Magazine about how vulnerable our connected devices really are. &#8220;These embedded computers are riddled with vulnerabilities, and there’s no good way to patch them.&#8221;In related news Symantec has discovered a new Linux worm that appears to be engineered to target the “Internet of things”. The worm is capable of attacking a range of small, Internet-enabled devices in addition to traditional computers. With more and more devices being connected to the Internet I thought I would review five steps we recommend to our OEM/ODM customers to protect their embedded devices from attack: Be aware. This can happen to you. Hacking and intrusion can range from malicious fun by bored teenagers to coordinated attacks for terrorism or even industrial espionage. Don&#8217;t think your deployed devices are immune from these threats. Do you have security policies in place? If not, start with an assessment of your vulnerabilities. Take common sense steps. Good security begins with avoiding stupid mistakes and the associated vulnerabilities. A few years back a hacker broke into the SCADA system of the South Houston water department. &#8220;I wouldn&#8217;t even call this a hack,&#8221; he said. &#8220;This required almost no skill and could be reproduced by a two-year-old with a basic knowledge of [the automation system they used]&#8230;it&#8217;s usually a combination of poor configuration of services, bad password choice, and no restrictions on who can access the interfaces.&#8221; Investigate how to add security to your existing devices. Are your deployed devices able to be field-upgraded? There are many security measures that can be implemented: IP-layer security, encrypted access to applications, and firewall protection. The Achilles test suite from Wurldtech is a popular way to verify that your systems are safe from a variety of attacks including packet floods, port scanning, and spoofing. Quadros Systems is experienced in working with this test suite and in hardening the network interfaces and application. We have successfully helped our customers pass Achilles level 1 and level 2 tests with our software. Develop your new devices with security in mind. There is no excuse to build a product today that does not have at least basic security protections and the ability to upgrade in the field. Add security specifications to your product development plan. Talk with your customers about their security requirements. Add security management and event reporting to new devices. Many embedded devices today are visible to hackers but not to Enterprise Security Management Systems.  One result of this is that a hacker can probe a device indefinitely without discovery. By adding a firewall and management agent, this situation can be reversed. Embedded devices can now be visible to enterprise management systems but not hackers. And talk with us at Quadros Systems about how we can help you add security to your embedded device. We offer a range of protections including: IP-layer security with Internet Key Exchange Encryption for remote connections to the server Firewall protection with available agent to connect to security information and event management systems Certification Consulting. Achilles® Certification from Wurdltech provides an industry-leading benchmark for the development of the secure applications, devices and systems. It is part of the ISASecure EDSA Certification for Communications Robustness. Quadros Systems has successfully worked with our customers to pass Achilles Level 1 and Level 2 tests.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/embedded-device-security/">Embedded Device Security</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<table border="0">
<tbody>
<tr>
<td><img class="alignnone size-medium wp-image-14" title="" src="http://info.quadros.com/wp-content/uploads/2014/06/cyber-security-solutions-300x218.png" alt="Embedded Device Security" width="300" height="218" /></td>
<td>Cyber security is one of the most critical topics for today&#8217;s embedded development teams.Security guru, Bruce Schneier, recently wrote in <a title="Wired Magazine" href="http://www.wired.com/opinion/2014/01/theres-no-good-way-to-patch-the-internet-of-things-and-thats-a-huge-problem/" target="_blank">Wired Magazine</a> about how vulnerable our connected devices really are. &#8220;These embedded computers are riddled with vulnerabilities, and there’s no good way to patch them.&#8221;In related news Symantec has discovered a new <a title="Linux worm" href="http://www.symantec.com/connect/blogs/linux-worm-targeting-hidden-devices" target="_blank">Linux worm</a> that appears to be engineered to target the “Internet of things”. The worm is capable of attacking a range of small, Internet-enabled devices in addition to traditional computers.</td>
</tr>
</tbody>
</table>
<p>With more and more devices being connected to the Internet I thought I would review <span style="color: #000000;">five</span> steps we recommend to our OEM/ODM customers to protect their embedded devices from attack:</p>
<ol>
<li><strong>Be aware.</strong> This can happen to you. Hacking and intrusion can range from malicious fun by bored teenagers to coordinated attacks for terrorism or even industrial espionage. Don&#8217;t think your deployed devices are immune from these threats. Do you have security policies in place? If not, start with an assessment of your vulnerabilities.</li>
<li><strong>Take common sense steps.</strong> Good security begins with avoiding stupid mistakes and the associated vulnerabilities. A few years back a hacker broke into the SCADA system of the South Houston water department. &#8220;I wouldn&#8217;t even call this a hack,&#8221; he said. &#8220;This required almost no skill and could be reproduced by a two-year-old with a basic knowledge of [the automation system they used]&#8230;it&#8217;s usually a combination of poor configuration of services, bad password choice, and no restrictions on who can access the interfaces.&#8221;</li>
<li><strong>Investigate how to add security to your existing devices</strong>. Are your deployed devices able to be field-upgraded? There are many security measures that can be implemented: IP-layer security, encrypted access to applications, and firewall protection. The Achilles test suite from Wurldtech is a popular way to verify that your systems are safe from a variety of attacks including packet floods, port scanning, and spoofing. Quadros Systems is experienced in working with this test suite and in hardening the network interfaces and application. We have successfully helped our customers pass Achilles level 1 and level 2 tests with our software.</li>
<li><strong>Develop your new devices with security in mind.</strong> There is no excuse to build a product today that does not have at least basic security protections and the ability to upgrade in the field. Add security specifications to your product development plan. Talk with your customers about their security requirements.</li>
<li><strong>Add security management and event reporting to new devices.</strong> Many embedded devices today are visible to hackers but not to Enterprise Security Management Systems.  One result of this is that a hacker can probe a device indefinitely without discovery. By adding a firewall and management agent, this situation can be reversed. Embedded devices can now be visible to enterprise management systems but not hackers.</li>
</ol>
<p>And talk with us at Quadros Systems about how we can help you add security to your embedded device. We offer a range of protections including:</p>
<p><a title="IP-layer security with Internet Key Exchange" href="http://www.quadros.com/products/networking-software/embedded-network-security/embedded-network-security#ipsec-ike" target="_self">IP-layer security with Internet Key Exchange</a></p>
<p><a title="Encryption for remote connections to the server" href="http://www.quadros.com/products/networking-software/embedded-network-security/embedded-network-security#ssl-tls" target="_self">Encryption for remote connections to the server</a></p>
<p><a title="Firewall protection" href="http://www.quadros.com/products/networking-software/embedded-network-security/embedded-network-security#protection-from-cyber-attacks" target="_self">Firewall protection</a> with available agent to connect to security information and event management systems</p>
<p><a title="Certification Consulting." href="http://www.quadros.com/products/networking-software/embedded-network-security/embedded-network-security#achilles-certification-consulting" target="_self">Certification Consulting.</a> Achilles® Certification from Wurdltech provides an industry-leading benchmark for the development of the secure applications, devices and systems. It is part of the ISASecure EDSA Certification for Communications Robustness. Quadros Systems has successfully worked with our customers to pass Achilles Level 1 and Level 2 tests.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/embedded-device-security/">Embedded Device Security</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/embedded-device-security/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Atollic and Quadros Systems Partner to Offer RTOS-Aware Debugging</title>
		<link>http://info.quadros.com/blog/atollic-and-quadros-systems-partner-to-offer-rtos-aware-debugging/</link>
		<comments>http://info.quadros.com/blog/atollic-and-quadros-systems-partner-to-offer-rtos-aware-debugging/#comments</comments>
		<pubDate>Fri, 28 Jun 2013 11:05:29 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[development tools]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[embedded systems]]></category>
		<category><![CDATA[RTOS]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=18</guid>
		<description><![CDATA[<p>The Atollic® TrueSTUDIO® C/C++ embedded development suite for ARM® microcontrollers now offers debug visibility for the RTXC™ Quadros™ real-time operating system. Thirteen dockable windows provide deep insight into the status of the RTOS during a debug session. This feature is included in Atollic TrueSTUDIO v4.1 which was just released last week. (click on images for larger view) Get more information here Atollic® TrueSTUDIO® is the leading C/C++ development tool for ARM® developers, reducing time to market and increasing efficiency in your next embedded systems project. Atollic TrueSTUDIO is based on one of the most widely used compilers in the world, thus providing proven and reliable code generation, compact code and high performance for ARM7™, ARM9™ and ARM Cortex™ projects. Atollic TrueSTUDIO conforms to open standards, such as the ECLIPSE™ IDE framework and the GNU toolchain, significantly reducing training and porting costs across teams and projects. More information on Atollic TrueSTUDIO can be found here: http://www.atollic.com/index.php/truestudio &#160;</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/atollic-and-quadros-systems-partner-to-offer-rtos-aware-debugging/">Atollic and Quadros Systems Partner to Offer RTOS-Aware Debugging</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p><span class="st">The Atollic® TrueSTUDIO® C/C++ embedded development suite for ARM® microcontrollers now offers debug visibility for the RTXC™ Quadros™ real-time operating system. Thirteen dockable windows provide deep insight into the status of the RTOS during a debug session.<br />
</span></p>
<p><span class="st">This feature is included in Atollic TrueSTUDIO v4.1</span> which was just released last week.</p>
<p><a href="http://info.quadros.com/wp-content/uploads/2014/06/Atollic-debug-1.png"><img class="alignnone size-medium wp-image-19" title="" src="http://info.quadros.com/wp-content/uploads/2014/06/Atollic-debug-1-300x201.png" alt="kernel-aware debug" width="300" height="201" /></a><a href="http://info.quadros.com/wp-content/uploads/2014/06/Atollic-debug-2.png"><img class="alignnone size-medium wp-image-20" title="" src="http://info.quadros.com/wp-content/uploads/2014/06/Atollic-debug-2-300x201.png" alt="kernel-aware debug" width="300" height="201" /></a></p>
<p>(click on images for larger view)</p>
<h3><a title="Get more information here" href="http://quadros.com/2013/06/pr13-452/" target="_blank">Get more information here</a></h3>
<p>Atollic® TrueSTUDIO® is the leading C/C++ development tool for ARM® developers, reducing time to market and increasing efficiency in your next embedded systems project.</p>
<p>Atollic TrueSTUDIO is based on one of the most widely used compilers in the world, thus providing proven and reliable code generation, compact code and high performance for ARM7™, ARM9™ and ARM Cortex™ projects. Atollic TrueSTUDIO conforms to open standards, such as the ECLIPSE™ IDE framework and the GNU toolchain, significantly reducing training and porting costs across teams and projects.</p>
<p>More information on Atollic TrueSTUDIO can be found here: <a href="http://www.atollic.com/index.php/truestudio" target="_blank">http://www.atollic.com/index.php/truestudio</a></p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/atollic-and-quadros-systems-partner-to-offer-rtos-aware-debugging/">Atollic and Quadros Systems Partner to Offer RTOS-Aware Debugging</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/atollic-and-quadros-systems-partner-to-offer-rtos-aware-debugging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Biggest problems for embedded systems developers?</title>
		<link>http://info.quadros.com/blog/biggest-problems-for-embedded-systems-developers/</link>
		<comments>http://info.quadros.com/blog/biggest-problems-for-embedded-systems-developers/#comments</comments>
		<pubDate>Tue, 07 May 2013 11:15:57 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[embedded software]]></category>
		<category><![CDATA[embedded systems]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=23</guid>
		<description><![CDATA[<p>A recent thread in the Real Time Embedded Engineering Group on LinkedIn raised some interesting issues among developers when they were asked about their most difficult problem areas. Do these sound familiar? Unrealistic development schedules set by managers who don&#8217;t understand development Deficient documentation of the processor Insufficient errata; struggling with a problem for two years, contacted the manufacturer with no result, and 1 year later there is the errata. Finding and resolving timing issues Weak or poor tools: debuggers, emulators Bosses expecting if I kneel or spend time with the device it may relent and start working Learning NEVER to use a device/processor/controller if there aren&#8217;t many &#8216;how to, why, when&#8221; questions on Google. The device is too good to be true or else you end being the only using and fighting the problem. Low level debugging and overall performance of the system Hardware/software co-development. Finding root causes when both the code and the hardware are suspect. A paucity of available low-level-embedded example code Hardware debugging, especially during software integration on a new design where all hardware unit tests showed OK but putting it altogether creates a side effect. A badly written device driver delivered with the H/W; caused havoc and a delay of more than 4 months S/W interface which was way too complex to interpret on an embedded system Of course at Quadros Systems we would argue that starting with the right software platform can make a big difference. RTXC Quadros RTOS-based software is delivered fully integrated with working drivers and interfaces with a binding to your chosen tool environment. Start with the provided sample project and you are good to go. Our Release Notes with tool caveats can reduce the learning curve up front, and save valuable time when development crunch time begins. We know our customers save weeks, if not months, over developing a product using free or poorly tested software. Find out more about how Quadros Systems can save you time and aggravation.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/biggest-problems-for-embedded-systems-developers/">Biggest problems for embedded systems developers?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>A recent thread in the Real Time Embedded Engineering Group on LinkedIn raised some interesting issues among developers when they were asked about their most difficult problem areas. Do these sound familiar?</p>
<ol>
<li>Unrealistic development schedules set by managers who don&#8217;t understand development</li>
<li>Deficient documentation of the processor</li>
<li>Insufficient errata; struggling with a problem for two years, contacted the manufacturer with no result, and 1 year later there is the errata.</li>
<li>Finding and resolving timing issues</li>
<li>Weak or poor tools: debuggers, emulators</li>
<li>Bosses expecting if I kneel or spend time with the device it may relent and start working</li>
<li>Learning NEVER to use a device/processor/controller if there aren&#8217;t many &#8216;how to, why, when&#8221; questions on Google. The device is too good to be true or else you end being the only using and fighting the problem.</li>
<li>Low level debugging and overall performance of the system</li>
<li>Hardware/software co-development. Finding root causes when both the code and the hardware are suspect.</li>
<li>A paucity of available low-level-embedded example code</li>
<li>Hardware debugging, especially during software integration on a new design where all hardware unit tests showed OK but putting it altogether creates a side effect.</li>
<li>A badly written device driver delivered with the H/W; caused havoc and a delay of more than 4 months</li>
<li>S/W interface which was way too complex to interpret on an embedded system</li>
</ol>
<p>Of course at Quadros Systems we would argue that starting with the right software platform can make a big difference. RTXC Quadros RTOS-based software is delivered fully integrated with working drivers and interfaces with a binding to your chosen tool environment. Start with the provided sample project and you are good to go. Our Release Notes with tool caveats can reduce the learning curve up front, and save valuable time when development crunch time begins. We know our customers save weeks, if not months, over developing a product using free or poorly tested software.</p>
<p><a title="The Quadros Systems Difference" href="http://quadros.com/2013/06/quadros-systems-difference/%20" target="_blank">Find out more about how Quadros Systems can save you time and aggravation.</a></p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/biggest-problems-for-embedded-systems-developers/">Biggest problems for embedded systems developers?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/biggest-problems-for-embedded-systems-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Are security issues lurking in your embedded device?</title>
		<link>http://info.quadros.com/blog/are-security-issues-lurking-in-your-embedded-device/</link>
		<comments>http://info.quadros.com/blog/are-security-issues-lurking-in-your-embedded-device/#comments</comments>
		<pubDate>Wed, 01 May 2013 13:10:25 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[device security]]></category>
		<category><![CDATA[embedded network security]]></category>
		<category><![CDATA[Ethernet]]></category>
		<category><![CDATA[Internet of Things]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=26</guid>
		<description><![CDATA[<p>s embedded and machine to machine (M2M) devices evolve, new issues are rapidly emerging that affect both legacy systems and those being planned. Network security is one of those. Malicious attacks on Supervisory Control and Data Acquisition (SCADA) and other industrial control and smart grid networks are a major concern. Recently the Industrial Control Systems Cyber Security team noted that there are now several new, publicly available exploit tools that specifically target Internet accessible industrial control system and programmable logic controllers (PLCs). Targeted systems include those from Rockwell Automation, GE, and Schneider Electric. And this is just the beginning of an evolving threat with malicious hacking to industrial espionage, and even cyber-terrorism. According to a new study from VDC Research security is the now the number three concern for M2M OEMs after cost and performance. There is now an exposed soft underbelly in many deployed M2M systems that is vulnerable to hacking, denial of service (DoS) or other unwanted intrusion. Most of these systems were not designed to withstand the kinds of sophisticated cyber-attacks we are seeing today. According to VDC most engineers did not even considered security in their prior designs. Even today embedded engineers are looking to add connectivity without factoring in the potential security risks. Many of these systems are home-grown and do not have the benefit of a commercial real-time operating system or proven security software. Quadros Systems has been actively supplying security for M2M and embedded systems for many years. Our SSL/TLS package provides application level security to HTTP and FTP protocols. And our IPsec/Internet Key Exchange (IKE) package offers encryption security at the IP layer. Last week we announced our most recent solution to address the network security: an embedded firewall. We have partnered with Icon Labs to offer three stage protection to customers using the RTXC Quadnet Ethernet-TCP/IP stack: static filtering, rules-based filtering and threshold filtering. Floodgate Packet Filter has been used to provide security for industrial control applications, small footprint industrial firewall appliances and MCU based control devices. It  provides Stateful Packet Inspection (SPI) and rules based filtering to protect embedded devices from real-world cyber-attacks.  Rules-based filtering utilizes white-listing and black-listing to define system criteria such as port number, protocol, or source IP address for protection. Floodgate also features Stateful Packet Inspection (SPI) that provides dynamic packet filtering based on the state of the connection to a device. The combined solution will add a layer of protection against threats such as packet floods, request storms, port scans, malformed IP packets and corrupted Ethernet frames. It is designed to meet ANSI/ISA/IEC/TS 62443 standards for cyber security. The system is designed explicitly for use in embedded devices with limited memory and processor speeds that require secure network implementation certified to standards such as the ISASP 99 which is measured by the Wurldtech Achilles® Test Platform. Get more details on network security options from Quadros Systems: Embedded Firewall Application Security (SSL/TLS) IP layer Security Achilles Test Suite Consulting Services</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/are-security-issues-lurking-in-your-embedded-device/">Are security issues lurking in your embedded device?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>s embedded and machine to machine (M2M) devices evolve, new issues are rapidly emerging that affect both legacy systems and those being planned. Network security is one of those.</p>
<p>Malicious attacks on Supervisory Control and Data Acquisition (SCADA) and other industrial control and smart grid networks are a major concern. Recently the Industrial Control Systems Cyber Security team <a href="http://ics-cert.us-cert.gov/pdf/ICS-ALERT-12-046-01A.pdf">noted</a> that there are now several new, publicly available exploit tools that specifically target Internet accessible industrial control system and programmable logic controllers (PLCs). Targeted systems include those from Rockwell Automation, GE, and Schneider Electric. And this is just the beginning of an evolving threat with malicious hacking to industrial espionage, and even cyber-terrorism.</p>
<p>According to a new study from <a title="VDC Research" href="http://www.vdcresearch.com/market_research/embedded_software/research_reports.aspx" target="_self">VDC Research</a> security is the now the number three concern for M2M OEMs after cost and performance.</p>
<p><img class="alignnone wp-image-27 size-full" title="" src="http://info.quadros.com/wp-content/uploads/2014/06/m2m-security-results-VDC-resized-600.png" alt="M2M Conflicts" width="600" height="371" /></p>
<p>There is now an exposed soft underbelly in many deployed M2M systems that is vulnerable to hacking, denial of service (DoS) or other unwanted intrusion. Most of these systems were not designed to withstand the kinds of sophisticated cyber-attacks we are seeing today. According to VDC most engineers did not even considered security in their prior designs.</p>
<p>Even today embedded engineers are looking to add connectivity without factoring in the potential security risks. Many of these systems are home-grown and do not have the benefit of a commercial real-time operating system or proven security software.</p>
<p>Quadros Systems has been actively supplying security for M2M and embedded systems for many years. Our SSL/TLS package provides application level security to HTTP and FTP protocols. And our IPsec/Internet Key Exchange (IKE) package offers encryption security at the IP layer.</p>
<div id="attachment_28" style="width: 407px" class="wp-caption alignleft"><a href="http://info.quadros.com/wp-content/uploads/2014/06/Firewall-Diagram.png"><img class="wp-image-28 " title="" src="http://info.quadros.com/wp-content/uploads/2014/06/Firewall-Diagram-524x1024.png" alt="embedded firewall" width="397" height="778" /></a><p class="wp-caption-text">(click for larger view)</p></div>
<p>Last week we announced our most recent solution to address the network security: an embedded firewall. We have partnered with Icon Labs to offer three stage protection to customers using the RTXC Quadnet Ethernet-TCP/IP stack: static filtering, rules-based filtering and threshold filtering.</p>
<p>Floodgate Packet Filter has been used to provide security for industrial control applications, small footprint industrial firewall appliances and MCU based control devices. It  provides Stateful Packet Inspection (SPI) and rules based filtering to protect embedded devices from real-world cyber-attacks.  Rules-based filtering utilizes white-listing and black-listing to define system criteria such as port number, protocol, or source IP address for protection. Floodgate also features Stateful Packet Inspection (SPI) that provides dynamic packet filtering based on the state of the connection to a device.</p>
<p>The combined solution will add a layer of protection against threats such as packet floods, request storms, port scans, malformed IP packets and corrupted Ethernet frames. It is designed to meet ANSI/ISA/IEC/TS 62443 standards for cyber security. The system is designed explicitly for use in embedded devices with limited memory and processor speeds that require secure network implementation certified to standards such as the ISASP 99 which is measured by the Wurldtech Achilles® Test Platform.</p>
<p>Get more details on network security options from Quadros Systems:</p>
<p><a title="Embedded Firewall" href="http://quadros.com/products/networking-software/embedded-network-security/#firewall">Embedded Firewall</a></p>
<p><a title="Application Security" href="http://quadros.com/products/networking-software/embedded-network-security/#ssl-tls">Application Security</a> (SSL/TLS)</p>
<p><a title="IP Layer Security" href="http://quadros.com/products/networking-software/embedded-network-security/#ipsec">IP layer Security</a></p>
<p><a title="Achilles Test Suite Consulting" href="http://quadros.com/products/networking-software/embedded-network-security/#achilles">Achilles Test Suite Consulting Services</a></p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/are-security-issues-lurking-in-your-embedded-device/">Are security issues lurking in your embedded device?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/are-security-issues-lurking-in-your-embedded-device/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Are you well-positioned for the Internet of Things?</title>
		<link>http://info.quadros.com/blog/are-you-well-positioned-for-the-internet-of-things/</link>
		<comments>http://info.quadros.com/blog/are-you-well-positioned-for-the-internet-of-things/#comments</comments>
		<pubDate>Wed, 17 Apr 2013 20:40:32 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[embedded systems]]></category>
		<category><![CDATA[Ethernet]]></category>
		<category><![CDATA[Internet of Things]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=31</guid>
		<description><![CDATA[<p>Kaivan Karimi of Freescale has written an excellent overview of the Internet of Things (IoT): &#8220;Will the Internet of Things (IoT) turn your smart phone into the center of the universe?&#8221; We agree with his assessment that the smart phone may be one of the many hubs or gateways used to query or analyze Big Data from sensing and other smart devices but it is much more likely that Wi-Fi and Weightless will win out as the networks of choice for IoT over the LTE network (or its successors). Wireless network operators are clearly positioning themselves as key players in the evolving IoT space as are Internet ISPs and cable providers. And Verizon is well positioned in telematics, as well. But The IoT future is much larger than connecting consumer appliances and personal information devices. And it is larger than telematics. Karimi says that rolling out IoT is like rolling out the largest control data network in the world: Home Automation, Education, Supply Chain, Auto Safety, Security, Goods Tracking, Farms, Energy Management, Transportation, Health, Lighting&#8211;these are only some of the sub-networks that will form the massive IoT. Chris Rezendez from INEX Advisors writes in the March 12 Issue of the Boston Business Journal, &#8220;IoT, M2M connected device solutions are about as broad as you can imagine. All form factor, configuration and functional footprint of unattended, headless, embedded and discrete devices with some combination of sensing, processing and communications.&#8221; Quadros Systems has been active in smart devices and intelligent gateways for many years. Our customers are already building out early IoT networks on factory floors, in smart buildings, in hospitals and clinics. And we have new developments underway for network security and enhanced wireless connectivity. As Rezendez writes, &#8220;The people and organizations that heard the gun go off months, or years ago who are hard at work on the nth generation of their solution, expanding into their phase II markets, and simply going about the business of building out IoT and M2M markets.&#8221; Find out more about how Quadros Systems can help position you for success in this active and growing market space. &#160;</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/are-you-well-positioned-for-the-internet-of-things/">Are you well-positioned for the Internet of Things?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Kaivan Karimi of Freescale has written an <a title="excellent overview" href="https://community.freescale.com/community/the-embedded-beat/blog/2013/04/07/will-the-internet-of-things-iot-turn-your-smart-phone-into-the-center-of-the-universe" target="_self">excellent overview</a> of the Internet of Things (IoT): &#8220;Will the Internet of Things (IoT) turn your smart phone into the center of the universe?&#8221;</p>
<p>We agree with his assessment that the smart phone may be one of the many hubs or gateways used to query or analyze Big Data from sensing and other smart devices but it is much more likely that Wi-Fi and Weightless will win out as the networks of choice for IoT over the LTE network (or its successors).</p>
<p>Wireless network operators are clearly positioning themselves as key players in the evolving IoT space as are Internet ISPs and cable providers. And Verizon is well positioned in telematics, as well.</p>
<p>But The IoT future is much larger than connecting consumer appliances and personal information devices. And it is larger than telematics. Karimi says that rolling out IoT is like rolling out the largest control data network in the world: Home Automation, Education, Supply Chain, Auto Safety, Security, Goods Tracking, Farms, Energy Management, Transportation, Health, Lighting&#8211;these are only some of the sub-networks that will form the massive IoT.</p>
<p><img class="aligncenter size-full wp-image-32" title="" src="http://info.quadros.com/wp-content/uploads/2014/06/IoT.jpg" alt="Internet of Things" width="600" height="360" /></p>
<p>Chris Rezendez from INEX Advisors writes in the <a title="March Issue of the Boston Business Journal" href="http://www.bizjournals.com/boston/blog/techflash/2013/03/why-iot-and-m2m-markets-need-no-hype--.html" target="_self">March 12 Issue of the Boston Business Journal</a>, &#8220;IoT, M2M connected device solutions are about as broad as you can imagine. All form factor, configuration and functional footprint of unattended, headless, embedded and discrete devices with some combination of sensing, processing and communications.&#8221;</p>
<p>Quadros Systems has been active in smart devices and intelligent gateways for many years. Our customers are already building out early IoT networks on factory floors, in smart buildings, in hospitals and clinics. And we have new developments underway for network security and enhanced wireless connectivity.</p>
<p>As Rezendez writes, &#8220;The people and organizations that heard the gun go off months, or years ago who are hard at work on the nth generation of their solution, expanding into their phase II markets, and simply going about the business of building out IoT and M2M markets.&#8221;</p>
<p><a href="http://quadros.com/contact-us/" target="_blank">Find out more</a> about how Quadros Systems can help position you for success in this active and growing market space.</p>
<p>&nbsp;</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/are-you-well-positioned-for-the-internet-of-things/">Are you well-positioned for the Internet of Things?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/are-you-well-positioned-for-the-internet-of-things/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RTOS Source code vs. Object Libraries</title>
		<link>http://info.quadros.com/blog/rtos-source-code-vs-object-libraries/</link>
		<comments>http://info.quadros.com/blog/rtos-source-code-vs-object-libraries/#comments</comments>
		<pubDate>Tue, 19 Feb 2013 20:45:08 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[RTOS Explained]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[system optimization]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=35</guid>
		<description><![CDATA[<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/rtos-source-code-vs-object-libraries/">RTOS Source code vs. Object Libraries</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<div class="wpb_row vc_row-fluid">
	<div class="vc_span8 wpb_column column_container">
		<div class="wpb_wrapper">
			
	<div class="wpb_text_column wpb_content_element ">
		<div class="wpb_wrapper">
			<p>We have been asked many times why we provide full source code distribution with our real-time operating system. There are several reasons.</p>
<table border="0">
<tbody>
<tr>
<td>1. Developers new to using an RTOS or those who have not had experience with the RTXC Quadros RTOS can use the source code to get a better understanding of how the “magic” works.</p>
<p>2. Having the source code means you can compile the kernel code any way that you want, with any compiler switches (e.g. models, or options) that you need. The binary version usually comes built for a specific platform. It is either heavily optimized, which makes the kernel code virtually impossible to understand at assembly level, or un-optimized which hurts performance. With source, you can configure the kernel for your specific situation and requirements (e.g. small footprint or high performance)</td>
<td><img class="aligncenter  wp-image-36" title="" src="http://info.quadros.com/wp-content/uploads/2014/06/source-code-vs-binary.png" alt="source code vs binary" width="339" height="232" /></td>
</tr>
</tbody>
</table>
<p>3. Often during the development cycle, the application under test will crash in the kernel. The problem is not the kernel itself but is caused by a parameter that was passed to the kernel. Having kernel source code available can help you  identify an application problem that manifests itself by corrupting or otherwise crashing the kernel.</p>
<p>4. When that new version of your compiler is released, your RTOS can immediately take advantage of it via recompilation &#8211; instead of licensing another binary version.</p>
<p>5. If you need technical support from us, it makes it easier for us to be able to step through the kernel source code over the phone than try to blindly walk through assembly code. Errors in your code can be more quickly identified.</p>

		</div> 
	</div> 
		</div> 
	</div> 

	<div class="vc_span4 wpb_column column_container">
		<div class="wpb_wrapper">
			<div class="vc_wp_tagcloud wpb_content_element"><div class="widget widget_tag_cloud"><h2 class="widgettitle">Tags</h2><div class="tagcloud"><a href='http://info.quadros.com/tag/decision-process/' class='tag-link-19' title='1 topic' style='font-size: 8pt;'>decision process</a>
<a href='http://info.quadros.com/tag/development-tools/' class='tag-link-6' title='1 topic' style='font-size: 8pt;'>development tools</a>
<a href='http://info.quadros.com/tag/device-security/' class='tag-link-10' title='3 topics' style='font-size: 12.666666666667pt;'>device security</a>
<a href='http://info.quadros.com/tag/dsp/' class='tag-link-20' title='1 topic' style='font-size: 8pt;'>DSP</a>
<a href='http://info.quadros.com/tag/emb/' class='tag-link-22' title='1 topic' style='font-size: 8pt;'>emb</a>
<a href='http://info.quadros.com/tag/embedded-development/' class='tag-link-5' title='15 topics' style='font-size: 22pt;'>embedded development</a>
<a href='http://info.quadros.com/tag/embedded-network-security/' class='tag-link-9' title='3 topics' style='font-size: 12.666666666667pt;'>embedded network security</a>
<a href='http://info.quadros.com/tag/embedded-software/' class='tag-link-7' title='4 topics' style='font-size: 14.222222222222pt;'>embedded software</a>
<a href='http://info.quadros.com/tag/embedded-systems/' class='tag-link-3' title='10 topics' style='font-size: 19.511111111111pt;'>embedded systems</a>
<a href='http://info.quadros.com/tag/ethernet/' class='tag-link-14' title='2 topics' style='font-size: 10.8pt;'>Ethernet</a>
<a href='http://info.quadros.com/tag/firewall/' class='tag-link-12' title='1 topic' style='font-size: 8pt;'>firewall</a>
<a href='http://info.quadros.com/tag/internet-of-things/' class='tag-link-11' title='3 topics' style='font-size: 12.666666666667pt;'>Internet of Things</a>
<a href='http://info.quadros.com/tag/open-source/' class='tag-link-18' title='1 topic' style='font-size: 8pt;'>open source</a>
<a href='http://info.quadros.com/tag/rtos/' class='tag-link-4' title='8 topics' style='font-size: 18.111111111111pt;'>RTOS</a>
<a href='http://info.quadros.com/tag/rtos-explained/' class='tag-link-17' title='11 topics' style='font-size: 20.133333333333pt;'>RTOS Explained</a>
<a href='http://info.quadros.com/tag/software/' class='tag-link-16' title='3 topics' style='font-size: 12.666666666667pt;'>software</a>
<a href='http://info.quadros.com/tag/system-optimization/' class='tag-link-13' title='7 topics' style='font-size: 17.333333333333pt;'>system optimization</a></div>
</div></div>

		</div> 
	</div> 
</div><div class="wpb_row vc_row-fluid">
	<div class="vc_span8 wpb_column column_container">
		<div class="wpb_wrapper">
			<div class="vc_wp_posts wpb_content_element">		<div class="widget widget_recent_entries">		<h2 class="widgettitle">Recent Posts</h2>		<ul>
					<li>
				<a href="http://info.quadros.com/blog/rtos-explained-components-rtos/">RTOS Explained: Components of a Real-Time Operating System</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/is-heartbleed-the-inevitable-result-of-open-source-software/">Is Heartbleed the inevitable result of open source software?</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/embedded-device-security/">Embedded Device Security</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/atollic-and-quadros-systems-partner-to-offer-rtos-aware-debugging/">Atollic and Quadros Systems Partner to Offer RTOS-Aware Debugging</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/biggest-problems-for-embedded-systems-developers/">Biggest problems for embedded systems developers?</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/are-security-issues-lurking-in-your-embedded-device/">Are security issues lurking in your embedded device?</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/are-you-well-positioned-for-the-internet-of-things/">Are you well-positioned for the Internet of Things?</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/rtos-source-code-vs-object-libraries/">RTOS Source code vs. Object Libraries</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/why-would-anyone-pay-for-an-rtos-or-other-embedded-software/">Why would anyone pay for an RTOS or other embedded software?</a>
						</li>
					<li>
				<a href="http://info.quadros.com/blog/rtos-explained-understanding-interprocess-communications/">RTOS Explained: Understanding Interprocess Communications</a>
						</li>
				</ul>
		</div></div>

		</div> 
	</div> 

	<div class="vc_span4 wpb_column column_container">
		<div class="wpb_wrapper">
			
		</div> 
	</div> 
</div>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/rtos-source-code-vs-object-libraries/">RTOS Source code vs. Object Libraries</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/rtos-source-code-vs-object-libraries/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why would anyone pay for an RTOS or other embedded software?</title>
		<link>http://info.quadros.com/blog/why-would-anyone-pay-for-an-rtos-or-other-embedded-software/</link>
		<comments>http://info.quadros.com/blog/why-would-anyone-pay-for-an-rtos-or-other-embedded-software/#comments</comments>
		<pubDate>Sun, 22 Jul 2012 12:38:18 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[decision process]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[embedded software]]></category>
		<category><![CDATA[embedded systems]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=42</guid>
		<description><![CDATA[<p>Maybe this is a question you have asked.  Maybe it&#8217;s a question you live by. After all, why pay for software when you can download something similar at no cost? You&#8217;ve heard it before but you do get what you pay for. That doesn&#8217;t mean that a free RTOS is worthless. What it does mean is that you are on your own. Maybe you&#8217;re the hero type; a talented embedded engineer that can code yourself out of any situation. Maybe you trust the &#8220;community&#8221; to help you out if you get into trouble. Maybe you are a newbie and a bit naive about the complexity of embedded development. It&#8217;s not really free. What I mean is that it may be free to you (to use) but somebody paid for it. Maybe it was a microcontroller supplier trying to lure you in to using their platform. User beware; you could be locking yourself in to an software platform with limited functionality &#38; support and no upgrade path. Or maybe the license locks you in to a particular processor supplier. What if you want to change? What about middleware? So you downloaded a free RTOS but then you realize you need USB or TCP/IP or a file system? What do you do? License a bunch of software pieces from different suppliers and then piece them together? At Quadros Systems you are purchasing value and expertise, with years of embedded development expertise. A company that will stand by you, to get you through those days when you are stuck on a difficult problem and behind schedule. Developing reliable embedded systems is not easy. The smallest integration detail or incorrect parameter can take weeks to debug. Getting the right advice at the beginning of your project can be of critical importance. At Quadros Systems we take the time to understand your project and the assumptions and requirements behind it. And then we try to match our software to what you need. If we don&#8217;t have it, we won’t try to force-fit a substandard solution to make a sale. Want to work with an RTOS company that cares about results? Contact us at +1 832-351-2830, use our information request form to tell us about your project, or send an email to info@quadros.com. Get more information about the Quadros Difference here.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/why-would-anyone-pay-for-an-rtos-or-other-embedded-software/">Why would anyone pay for an RTOS or other embedded software?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>Maybe this is a question you have asked.  Maybe it&#8217;s a question you live by. After all, why pay for software when you can download something similar at no cost?</p>
<ol>
<li><b>You&#8217;ve heard it before but you do get what you pay for.</b> That doesn&#8217;t mean that a free RTOS is worthless. What it does mean is that you are on your own. Maybe you&#8217;re the hero type; a talented embedded engineer that can code yourself out of any situation. Maybe you trust the &#8220;community&#8221; to help you out if you get into trouble. Maybe you are a newbie and a bit naive about the complexity of embedded development.</li>
<li><b>It&#8217;s not really free.</b> What I mean is that it may be free to you (to use) but somebody paid for it. Maybe it was a microcontroller supplier trying to lure you in to using their platform. User beware; you could be locking yourself in to an software platform with limited functionality &amp; support and no upgrade path. Or maybe the license locks you in to a particular processor supplier. What if you want to change?</li>
<li><b>What about middleware?</b> So you downloaded a free RTOS but then you realize you need USB or TCP/IP or a file system? What do you do? License a bunch of software pieces from different suppliers and then piece them together?</li>
</ol>
<p>At Quadros Systems you are purchasing value and expertise, with years of embedded development expertise. A company that will stand by you, to get you through those days when you are stuck on a difficult problem and behind schedule.</p>
<p>Developing reliable embedded systems is not easy. The smallest integration detail or incorrect parameter can take weeks to debug. Getting the right advice at the beginning of your project can be of critical importance. At Quadros Systems we take the time to understand your project and the assumptions and requirements behind it. And then we try to match our software to what you need. If we don&#8217;t have it, we won’t try to force-fit a substandard solution to make a sale.</p>
<p>Want to work with an RTOS company that cares about results? Contact us at +1 832-351-2830, use our <a title="information request form" href="http://info.quadros.com/need-additional-help-or-information/" target="_self">information request form</a> to tell us about your project, or send an email to <a href="mailto:info@quadros.com">info@quadros.com</a>.</p>
<p><a href="http://quadros.com/2013/06/quadros-systems-difference/" target="_blank">Get more information about the Quadros Difference here.</a></p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/why-would-anyone-pay-for-an-rtos-or-other-embedded-software/">Why would anyone pay for an RTOS or other embedded software?</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/why-would-anyone-pay-for-an-rtos-or-other-embedded-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RTOS Explained: Understanding Interprocess Communications</title>
		<link>http://info.quadros.com/blog/rtos-explained-understanding-interprocess-communications/</link>
		<comments>http://info.quadros.com/blog/rtos-explained-understanding-interprocess-communications/#comments</comments>
		<pubDate>Thu, 14 Jun 2012 12:41:12 +0000</pubDate>
		<dc:creator><![CDATA[admin]]></dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[embedded development]]></category>
		<category><![CDATA[embedded software]]></category>
		<category><![CDATA[RTOS]]></category>
		<category><![CDATA[RTOS Explained]]></category>

		<guid isPermaLink="false">http://info.quadros.com/?p=44</guid>
		<description><![CDATA[<p>A key feature of any kind of operating system is to be able to pass data between processes (tasks, threads, and interrupt service routines). The best RTOSes give the application developer as much flexibility as possible in how to do this. A single messaging option could be good for one situation but not for another. The RTXC Quadros RTOS provides three different object classes for passing data. Each class has unique properties that support interprocess communication according to the needs of the application. All three allow both synchronous and asynchronous communication between execution entities through the use of kernel services. And all three support a design that allows multiple producers and consumers for maximum application flexibility. The Queue class allows user-defined, fixed-size data to be passed in First-In-First-Out (FIFO) order between tasks, preserving its chronological nature. Queues are circular. The kernel copies data from a source buffer into the queue (enqueue) and from the queue into a destination buffer (dequeue) in three variants: simple enqueue/dequeue; enqueue/dequeue waiting on full/empty conditions; and enqueue/dequeue with limited duration waiting on full/empty conditions. The RTXC kernel maintains the status and ensures proper operation on EMPTY and FULL conditions. Under normal conditions the services associated with the Queue class provide the necessary synchronization. However, in the case of certain transitional conditions when special synchronization is required, queue semaphores are also supported. These queue semaphores are used in connection with RTXC services that operate on a set of semaphores associated with multiple queues or other types of events in order to eliminate polling for available data. The Mailbox/Message class allows variable length data to be passed from a sending task to a receiving task with or without a priority. Mailboxes are globally available to all tasks and are exchange points for messages sent by a sending task to a receiving task. The sender and the receiver must agree on the mailbox they will use for passing Messages between them. Messages are prepared by the sending task and consist of a message envelope and a message body. As a matter of system safety, the Message envelope is allocated by the sender but maintained by the kernel.The kernel has no interest in the message body other than to see to its delivery at the designated mailbox. Only the sender and the receiver tasks know the form and content of the message. Due to the fact that messages sizes can vary, message services do not copy the data into a mailbox. Instead, they manipulate pointers to the message. The result is a clean, efficient means for passing data of any size. The developer can choose to pass data in a FIFO manner or in one of two priorities, Urgent or Normal. The receiver task gets Urgent priority messages before those of Normal priority. A task can send Messages synchronously or asynchronously. For synchronous messages the sending task sends the message and waits for the receiver to acknowledge its receipt before proceeding. (NOTE: it is possible to associate an alarm with the receipt of the acknowledgement so that the duration of any waiting condition can be limited.) For asynchronous message transfers, the sending task sends the message but continues without waiting for an acknowledgement. The task can choose to wait at a later time for an acknowledgement. Normal send/receive operations have the same three variants as Queues: simple send/receive; send/receive waiting for successful completion; and send/receive with limited duration waiting for success. Like Queues, Mailboxes have related semaphores intended for use with transitional events to eliminate the necessity of polling for available data. The Pipe class, allows data to be passed from a producer task, thread or Interrupt Service Routine (ISR) to a consumer task, thread or ISR. Pipes are data passing mechanisms in the RTXC Quadros RTOS that permit rapid, unidirectional transfers from one or more producers to one or more consumers. The producer or the consumer may be an ISR, a thread or a task. Pipes are ideally suited to communications applications where data is acquired and buffered at a high frequency and then must be processed rapidly while the next block is being acquired. Functionally, pipes are buffers of data that are filled by the producer and processed by the consumer. The RTXC Quadros pipe services perform the necessary functions of managing the buffers in the pipe while the actual reading and writing of the data in the pipe buffers is the responsibility of the consumer and producer, respectively. In operation, the producer allocates a free buffer from the pipe, fills it with data, puts it back into the pipe. The consumer gets the full buffer, processes the data in it, and then frees the empty buffer back to the pipe where it can be re-used. Normally, pipe buffers are allocated sequentially and processed in the same order. However, RTXC also permits the producer to put a full buffer at the front of the pipe instead of at the tail, causing the consumer to process it next. Pipes can also be associated with thread gates (in the RTXC/ss configuration) so that certain pipe operations can result in operations on associated thread gates. Such a capability permits close synchronization between pipe producers and consumers and minimizes the amount of RAM required for pipe buffers. Summary The three flexible interprocess communications object classes in the RTXC Quadros RTOS eliminates the necessity of trying to force-fit one method of moving data into all situations a design might require. The developer can choose the one that best fits the application’s needs and have the appropriate kernel services to implement efficient data transfers for optimal time and memory considerations.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/rtos-explained-understanding-interprocess-communications/">RTOS Explained: Understanding Interprocess Communications</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></description>
				<content:encoded><![CDATA[<p>A key feature of any kind of operating system is to be able to pass data between processes (tasks, threads, and interrupt service routines). The best RTOSes give the application developer as much flexibility as possible in how to do this. A single messaging option could be good for one situation but not for another.</p>
<p>The RTXC Quadros RTOS provides three different object classes for passing data. Each class has unique properties that support interprocess communication according to the needs of the application. All three allow both synchronous and asynchronous communication between execution entities through the use of kernel services. And all three support a design that allows multiple producers and consumers for maximum application flexibility.</p>
<p>The <b>Queue</b> class allows user-defined, fixed-size data to be passed in First-In-First-Out (FIFO) order between tasks, preserving its chronological nature. <em>Queues</em> are circular. The kernel copies data from a source buffer into the queue (enqueue) and from the queue into a destination buffer (dequeue) in three variants: simple enqueue/dequeue; enqueue/dequeue waiting on full/empty conditions; and enqueue/dequeue with limited duration waiting on full/empty conditions. The RTXC kernel maintains the status and ensures proper operation on EMPTY and FULL conditions.</p>
<p>Under normal conditions the services associated with the <em>Queue</em> class provide the necessary synchronization. However, in the case of certain transitional conditions when special synchronization is required, <em>queue semaphores</em> are also supported. These queue semaphores are used in connection with RTXC services that operate on a set of semaphores associated with multiple queues or other types of events in order to eliminate polling for available data.</p>
<div id="attachment_45" style="width: 310px" class="wp-caption alignleft"><img class="size-medium wp-image-45" src="http://info.quadros.com/wp-content/uploads/2014/06/mailbox-300x259.jpg" alt="message passing RTOS" width="300" height="259" /><p class="wp-caption-text">Mailboxes, messages and envelopes<br />are elements of the Mailbox/Message class</p></div>
<p>The <b>Mailbox/Message</b> class allows variable length data to be passed from a sending task to a receiving task with or without a priority. <em>Mailboxes</em> are globally available to all tasks and are exchange points for messages sent by a sending task to a receiving task. The sender and the receiver must agree on the mailbox they will use for passing <em>Messages</em> between them. <em>Messages</em> are prepared by the sending task and consist of a message envelope and a message body. As a matter of system safety, the <em>Message</em> envelope is allocated by the sender but maintained by the kernel.The kernel has no interest in the message body other than to see to its delivery at the designated mailbox. Only the sender and the receiver tasks know the form and content of the message. Due to the fact that messages sizes can vary, message services do not copy the data into a mailbox. Instead, they manipulate pointers to the message. The result is a clean, efficient means for passing data of any size.</p>
<p>The developer can choose to pass data in a FIFO manner or in one of two priorities, Urgent or Normal. The receiver task gets Urgent priority messages before those of Normal priority.</p>
<p>A task can send Messages synchronously or asynchronously. For synchronous messages the sending task sends the message and waits for the receiver to acknowledge its receipt before proceeding. (NOTE: it is possible to associate an alarm with the receipt of the acknowledgement so that the duration of any waiting condition can be limited.) For asynchronous message transfers, the sending task sends the message but continues without waiting for an acknowledgement. The task can choose to wait at a later time for an acknowledgement.</p>
<p>Normal send/receive operations have the same three variants as <em>Queues</em>: simple send/receive; send/receive waiting for successful completion; and send/receive with limited duration waiting for success. Like Queues, Mailboxes have related semaphores intended for use with transitional events to eliminate the necessity of polling for available data.</p>
<p>The <b>Pipe</b> class, allows data to be passed from a producer task, thread or Interrupt Service Routine (ISR) to a consumer task, thread or ISR. Pipes are data passing mechanisms in the RTXC Quadros RTOS that permit rapid, unidirectional transfers from one or more producers to one or more consumers. The producer or the consumer may be an ISR, a thread or a task. Pipes are ideally suited to communications applications where data is acquired and buffered at a high frequency and then must be processed rapidly while the next block is being acquired.</p>
<p>Functionally, pipes are buffers of data that are filled by the producer and processed by the consumer. The RTXC Quadros pipe services perform the necessary functions of managing the buffers in the pipe while the actual reading and writing of the data in the pipe buffers is the responsibility of the consumer and producer, respectively. In operation, the producer allocates a free buffer from the pipe, fills it with data, puts it back into the pipe. The consumer gets the full buffer, processes the data in it, and then frees the empty buffer back to the pipe where it can be re-used.</p>
<p>Normally, pipe buffers are allocated sequentially and processed in the same order. However, RTXC also permits the producer to put a full buffer at the front of the pipe instead of at the tail, causing the consumer to process it next.</p>
<p>Pipes can also be associated with thread gates (in the RTXC/ss configuration) so that certain pipe operations can result in operations on associated thread gates. Such a capability permits close synchronization between pipe producers and consumers and minimizes the amount of RAM required for pipe buffers.</p>
<p><strong>Summary</strong></p>
<p>The three flexible interprocess communications object classes in the RTXC Quadros RTOS eliminates the necessity of trying to force-fit one method of moving data into all situations a design might require. The developer can choose the one that best fits the application’s needs and have the appropriate kernel services to implement efficient data transfers for optimal time and memory considerations.</p>
<p>The post <a rel="nofollow" href="http://info.quadros.com/blog/rtos-explained-understanding-interprocess-communications/">RTOS Explained: Understanding Interprocess Communications</a> appeared first on <a rel="nofollow" href="http://info.quadros.com">Quadros Systems Blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://info.quadros.com/blog/rtos-explained-understanding-interprocess-communications/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
