<?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>Michael Richmond</title>
	<atom:link href="https://michaelrichmond.net/blog/feed/" rel="self" type="application/rss+xml" />
	<link>https://michaelrichmond.net/blog/</link>
	<description></description>
	<lastBuildDate>Tue, 24 Jun 2014 04:13:27 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.3</generator>
	<item>
		<title>LTFS Podcasts</title>
		<link>https://michaelrichmond.net/blog/2014/06/23/ltfs-podcasts/</link>
					<comments>https://michaelrichmond.net/blog/2014/06/23/ltfs-podcasts/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Tue, 24 Jun 2014 04:13:27 +0000</pubDate>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[LTFS]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=842</guid>

					<description><![CDATA[<p>The post <a href="https://michaelrichmond.net/blog/2014/06/23/ltfs-podcasts/">LTFS Podcasts</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div style="float: right;"><img decoding="async" style="float: right; padding: 0px 0px 24px 24px;" size-full wp-image-845" src="https://michaelrichmond.net/blog/wp-content/uploads/2014/06/PodCastIcon.png" alt="Podcast" width="120" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2014/06/PodCastIcon.png 476w, https://michaelrichmond.net/blog/wp-content/uploads/2014/06/PodCastIcon-300x300.png 300w, https://michaelrichmond.net/blog/wp-content/uploads/2014/06/PodCastIcon-150x150.png 150w" sizes="(max-width: 476px) 100vw, 476px" /></div>
<p>In many ways the Linear Tape File System (LTFS) is my baby. I was the architect of the development work and a primary author of the LTFS Format Specification. I have spent a good deal of time advocating for LTFS including my posts about LTFS on this blog.</p>
<p>Last year I was offered an opportunity to bring more of the LTFS story to light. Jay Livens (Director, Product &amp; Solutions Marketing, Iron Mountain) asked me if I would record some podcasts with him about the development of LTFS. Over the course of a few months we recorded 3 interviews with each session focused on a different aspect of the LTFS development; the Creation, the Technology, and the Future.</p>
<p>The podcasts that came out of these interviews were published today on the <a title="LTFS podcasts at IronMountain.com" href="http://www.ironmountain.com/ltfs">Iron Mountain website</a>.</p>
<p>The post <a href="https://michaelrichmond.net/blog/2014/06/23/ltfs-podcasts/">LTFS Podcasts</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2014/06/23/ltfs-podcasts/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>stealth startup ⥤ StackStorm</title>
		<link>https://michaelrichmond.net/blog/2014/05/05/stealth-startup-stackstorm/</link>
					<comments>https://michaelrichmond.net/blog/2014/05/05/stealth-startup-stackstorm/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Tue, 06 May 2014 04:01:36 +0000</pubDate>
				<category><![CDATA[michael]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=826</guid>

					<description><![CDATA[<p>A couple of months ago I left my position at SanDisk to join a hush-hush stealth startup. The experience has alternated between feeling weird, and the most normal thing in the world. Weird when friends and former colleagues ask what &#8230; <a href="https://michaelrichmond.net/blog/2014/05/05/stealth-startup-stackstorm/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2014/05/05/stealth-startup-stackstorm/">stealth startup ⥤ StackStorm</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>A couple of months ago I left my position at <a href="http://sandisk.com">SanDisk</a> to join a hush-hush stealth startup. The experience has alternated between feeling weird, and the most normal thing in the world. Weird when friends and former colleagues ask what I&#8217;m working on and I feel like a shifty agent from a three-letter agency. &#8220;We work on, you know making things better.&#8221; Normal because this is the valley and stealth is just part of the industry.</p>
<p>I&#8217;ve always felt that this was the right move for me and so far it&#8217;s been great.</p>
<p>Today we are announcing the company to the world&#8230;</p>
<div style="float: left;"><a href="http://www.stackstorm.com"><img decoding="async" class="aligncenter wp-image-827 size-thumbnail" src="http://www.smallersystems.com/blog/wp-content/uploads/2014/05/StackStormLogoSquareMedium-150x150.png" alt="StackStorm Logo" width="150" height="150" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2014/05/StackStormLogoSquareMedium-150x150.png 150w, https://michaelrichmond.net/blog/wp-content/uploads/2014/05/StackStormLogoSquareMedium.png 240w" sizes="(max-width: 150px) 100vw, 150px" /></a></div>
<p><em><a href="http://stackstorm.com">StackStorm</a> is an emerging leader of the third wave of operations automation. Built from the ground up with DevOps in mind, StackStorm’s vision is a world of self-driving data centers that learn over time how to better operate themselves. StackStorm solutions leverage existing configuration management and monitoring solutions to deliver automation that safely ties together today&#8217;s loosely coupled, heterogeneous, ever changing cloud infrastructures.</em></p>
<p style="text-align: center;"><a href="https://www.linkedin.com/company/stackstorm"><img decoding="async" class="alignnone wp-image-836 size-full" src="https://michaelrichmond.net/blog/wp-content/uploads/2014/05/ic-linkedin.png" alt="ic-linkedin" width="26" height="26" /></a> <a href="https://www.facebook.com/stackstormdevops"><img decoding="async" class="alignnone wp-image-835 size-full" src="https://michaelrichmond.net/blog/wp-content/uploads/2014/05/ic-facebook.png" alt="ic-facebook" width="26" height="26" /></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2014/05/05/stealth-startup-stackstorm/">stealth startup ⥤ StackStorm</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2014/05/05/stealth-startup-stackstorm/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Bridging ExpressCard to PCIe for LTO</title>
		<link>https://michaelrichmond.net/blog/2014/03/30/bridging-expresscard-pcie-lto/</link>
					<comments>https://michaelrichmond.net/blog/2014/03/30/bridging-expresscard-pcie-lto/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Sun, 30 Mar 2014 14:35:05 +0000</pubDate>
				<category><![CDATA[data storage]]></category>
		<category><![CDATA[demo]]></category>
		<category><![CDATA[file-system]]></category>
		<category><![CDATA[hardware]]></category>
		<category><![CDATA[LTFS]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[os x]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=771</guid>

					<description><![CDATA[<p>In the mid-1990&#8217;s I worked as a photoshop jockey for the Sydney Morning Herald and other Fairfax Media newspapers. At that time we would regularly send a photographer into the field with a large Pelican case that held a digital &#8230; <a href="https://michaelrichmond.net/blog/2014/03/30/bridging-expresscard-pcie-lto/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2014/03/30/bridging-expresscard-pcie-lto/">Bridging ExpressCard to PCIe for LTO</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In the mid-1990&#8217;s I worked as a photoshop jockey for the <a href="http://www.smh.com.au">Sydney Morning Herald</a> and other <a href="http://www.fairfaxmedia.com.au">Fairfax Media</a> newspapers. At that time we would regularly send a photographer into the field with a large Pelican case that held a digital field kit.</p>
<p>The kit consisted of  a maxed out <a href="http://www.everymac.com/systems/apple/powerbook/specs/mac_powerbook180.html">Powerbook 180</a> (Greyscale 9.8&#8243; screen, 14MB RAM, 33MHz M68030 CPU, 56.7kbps modem) and a Nikon LS-1000 film scanner with associated cables and power supplies. The kit allowed a photographer to shoot film, process the film at a local mini-lab in the field, scan the images, and transfer them to the newspaper office. In practice this allowed comparatively rather rapid delivery of photos into the editorial process.</p>
<p>During my work on LTFS I messed around with a bunch of side projects on the periphery of LTFS. In one of these projects tried to devise a portable system that would support LTFS. My thinking was largely modeled on my earlier experience with the Powerbook-based field kit. I wanted to be able to give someone a portable box that could be used with a laptop and a digital camera that could be used as a videographer field unit. My idea was something that could be carried to any location, would be easy to set up, and allowed the user to dump content onto LTFS tapes and FedEx the tapes back to home base.</p>
<p>As a demonstration unit I assembled an enclosure that held a LTO5 drive, a SAS HBA, and a PCIe to ExpressCard bridge. This enclosure ended up having the footprint of a 15&#8243; Powerbook and was a little taller than a LTO half-high drive. I showed the demo unit at several trade shows and other public events we did for LTFS.</p>
<p style="text-align: center;"><a href="https://michaelrichmond.net/blog/wp-content/uploads/2014/03/LTOPortableBlog.png"><img decoding="async" class="wp-image-773 " alt="LTO/LTFS portable drive at NAB 2010" src="https://michaelrichmond.net/blog/wp-content/uploads/2014/03/LTOPortableBlog.png" width="90%" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2014/03/LTOPortableBlog.png 1024w, https://michaelrichmond.net/blog/wp-content/uploads/2014/03/LTOPortableBlog-300x241.png 300w, https://michaelrichmond.net/blog/wp-content/uploads/2014/03/LTOPortableBlog-768x617.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></a>LTO/LTFS portable drive at NAB 2010</p>
<p>While refining this portable LTFS box I played with a few different ExpressCard-&gt;PCIe bridges and some early thunderbolt-&gt;PCIe bridges. A recent question on the Mac Enterprise mailing list asked:</p>
<blockquote><p>&#8220;One route is to go with a TB to PCI chassis then SCSI card to LTO but what little I have found says this is not reliable. Ditto TB to SAS then to SAS LTO. Anyone have any experience with setups like this and with what software?</p>
<p>Tape is pretty much a given. This is a situation where people need to be able to go back in time and pick up a file or folder state from 3 months ago.&#8221;</p></blockquote>
<p>My work building this LTFS portable drive provided me with somewhat relevant experience. My answer to the mailing list may be useful for a broader audience so I&#8217;ve included it below:</p>
<blockquote><p>My experience using both thunderbolt-&gt;PCIe and ExpressCard-&gt;PCIe bridges has largely been successful. I used the bridges with both SAS and Fibre Channel HBAs to connect LTO4 and LTO5 drives to a few different OS X machines (and some Dell and Lenovo systems). In all cases I found the ExpressCard/Thunderbolt-&gt;PCIe bridges reliable.</p></blockquote>
<blockquote><p>The few problems I encountered were always traced back to the HBAs and/or LTO drive not supporting or recognizing various sleep state events. (Or OS X not reinitializing the bus after waking up from sleep which amounts to the same thing.)</p></blockquote>
<blockquote><p>Fortunately working around this sleep issue is trivial. Just disable system sleep. Allow the monitor to go to sleep if you like, but ensure that the OS X system does not sleep.</p></blockquote>
<blockquote><p>If you are going with LTO tape in the scenario you briefly describe, you will need to work out how you want to handle the file meta-data. (Filename, timestamps, folders, permissions, etc.) Traditional tape systems maintain separate parallel databases to hold the metadata. This works, but if the database gets corrupted then all of your tapes suddenly hold garbage.</p></blockquote>
<blockquote><p>A more recent approach that is possible with LTO5 and LTO6 is to use LTFS. LTFS is a POSIX-compliant filesystem that uses LTO tape as the primary filesystem datastore. This means the file meta-data is stored on the tape right alongside the file content. As a result, the tape is self-contained and can be mounted exactly like a USB drive can be mounted. Data can be added to the LTFS volume by dragging and dropping files. Restoring data is also a drag and drop operation.</p></blockquote>
<blockquote><p>Alternatively, since LTFS is POSIX compliant applications can seek to any byte offset within a file in LTFS. In comparison, traditional systems require a parallel database, or a packaging format like “tar”. Packaging formats typically require an extensive tape traverse during restore. Whereas LTFS supports a direct seek to the data being accessed. LTFS also provides file-system versioning baked into the filesystem. The file-system versioning might be of use in your scenario.</p></blockquote>
<blockquote><p>The implementation of LTFS for OS X, Linux, and Windows is free for single tape-drive operation.</p></blockquote>
<p>The post <a href="https://michaelrichmond.net/blog/2014/03/30/bridging-expresscard-pcie-lto/">Bridging ExpressCard to PCIe for LTO</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2014/03/30/bridging-expresscard-pcie-lto/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Atari 2600 hardware mod</title>
		<link>https://michaelrichmond.net/blog/2013/09/25/atari-2600-hardware-mod/</link>
					<comments>https://michaelrichmond.net/blog/2013/09/25/atari-2600-hardware-mod/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Wed, 25 Sep 2013 16:00:22 +0000</pubDate>
				<category><![CDATA[atari 2600]]></category>
		<category><![CDATA[gaming]]></category>
		<category><![CDATA[hardware]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=731</guid>

					<description><![CDATA[<p>This week, much of the gaming world focused the release of GTA V from Rockstar Games. I found some spare time to get an old Atari system cleaned up and working by installing an atari 2600 composite output mod. After &#8230; <a href="https://michaelrichmond.net/blog/2013/09/25/atari-2600-hardware-mod/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2013/09/25/atari-2600-hardware-mod/">Atari 2600 hardware mod</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>This week, much of the gaming world focused the release of GTA V from Rockstar Games. I found some spare time to get an old Atari system cleaned up and working by installing an atari 2600 composite output mod.</p>
<p>After 20+ years in a closet our well loved Atari 2600 was a little worse for wear. The console has accumulated grime and the reset switch is no-longer springy. Besides cleaning off the dust and replacing a faulty reset switch I wanted to improve the video output.</p>
<p>The stock Atari 2600 produces an RF modulated video/audio signal as output. On old TVs the RF signal connects to the antenna-in jack. On modern TVs it is often easier to hook up a composite video input. Eliminating the RF modulation should also improve the picture quality.</p>
<p>A few different hardware hacks that produce composite out from an Atari are described on various websites. The output board I selected is one of the better composite output circuit designs.</p>
<h3>Parts list</h3>
<ul>
<li>S-video and Composite video board from <a href="http://electronicsentimentalities.com/">electronicsentimentalities.com</a></li>
<li>Replacement original Atari switches from <a href="http://best-electronics-ca.com/">best-electronics-ca.com</a></li>
<li>Rainbow ribbon cable with header jacks from an ebay seller</li>
<li>Header pins</li>
</ul>
<p>Original console:<br />
<a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0184-forweb.jpg"><img decoding="async" class="aligncenter size-large wp-image-738" alt="" src="http://www.smallersystems.com/blog/wp-content/uploads/2013/09/IMG_0184-forweb-1024x558.jpg" width="800" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0184-forweb-1024x558.jpg 1024w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0184-forweb-300x164.jpg 300w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0184-forweb-768x419.jpg 768w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0184-forweb-1536x837.jpg 1536w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0184-forweb.jpg 1600w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></p>
<p>While dismantling I found the remains of a previous home-made repair &#8211; an elastic band to add springiness to the reset switch. The original spring seems to have gone missing over the years. While the console was dismantled I replaced the reset switch with a new old-stock part.</p>
<p><a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0188-forweb.jpg"><img decoding="async" class="aligncenter size-large wp-image-739" alt="" src="http://www.smallersystems.com/blog/wp-content/uploads/2013/09/IMG_0188-forweb-1024x682.jpg" width="800" /></a></p>
<p>After installation:<br />
<a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0202-forweb.jpg"><img decoding="async" class="aligncenter size-large wp-image-740" alt="atari 2600 composite output board installed" src="http://www.smallersystems.com/blog/wp-content/uploads/2013/09/IMG_0202-forweb-1024x704.jpg" width="800" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0202-forweb-1024x704.jpg 1024w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0202-forweb-300x206.jpg 300w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0202-forweb-768x528.jpg 768w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0202-forweb-1536x1056.jpg 1536w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0202-forweb.jpg 1600w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></p>
<p>The video mod board is in the lower right with the rainbow ribbon cable going from the motherboard (inside the thick aluminium RF shield box) to the video mod then a second ribbon cable running up the right side to the composite and s-video output jacks. A couple of pieces of kapton tape hold the video mod board securely in place.</p>
<p>New ports:<br />
<a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0209-forweb.jpg"><img decoding="async" class="aligncenter size-large wp-image-741" alt="" src="http://www.smallersystems.com/blog/wp-content/uploads/2013/09/IMG_0209-forweb-1024x535.jpg" width="800" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0209-forweb-1024x535.jpg 1024w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0209-forweb-300x157.jpg 300w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0209-forweb-768x401.jpg 768w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0209-forweb-1536x803.jpg 1536w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/IMG_0209-forweb.jpg 1600w" sizes="(max-width: 1024px) 100vw, 1024px" /></a></p>
<h3>Results</h3>
<p>Photograph of Pole Position game on Atari 2600 heavy-sixer console before hardware modification. (Photograph of LCD TV screen.)<br />
<a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/before.jpg"><img decoding="async" class="aligncenter size-full wp-image-732" alt="Pole Position on Atari 2600 before modification" src="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/before.jpg" width="800" /></a></p>
<p>Photograph of Pole Position game on Atari 2600 heavy-sixer console after hardware modification.<br />
<a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after.jpg"><img decoding="async" class="aligncenter size-full wp-image-732" alt="Pole Position on atari 2600 composite output after installing video mod board" src="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after.jpg" width="800" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after.jpg 1600w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after-300x194.jpg 300w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after-1024x660.jpg 1024w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after-768x495.jpg 768w, https://michaelrichmond.net/blog/wp-content/uploads/2013/09/after-1536x991.jpg 1536w" sizes="(max-width: 1600px) 100vw, 1600px" /></a></p>
<p>Overall the mod is a resounding success. RF noise is eliminated, image colors have better saturation, and the console can be connected to standard composite input jacks thereby eliminating the need to re-tune the TV. Installing the video mod involved bypassing the RF modulator and removing the original coax cable.</p>
<p>Basic testing with Pole Position and Pac-Mac during reassembly showed normal operation. I&#8217;ll update this post when I&#8217;ve tested with other games.</p>
<p>The post <a href="https://michaelrichmond.net/blog/2013/09/25/atari-2600-hardware-mod/">Atari 2600 hardware mod</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2013/09/25/atari-2600-hardware-mod/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Create a FreeBSD 9.0 machine image under Linux</title>
		<link>https://michaelrichmond.net/blog/2013/09/15/create-a-freebsd-9-0-machine-image-under-linux/</link>
					<comments>https://michaelrichmond.net/blog/2013/09/15/create-a-freebsd-9-0-machine-image-under-linux/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Sun, 15 Sep 2013 16:00:58 +0000</pubDate>
				<category><![CDATA[operating systems]]></category>
		<category><![CDATA[virtualization]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=697</guid>

					<description><![CDATA[<p>This is a guide to building a virtual machine image for KVM that runs FreeBSD with virtio drivers installed. Requirements: Download FreeBSD 9.0 install disk. Download virtio drivers for FreeBSD 9.0 from http://people.freebsd.org/~kuriyama/virtio/ Notes: Commands and to be performed under &#8230; <a href="https://michaelrichmond.net/blog/2013/09/15/create-a-freebsd-9-0-machine-image-under-linux/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2013/09/15/create-a-freebsd-9-0-machine-image-under-linux/">Create a FreeBSD 9.0 machine image under Linux</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>This is a guide to building a virtual machine image for KVM that runs FreeBSD with virtio drivers installed.</p>
<h3><strong>Requirements:</strong></h3>
<ul>
<li>Download FreeBSD 9.0 install disk.</li>
<li>Download virtio drivers for FreeBSD 9.0 from <a href="http://people.freebsd.org/~kuriyama/virtio/">http://people.freebsd.org/~kuriyama/virtio/</a></li>
</ul>
<h3><strong>Notes:</strong></h3>
<p>Commands and to be performed under Linux are shown in <span style="color: #339966;">green</span>.<br />
Commands and file edits to be performed under the FreeBSD guest OS are shown in <span style="color: #800080;">purple</span>.</p>
<h3><b>Create empty disk image (10GB):</b></h3>
<ul>
<li> On your Linux host, run the command:</li>
</ul>
<blockquote>
<pre><span style="color: #339966;">dd if=/dev/null of=freebsd-9_0.raw bs=1024 seek=10485760</span></pre>
</blockquote>
<h3><b>Boot FreeBSD installer and install:</b></h3>
<ul>
<li>On your Linux host, run the command:</li>
</ul>
<blockquote>
<pre><span style="color: #339966;">sudo kvm -vnc 0.0.0.0:54 -drive file=freebsd-9_0.raw,if=ide -net nic -net user -cdrom FreeBSD-9.0-RELEASE-amd64-disc1.iso</span></pre>
</blockquote>
<ul>
<li>Connect to the guest OS using a VNC client pointed to port 5954. (5900 + 54 from command above.)</li>
<li>Step through the FreeBSD installer:
<ul>
<li>allocate the whole virtual drive to FreeBSD.</li>
<li>Configure networking to use IPv4 and DHCP.</li>
</ul>
<li>Reboot the FreeBSD guest.</li>
</ul>
<p><b>Install Virt IO drivers:</b></p>
<ul>
<li>Download the binary package from <a href="http://people.freebsd.org/~kuriyama/virtio/">http://people.freebsd.org/~kuriyama/virtio/</a></li>
<li>Install the package by running the command &#8220;<span style="color: #800080; font-family: monospace;">pkg_add virtio-kmod-9-0.239473.tbz</span>&#8221; in the guest OS.</li>
<li>Edit <span style="color: #800080; font-family: monospace;">/boot/loader.conf</span> to add the following lines:</li>
</ul>
<blockquote>
<pre><span style="color: #339966;">virtio_load="YES"
virtio_pci_load="YES"
virtio_blk_load="YES"
if_vtnet_load="YES"</span></pre>
</blockquote>
<ul>
<li>Edit <span style="color: #800080; font-family: monospace;">/etc/fstab</span> in the guest OS to change the device identifiers to &#8220;<span style="color: #800080; font-family: monospace;">/dev/vtbd*</span>&#8220;. (The following example shows the original device entries commented out followed by the virtio entries.)</li>
</ul>
<blockquote>
<pre><span style="color: #800080;"># Device Mountpoint FStype Options Dump Pass#
</span><span style="color: #800080;">#/dev/ada0p2 / ufs rw 1 1
</span><span style="color: #800080;">#/dev/ada0p3 none swap sw 0 0
</span><span style="color: #800080;"> /dev/vtbd0p2 / ufs rw 1 1
</span><span style="color: #800080;"> /dev/vtbd0p3 none swap sw 0 0</span></pre>
</blockquote>
<ul>
<li>Edit <span style="color: #800080; font-family: monospace;">/etc/rc.conf</span> in the guest OS to add the line shown in bold. (This line configures FreeBSD to use DHCP when bringing up the &#8220;vtnet0&#8221; network interface.):</li>
</ul>
<blockquote>
<pre><span style="color: #800080;">hostname="freebsd-90"
</span><span style="color: #800080;">ifconfig_re0="DHCP"
</span><span style="color: #800080;"> ifconfig_vtnet0="DHCP"
</span><span style="color: #800080;">sshd_enable="YES"
</span><span style="color: #800080;"># Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable
</span><span style="color: #800080;">dumpdev="NO"</span></pre>
</blockquote>
<ul>
<li>Power off the guest.</li>
<li>Relaunch using virtio for the virtual hard drive and virtual network adapter using the following KVM command:</li>
</ul>
<blockquote>
<pre><span style="color: #339966;">sudo kvm -vnc 0.0.0.0:54 -drive file=freebsd-9_0.raw,if=virtio -net nic,model=virtio -net user</span></pre>
</blockquote>
<ul>
<li>Verify correct hard drive and network operation in the guest OS.</li>
<li>If the hard drive and network appear to be working correctly then power off the FreeBSD guest.</li>
</ul>
<h3><b>VirtIO in FreeBSD setup resources:</b></h3>
<ul>
<li><a href="http://people.freebsd.org/~kuriyama/virtio/">http://people.freebsd.org/~kuriyama/virtio/</a></li>
<li><a href="http://www.area536.com/projects/freebsd-as-a-kvm-guest-using-virtio/">http://www.area536.com/projects/freebsd-as-a-kvm-guest-using-virtio/</a></li>
<li><a href="http://kdl.nobugware.com/post/2011/10/14/freebsd-90-guest-virtio-support-in-KVM/">http://kdl.nobugware.com/post/2011/10/14/freebsd-90-guest-virtio-support-in-KVM/</a></li>
</ul>
<p>The post <a href="https://michaelrichmond.net/blog/2013/09/15/create-a-freebsd-9-0-machine-image-under-linux/">Create a FreeBSD 9.0 machine image under Linux</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2013/09/15/create-a-freebsd-9-0-machine-image-under-linux/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Changing the size of an image in Photoshop CS6</title>
		<link>https://michaelrichmond.net/blog/2013/07/20/resizing-images-in-photoshop/</link>
					<comments>https://michaelrichmond.net/blog/2013/07/20/resizing-images-in-photoshop/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Sat, 20 Jul 2013 07:21:58 +0000</pubDate>
				<category><![CDATA[photoshop]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=679</guid>

					<description><![CDATA[<p>How to scale the size of an image <a href="https://michaelrichmond.net/blog/2013/07/20/resizing-images-in-photoshop/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2013/07/20/resizing-images-in-photoshop/">Changing the size of an image in Photoshop CS6</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>An image file such as a JPEG or PNG file contains two types of data. The image essence and metadata.</p>
<p>The image essence is what is usually thought of as the image, i.e. it is colours and the position of those colors in the picture. When an image file is viewed, the image essence is unpacked into a two-dimensional array of color values in memory. Typically each pixel is represented as a four-value tuple: (red, green, blue, alpha). Each element in the tuple can have a value from 0 to 255 and the &#8220;alpha&#8221; value indicates the level of transparency for the pixel.</p>
<p>The metadata can hold information such as a description of the photo, copyright information, camera details, and other fields. Additionally, the metadata contains information about the dimensions of the image. The dimensions are represented in two different formats. These formats are referred to as the &#8220;Pixel Dimensions&#8221; and the &#8220;Document Size&#8221; in Photoshop.</p>
<p>The &#8220;Pixel Dimensions&#8221; is the size of the image measured in pixels in the X and Y directions. These pixel-based dimensions allow the image essence to be mapped from a linear array (such as a file) to a two-dimensional array in memory. The Pixel Dimensions size determines the size of the image when viewed in the majority of software because software is typically written to show one image pixel for every screen pixel.</p>
<p>The &#8220;Document Size&#8221; dimensions format consists of three values: (width, height, resolution). The width and height are be represented in Photoshop as linear units (mm, inches, etc) or as relative units (percentage of original). The resolution value is measured in pixels/inch (or pixels/cm). The Document Size dimensions are typically most important when printing an image. If the pixels/inch value matches the resolution of your printer (dots/inch) then the image on the printout will be width by height in size. However, if the resolution of your printer is twice that of your image you are likely to get a printed image that is half the height and half the width of the &#8220;Document Size&#8221; values. The reason is that that without any specific request for scaling, the printer will map one image pixel to one dot of output.</p>
<p>To resize an image in photoshop, open the image and select the &#8220;Image Size&#8221; tool from the &#8220;Image menu. In Photoshop CS6 this produces the dialog shown below:</p>
<div id="attachment_680" style="width: 513px" class="wp-caption aligncenter"><a href="https://michaelrichmond.net/blog/wp-content/uploads/2013/07/imagesize.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-680" class="size-full wp-image-680" alt="" src="https://michaelrichmond.net/blog/wp-content/uploads/2013/07/imagesize.png" width="503" height="383" srcset="https://michaelrichmond.net/blog/wp-content/uploads/2013/07/imagesize.png 1006w, https://michaelrichmond.net/blog/wp-content/uploads/2013/07/imagesize-300x228.png 300w, https://michaelrichmond.net/blog/wp-content/uploads/2013/07/imagesize-768x585.png 768w" sizes="auto, (max-width: 503px) 100vw, 503px" /></a><p id="caption-attachment-680" class="wp-caption-text">Photoshop CS6 Image Size Dialog</p></div>
<p>Changing the Pixel Dimensions will change the size of the image as measured in pixels. The checkboxes at the bottom of this dialog control which numeric values are locked to the same relationship as in the original image.</p>
<p>Resolution values specific to the output or viewing device. Typical values for various devices are:</p>
<ul>
<ul>
<li>old monitor: 72 pixels/inch (common old publishing assumption)</li>
<li>average monitor: ~120 pixels/inch</li>
<li>low-end printer: 300 dots/inch</li>
<li>typical printer: 600 dots/inch</li>
<li>Retina laptop: 220 pixels/inch</li>
</ul>
</ul>
<p>As with most Photoshop dialogs, holding down the option-key will change the &#8220;Cancel&#8221; button to a &#8220;Reset&#8221; button. The reset button will revert the settings in the dialog back to the original values from the image.</p>
<p>The Image Size dialog is best used to change the size of an image without adding or removing any image content[1. Other posts describe the related &#8220;Canvas Tool&#8221; (for adding to images without scaling) and the &#8220;Cropping Tool&#8221; (to remove parts of the image.)]. That is, the Image Size tool is used to scale an image up or down.</p>
<p>The post <a href="https://michaelrichmond.net/blog/2013/07/20/resizing-images-in-photoshop/">Changing the size of an image in Photoshop CS6</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2013/07/20/resizing-images-in-photoshop/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>And the Emmy goes to&#8230;&#160;&#160;&#160;&#160;LTFS</title>
		<link>https://michaelrichmond.net/blog/2011/10/19/and-the-emmy-goes-to-ltfs/</link>
					<comments>https://michaelrichmond.net/blog/2011/10/19/and-the-emmy-goes-to-ltfs/#comments</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Wed, 19 Oct 2011 22:04:14 +0000</pubDate>
				<category><![CDATA[award]]></category>
		<category><![CDATA[emmy]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[LTFS]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=656</guid>

					<description><![CDATA[<p>OMFG! My project won an Emmy! The Academy of Television Arts &#038; Sciences has announced the recipients of the 63rd Primetime Emmy® Engineering Awards. This year, one of four Engineering Emmys will be awarded one of which goes to IBM &#8230; <a href="https://michaelrichmond.net/blog/2011/10/19/and-the-emmy-goes-to-ltfs/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/10/19/and-the-emmy-goes-to-ltfs/">And the Emmy goes to&#8230;&nbsp;&nbsp;&nbsp;&nbsp;LTFS</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><div id="attachment_293" style="width: 160px" class="wp-caption alignright"><a href="https://michaelrichmond.net/blog/wp-content/uploads/2011/06/lto5.jpg"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-293" src="http://www.smallersystems.com/blog/wp-content/uploads/2011/06/lto5-150x150.jpg" alt="IBM_LTO5_media" title="IBM LTO5 Media" width="150" height="150" class="size-thumbnail wp-image-293" /></a><p id="caption-attachment-293" class="wp-caption-text">IBM LTO5 data tape media.</p></div><br />
OMFG! My project won an Emmy!</p>
<p>The Academy of Television Arts &#038; Sciences has <a href="http://www.emmys.tv/news/2011/big-bang-theory-star-mayim-bialik-host-2011-engineering-emmys">announced</a> the recipients of the 63rd Primetime Emmy® Engineering Awards. This year, one of four Engineering Emmys will be awarded one of which goes to IBM for the LTFS technology.</p>
<p>I was responsible for the architecture, format specification, and development lead for the Linear Tape File System (LTFS) from the start of the product development. During my work on LTFS I was instrumental in   producing LTFS Single Drive Edition for Linux, OS X and Windows in 2010 (all platforms released within 12 months of starting the project); producing LTFS Library Edition in 2011; and laying plans for future LTFS products up to my last day at IBM.</p>
<p>omgbbqwtf!! Over.</p>
<p><em>&#8220;I&#8217;d like to thank the Academy, &#8230;&#8221;</em></p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/10/19/and-the-emmy-goes-to-ltfs/">And the Emmy goes to&#8230;&nbsp;&nbsp;&nbsp;&nbsp;LTFS</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2011/10/19/and-the-emmy-goes-to-ltfs/feed/</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
			</item>
		<item>
		<title>joining Nimbula</title>
		<link>https://michaelrichmond.net/blog/2011/09/02/joining-nimbula/</link>
					<comments>https://michaelrichmond.net/blog/2011/09/02/joining-nimbula/#respond</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Sat, 03 Sep 2011 02:29:26 +0000</pubDate>
				<category><![CDATA[michael]]></category>
		<category><![CDATA[nimbula]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=635</guid>

					<description><![CDATA[<p>After popping the IBM stack frame off my call stack the next step is to push a new Nimbula frame onto the stack. Today is the end of my first week working at a startup and, as expected, the experience &#8230; <a href="https://michaelrichmond.net/blog/2011/09/02/joining-nimbula/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/09/02/joining-nimbula/">joining Nimbula</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>After popping the IBM stack frame off my call stack the next step is to push a new <a href="http://www.nimbula.com" title="Nimbula">Nimbula</a> frame onto the stack. Today is the end of my first week working at a startup and, as expected, the experience is dramatically different from working at IBM.</p>
<p>I will need to come up to speed before I can talk intelligently about what Nimbula is doing and my role in the company. Right now, after a week I can only comment on the simplicity of the on-boarding process.</p>
<p><span id="more-635"></span></p>
<blockquote>
<dl>
<dt>Mon 9:30am good morning&#8230;</dt>
<dd>Arrive and shown to my desk.<br />
Monitor, Apple Keyboard, Magic Mouse, and 13&#8243; MacBook Pro already hooked up.<br />
Laptop is wired for ethernet and also already connected to company WiFi.</dd>
<dt>9:35am passwords changed, email working</dt>
<dd>Logged in.<br />
OS X password changed.<br />
Logged in to email.<br />
Changed email password.<br />
A bunch of applications are already installed&#8230; Chrome set as default browser, SIP softphone, Skype, Adium, DropBox, Evernote, VirtualBox, OpenOffice, TunnelBlick and others. Company-specific settings such as VPN and SIP are already configured.</dd>
<dt>10:10am</dt>
<dd>I have DropBox syncing with my personal account and 1Password installed waiting for DropBox to finish syncing my password vault.
</dd>
<dt>10:30am more passwords changed</dt>
<dd>IT guy comes over and points me to a wiki page with a list of new hire setup instructions and starts walking me through the handful of password changes I need to make. He realizes that I have already changed my OS X and Google Apps passwords so we run through the remaining company-specific passwords.</dd>
<dt>10:45am hr paperwork</p>
<dt>
<dd>Our office admin comes by to point me at the HR web portal. Two screens later and I have completed my I-9 form by verifying the pre-populated data, entering my Alien number, typing name and the date for an esignature. Our admin hands me the 401k plan documents and points me to the benefits signup pages and some other online HR documents I should read.</dd>
<dt>11:10am making lists</dt>
<dd>I start putting together a list of account passwords to save into 1Password when DropBox finishes syncing. The list expands to other cascading setup tasks: install Office2011, extract old contacts from previous Outlook identity, investigate iCal or Outlook with Google Calendars, install XCode, setup Fink, etc, etc.</dd>
<dt>11:18am continue through the list</dt>
<dd>I paste a copy of the New Hire wiki page into TextEdit and strike off the completed tasks. Roughly 50% of tasks are already done.</dd>
<dt>12:05pm access bug tracking</dt>
<dd>I skim the current bug list after my new hire task list directs me to login to bug tracking site and verify my account is working.</dd>
<dt>12:20 lunch</dt>
<dd>Recruiter reminds me that lunch is brought in four days a week and there is a picnic table outside with a cafe umbrella in the sun.</dd>
</blockquote>
<p>By lunch I was largely done with the on-boarding process and had access to all the systems in use other than the development cluster. It was predominantly self-directed without the baggage of other &#8220;self-directed&#8221; training I have experienced. Throughout the morning a number of people came by to say hello and ask if I need anything.</p>
<p>Early afternoon my mentor, who I had met during my interviews, walked me around the office to introduce me to the people in the office. Without fail, everyone dropped what they were doing for a few minutes to say hello to the new guy.</p>
<p>By the end of day Friday I had finished the HR paperwork, read the Employee Handbook, largely finished configuring my laptop, arranged my desk, and have started getting up to speed on the product.</p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/09/02/joining-nimbula/">joining Nimbula</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2011/09/02/joining-nimbula/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>leaving IBM</title>
		<link>https://michaelrichmond.net/blog/2011/08/19/leaving-ibm/</link>
					<comments>https://michaelrichmond.net/blog/2011/08/19/leaving-ibm/#comments</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Sat, 20 Aug 2011 00:00:19 +0000</pubDate>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[michael]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=632</guid>

					<description><![CDATA[<p>Today was my last day at IBM Almaden. I&#8217;ve been walking into the same building 5 days a week for about 9 years now. It&#8217;ll be weird to not do the same next week. In my time here, I have &#8230; <a href="https://michaelrichmond.net/blog/2011/08/19/leaving-ibm/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/08/19/leaving-ibm/">leaving IBM</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Today was my last day at IBM Almaden. I&#8217;ve been walking into the same building 5 days a week for about 9 years now. It&#8217;ll be weird to not do the same next week.</p>
<p>In my time here, I have shipped 4 different LTFS releases, numerous LTFS fixpacks, 3 LTFS Format Specifications, the first Information Archive appliance release, several internal projects, along with multiple papers and patents. I&#8217;ve worked with some extremely talented people and have helped an industry change the way they store and manage their data.</p>
<p>I will be taking some personal time before starting in my new role. I will continue posting my brain dumps about LTFS to capture as much information as I can share publicly. Over time I expect to post more about the new space in which I will be working.</p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/08/19/leaving-ibm/">leaving IBM</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2011/08/19/leaving-ibm/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>LTFS Format Specification and Open-Source</title>
		<link>https://michaelrichmond.net/blog/2011/08/17/ltfs-format-specification-and-open-source/</link>
					<comments>https://michaelrichmond.net/blog/2011/08/17/ltfs-format-specification-and-open-source/#comments</comments>
		
		<dc:creator><![CDATA[Michael Richmond]]></dc:creator>
		<pubDate>Thu, 18 Aug 2011 05:22:27 +0000</pubDate>
				<category><![CDATA[data storage]]></category>
		<category><![CDATA[LTFS]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[specification]]></category>
		<guid isPermaLink="false">http://www.smallersystems.com/blog/?p=339</guid>

					<description><![CDATA[<p>In an earlier post I mentioned that prior to the introduction of LTFS an application typically relied on proprietary APIs to read and write data tape. These proprietary APIs typically have used proprietary data formats on the tape media. These &#8230; <a href="https://michaelrichmond.net/blog/2011/08/17/ltfs-format-specification-and-open-source/">Continue reading <span class="meta-nav">&#8594;</span></a></p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/08/17/ltfs-format-specification-and-open-source/">LTFS Format Specification and Open-Source</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In an <a href="http://www.smallersystems.com/blog/2011/06/a-filesystem-for-tape-why/" title="A filesystem for tape? Why?">earlier post</a> I mentioned that prior to the introduction of LTFS an application typically relied on proprietary APIs to read and write data tape. These proprietary APIs typically have used proprietary data formats on the tape media. These proprietary APIs and data formats lock an application developer to a specific layer of software which mediates access to the data tape storage.</p>
<p>With LTFS we took a very different approach. The LTFS filesystem-based approach to accessing data stored on tape brings significant benefits to the tape market. For example, application developers no longer need to learn specialized APIs, and users get a fully self-describing storage medium that largely behaves the same as more common storage media such as hard-disk drives and memory sticks.</p>
<p>The benefits afforded by LTFS are arguably sufficient to support releasing LTFS as proprietary software that uses a closed data format on the tape media. Rather than treating LTFS as yet another proprietary on-tape format, the LTFS team at IBM elected to release the LTFS Single Drive Edition (LTFS-SDE) software as open-source[1. Open-source release of LTFS-SDE is available for Linux and Mac OS X. The LTFS-SDE implementation for MS Windows is freely available as a binary release. The MS Windows implementation could not be released as open-source due to licensing terms on necessary third-party components]. The LTFS open-source software release is licensed under the LGPL license to protect the LTFS format while providing application developers the ability to dynamically link with LTFS binary code without risking their own intellectual property. Each fix-pack released for LTFS-SDE has also been released under the LGPL.</p>
<p>In addition to the open-source software release, the LTFS team wrote the LTFS Format Specification document and released this specification to the public. This Format Specification describes the on-media data structures in sufficient detail for independent developers to read and write LTFS tapes that are compatible with other LTFS implementations.</p>
<p>During development of the LTFS software and the LTFS Format Specification the IBM team built a working relationship with developers at both HP and Quantum through the <a href="http://www.lto.org/" title="LTO">LTO Consortium</a>. These relationships afforded an opportunity to inform HP and Quantum about the up-coming LTFS technology and allowed for some pre-release co-ordination between these three LTO 5 vendors. These on-going relationships have provided the opportunity to conduct inter-operablity testing between all three vendors. We are fortunate to enjoy continuing discussions between vendors on the direction and development of the LTFS format.</p>
<p>This communication, the open-specification, and the open-source approach to software distribution is motivated by a desire for LTFS to become an industry-wide standard. During LTFS development we recognized that if LTFS was a proprietary release then we would be adding to the fragmentation and incompatibility of data tape use. Instead, a release of LTFS as an open implementation with an open specification would create an environment that may lead to broad industry adoption. Broad adoption along with the ease of use benefits may result in expanded use of tape media for data storage. Expansion of the tape market would be good for the industry and all of us involved in the data tape business.</p>
<p>The post <a href="https://michaelrichmond.net/blog/2011/08/17/ltfs-format-specification-and-open-source/">LTFS Format Specification and Open-Source</a> appeared first on <a href="https://michaelrichmond.net/blog">Michael Richmond</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://michaelrichmond.net/blog/2011/08/17/ltfs-format-specification-and-open-source/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
	</channel>
</rss>
