<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.1.2" -->
<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/"
	>

<channel>
	<title>Kernel Mustard</title>
	<link>http://kernelmustard.com</link>
	<description>Reflections on Windows System Programming</description>
	<pubDate>Thu, 02 Oct 2008 02:28:13 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.1.2</generator>
	<language>en</language>
			<item>
		<title>Windows 7 Server == Windows Server 2008 R2</title>
		<link>http://kernelmustard.com/2008/09/30/windows-7-windows-server-2008-r2/</link>
		<comments>http://kernelmustard.com/2008/09/30/windows-7-windows-server-2008-r2/#comments</comments>
		<pubDate>Wed, 01 Oct 2008 00:12:00 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<category><![CDATA[WDK]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2008/09/30/windows-7-windows-server-2008-r2/</guid>
		<description><![CDATA[Wow, who knew. Well, apparently everyone else. Sigh&#8230;
]]></description>
			<content:encoded><![CDATA[<p>Wow, who knew. Well, apparently everyone else. Sigh&hellip;</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2008/09/30/windows-7-windows-server-2008-r2/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Bad Idea: Making assumptions about CPU number</title>
		<link>http://kernelmustard.com/2008/09/30/bad-idea-making-assumptions-about-cpu-number/</link>
		<comments>http://kernelmustard.com/2008/09/30/bad-idea-making-assumptions-about-cpu-number/#comments</comments>
		<pubDate>Tue, 30 Sep 2008 17:13:14 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[WDK]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2008/09/30/bad-idea-making-assumptions-about-cpu-number/</guid>
		<description><![CDATA[If you own a driver that makes assumptions about what processor you&#8217;re executing on at any point, you may want to re-think that strategy.
It has been possible in the past to assume that, if you&#8217;re running at DISPATCH_LEVEL on a given physical processor, you can get away with less locking if you do per-processor data [...]]]></description>
			<content:encoded><![CDATA[<p>If you own a driver that makes assumptions about what processor you&#8217;re executing on at any point, you may want to re-think that strategy.</p>
<p>It has been possible in the past to assume that, if you&#8217;re running at DISPATCH_LEVEL on a given physical processor, you can get away with less locking if you do per-processor data structures. It makes sense: you are guaranteed to be the only thread in your code on that CPU until you&#8217;re done, since you can only be preempted by threads &gt; DISPATCH_LEVEL, and your DPC will pick up where it left off once the system returns to DISPATCH_LEVEL. With a per-processor queue or other data structure, accesses from DISPATCH_LEVEL are guaranteed to be atomic.</p>
<p>Well, for reasons that will become clear over the next few months, that strategy is no longer possible. There may be cases in future versions of Windows that allow different physical processors to be assigned the same processor ID. That means that two different threads running at the same time on different processors might wind up colliding on the same queue.</p>
<p>Of course, this also implies that data structures that were once assumed to be per-processor exclusive (i.e. singletons) will no longer necessarily be so. If you&#8217;re using processor number as a key that you assume is globally unique, e.g. managing some initialize-once data or something, you will need to re-think your architecture.</p>
<p>If you don&#8217;t generally deal with processor numbers, none of this matters to you. For those that do, however, if you do anything &quot;smart&quot; with processor numbers, you may have some re-thinking to do.</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2008/09/30/bad-idea-making-assumptions-about-cpu-number/feed/</wfw:commentRss>
		</item>
		<item>
		<title>At Driver DevCon</title>
		<link>http://kernelmustard.com/2008/09/29/at-driver-devcon/</link>
		<comments>http://kernelmustard.com/2008/09/29/at-driver-devcon/#comments</comments>
		<pubDate>Mon, 29 Sep 2008 23:08:24 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[WDK]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2008/09/29/at-driver-devcon/</guid>
		<description><![CDATA[Ken, Soren, and I are at DDC 2008 this week. So far, the talks have been great, as is the weather. If you&#8217;re around, drop one of us a line.
 -Steve
]]></description>
			<content:encoded><![CDATA[<p><a href="http://nynaeve.net">Ken</a>, <a href="http://inside.echobit.net/dreijer">Soren</a>, and I are at DDC 2008 this week. So far, the talks have been great, as is the weather. If you&#8217;re around, drop one of us a line.</p>
<p> -Steve</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2008/09/29/at-driver-devcon/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Free advice (being worth what you pay for it, of course)</title>
		<link>http://kernelmustard.com/2008/09/29/free-advice-being-worth-what-you-pay-for-it-of-course/</link>
		<comments>http://kernelmustard.com/2008/09/29/free-advice-being-worth-what-you-pay-for-it-of-course/#comments</comments>
		<pubDate>Mon, 29 Sep 2008 21:27:42 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2008/09/29/free-advice-being-worth-what-you-pay-for-it-of-course/</guid>
		<description><![CDATA[Never argue with an idiot. They drag you down to their level and then beat you with experience.
]]></description>
			<content:encoded><![CDATA[<p>Never argue with an idiot. They drag you down to their level and then beat you with experience.</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2008/09/29/free-advice-being-worth-what-you-pay-for-it-of-course/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PhoneFactor video</title>
		<link>http://kernelmustard.com/2008/04/14/phonefactor-video/</link>
		<comments>http://kernelmustard.com/2008/04/14/phonefactor-video/#comments</comments>
		<pubDate>Mon, 14 Apr 2008 14:17:08 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Positive Networks]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2008/04/14/phonefactor-video/</guid>
		<description><![CDATA[It&#8217;s been a long time since I&#8217;ve posted anything, but I promise this is going to be worth it:
http://www.youtube.com/phonefactor
Thanks to Dan Leafblad for doing all the hard work to pull this together. And Shame on Evan Conway for making me wear a conehead hat. It looks&#8230; well&#8230; just watch the video&#8230;
]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a long time since I&#8217;ve posted anything, but I promise this is going to be worth it:</p>
<p><a href="http://www.youtube.com/phonefactor">http://www.youtube.com/phonefactor</a></p>
<p>Thanks to Dan Leafblad for doing all the hard work to pull this together. And Shame on Evan Conway for making me wear a conehead hat. It looks&#8230; well&#8230; just watch the video&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2008/04/14/phonefactor-video/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Interesting peek at Win7</title>
		<link>http://kernelmustard.com/2007/10/23/interesting-peek-at-win7/</link>
		<comments>http://kernelmustard.com/2007/10/23/interesting-peek-at-win7/#comments</comments>
		<pubDate>Tue, 23 Oct 2007 18:09:22 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2007/10/23/interesting-peek-at-win7/</guid>
		<description><![CDATA[I&#8217;ve been hearing little anecdotes about Win7 for months now, but Ars has one of the better articles I&#8217;ve seen so far. Interesting:

Traut runs a team of about 200 software engineers at Microsoft that is responsible for the core kernel scheduling, memory management, boot sequence, and virtualization technology such as Virtual PC and Virtual Server. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been hearing little anecdotes about Win7 for months now, but <a href="http://arstechnica.com/news.ars/post/20071021-core-of-windows-7-taking-shape-meet-the-minwin-kernel.html">Ars has one of the better articles I&#8217;ve seen</a> so far. Interesting:</p>
<blockquote><p>
Traut runs a team of about 200 software engineers at Microsoft that is responsible for the core kernel scheduling, memory management, boot sequence, and virtualization technology such as Virtual PC and Virtual Server. The latter technologies are becoming more and more important as servers get more powerful and gain more and more CPU cores, and it was clear from the demonstration that Microsoft is placing significant effort into integrating virtual machine technology into everything that they do.
</p></blockquote>
<p>As I&#8217;ve written before, I think a focus on (high-scale) multi-core will be a key to the OS&#8217;s success going forward. Anyway, check out the video linked from the article.</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2007/10/23/interesting-peek-at-win7/feed/</wfw:commentRss>
		</item>
		<item>
		<title>No more single-core chips</title>
		<link>http://kernelmustard.com/2007/10/19/366/</link>
		<comments>http://kernelmustard.com/2007/10/19/366/#comments</comments>
		<pubDate>Fri, 19 Oct 2007 14:29:18 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2007/10/19/366/</guid>
		<description><![CDATA[Intel is phasing out single-core desktop processors. The end of the end of an era!
UPDATE: Ken covered this a while ago regarding a similar decision by AMD.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://arstechnica.com/journals/hardware.ars/2007/10/18/intel-phasing-out-single-core-desktop-processors">Intel is phasing out single-core desktop processors</a>. The end of the end of an era!</p>
<p>UPDATE: <a href="http://www.nynaeve.net/?p=141">Ken</a> covered this a while ago regarding a similar decision by AMD.</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2007/10/19/366/feed/</wfw:commentRss>
		</item>
		<item>
		<title>I guess it depends on what you&#8217;re hex editing</title>
		<link>http://kernelmustard.com/2007/10/18/i-guess-it-depends-on-what-your-hex-editing/</link>
		<comments>http://kernelmustard.com/2007/10/18/i-guess-it-depends-on-what-your-hex-editing/#comments</comments>
		<pubDate>Thu, 18 Oct 2007 16:04:00 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2007/10/18/i-guess-it-depends-on-what-your-hex-editing/</guid>
		<description><![CDATA[Ken and Rich Johnson from MSRC were both extolling the virtues of hiew as a hex editor a few weeks ago. I recently needed to do some hex editing of a pcap file (needed to manually munge some network packets for IM driver testing), and my new laptop didn&#8217;t have a hex editor yet, so [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.nynaeve.net">Ken</a> and Rich Johnson from MSRC were both extolling the virtues of <a href="http://www.hiew.ru/">hiew</a> as a hex editor a few weeks ago. I recently needed to do some hex editing of a pcap file (needed to manually munge some network packets for IM driver testing), and my new laptop didn&#8217;t have a hex editor yet, so I decided to go grab hiew and give it a shot.</p>
<p>Once you get over the character-mode interface, it actually has a ton of neat features, including a nice disassembler, and basically everyone I&#8217;ve asked in the hex-editing community (?) concurs that it&#8217;s the only thing they&#8217;d ever use to modify a binary.</p>
<p>So, I loaded up my pcap file and searched around for the bytes to modify. I found the (long) block of hex that I wanted in another capture file and went to copy the bytes. Then I tried to open another file and past them in. Hmm, nope, not supported!</p>
<p>Then I tried re-arranging bytes within the same file. Nope! Not (obviously?) supported, at least without overwriting things.</p>
<p>So, in a bit of a huff, I fired up Visual Studio 2005 and instantly copied and pasted the bytes I needed and achieved a state of happiness in mere seconds.</p>
<p>I&#8217;m sure there are a lot of people that will be able to tell me how to get hiew to do this, and I&#8217;m sure I could have written a script or something, but&hellip; life is to short to learn Yet Another Non-Obvious Editor.</p>
<p>So, I&#8217;m sure hiew is great, and if I ever need to hex edit a PE image, I&#8217;ll certainly keep it in mind. But for network packets - back to VS!</p>
<p>UPDATE: I am a dumbass. I cannot believe I left the title &quot;your hex editing&quot; instead of &quot;you&#8217;re&quot; - the shame! <img src='http://kernelmustard.com/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2007/10/18/i-guess-it-depends-on-what-your-hex-editing/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Metasploit as the security Mendoza line</title>
		<link>http://kernelmustard.com/2007/10/11/metasploit-as-the-security-mendoza-line/</link>
		<comments>http://kernelmustard.com/2007/10/11/metasploit-as-the-security-mendoza-line/#comments</comments>
		<pubDate>Thu, 11 Oct 2007 17:04:33 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2007/10/11/metasploit-as-the-security-mendoza-line/</guid>
		<description><![CDATA[If you are in (or near) data security and you haven&#8217;t heard of Metasploit, you owe it to yourself to check it out. The RiskAnalys.is blog observes today that Metasploit is the security Mendoza line. I&#8217;ll let them explain the analogy for the non-baseball fans in the crowd.
I think I forgot to mention the release [...]]]></description>
			<content:encoded><![CDATA[<p>If you are in (or near) data security and you haven&#8217;t heard of <a href="http://www.metasploit.org">Metasploit</a>, you owe it to yourself to check it out. The RiskAnalys.is blog observes today that <a href="http://riskmanagementinsight.com/riskanalysis/?p=294">Metasploit is the security Mendoza line</a>. I&#8217;ll let them explain the analogy for the non-baseball fans in the crowd.</p>
<p>I think I forgot to mention the release of the 8th volume of <a href="http://www.uninformed.org">Uninformed</a> a couple of weeks ago as well. Lots of good stuff there. Some of the same (bright) people are involved in both Metasploit and Uninformed.</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2007/10/11/metasploit-as-the-security-mendoza-line/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The return of err.exe</title>
		<link>http://kernelmustard.com/2007/10/09/the-return-of-errexe/</link>
		<comments>http://kernelmustard.com/2007/10/09/the-return-of-errexe/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 16:49:03 +0000</pubDate>
		<dc:creator>dispensa</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<category><![CDATA[Windows]]></category>

		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://kernelmustard.com/2007/10/09/the-return-of-errexe/</guid>
		<description><![CDATA[I&#8217;ve been working with Karin Meier-Magruder from the SDK team at Microsoft to get everyone&#8217;s favorite tool, err.exe, [re-]added to the PSDK. She&#8217;s working on getting it done, but meanwhile, as a special treat for Kernel Mustard readers, I have a newly updated err.exe ready for download. There&#8217;s a EULA inside the .zip that governs [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working with Karin Meier-Magruder from the SDK team at Microsoft to get everyone&#8217;s favorite tool, <tt>err.exe</tt>, [re-]added to the PSDK. She&#8217;s working on getting it done, but meanwhile, as a special treat for Kernel Mustard readers, I have a <a href="http://kernelmustard.com/~dispensa/err.zip">newly updated err.exe</a> ready for download. There&#8217;s a EULA inside the .zip that governs the tool&#8217;s use.</p>
<p>For those that haven&#8217;t used it before, the current err.exe indexes 22,851 error codes from 171 sources. Pass it a magic number from somewhere and it&#8217;ll make sense out of it!</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://kernelmustard.com/2007/10/09/the-return-of-errexe/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
