<?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>Said Svec &#187; embedded</title>
	<atom:link href="http://www.saidsvec.com/category/embedded/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.saidsvec.com</link>
	<description>Firmware and Software and Hardware, oh my!</description>
	<lastBuildDate>Fri, 23 Dec 2011 23:48:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>The Architecture of Open Source Applications: FreeRTOS</title>
		<link>http://www.saidsvec.com/2011/08/16/the-architecture-of-open-source-applications-freertos/</link>
		<comments>http://www.saidsvec.com/2011/08/16/the-architecture-of-open-source-applications-freertos/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 01:56:28 +0000</pubDate>
		<dc:creator>svec</dc:creator>
				<category><![CDATA[embedded]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[writing]]></category>

		<guid isPermaLink="false">http://www.saidsvec.com/?p=382</guid>
		<description><![CDATA[Exciting news: I&#8217;m writing a chapter about FreeRTOS for the next edition of The Architecture of Open Source Applications! Greg Wilson, one of the editors of the book, (the other editor is Amy Brown) tweeted that they were looking for coverage for embedded software. Well, I thought, I&#8217;ve been wanting to learn about FreeRTOS, and [...]]]></description>
			<content:encoded><![CDATA[<p>Exciting news: I&#8217;m writing a chapter about <a title="FreeRTOS" href="http://www.freertos.org/">FreeRTOS</a> for the next edition of <a title="Does anyone look at this text? Just in case, this is the link to the webpage for &quot;The Architecture of Open Source Applicatons.&quot;" href="http://www.aosabook.org/en/index.html">The Architecture of Open Source Applications</a>!</p>
<p><a title="www.Greg Wilson's blog.com" href="http://third-bit.com/blog/">Greg Wilson</a>, one of the editors of the book, (the other editor is <a title="If Amy Brown were a URL, she would live here." href="http://www.arbrown.ca/">Amy Brown</a>) tweeted that they were looking for coverage for embedded software. Well, I thought, I&#8217;ve been wanting to learn about FreeRTOS, and that fits the embedded and open source bills, so here we go!</p>
<p>I learned a lot reading the current edition of the book, and I hope that others can learn something from my forthcoming chapter on FreeRTOS.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saidsvec.com/2011/08/16/the-architecture-of-open-source-applications-freertos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ember is hiring in Boston!</title>
		<link>http://www.saidsvec.com/2011/05/23/ember-is-hiring-in-boston/</link>
		<comments>http://www.saidsvec.com/2011/05/23/ember-is-hiring-in-boston/#comments</comments>
		<pubDate>Mon, 23 May 2011 17:58:52 +0000</pubDate>
		<dc:creator>svec</dc:creator>
				<category><![CDATA[embedded]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://www.saidsvec.com/?p=352</guid>
		<description><![CDATA[My company, Ember, is hiring for embedded software engineers and QA engineers in Boston: http://www.ember.com/company_careers.html We develop the chips, software, and tools for wireless sensor networks. I&#8217;ve worked at Ember since December, and it&#8217;s the best place I&#8217;ve ever worked (and I&#8217;ve worked at some pretty good places!) And, no joke, all of my coworkers [...]]]></description>
			<content:encoded><![CDATA[<p>My company, <a title="Ember. You should totally work here." href="http://www.ember.com/" target="_blank">Ember</a>, is hiring for embedded software engineers and QA engineers in Boston:</p>
<p><a title="Ember Careers" href="http://www.ember.com/company_careers.html" target="_blank">http://www.ember.com/company_careers.html</a></p>
<p>We develop the chips, software, and tools for wireless sensor networks.</p>
<p>I&#8217;ve worked at Ember since December, and it&#8217;s the best place I&#8217;ve ever worked (and I&#8217;ve worked at some pretty good places!) And, no joke, all of my coworkers say the same thing. So either we&#8217;re that great of a place to work, or there&#8217;s something in the water, but either way, it&#8217;s awesome.</p>
<p>But, as Levar Burton says, you don&#8217;t have to take my word for it: We were just voted one of the top places to work in Boston: <a title="Proof that Ember is the best place to work in Boston." href="http://www.bizjournals.com/boston/news/2011/05/03/bbj-announces-best-places-to-work.html" target="_blank">http://www.bizjournals.com/boston/news/2011/05/03/bbj-announces-best-places-to-work.html</a></p>
<p>Our QA engineers are more &#8220;developer-y&#8221; than many QA roles, so definitely check it out even if you&#8217;re not in the market for a more traditional QA position.</p>
<p>Email me if you&#8217;re interested!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saidsvec.com/2011/05/23/ember-is-hiring-in-boston/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Embedded software and open source</title>
		<link>http://www.saidsvec.com/2010/10/05/embedded-software-and-open-source/</link>
		<comments>http://www.saidsvec.com/2010/10/05/embedded-software-and-open-source/#comments</comments>
		<pubDate>Tue, 05 Oct 2010 17:45:17 +0000</pubDate>
		<dc:creator>svec</dc:creator>
				<category><![CDATA[embedded]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[software development]]></category>

		<guid isPermaLink="false">http://www.saidsvec.com/?p=307</guid>
		<description><![CDATA[Embedded guru and author Jack Ganssle&#8217;s latest &#8220;Embedded Muse&#8221; newsletter has a lot of good commentary on open source in embedded software projects: http://www.ganssle.com/tem/tem199.htm I subscribe to very few newsletters, and Jack&#8217;s is one of them.  I read every issue, it&#8217;s that good. If you work in embedded software, or software of any kind, you [...]]]></description>
			<content:encoded><![CDATA[<p>Embedded guru and author <a title="Jack Ganssle's home page" href="http://www.ganssle.com/">Jack Ganssle&#8217;s</a> latest &#8220;Embedded Muse&#8221; newsletter has a lot of good commentary on open source in embedded software projects:</p>
<p><a title="Embedded Muse newsletter about open source" href="http://www.ganssle.com/tem/tem199.htm">http://www.ganssle.com/tem/tem199.htm</a></p>
<p>I subscribe to very few newsletters, and Jack&#8217;s is one of them.  I read every issue, it&#8217;s that good.</p>
<p>If you work in embedded software, or software of any kind, you should <a title="Subscribe to Jack Ganssle's embedded muse newsletter" href="http://www.ganssle.com/tem-subunsub.html">subscribe</a>!  (I don&#8217;t get anything if you subscribe, I just think it&#8217;s a worthwhile read.)</p>
<p>While I&#8217;m in fanboy mode, I&#8217;ll also recommend Jack&#8217;s <a title="Jack Ganssle's other articles" href="http://www.ganssle.com/articles-subj.htm">other articles</a> &#8211; click on a random one, you&#8217;ll probably learn something. My personal favorite is his <a title="Debouncing" href="http://www.ganssle.com/debouncing.htm">guide to debouncing</a>.  He does some good experiments and then shows hardware and software solutions to the pesky debouncing problems we embedded folks face.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saidsvec.com/2010/10/05/embedded-software-and-open-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Assigning Task Priorities with RMA</title>
		<link>http://www.saidsvec.com/2010/08/15/assigning-priorities-with-rma/</link>
		<comments>http://www.saidsvec.com/2010/08/15/assigning-priorities-with-rma/#comments</comments>
		<pubDate>Sun, 15 Aug 2010 19:41:54 +0000</pubDate>
		<dc:creator>svec</dc:creator>
				<category><![CDATA[embedded]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[RMA]]></category>

		<guid isPermaLink="false">http://www.saidsvec.com/?p=288</guid>
		<description><![CDATA[Embedded gurus Michael Barr and David Stewart have written a couple of great articles about assigning task priorities with RMA (the Rate Monotonic Algorithm): Introduction to Rate Monotonic Scheduling, by David Stewart and Michael Barr 3 Things Every Programmer Should Know About RMA, by Michael Barr The first article lays out the basics: RMA is [...]]]></description>
			<content:encoded><![CDATA[<p>Embedded gurus <a title="Michael Barr's bio" href="http://embeddedgurus.com/gurus/michael-barr/">Michael Barr</a> and <a title="David Stewart's bio" href="http://www.ece.umd.edu/~dstewart/">David Stewart</a> have written a couple of great articles about assigning task priorities with RMA (the Rate Monotonic Algorithm):</p>
<ol>
<li><a title="Introduction to Rate Monotonic Scheduling" href="http://www.netrino.com/Embedded-Systems/How-To/RMA-Rate-Monotonic-Algorithm/">Introduction to Rate Monotonic Scheduling</a>, by David Stewart and Michael Barr</li>
<li><a title="3 Things Every Programmer Should Know About RMA" href="http://embeddedgurus.com/blog/2010/08/3-things-every-programmer-should-know-about-rma/">3 Things Every Programmer Should Know About RMA</a>, by Michael Barr</li>
</ol>
<p>The first article lays out the basics: RMA is an algorithm that assigns static priorities to periodic tasks in order to maximize &#8220;schedulability.&#8221;  That&#8217;s a mouthful: 16 words, 37 syllables.  And one of the words isn&#8217;t real: &#8220;schedulability,&#8221; which means &#8220;able to be scheduled so that all tasks complete before their deadline every time.&#8221;</p>
<p>Let&#8217;s try again: RMA helps tasks get done in time.  That&#8217;s better: 7 words, 9 syllables.</p>
<p>The second article expands on the basics of RMA, giving some additional guidelines for when it should be used, especially as it applies to interrupts (which it does!).</p>
<p>I want to talk a bit more about the basics of RMA.  RMA is easy to describe: a task&#8217;s priority is based on how often it runs.  The task that runs the most often gets the highest priority, the task that runs the second most often gets the next highest priority, and so on.  Or, to quote the first article, &#8220;Assign the priority of each task according                    to its period, so that the shorter the period the higher the                    priority.&#8221;</p>
<p>RMA does not guarantee that your tasks will all complete in time; RMA does guarantee to find the optimal static prioritization assignment if one exists.  If RMA doesn&#8217;t produce a &#8220;schedulable&#8221; task set then no &#8220;schedulable&#8221; static priority scheme exists.</p>
<p>RMA&#8217;s greedy nature makes intuitive sense: starting at time zero, assume all tasks are ready to run.  Then run the task with the shortest period.  Since this task runs more often than any other task, it &#8220;feels&#8221; right to run it first to give it the best chance of finishing before it has to run again.  Next run the task with the next shortest period, and so on, until all tasks have been run.</p>
<p>Fortunately the intuition and &#8220;feel&#8221; that RMA works is backed by the fact that it does!</p>
<p>I&#8217;ve given a very basic overview of RMA here.  Please check out Stewart and Barr&#8217;s articles for more about RMA.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saidsvec.com/2010/08/15/assigning-priorities-with-rma/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I love embedded, and so does Woz!</title>
		<link>http://www.saidsvec.com/2010/07/05/i-love-embedded-and-so-does-woz/</link>
		<comments>http://www.saidsvec.com/2010/07/05/i-love-embedded-and-so-does-woz/#comments</comments>
		<pubDate>Mon, 05 Jul 2010 23:44:20 +0000</pubDate>
		<dc:creator>svec</dc:creator>
				<category><![CDATA[embedded]]></category>
		<category><![CDATA[geek]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[woz]]></category>

		<guid isPermaLink="false">http://www.saidsvec.com/?p=273</guid>
		<description><![CDATA[I love working in the embedded world.  Hardware + software = a great time and a great career. I came across this fantastic quote by Steve Wozniak in &#8220;Making it Big in Software,&#8221; by Sam Lightstone.  Woz is talking about designing the Apple II: &#8220;And I did every piece of software from the ground up, [...]]]></description>
			<content:encoded><![CDATA[<p>I love working in the embedded world.  Hardware + software = a great time and a great career.</p>
<p>I came across this fantastic quote by Steve Wozniak in &#8220;Making it Big in Software,&#8221; by Sam Lightstone.  Woz is talking about designing the Apple II:</p>
<blockquote><p>&#8220;And I did every piece of software from the ground up, through applications that you can&#8217;t pin down for any one of them.  The hardware was so interrelated that I can&#8217;t really divide it into software and hardware alone.  Those days were that way.  <strong>Today, if you work on embedded processors, you put a little microprocessor into a small product.  That&#8217;s the job in the world that I would love to this day!</strong> That&#8217;s what I did back then; it mixed both hardware and software.&#8221;</p></blockquote>
<p>Sounds like Woz wants my job.  :-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.saidsvec.com/2010/07/05/i-love-embedded-and-so-does-woz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

