<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="/slopez/templates/default/atom.css" type="text/css" ?>

<feed 
   xmlns="http://www.w3.org/2005/Atom"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/">
    <link href="http://blogs.nologin.es/slopez/feeds/atom.xml" rel="self" title="Work In Progress" type="application/atom+xml" />
    <link href="http://blogs.nologin.es/slopez/"                        rel="alternate"    title="Work In Progress" type="text/html" />
    <link href="http://blogs.nologin.es/slopez/rss.php?version=2.0"     rel="alternate"    title="Work In Progress" type="application/rss+xml" />
    <title type="html">Work In Progress</title>
    <subtitle type="html">cat /dev/mind | grep -e freesoftware -e politics</subtitle>
    <icon>http://blogs.nologin.es/slopez/templates/default/img/s9y_banner_small.png</icon>
    <id>http://blogs.nologin.es/slopez/</id>
    <updated>2011-11-14T09:37:36Z</updated>
    <generator uri="http://www.s9y.org/" version="1.3.1">Serendipity 1.3.1 - http://www.s9y.org/</generator>
    <dc:language>en</dc:language>

    <entry>
        <link href="http://blogs.nologin.es/slopez/archives/30-Adobe-Flash-The-misunderstood-ugly-guy.html" rel="alternate" title="Adobe Flash: The misunderstood ugly guy" />
        <author>
            <name>Sergio Lopez</name>
                    </author>
    
        <published>2011-11-13T09:29:00Z</published>
        <updated>2011-11-14T09:37:36Z</updated>
        <wfw:comment>http://blogs.nologin.es/slopez/wfwcomment.php?cid=30</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blogs.nologin.es/slopez/rss.php?version=atom1.0&amp;type=comments&amp;cid=30</wfw:commentRss>
    
            <category scheme="http://blogs.nologin.es/slopez/categories/9-Miscelanea" label="Miscelánea" term="Miscelánea" />
    
        <id>http://blogs.nologin.es/slopez/archives/30-guid.html</id>
        <title type="html">Adobe Flash: The misunderstood ugly guy</title>
        <content type="xhtml" xml:base="http://blogs.nologin.es/slopez/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Almost everyone hates Flash, and <a href="http://www.esotech.org/resources/programming/html/the-internet-progresses-adobe-flash-discontinued">the discontinuation of it's mobile version was seen by many as a triumph</a>.<br />
<br />
Being a GNU/Linux user myself, I also suffered all those crappy versions, late releases and crazy development cycles. But, looking back and trying to be fair, I must acknowledge that the availability of a Flash player for the major operating systems has lowered the barrier for multiplatform development for many people, specially for independent companies. And I'm not talking only about embedded videos on websites, but also videogames (like <a href="http://machinarium.net">Machinarium</a> or <a href="http://thelettervsixtim.es">VVVVVV</a>) and applications. In some sense, Flash was more successful than Java at building bridges between platforms.<br />
<br />
That said, the failure of Flash on mobile platforms is not surprising at all. Pride seems to be the favorite sin for Adobe. They were barely able to produce decent quality versions for non-mobile platforms, so it was pretty clear their development work force wasn't strong enough to provide properly optimized versions for the more complex Android ecosystem.<br />
<br />
Adobe rejected the option of freeing its Flash Player, while keeping Adobe Flash (the content creator) as a commercial product. Apparently, they feared publishing the source code of its player would make easier for its competitors to provide alternative editors. But competition is not a bad thing, as it usually enriches the ecosystem and increases the popularity of a product. And opening the player would have extended Flash to newer platforms, improved the quality of non-Windows versions, and reduced total development cost, giving them more chances to success on mobile platforms. Perhaps they would even won the favor of some other companies (namely Google), which would in turn embed support for Flash on their own products by themselves.<br />
<br />
Adobe lost their big chance. Not even them understood the truly potential of their own product.<br />
<br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://blogs.nologin.es/slopez/archives/29-How-IntelAMD-inadvertently-fixed-GNU-Hurd.html" rel="alternate" title="How Intel/AMD (inadvertently) fixed GNU Hurd" />
        <author>
            <name>Sergio Lopez</name>
                    </author>
    
        <published>2011-09-04T08:29:00Z</published>
        <updated>2011-09-05T08:35:45Z</updated>
        <wfw:comment>http://blogs.nologin.es/slopez/wfwcomment.php?cid=29</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blogs.nologin.es/slopez/rss.php?version=atom1.0&amp;type=comments&amp;cid=29</wfw:commentRss>
    
            <category scheme="http://blogs.nologin.es/slopez/categories/3-Software-Libre" label="Software Libre" term="Software Libre" />
    
        <id>http://blogs.nologin.es/slopez/archives/29-guid.html</id>
        <title type="html">How Intel/AMD (inadvertently) fixed GNU Hurd</title>
        <content type="xhtml" xml:base="http://blogs.nologin.es/slopez/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Last Friday, on Hurd's IRC channel at freenode, we've accidentally noticed some machines were able to run certain operations on Hurd as KVM guest up to 10x faster than others. As antrik correctly guessed, this is the effect of Intel's <a href="http://en.wikipedia.org/wiki/Extended_Page_Table" title="Extended Pages Tables">Extended Page Tables</a>, which allow the guest operating system to deal with it's own page faults. I suppose AMD's <a href="http://en.wikipedia.org/wiki/Rapid_Virtualization_Indexing" title="Rapid Virtualization Indexing">Rapid Virtualization Indexing</a> could have a similar effect, but I don't have the hardware to be able to test it (please write to the mailing lists if you've been able to check it).<br />
<br />
Since most people (including myself) are running Hurd in a virtualized environment, having the ability of taking advantage of this circumstance by moving to hardware with this technology supposes a great improvement, heavily reducing compilation times and increasing the interactivity of the entire system.<br />
<br />
Let's see an small example of the difference between running with and without EPT.<br />
<br />
<b>Running without EPT (modprove kvm-intel ept=0):</b><br />
<code>root@debian:~# dd if=/dev/zero of=/dev/null bs=256k count=1000<br />
1000+0 records in<br />
1000+0 records out<br />
262144000 bytes (262 MB) copied, 2.08 s, 126 MB/s</code><br />
<b>And with EPT:</b><br />
<code>root@debian:~# dd if=/dev/zero of=/dev/null bs=256k count=1000<br />
1000+0 records in<br />
1000+0 records out<br />
262144000 bytes (262 MB) copied, 0.23 s, 1.1 GB/s</code><br />
I think there will be interesting times for GNU Hurd.<br />
<br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://blogs.nologin.es/slopez/archives/28-Sometimes,-swap-space-still-matters.html" rel="alternate" title="Sometimes, swap space still matters" />
        <author>
            <name>Sergio Lopez</name>
                    </author>
    
        <published>2011-07-15T17:19:07Z</published>
        <updated>2011-07-20T14:47:03Z</updated>
        <wfw:comment>http://blogs.nologin.es/slopez/wfwcomment.php?cid=28</wfw:comment>
    
        <slash:comments>10</slash:comments>
        <wfw:commentRss>http://blogs.nologin.es/slopez/rss.php?version=atom1.0&amp;type=comments&amp;cid=28</wfw:commentRss>
    
            <category scheme="http://blogs.nologin.es/slopez/categories/2-SolarisOpenSolaris" label="Solaris/OpenSolaris" term="Solaris/OpenSolaris" />
    
        <id>http://blogs.nologin.es/slopez/archives/28-guid.html</id>
        <title type="html">Sometimes, swap space still matters</title>
        <content type="xhtml" xml:base="http://blogs.nologin.es/slopez/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Most modern, general purpose Operating Systems (OS), come with a full-fledged Virtual Memory (VM) system that generates the illusion of having more memory than the real amount installed in the machine. Whether this <i>virtual</i> memory is backed by real RAM, disk swap or it just isn't backed by any physical device, is something up to the OS.<br />
<br />
 <br /><a href="http://blogs.nologin.es/slopez/archives/28-Sometimes,-swap-space-still-matters.html#extended">Continue reading "Sometimes, swap space still matters"</a>
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://blogs.nologin.es/slopez/archives/27-How-device-size-affects-disk-performance-in-Linux-II.html" rel="alternate" title="How device size affects disk performance in Linux (II)" />
        <author>
            <name>Sergio Lopez</name>
                    </author>
    
        <published>2011-02-16T09:10:44Z</published>
        <updated>2011-02-21T12:42:45Z</updated>
        <wfw:comment>http://blogs.nologin.es/slopez/wfwcomment.php?cid=27</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blogs.nologin.es/slopez/rss.php?version=atom1.0&amp;type=comments&amp;cid=27</wfw:commentRss>
    
    
        <id>http://blogs.nologin.es/slopez/archives/27-guid.html</id>
        <title type="html">How device size affects disk performance in Linux (II)</title>
        <content type="xhtml" xml:base="http://blogs.nologin.es/slopez/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                I've just noticed that in a virtualized environment, where roundtrips are more expensive, read speed differences between a page-aligned partition and a non page-aligned one are even more noticeable:<br />
<br />
Non-aligned partition (size in sectors: (41929649-63)+1=<i>41929587</i>):<br />
<br />
<code>none:~# fdisk -l -u /dev/sdb<br />
<br />
Disk /dev/sdb: 21.4 GB, 21474836480 bytes<br />
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors<br />
Units = sectors of 1 x 512 = 512 bytes<br />
Disk identifier: 0x93dbf2be<br />
<br />
   Device Boot      Start         End      Blocks   Id  System<br />
/dev/sdb1              63    41929649    20964793+  83  Linux<br />
<br />
none:~# dd if=/dev/sdb1 of=/dev/null bs=1M count=100 skip=0<br />
100+0 records in<br />
100+0 records out<br />
104857600 bytes (105 MB) copied, 3.80593 s, <i>27.6 MB/s</i><br />
<br />
none:~# dd if=/dev/sdb1 of=/dev/null bs=1M count=100 skip=100<br />
100+0 records in<br />
100+0 records out<br />
104857600 bytes (105 MB) copied, 3.82304 s, <i>27.4 MB/s</i><br />
<br />
none:~# dd if=/dev/sdb1 of=/dev/null bs=1M count=100 skip=200<br />
100+0 records in<br />
100+0 records out<br />
104857600 bytes (105 MB) copied, 3.83713 s, <i>27.3 MB/s</i></code><br />
Page-aligned partition (size in sectors: (41929654-63)+1=<i>41929592</i>) :<br />
<br />
<code>none:~# fdisk -l -u /dev/sdb<br />
<br />
Disk /dev/sdb: 21.4 GB, 21474836480 bytes<br />
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors<br />
Units = sectors of 1 x 512 = 512 bytes<br />
Disk identifier: 0x93dbf2be<br />
<br />
   Device Boot      Start         End      Blocks   Id  System<br />
/dev/sdb1              63    41929654    20964796   83  Linux<br />
<br />
<br />
none:~# dd if=/dev/sdb1 of=/dev/null bs=1M count=100 skip=0<br />
100+0 records in<br />
100+0 records out<br />
104857600 bytes (105 MB) copied, 0.618494 s, <i>170 MB/s</i><br />
<br />
none:~# dd if=/dev/sdb1 of=/dev/null bs=1M count=100 skip=100<br />
100+0 records in<br />
100+0 records out<br />
104857600 bytes (105 MB) copied, 0.582423 s, <i>180 MB/s</i><br />
<br />
none:~# dd if=/dev/sdb1 of=/dev/null bs=1M count=100 skip=200<br />
100+0 records in<br />
100+0 records out<br />
104857600 bytes (105 MB) copied, 0.589081 s, <i>178 MB/s</i></code><br />
<b>NOTE:</b> In both tests, the data is cached in the host (so there is no real I/O to disks but traffic through virtualization pipes), but clean in the guest.<br />
 
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://blogs.nologin.es/slopez/archives/26-How-device-size-affects-disk-performance-in-Linux.html" rel="alternate" title="How device size affects disk performance in Linux" />
        <author>
            <name>Sergio Lopez</name>
                    </author>
    
        <published>2011-02-09T08:04:48Z</published>
        <updated>2011-02-21T12:17:15Z</updated>
        <wfw:comment>http://blogs.nologin.es/slopez/wfwcomment.php?cid=26</wfw:comment>
    
        <slash:comments>3</slash:comments>
        <wfw:commentRss>http://blogs.nologin.es/slopez/rss.php?version=atom1.0&amp;type=comments&amp;cid=26</wfw:commentRss>
    
            <category scheme="http://blogs.nologin.es/slopez/categories/3-Software-Libre" label="Software Libre" term="Software Libre" />
    
        <id>http://blogs.nologin.es/slopez/archives/26-guid.html</id>
        <title type="html">How device size affects disk performance in Linux</title>
        <content type="xhtml" xml:base="http://blogs.nologin.es/slopez/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                While running some tests in a client's environment, we've noticed reading from a partition of a multipath device was considerably slower than reading from its parent node:<br />
<br />
<code>[root@none]# dd if=mpath4 of=/dev/null bs=1M count=1024<br />
1024+0 records in<br />
1024+0 records out<br />
1073741824 bytes (1.1 GB) copied, 8.92711 seconds, <b>120 MB/s</b><br />
<br />
[root@none]# dd if=mpath4p1 of=/dev/null bs=1M count=1024 skip=1024<br />
1024+0 records in<br />
1024+0 records out<br />
1073741824 bytes (1.1 GB) copied, 17.5965 seconds, <b>61.0 MB/s</b></code><br />
<br />
We asked to client support of a well-known GNU+Linux vendor, and they indicated that this behavior was "expected", since this kind of partitions were created by stacking a <i>dm-linear</i> device over  the original multipath node. I wasn't satisfied by this answer, since AFAIK dm-linear only did a simple transposition of the original request over an specified offset (the beginning of the partition), so I decided to investigate a bit further on my own.<br />
<br />
 <br /><a href="http://blogs.nologin.es/slopez/archives/26-How-device-size-affects-disk-performance-in-Linux.html#extended">Continue reading "How device size affects disk performance in Linux"</a>
            </div>
        </content>
        
    </entry>
    <entry>
        <link href="http://blogs.nologin.es/slopez/archives/25-DRM-y-Software-Privativo-van-de-la-mano.html" rel="alternate" title="DRM y Software Privativo van de la mano" />
        <author>
            <name>Sergio Lopez</name>
                    </author>
    
        <published>2010-11-09T21:24:30Z</published>
        <updated>2010-11-09T22:20:58Z</updated>
        <wfw:comment>http://blogs.nologin.es/slopez/wfwcomment.php?cid=25</wfw:comment>
    
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blogs.nologin.es/slopez/rss.php?version=atom1.0&amp;type=comments&amp;cid=25</wfw:commentRss>
    
            <category scheme="http://blogs.nologin.es/slopez/categories/3-Software-Libre" label="Software Libre" term="Software Libre" />
    
        <id>http://blogs.nologin.es/slopez/archives/25-guid.html</id>
        <title type="html">DRM y Software Privativo van de la mano</title>
        <content type="xhtml" xml:base="http://blogs.nologin.es/slopez/">
            <div xmlns="http://www.w3.org/1999/xhtml">
                Navegando por <a href="http://reddit.com" title="reddit">reddit</a>, me he encontrado con <a href="http://www.reddit.com/r/pics/comments/e37ba/this_is_why_we_pirate/">esta entrada</a> en la que un usuario se queja de que no puede reproducir un Blue-Ray legítimamente adquirido, ya que está utilizando como salida de vídeo una TV conectada al puerto HDMI de su portátil (un Macbook Pro).<br />
<br />
En dicha entrada se comenta cómo los fabricantes se perjudican a sí mismos con este tipo de prácticas. Ciertamente es un aspecto a destacar, pero también es importante tener en cuenta que dichas prácticas no serían posibles sin que existiese cierto Software Privativo que haga efectivas las limitaciones artificiales impuestas por los fabricantes. Y donde hoy es impedir que se reproduzca un contenido si se visualiza en una TV sin <a href="http://es.wikipedia.org/wiki/High-Bandwidth_Digital_Content_Protection">HDCP</a>, mañana podría ser cualquier otra prohibición igualmente ridícula y arbitraria.<br />
<br />
Y es que este es uno de los principales motivos por los que Richard M. Stallman inició el proyecto <a href="http://gnu.org">GNU</a> hace 25 años: impedir que los fabricantes tuvieran la capacidad de decidir sobre lo que el usuario puede o no hacer con su computadora. El Software Libre, como su propio nombre indica (al menos en su denominación castellana, más precisa que la anglosajona), trata sobre la libertad, y no sobre la gratuitidad, matización que con frecuencia se suele pasar por alto.<br />
<br />
Si en atención a nuestra comodidad entramos en el <a href="http://en.wikipedia.org/wiki/Walled_garden_(technology)">jardín vallado</a> que nos presentan y damos por buenas este tipo de prácticas (y entre ellas podemos incluir también modelos de distribución de software como el AppStore), le estamos dando vía libre a los fabricantes para que tomen el control de nuestros dipositivos y decidan por nosotros lo que podemos hacer con ellos. Y los peligros que esto entraña en una sociedad donde las TI están presentes a todos los niveles (y cada días más), son impredecibles.<br />
<br />
 
            </div>
        </content>
        
    </entry>

</feed>
