<?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>IraqiTek &#187; Open Source</title>
	<atom:link href="http://v2.iraqitek.com/tag/open-source/feed/" rel="self" type="application/rss+xml" />
	<link>http://v2.iraqitek.com</link>
	<description>Let's Bring Iraq Back</description>
	<lastBuildDate>Thu, 08 Apr 2010 06:14:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Researcher Releases &#8216;Qubes&#8217; Hardened OS</title>
		<link>http://v2.iraqitek.com/2010/04/08/researcher-releases-qubes-hardened-os/</link>
		<comments>http://v2.iraqitek.com/2010/04/08/researcher-releases-qubes-hardened-os/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 06:14:17 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[Aplications]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Qubes]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Virtualization]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=992</guid>
		<description><![CDATA[Joanna Rutkowska, a security researcher known for her work on virtualization security and low-level rootkits, has released a new open-source operating system meant to provide isolation of the OS&#8217;s components for better security. The OS, called Qubes, is based on Xen, X and Linux and is in a basic, alpha stage right now. Qubes relies [...]]]></description>
			<content:encoded><![CDATA[<p>Joanna Rutkowska, a security researcher known for her work on  virtualization security and low-level rootkits, has released a new  open-source operating system meant to provide isolation of the OS&#8217;s  components for better security.</p>
<p><span id="more-992"></span>The OS, called Qubes, is based on  Xen, X and Linux and is in a basic, alpha stage right now. Qubes relies  on virtualization to separate applications running on the OS and also  places many of the system-level components in sandboxes to prevent them  from affecting each other.</p>
<p>Qubes  implements Security by Isolation approach. To do this, Qubes utilizes  virtualization technology, to be able to isolate various programs from  each other, and even sandbox many system-level components, like  networking or storage subsystem, so that their compromise don’t affect  the integrity of the rest of the system.</p>
<p>Qubes lets the user  define many security domains implemented as lightweight Virtual Machines  (VMs), or “AppVMs”. E.g. user can have “personal”, “work”, “shopping”,  “bank”, and “random” AppVMs and can use the applications from within  those VMs just like if they were executing on the local machine, but at  the same time they are well isolated from each other. Qubes supports  secure copy-and-paste and file sharing between the AppVMs, of course.</p>
<p>The concepts of isolation and sandboxing have been around for  decades, and are used in a number of applications, including hardened  operating systems and some security products. And many security experts  say that sandboxing is one of the more effective ways of preventing  malicious code from affecting entire systems, rather than just one  vulnerable application.</p>
<p>In a guest  column in January on Threatpost, security researcher Dino Dai Zovi  said that he expected more and more vendors to implement sandboxing and  isolation in the coming year.</p>
<p>&#8220;The desktop analogue to the  network firewall is the privilege separated  and sandboxed application.  These mechanisms finally move the  bull (untrusted data) from the china shop (your data) to the outside  where it belongs (a sandbox).  While it doesn&#8217;t quite reduce the attack  surface, it significantly raises the bar for an attacker through  defense-in-depth.  If an attacker is able to exploit a vulnerability and  execute code, they must then exploit another vulnerability in the  sandboxing mechanism in order to break free and even read the user&#8217;s  data,&#8221; he wrote.</p>
<p>Rutkowska said that she plans to release the full  version of Qubes by the end of 2010, and that she may create some  commercial extensions to the OS in the future.</p>
<p><a href="http://www.threatpost.com/" target="_blank">www.threatpost.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2010/04/08/researcher-releases-qubes-hardened-os/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skype for Linux set for open source (In the nearest future)</title>
		<link>http://v2.iraqitek.com/2009/11/03/skype-for-linux-set-for-open-source-in-the-nearest-future/</link>
		<comments>http://v2.iraqitek.com/2009/11/03/skype-for-linux-set-for-open-source-in-the-nearest-future/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 09:39:12 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[Aplications]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Skype]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=959</guid>
		<description><![CDATA[Skype for Linux will be open sourced at some point in &#8220;the nearest future.&#8221; Word of the open sourcing first arrived from French blogger Olivier Faurax, and it&#8217;s now been confirmed by Skype itself. In a back-and-forth to Skype Customer Support about the possibility of a Skype-supporting RPM package manager for the Mandriva distro becoming [...]]]></description>
			<content:encoded><![CDATA[<p>Skype for Linux will be open sourced at some point in &#8220;the nearest future.&#8221;</p>
<p>Word of the open sourcing first arrived from French blogger Olivier Faurax, and it&#8217;s now been confirmed by Skype itself.</p>
<p><span id="more-959"></span></p>
<p>In a back-and-forth to Skype Customer Support about the possibility of a Skype-supporting RPM package manager for the Mandriva distro becoming available, Faurax was told: &#8220;We are happy to be able to inform you that Skype will from now on be part of the open source community.&#8221;</p>
<p>When Faurax asked for clarification of that assertion, customer-support minion &#8220;Joerg&#8221; affirmed the statement, saying: &#8220;Yes, indeed, the Linux Skype version will become open source in the nearest future.&#8221;</p>
<p>When The Reg asked Skype about this report, a spokeswoman confirmed that open-sourcing is in the cards. &#8220;We realize the potential of the open source community,&#8221; she wrote in an email, &#8220;and believe that making Skype for Linux an open source application will help to speed up its development and enhance its compatibility with various Linux distributives.&#8221;</p>
<p>However, she wouldn&#8217;t provide a more-specific definition of &#8220;the nearest future,&#8221; saying only: &#8220;While it is our goal is to make Skype for Linux source code available to the community in the nearest future, we are not at a point to disclose exact release date yet.&#8221;</p>
<p><a href="http://www.theregister.co.uk/" target="_blank">www.theregister.co.uk</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2009/11/03/skype-for-linux-set-for-open-source-in-the-nearest-future/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google Android Gets Native Development Kit</title>
		<link>http://v2.iraqitek.com/2009/06/26/google-android-gets-native-development-kit/</link>
		<comments>http://v2.iraqitek.com/2009/06/26/google-android-gets-native-development-kit/#comments</comments>
		<pubDate>Fri, 26 Jun 2009 19:15:08 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[Aplications]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Linu]]></category>
		<category><![CDATA[Phone]]></category>
		<category><![CDATA[Smart Phone]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=934</guid>
		<description><![CDATA[Google is giving Android developers more ways to create applications for the Android Market, as it has released a native development kit for Android 1.5. Currently, Android apps run in the Dalvik virtual machine, but some developers may find this somewhat limited. With the new native development kit (NDK), content creators will have a few [...]]]></description>
			<content:encoded><![CDATA[<p>Google is giving Android developers more ways to create applications for the Android Market, as it has released a native development kit for Android 1.5.</p>
<p><span id="more-934"></span></p>
<p>Currently, Android apps run in the Dalvik virtual machine, but some developers may find this somewhat limited. With the new native development kit (NDK), content creators will have a few more option to create mobile programs.</p>
<p>The NDK could help some developers make better use of the data processing and signal processing, Google said. It also provides a set of tools used to generate native code libraries from C and C++ sources, as well as a set of headers and libraries that will be compatible with all future versions of Android.</p>
<p>Google warns that the NDK won&#8217;t be relevant for all developers, as it said there are &#8220;numerous&#8221; drawbacks.</p>
<p>&#8220;Your application will be more complicated, have reduced compatibility, have no access to framework APIs, and be harder to debug,&#8221; Google wrote on its Android developers&#8217; blog. &#8220;That said, some applications that have self-contained, CPU-intensive operations that don&#8217;t allocate much memory may still benefit from increased performance and the ability to reuse existing code.&#8221;</p>
<p>The move shows that Google is making an increased effort to attract developers to its mobile, Linux-based platform. The search giant is also trying to attract content creators by making its vetting process for the Android Market more open than some of the competitors.</p>
<p>Apple&#8217;s App Store for the iPhone and iPod Touch is unquestionably at the top of the mobile app market, as it has over 50,000 programs and over 1 billion downloads. Additionally, developers are drawn to the potential audience of the App Store, which can be accessed by more than 40 million users.</p>
<p><a href="http://www.informationweek.com/" target="_blank">www.informationweek.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2009/06/26/google-android-gets-native-development-kit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NILFS: A File System to Make SSDs Scream</title>
		<link>http://v2.iraqitek.com/2009/06/12/nilfs-a-file-system-to-make-ssds-scream/</link>
		<comments>http://v2.iraqitek.com/2009/06/12/nilfs-a-file-system-to-make-ssds-scream/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 06:36:10 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[HDD]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[2.6.30]]></category>
		<category><![CDATA[File System]]></category>
		<category><![CDATA[Hard Drive]]></category>
		<category><![CDATA[Kernel]]></category>
		<category><![CDATA[NILFS]]></category>
		<category><![CDATA[Solid State Disk]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=923</guid>
		<description><![CDATA[The 2.6.30 kernel is chock full of next-gen file systems. One such example is NILFS, a new log-structured file system that dramatically improves write performance. It’s difficult to write storage articles at this time and not focus on the upcoming 2.6.30 kernel. Why? This kernel is loaded with a number of new file systems — [...]]]></description>
			<content:encoded><![CDATA[<p>The 2.6.30 kernel is chock full of next-gen file systems. One such example is NILFS, a new log-structured file system that dramatically improves write performance.</p>
<p><span id="more-923"></span></p>
<p>It’s difficult to write storage articles at this time and not focus on the upcoming 2.6.30 kernel. Why? This kernel is loaded with a number of new file systems — some of which we’ve already covered, like <a href="http://www.linux-mag.com/id/7271" target="_blank">ext4</a> and <a href="http://www.linux-mag.com/id/7308" target="_blank">btrfs</a>. Another of the hot new file systems that is in 2.6.30 is <a href="http://www.nilfs.org/en/" target="_blank">NILFS</a>. This file system is definitely one that you should be testing.</p>
<p>NILFS2 (New Implementation of a Log-Structured File System Version 2) is a very promising new log-structured file system that has continuous snapshots and versioning of the entire file system. This means that you can recover files that were deleted or unintentionally modified as well as perform backups at any time from a snapshot without a performance penalty normally associated with creating snapshots. In addition, there is evidence that NILFS has extremely good performance on SSD drives.</p>
<p><strong>Log-Structured File System?</strong></p>
<p>Log-Structured File Systems are a bit different than other file systems with both good points and bad points. Rather than write to a tree structure such as a <a href="http://en.wikipedia.org/wiki/B-tree">b-tree</a> or an <a href="http://en.wikipedia.org/wiki/H-tree">h-tree</a>, either with or without a journal, a <a href="http://en.wikipedia.org/wiki/Log-structured_file_system">log-structured</a> file system writes all data and metadata sequentially in a continuous stream that is called a log (actually it is a circular log).</p>
<p>The concept was  developed by <a href="http://en.wikipedia.org/wiki/John_Ousterhout" target="_blank">John Ousterhout</a> of <a href="http://www.tcl.tk/" target="_blank">TCL</a> fame and Fred Douglis. The motivation behind log-structured file systems is that typical file systems lay out data based on spatial locality for rotating media (hard drives). But rotating media tends to have slow seek times limiting write performance. In addition, it was presumed that most IO would become write dominated (this observation is supported by a study that was summarized in a recent <a href="http://www.linux-mag.com/id/7336" target="_blank">article</a>). So a log-structured file system takes a new approach and treats the file system as a circular log and writes sequentially to the “head” of the log (the beginning) never over writing the existing log. This means that seeks are kept to a minimum because everything is sequential, improving write performance.</p>
<p>A log-structured file system, because of its design, makes it very easy to create snapshots (in NILFS they are called checkpoints) of both the data and metadata. NILFS can then mount these checkpoints (or snapshots) along side the primary NILFS file system. From these checkpoints, you can recover erased files (if the checkpoint has a date and time prior to when the file was erased) or you can use it for backups or even disaster recovery images.</p>
<p>Another benefit of log-structured file systems is that recovering from a crash is easier than the more typical tree based file systems (e.g. ext2, ext3, etc.). After a log-structured file system crashes, when it is remounted it can reconstruct its state from the last consistent point in the log. It starts at the head of the circular log and backs up until the file system is consistent. This point should be very close to the head so little if any data or metadata will be lost. This process is extremely fast regardless of the size of the file system.</p>
<p>This bears repeating &#8211; <em>a log-structured file system recovers from a crash extremely fast and the amount of time is <strong>independent of the size of the file system</strong></em>. In contrast, other file systems have to replay their journal and possibly even walk their data structures to make sure the file system is consistent (i.e. run “fsck”). Everyone who has run fsck on a very large file system knows how much time it can take.</p>
<p>One problematic aspect of log-structured file systems is that they need to include a fairly sophisticated capability of “garbage collection” to reclaim free space. Free space needs to be reclaimed from the tail of the log, primarily the old check points, so that the file system doesn’t become full when the head of the log wraps around to the tail. There are many techniques for reclaiming space, one is covered in the Wikipedia <a href="http://en.wikipedia.org/wiki/NILFS" target="_blank">article</a> about log-structured file systems. The garbage collection process reclaims space from the check points (snap shots) otherwise the file system would fill far too quickly.</p>
<p><strong>A Log Structured File System for Linux &#8211; NILFS</strong></p>
<p>The Nippon Telephone and Telegraph (NTT) CyberSpace Laboratories has been developing <a href="http://en.wikipedia.org/wiki/NILFS" target="_blank">NILFS</a> (also referred to as NILFS2 since it is the version 2 of the file system) for Linux. It is released under the GPL 2.0 license and is included in the 2.6.30 kernel. It spent a great deal of time in the -mm kernels and under went much testing since it’s initial <a href="http://www.linuxelectrons.com/news/linux/ntt-releases-nilfs-linux-file-system-prevention-data-loss" target="_blank">announcement</a>.</p>
<p>One of the most noticeable features of NILFS is that it can “continuously and automatically save instantaneous states of the file system without interrupting service”. NILFS refers to these as checkpoints. In contrast, other file systems such as ZFS, can provide snapshots but they have to suspend operation to perform the snapshot operation. NILFS doesn’t have to do this. The snapshots (checkpoints) are part of the file system design itself.</p>
<p>One of the really cool features of NILFS is that these checkpoints can actually be mounted along side the primary file system. This has many, many uses, one of which is to mount a checkpoint to recover files that were unintentionally erased.</p>
<p>In addition to being able to recover recently erased files and extremely fast crash recovery times, there are a number of other features of NILFS that are very attractive:</p>
<ul>
<li>The file size and inode numbers are stored as 64-bit fields</li>
<li>File sizes of up to 8 EiB (Exbibyte &#8211; approximately an Exabyte)</li>
<li>Block sizes that are smaller than a page size (i.e. 1KB-2KB). This can potentially make NILFS much faster for small files than other file systems.</li>
<li>File and inode blocks use a B-tree (the use of B-trees in a log-structured file system stems from the implementation which use something called segments)</li>
<li>NILFS uses 32-bit checksums (CRC32) on data and metadata for integrity assurance</li>
<li>Correctly ordered data and meta-data writes</li>
<li>Redundant superblock</li>
<li>Read-ahead for meta data files as well as data files (helps read  performance)</li>
<li>Continuous check pointing which can be used for snapshots. These can be used for backups or they can even be used for recovering files.</li>
</ul>
<p><strong>Checkpoints and Snapshots</strong></p>
<p>One of the features that users can really enjoy with NILFS is the ability to recover erased or modified files. NILFS creates a checkpoint “every few seconds or per synchronous write basis (unless there is no change).” (from the kernel documentation). Then the user can select a checkpoint and convert it into a snapshot. These snapshots are preserved until they are converted back into checkpoints. Checkpoints are not preserved for the life of the file system and after a period of time the garbage collection process will recover the space in the checkpoint.</p>
<p>This means that users can’t recover files from a long time in the past. But there is no limit to the number of snapshots that can be created &#8211; at least until the file system volume becomes full. There are many uses for the snapshots including recovery of erased or modified files or they can be used by administrators for backups.</p>
<p>There are a few user-space commands that help with check points and snapshots. From the NILFS <a href="http://www.nilfs.org/en/about_nilfs.html" target="_blank">web site</a> is an explanation of the process and is paraphrased here. The first step is to list the check points using the lscp command.</p>
<pre><span style="color: #808080;">$ lscp
       CNO        DATE     TIME  MODE  SKT   NBLKINC       ICNT
         1  2008-05-08 14:45:49  cp     -         11          3
         2  2008-05-08 14:50:22  cp     -     200523         81
         3  2008-05-08 20:40:34  cp     -        136         61
         4  2008-05-08 20:41:20  cp     -     187666       1604
         5  2008-05-08 20:41:42  cp     -         51       1634
         6  2008-05-08 20:42:00  cp     -         37       1653
         7  2008-05-08 20:42:42  cp     -     272146       2116
         8  2008-05-08 20:43:13  cp     -     264649       2117
         9  2008-05-08 20:43:44  cp     -     285848       2117
        10  2008-05-08 20:44:16  cp     -     139876       7357</span></pre>
<p>Notice that the output of <code>lscp</code> lists the date and time of the check points. Under the column labeled “MODE” is either a “cp”, that stands for “check point”, or “ss” that stands for “snap shot.” If a user does not want to wait for a check point and wants to create one immediately, the <code>mkcp</code> command could be used. In general you need to tell <code>mkcp</code> the device containing a NILFS file system otherwise it searches <code>/proc/mounts</code> for NILFS file systems.</p>
<p>To take a check point and create a snap shot, one uses the <code>mkcp</code> command again. In this case, one uses the command <code>mkcp -s</code> to create the snapshot from an existing checkpoint. You can also use the <code>chcp</code> command that changes a check point into a snap shot or vice versa. Again, from the NILFS website is an example of creating a snapshot.</p>
<pre><span style="color: #808080;">$ sudo chcp ss 2
$ lscp
       CNO        DATE     TIME  MODE  SKT   NBLKINC       ICNT
         1  2008-05-08 14:45:49  cp     -         11          3
         2  2008-05-08 14:50:22  ss     -     200523         81
         3  2008-05-08 20:40:34  cp     -        136         61
         4  2008-05-08 20:41:20  cp     -     187666       1604
         5  2008-05-08 20:41:42  cp     -         51       1634
         6  2008-05-08 20:42:00  cp     -         37       1653
         7  2008-05-08 20:42:42  cp     -     272146       2116
         8  2008-05-08 20:43:13  cp     -     264649       2117
         9  2008-05-08 20:43:44  cp     -     285848       2117
        10  2008-05-08 20:44:16  cp     -     139876       7357
        11  2008-05-08 21:05:23  cp     -         10       7357</span></pre>
<p>Notice that the <code>chcp</code> command changes the second check point into a snap shot. This is indicated under the “MODE” column where the second check point is listed as “ss” or snap shot. Now that the check point is a snap shot, it won’t be deleted during the garbage collection. However, you can remove the snap shot by using the <code>rmcp</code> command.</p>
<p>NILFS implements garbage collection in a unique way. It uses a user-space daemon to perform the garbage collection. This daemon is activated when the file system is mounted via the “mount” command. This also means that garbage collection can be activated at any time (if the file system is mounted).</p>
<p>Don’t forget that NILFS will delete check points after a certain period of time unless the check point is converted to a snap shot. The amount of time when the check point is held before being deleted is controlled by parameters in the <code>/etc/nilfs_cleanerd.conf</code> file. You can adjust the garbage collection (GC) parameters in the file and restart the GC daemon so that the new parameter values are used (or unmouning and remounting the file system).</p>
<p>You must have root access or at least <code>sudo</code> ability to mount a snap shot. Also recall that snap shots are mounted as read-only. From the NILFS web site example, one can mount the snapshot previously created (it was created from the second check point).</p>
<pre><span style="color: #808080;"># mount -t nilfs2 -r -o cp=2 /dev/sdb1 /nilfs-cp
# df -t nilfs2
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sdb1             71679996   3203068  64888832   5% /nilfs
/dev/sdb1             71679996   3203068  64888832   5% /nilfs-cp
# mount -t nilfs2
/dev/sdb1 on /nilfs type nilfs2 (rw,gcpid=13296)
/dev/sdb1 on /nilfs-cp type nilfs2 (ro,cp=2)</span></pre>
<p>The snap shot is mounted on <code>/nilfs-cp</code> in a read-only mode (ro). Depending upon the options and permissions on the <code>/nilfs-cp</code> mount point, users could copy files from the snap shot. Alternatively, the <code>root</code> user could restore the file(s)s for the user. Also, the snap shot could be easily used for creating back-ups. An administrator could also use the snap shot for creating a disaster recovery image of the file system. Just as a reminder the mounted snap shot, while being a NILFS file system, is mounted read-only so check points of the snapshot are not created. After you are finished with the snap shot don’t forget to unmount it and either delete the snap shot or convert it back to a check point and allow garbage collection to recover the space.</p>
<p><strong>Speed, Glorious Speed</strong></p>
<p>Recall that one reason log-structured file systems were developed was to increase write performance (assuming the read performance would be dominated by caching effects). And who doesn’t like increased write performance?</p>
<p>One of the earliest reviews of NILFS was in 2007 by Chris Samuel. He did a very comprehensive <a href="http://www.csamuel.org/articles/emerging-filesystems-200709/" target="_blank">review</a> of Emerging File Systems(how prescient was that review?). He did a very nice review of a number of file systems including <a href="http://www.csamuel.org/articles/emerging-filesystems-200709/#id2530633" target="_blank">NILFS</a> including running benchmarks. The performance was good for such a young file system but even at that time it had the best performance by far for Sequential Deletes. It was even <a href="http://www.csamuel.org/articles/emerging-filesystems-200709/#id2538255" target="_blank">better</a> than ZFS/OpenSolaris for most tests performed.</p>
<p>In Feb. 2008, there was a <a href="http://www.usenix.org/event/lsf08/tech/shin_SSD.pdf" target="_blank">presentation</a> by Dongjun Shin from Samsung as part of the Linux Storage &amp; File System Workshop 2008 (LSF ‘08). He benchmarked NILFS, Btrfs, Ext2, Ext3, Ext4, ReiserFS, and XFS when running on an SSD device. Granted that the testing is a little old, but the results are very, very exciting. The benchmark, Postmark, simulates an email server. Two groups of files sizes were tested, (1) 9 &#8211; 15KB (S), and (2) 0.1 &#8211; 3MB (L). For each group, two tests were run with a small number of files (S), and a larger number of files (L). Figure 1 and 2 below are the test results.</p>
<div id="attachment_926" class="wp-caption aligncenter" style="width: 622px"><img class="size-full wp-image-926" title="Postmark Results for Small File Size" src="http://v2.iraqitek.com/wp-content/uploads/2009/06/Postmark_small.png" alt="Postmark Results for Small File Size" width="612" height="441" /><p class="wp-caption-text">Postmark Results for Small File Size</p></div>
<div id="attachment_925" class="wp-caption aligncenter" style="width: 616px"><img class="size-full wp-image-925" title="Postmark Results for Large File Size" src="http://v2.iraqitek.com/wp-content/uploads/2009/06/Postmark_large.png" alt="Postmark Results for Large File Size" width="606" height="441" /><p class="wp-caption-text">Postmark Results for Large File Size</p></div>
<p>Notice that in both cases, the performance of NILFS exceeds that of other file systems. For small files NILFS was about 25-38% faster than the nearest competitor (btrfs). For large files NILFS was about 15-25% faster than the nearest competitor (reiserfs and/or ext4).</p>
<p>It is pretty amazing to see such a boost in performance from a change in file system, but it does show you that the coupling of file system design with hardware, in this case SSD’s, can produce a big boost in performance. But “There Ain’t No Such Thing As A Free Lunch” <a href="http://en.wikipedia.org/wiki/TANSTAAFL">TANSTAAFL</a>. There are some current issues with NILFS and SSD’s.</p>
<p>There was a recent <a href="https://www.nilfs.org/pipermail/users/2009-March/000514.html">posting</a> to the NILFS mailing list about using NILFS as the root drive for a Linux system. It was pointed out that the root file system produces a great deal of traffic. Coupled with this is the fact that NILFS file system activity can be reasonably write heavy and you have the potential for quickly wearing out SSD drives (remember that NAND chips which make up SSD’s have a limited number of rewrites). But the developers of NILFS are aware of this and a better garbage collection (GC) algorithm is under investigation.</p>
<p>There was also a  <a href="http://lkml.org/lkml/2008/8/20/50">question</a> on the Linux kernel mailing list about the effect of age on the performance (i.e. would the performance of NILFS still remain far above others on the Postmark test after it was used for a few months?). The <a href="http://lkml.org/lkml/2008/8/20/247">answer</a> is that the developers don’t believe the performance suffers after it is used for a period of time, but there isn’t any data to back up that claim at the present time. However, virtually all files systems <a href="http://www.delltechcenter.com/page/02-19-2009+-+File+System+Aging+%E2%80%93+What+you+Don%E2%80%99t+Know">suffer</a> degrading performance with age.</p>
<p>NILFS &#8211; It’s Definitely Worth Testing</p>
<p>NILFS has a great deal going for it in many regards. It is a modern file system in almost every respect (OK, no built-in RAID, but that can be worked around). The log-structured design of NILFS means that its write performance should be very, very good and there is evidence of this from the performance report that benchmarked Postmark.</p>
<p>Additionally, the fact that NILFS continuously creates checkpoints that can be used to create snapshots, is of great benefit. These checkpoints can be used to recover erased or modified user files. They can also be used for backups or creating disaster recover images of data. More over, creating these checkpoints or snapshots do not result in decreased performance as they do for file systems such as ZFS.</p>
<p>NILFS holds great promise for Linux. There are many scenarios where it would work extremely well. In particular it works very well for user directories or work directories. In the HPC world it would work extremely well for high-speed storage that are dominated by write performance. Coupling the performance boosts with the snapshot features make NILFS a potential system administrators dream file system. It is well worth trying NILFS on your system.</p>
<p><a href="http://www.linux-mag.com/" target="_blank">www.linux-mag.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2009/06/12/nilfs-a-file-system-to-make-ssds-scream/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Intel and Nokia started oFono</title>
		<link>http://v2.iraqitek.com/2009/05/12/intel-and-nokia-started-ofono/</link>
		<comments>http://v2.iraqitek.com/2009/05/12/intel-and-nokia-started-ofono/#comments</comments>
		<pubDate>Tue, 12 May 2009 08:03:45 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[Intel]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Nokia]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=918</guid>
		<description><![CDATA[oFono.org is a place to bring developers together around designing an infrastructure for building mobile telephony (GSM/UMTS) applications. oFono.org is licensed under GPLv2, and it includes a high-level D-Bus API for use by telephony applications of any license. oFono.org also includes a low-level plug-in API for integrating with open source as well as third party [...]]]></description>
			<content:encoded><![CDATA[<p>oFono.org is a place to bring developers together around designing an infrastructure for building mobile telephony (GSM/UMTS) applications. oFono.org is licensed under GPLv2, and it includes a high-level D-Bus API for use by telephony applications of any license. oFono.org also includes a low-level plug-in API for integrating with open source as well as third party telephony stacks, cellular modems and storage back-ends. The plug-in API functionality is modeled on public standards, in particular 3GPP TS 27.007 &#8220;AT command set for User Equipment (UE).&#8221;</p>
<p><span id="more-918"></span></p>
<h3>What makes oFono different?</h3>
<p>oFono aims to provide an easy to use interface that can be used to create rich telephony applications without requiring one to have a deep understanding of the underlying technology and its limitations. To accomplish this, oFono provides language-independent D-Bus API that is extremely easy to use without generated bindings or other &#8216;messy&#8217; steps typically required to use an IPC based API.</p>
<p>The API follows the following four basic principles:</p>
<ul>
<li>Consistent</li>
<li>Minimal</li>
<li>Easy to use</li>
<li>Complete</li>
</ul>
<h4>Consistent</h4>
<p>The API should be consistent. Functionality in oFono is broken up into Interfaces, each with well-defined set of Properties. Each interface has a GetProperties() and a SetProperty() method which is used to accomplish majority of the tasks. Naming conventions are also strictly enforced. This means that once you&#8217;re comfortable using one Interface, you should be able to easily orient yourself to use others.</p>
<h4>Minimal</h4>
<p>The API should be minimal; there shouldn&#8217;t be more than one way of accomplishing a task as this leads to confusion and API bloat. We also aim to maintain API compatibility whenever possible, from the very beginning. This means that oFono APIs wil generally focus on the most important use-cases. Other features will be carefully considered before being included in the APIs.</p>
<h4>Complete</h4>
<p>At the same time, the APIs must be rich and complete enough to enable the creation of feature complete mobile phones. Thus, APIs for all aspects of telephony are planned, incudling but not limited to Voice calls, SMS, Cell Broadcast, Supplementary Services and SIM Phonebooks.</p>
<h4>Easy to use</h4>
<p>oFono aims to make writing telephony applications as easy as possible. Thus oFono will take care of the core logic, including things necessary for standards compliance. This will allow application writers to focus on what they should be doing: presentation aspects and funky animated UIs.</p>
<p><a href="http://ofono.org/" target="_blank">www.ofono.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2009/05/12/intel-and-nokia-started-ofono/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Red Hat: France is the most &#8216;active&#8217; open source country, Moldova the least</title>
		<link>http://v2.iraqitek.com/2009/04/25/red-hat-france-is-the-most-active-open-source-country-moldova-the-least/</link>
		<comments>http://v2.iraqitek.com/2009/04/25/red-hat-france-is-the-most-active-open-source-country-moldova-the-least/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 09:16:24 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Redhat]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=910</guid>
		<description><![CDATA[  Landing ahead of the US for &#8220;activity&#8221; in Red Hat&#8217;s Open Source Index this year were these countries, in the following order: France, Spain, Germany, Australia, Finland, the UK, Norway, and Estonia. Also among the 75 countries surveyed by Red Hat and the Georgia Institute of Technology, Denmark took tenth place. At the opposite [...]]]></description>
			<content:encoded><![CDATA[<p> </p>
<p>Landing ahead of the US for &#8220;activity&#8221; in Red Hat&#8217;s Open Source Index this year were these countries, in the following order: France, Spain, Germany, Australia, Finland, the UK, Norway, and Estonia. Also among the 75 countries surveyed by Red Hat and the Georgia Institute of Technology, Denmark took tenth place.</p>
<p><span id="more-910"></span></p>
<p>At the opposite extreme of the open source spectrum, the study found these ten countries to be the least active, in descending order: Algeria, the Philippines, Morocco, Cameroon, Yemen, Latvia, Mauritius, Nigeria, Kenya, and Moldova.</p>
<p> </p>
<p>Red Hat&#8217;s activity index measures the amount of open source now present in a country based partly on existing open source and open standards policies, along with numbers of users and producers of open source software. The annual survey also ranks countries on environmental factors that &#8220;may further, or coexist with, open source activity,&#8221; including a high number of Internet users.</p>
<p>But a country&#8217;s index scores for activity and environment can fall quite far apart from each other indeed. In spite of its rather lowly ninth place ranking for open source activity, the US was bested this year only by Sweden for open source environment, for example.</p>
<p>Although the small Eastern European nation of Moldova ended dead last for activity, it ranked 34th for environment. And regardless of its status as a software development outsourcing hotbed, India took only 23rd place for activity and 53rd place for environment. Yet Ireland, another big outsourcer, rated 19th for both activity and environment.</p>
<p>The survey results also broke out the two main scores into separate categories for the six areas of government, industry, and community education activity; and government, industry, and community education environment.</p>
<p>France, the most active country overall, also earned first place for government activity. But on community education, France ranked third, and on industry activity, only 25th.</p>
<p>The US took second place on community education activity and 13th on industry activity, doing better than France on both those measures. But on government activity, the US &#8212; with its ranking of 28 &#8212; fared far worse than France and a lot of other nations.</p>
<p>Yet the intent behind the survey is to spur global collaboration, not competition. &#8220;Red Hat hopes the Open Source Index will serve as a resource for those within the open source community along with others who are curious about open source to start building relationships and further foster worldwide open source growth,&#8221; said Red Hat VP for Corporate Affairs Tom Rabon, in a statement earlier this week.</p>
<p>Red Hat&#8217;s annual Open Source Index uses a framework developed by researchers at Georgia Tech.</p>
<p>Also this week, Red Hat announced plans to hold a virtual event called the Open Source Cloud Computing Forum on July 22.</p>
<p> </p>
<p><a href="http://www.betanews.com/" target="_blank">www.betanews.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2009/04/25/red-hat-france-is-the-most-active-open-source-country-moldova-the-least/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Helps Linux Get Enhanced Data Integrity</title>
		<link>http://v2.iraqitek.com/2008/12/06/oracle-helps-linux-get-enhanced-data-integrity/</link>
		<comments>http://v2.iraqitek.com/2008/12/06/oracle-helps-linux-get-enhanced-data-integrity/#comments</comments>
		<pubDate>Sat, 06 Dec 2008 19:42:34 +0000</pubDate>
		<dc:creator>Data-Base</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Storage]]></category>
		<category><![CDATA[Data Integrity Extensions]]></category>
		<category><![CDATA[Kernel]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://v2.iraqitek.com/?p=822</guid>
		<description><![CDATA[When you click &#8220;Save&#8221; for a file, you expect that the file will be saved. Unfortunately, due to a variety of reasons, that doesn&#8217;t always happen. If you&#8217;re a Linux user, though, you might now have better success than other operating systems&#8217; users, thanks to new, block I/O data integrity infrastructure code from Oracle that&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>When you click &#8220;Save&#8221; for a file, you expect that the file will be saved. Unfortunately, due to a variety of reasons, that doesn&#8217;t always happen.</p>
<p><span id="more-822"></span></p>
<p>If you&#8217;re a Linux user, though, you might now have better success than other operating systems&#8217; users, thanks to new, block I/O data integrity infrastructure code from Oracle that&#8217;s become part of the mainline kernel.</p>
<p>The code is in the currently shipping Linux 2.6.27 kernel, which debuted in early October. And as a result, its developers say it could dramatically improve protections against corruption during saving.</p>
<p>&#8220;When an application is reading or writing against storage, one of the things that could happen is silent data corruption &#8212; &#8216;silent&#8217; meaning that the application reports that data as being correctly written, but it&#8217;s not,&#8221; Monica Kumar, Oracle&#8217;s senior director for Linux, virtualization and open source product marketing</p>
<p>&#8220;Silent data corruption can happen more frequently than you think, and it could cause millions of dollar of damage if it&#8217;s in a mission-critical business,&#8221; she said.</p>
<p>Kumar also said the enhancement also means that Linux now has an advantage that no other operating system currently offers &#8212; a benefit that could serve the open source OS well as its distributions continue to compete with established proprietary systems.</p>
<p>&#8220;Because Linux is now the first operating system that has the T10 standard implemented, I think it does have a lead in that sense,&#8221; she said. &#8220;I&#8217;m not saying other operating systems will not follow, but for now, Linux is leading in this space.&#8221;</p>
<p> </p>
<p><strong>Building on a standard</strong></p>
<p><strong><span style="font-weight: normal;">The new block I/O data integrity infrastructure code is an implementation of an industry standard, the T10 Protection Information Model designed for end-to-end data integrity for enterprise storage systems.</span></strong></p>
<p><strong><span style="font-weight: normal;">The code also adds what are known as Data Integrity Extensions, a technology co-developed with storage vendor Emulex that enables integrity information to be transmitted from memory.</span></strong></p>
<p><strong><span style="font-weight: normal;">Kumar explained that the data integrity feature works as an additional checkpoint at the operating system level, verifying the data being written or read. As a result, the process is designed to make data corruption less likely.</span></strong></p>
<p><strong><span style="font-weight: normal;">&#8220;The validity of I/O operations is assured through the exchange of verification information during data transmission,&#8221; she said. &#8220;The key is creating integrity metadata, so as the data travels the data path, the integrity metadata is validated.&#8221;</span></strong></p>
<p><strong><span style="font-weight: normal;">According to Kumar, Oracle and Emulex were working on the data integrity feature since mid-2006. In July of this year, the code landed in the Linux kernel development tree, ultimately becoming included in the final 2.6.27 kernel release in October.</span></strong></p>
<p><strong><span style="font-weight: normal;">Currently, the technology works with the Linux-based Ext3 filesystem, though Kumar noted that work is ongoing to validate the data integrity technology against other filesystems as well.</span></strong></p>
<p><strong><span style="font-weight: normal;">At the same time, Oracle and Emulex are pushing an early-adopter program to get a small group of end users testing and deploying the technology, which could help demonstrate its real-world potential.</span></strong></p>
<p> </p>
<p><strong>Wider benefits</strong></p>
<p><strong><span style="font-weight: normal;">Since the data integrity technology is now part of the mainline Linux kernel, it is available to all Linux kernel users &#8212; and it could end up benefiting others beyond just Oracle and Emulex. Among two of the likely beneficiaries are Linux distribution vendors Novell and Red Hat.</span></strong></p>
<p><strong><span style="font-weight: normal;">&#8220;It goes without saying that any technology that improves data integrity is valued by Red Hat Enterprise Linux customers,&#8221; Nick Carr, marketing director at Red Hat, told InternetNews.com.</span></strong></p>
<p><strong><span style="font-weight: normal;">Michael Applebaum, senior product marketing manager at Novell, is also enthusiastic about the new data integrity technology.</span></strong></p>
<p><strong><span style="font-weight: normal;">&#8220;We see strong customer demand,&#8221; Applebaum told InternetNews.com. &#8220;Our heavy database users &#8230; for example, data warehousing vendors like Teradata, will benefit from enhanced data integrity.&#8221;</span></strong></p>
<p><strong><span style="font-weight: normal;">&#8220;We think such advanced features further establish SUSE Linux Enterprise Server as the operating system of choice for mission-critical data center workloads such as major database, middleware and line of business applications, backed by our strategic partners SAP and Microsoft,&#8221; he added.</span></strong></p>
<p><strong><span style="font-weight: normal;">For the present, Oracle is talking up its contribution as it and Emulex build an early adopter program to get the technology more widely deployed among storage vendors.</span></strong></p>
<p><strong><span style="font-weight: normal;">As a result, Kumar also suggested that storage vendors will soon be announcing gear that is specifically optimized for the technology, but provided few additional details.</span></strong></p>
<p> </p>
<p><a href="http://www.internetnews.com/" target="_blank">www.internetnews.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://v2.iraqitek.com/2008/12/06/oracle-helps-linux-get-enhanced-data-integrity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
