<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;Dk4FRHg_eCp7ImA9WhFSFU0.&quot;"><id>tag:blogger.com,1999:blog-7974522</id><updated>2013-06-17T23:35:15.640+02:00</updated><category term="Reverte" /><title>D'Oh!</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://diegocg.blogspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Diego Calleja</name><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>940</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/diegocg" /><feedburner:info uri="diegocg" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;C0YFQXY9eSp7ImA9WhFSFEw.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-5140545874718042370</id><published>2013-06-16T19:20:00.000+02:00</published><updated>2013-06-16T21:31:50.861+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-06-16T21:31:50.861+02:00</app:edited><title>Red Hat piensa que XFS es mejor sistema de archivos que Ext4</title><content type="html">Hace cosa de un año &lt;a href="http://diegocg.blogspot.com.es/2012/06/el-renacer-de-xfs.html"&gt;escribí una entrada&lt;/a&gt; sobre el renacer de XFS. Hace unos días se supo que Red Hat no sólo va a soportar XFS en RHEL 7, sino que &lt;a href="http://www.serverwatch.com/server-news/where-is-red-hat-enterprise-linux-7.html"&gt;planea usarlo como sistema de archivos por defecto&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Retomando la cuestión, si dejamos a un lado los de última generación (ZFS/Btrfs), XFS es el mejor sistema de archivos. La razón por la que la familia Ext ha tenido mayor protagonismo en Linux es que, como se ha recalcado aquí, los sistemas de archivo son como los navegadores web: la calidad de la implementación importa mucho más que el formato o estándar a implementar. Hasta el punto de que un sistema de archivos   obsoleto, como Ext4, es uno de los mejores por tener una buena implementación, mientras que Reiserfs v3 tienen un formato mejor, pero una implementación desfasada.&lt;br /&gt;
&lt;br /&gt;
XFS tiene un buen diseño, y, en parte, una  buena implementación. Su problema fue que al pasar de Irix a Linux, la implementación no encajó &lt;a href="https://lkml.org/lkml/2003/12/2/150"&gt;demasiado bien&lt;/a&gt;. Tardaron años en adaptarlo. Pero ese inconveniente ya está superado, se ha solucionado la lentitud del journaling con archivos pequeños, y por otra parte Ext4 tiene defectos de diseño que cada vez cuesta más superar, y que ni tan siquiera una buena implementación puede evitar. Ext4 ya no tiene la ventaja y no hay razones para no usar XFS.&lt;br /&gt;
&lt;br /&gt;
Por otro lado tenemos a Btrfs. Es el futuro a largo plazo, pero recuerden que, en realidad, las principales novedades de estos sistemas de archivos de próxima generación no son mejoras para el rendimiento y la escalabilidad de operaciones cotidianas, sino mejoras en la gestión de almacenamiento: expansión a múltiples discos, snapshots, subvolumes, checksums (las mejoras puntuales del modelo copy-on-write y el RAID integrado son más bien una consecuencia de lo anterior). En materia de rendimiento y escalabilidad pura y dura, ni ZFS ni Btrfs dan miedo a XFS; de hecho a menudo tiene algunas ventajas sobre ellos. Hacer copias redundantes de los metadatos, por ejemplo, da seguridad, pero escribir  al disco dos veces los mismos datos siempre va a ser más lento que no hacerlo, y para quienes llevan la capacidad de los discos al límite, eso importa.&lt;br /&gt;
&lt;br /&gt;
De ahí que el panorama linuxero de sistemas de archivos esté evolucionando hacia una dualidad: XFS para servidores "serios" que necesitan el máximo rendimiento (bases de datos, virtualización, etc), Btrfs para lo demás, Ext4 como opción estable y segura. Y el peso de Red Hat tras esta decisión va a consolidar definitivamente este panorama.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/-sodCgW_BKQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/5140545874718042370/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/06/red-hat-xfs-es-mejor-sistema-de.html#comment-form" title="7 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5140545874718042370?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5140545874718042370?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/-sodCgW_BKQ/red-hat-xfs-es-mejor-sistema-de.html" title="Red Hat piensa que XFS es mejor sistema de archivos que Ext4" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/06/red-hat-xfs-es-mejor-sistema-de.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkcESX0-cSp7ImA9WhFSE08.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-9116685293252175389</id><published>2013-06-15T22:17:00.003+02:00</published><updated>2013-06-15T22:26:48.359+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-06-15T22:26:48.359+02:00</app:edited><title>Curiosidades de OS X 10.9 "Mavericks"</title><content type="html">No es ningún secreto que desde que Apple se centró en los dispositivos portáctiles, lo relacionado con el escritorio ha pasado a ser secundario. OS X ha pasado de ser el centro de atención de todo el desarrollo  a ser un segundón que de vez en cuando recibe actualizaciones desarrolladas en iOS. Lo cual tiene  sentido, al fin y al cabo todos sabemos con qué productos gana Apple casi todo su dinero.&lt;br /&gt;
&lt;br /&gt;
Sin embargo, pasar a ser el sistema operativo de "camiones" post-pc tiene sus ventajas. Por ejemplo,  pueden permitirse tratar a OS X como un sistema operativo más orientado hacia sectores profesionales, "camioneros informáticos". Aunque eso no libra a nadie de los feroces ataques del infantil departamento de marketing de Apple, si que añade cosas interesantes, como &lt;a href="https://www.apple.com/osx/preview/advanced-technologies.html"&gt;una página&lt;/a&gt; dedicada a "tecnologías avanzadas" y un enlace a &lt;a href="https://www.apple.com/osx/preview/docs/OSX_Mavericks_Core_Technology_Overview.pdf"&gt;un PDF titulado "OS X Mavericks Core Technologies overview"&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;"Timer coalescing"&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
La primera gran novedad que se anuncia es algo llamado "Timer coalescing", fusión de temporizadores (por cierto, &lt;a href="http://lema.rae.es/drae/srv/search?key=coalescencia"&gt;la palabra coalescencia existe&lt;/a&gt; en español). Esta técnica tiene como objetivo mantener la CPU ociosa y que se mantenga en modos de ahorro de energía el máximo tiempo posible. Para ello, se minimiza el número de activaciones de temporizadores activados por las aplicaciones en el sistema. El modo de minimizarlo es agrupar los temporizadores no-críticos más cercanos en el tiempo. Por ejemplo, si hay 10 temporizadores fijados para activarse en el plazo de un mismo segundo, en lugar de sacar la CPU 10 veces del modo ocioso, se activan todos de una sola vez. Linux tiene algo similar &lt;a href="http://kernelnewbies.org/Linux_2_6_20#head-9968bd0c47c0d41499d448f30af75f1c95505857"&gt;desde hace más de 6 años&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Compresión de memoria&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
La segunda, la compresión de la memoria RAM de las aplicaciones menos utilizadas en caso de falta de memoria. Esta es una buena idea, en Linux hay planes para la incorporación de &lt;a href="https://lwn.net/Articles/545244/"&gt;algo similar&lt;/a&gt;, aunque lo de Apple parece más completo y añade, de paso y prácticamente "gratis", compresión de swap (si tienes la memoria de un programa comprimida, ¿por qué no almacenarla en swap directamente en ese formato?). Ahora bien, Apple afirma varias veces que este sistema puede reducir el tamaño de una aplicación en memoria hasta en un 50%, lo cual es una falacia descomunal. El ratio de compresión siempre depende del tipo de datos que se quieran comprimir.&lt;br /&gt;
&lt;br /&gt;
Me ha llamado la atención que en las imágenes de marketing de Apple que muestran las mejoras de rendimiento de esta compresión se vea, además de una barra de "respuesta bajo carga", otra que dice "Wake from Standby". Sorprende, porque la compresión  no debería afectar de ningún modo al regreso del modo de suspensión-a-memoria. Seguramente tenga que ver con la hibernación implícita que los Mac hacen con cada suspensión.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;App Nap&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
Otra curiosidad es algo llamado "App Nap". Consiste en que, cuando a una aplicación no es visible en el escritorio y no está reproduciendo sonido, se le reducen la prioridad de los temporizadores (es decir, el periodo de tiempo para hacer coalescencia de temporizadores es mayor que lo habitual), la del I/O de disco y la prioridad del proceso. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;...en definitiva, ahorro de energía&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
Estas tres características tienen una cosa en común: Tienen como objeto principal el ahorro de energía. Es decir, no son demasiado útiles para los Mac de escritorio. Al menos las dos primeras tienen toda la pinta de haber sido desarrolladas para iOS e incorporadas posteriormente a OS X.&lt;br /&gt;
&lt;br /&gt;
Otras características de ahorro de energía menos interesntes son que hará falta hacer click en contenido flash para poder verlo cuando el contenido no esté en el centro de la página, y aceleración por hardware en la reproducción de video.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Tags&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Otra característica interesante es &lt;a href="https://www.apple.com/osx/preview/#tags"&gt;el uso de tags&lt;/a&gt; en los archivos. Lo interesante no son los tags en sí mismos (¿hace cuántos años los soporta KDE?) sino el cómo están implementados, ya que el tagging es el primer paso para quienes quieren librarse de la estructura jerárquica y la anidación excesiva de directorios. Y &lt;a href="http://apple.stackexchange.com/questions/93979/are-the-osx-mavericks-tags-visible-from-the-command-line"&gt;parece ser&lt;/a&gt; que están implementados como atributos extendidos. Es decir, no se han roto demasiado la cabeza - por el momento (se rumorea hace tiempo que Apple trabaja en un nuevo sistema de archivos).&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;OpenGL&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Una de las características menos publicitadas de OS X Mavericks es la muy reivindicada actualización de su  OpenGL. Pasan del OpenGL 3.2 &lt;a href="https://developer.apple.com/graphicsimaging/opengl/capabilities/"&gt;de los OS X actuales&lt;/a&gt;, cuya especificación fue publicada en 2009 (!) a &lt;a href="http://rk.md/2013/opengl-osx-mountain-lion-vs-mavericks/"&gt;soportar OpenGL 4.1&lt;/a&gt; (y algo de 4.2). Que fue publicado en 2010, pero al menos se trata de una versión 4.x, que tiene mejor soporte para hardware diseñado para Direct3D 11. Será interesante ver los resultados del cambio.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/YJO6BRkgQuw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/9116685293252175389/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/06/curiosidades-de-os-x-109-mavericks.html#comment-form" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/9116685293252175389?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/9116685293252175389?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/YJO6BRkgQuw/curiosidades-de-os-x-109-mavericks.html" title="Curiosidades de OS X 10.9 &quot;Mavericks&quot;" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/06/curiosidades-de-os-x-109-mavericks.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYGR3syfCp7ImA9WhFTGEQ.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-4774376987285491195</id><published>2013-06-10T21:55:00.002+02:00</published><updated>2013-06-10T21:55:26.594+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-06-10T21:55:26.594+02:00</app:edited><title>Conservadurismo unixero, versión anti-wayland</title><content type="html">Algunos desarrolladores de X.org/Wayland han escrito para Phoronix &lt;a href="http://www.phoronix.com/scan.php?page=article&amp;amp;item=x_wayland_situation"&gt;un buen artículo&lt;/a&gt; enumerando, una vez más, las razones por las que X.org es un artefacto espantoso y como Wayland lo soluciona. A pesar de ello, la reacción  en algunos foros vuelven a ser los comentarios de gente que, en el mismo tono escéptico de siempre, vuelven a preguntarse sobre la necesidad de reemplazar una cosa tan sólida y funcional como X.org.&lt;br /&gt;
&lt;br /&gt;
Mención especial merecen quienes siguen mencionando la transparencia de red como motivo fundamental para defender a X.org frente a Wayland. A pesar de que el artículo describe con elocuencia qué:&lt;br /&gt;
&amp;nbsp; &lt;b&gt;·&lt;/b&gt; X.org hoy en día no tiene verdadera transparencia de red (las extensiones modernas han distorsionado el concepto original)&lt;br /&gt;
&amp;nbsp;&lt;b&gt;·&lt;/b&gt; La que tiene es bastante deficiente (que hayan surgido &lt;a href="https://en.wikipedia.org/wiki/NX_technology"&gt;empresas&lt;/a&gt; que hacen dinero mejorándola debería dar una pista)&lt;br /&gt;
&amp;nbsp;&lt;b&gt;·&lt;/b&gt; Wayland no sólo permitirá usar X.org dentro de Wayland, sino que tendrá soporte nativo de transparencia de red mejor que el de X.org (ya &lt;a href="http://cgit.freedesktop.org/wayland/weston/commit/?id=a83409cbff1cdcf3c7c51447af328c01bc363ebb"&gt;se ha incluido&lt;/a&gt; soporte de FreeRDP en Weston 1.1).&lt;br /&gt;
&lt;br /&gt;
A pesar de ello, como digo, no hay manera de que en cada hilo de Wayland aparezcan inevitablemente esos comentarios. No es sólo que haya gente que no lee el artículo, es que se niegan a leer e intentar comprender a quienes les responden.&lt;br /&gt;
&lt;br /&gt;
Llegados a este punto, los desarrolladores de Wayland probablemente pierden  el tiempo escribiendo esas cosas. A estas alturas,  está claro que estamos ante ejemplos de ultraconservadurismo unixero. Suelen abundar en estos casos las opiniones que, mostrando un considerable desfase respecto a la realidad tecnológica actual, defienden que el uso de "3D" en los escritorios es innecesario. Salgan de mi patio y no pisen mi cesped. Resumiendo, que no merecen demasiada atención.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/OVOFjWvg0C8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/4774376987285491195/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/06/conservadurismo-unixero-version-anti.html#comment-form" title="7 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/4774376987285491195?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/4774376987285491195?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/OVOFjWvg0C8/conservadurismo-unixero-version-anti.html" title="Conservadurismo unixero, versión anti-wayland" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/06/conservadurismo-unixero-version-anti.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEMDRnk9eyp7ImA9WhBbGU0.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-1146993363224839549</id><published>2013-05-18T21:44:00.002+02:00</published><updated>2013-05-18T21:47:57.763+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-05-18T21:47:57.763+02:00</app:edited><title>Dramas de Windows 8</title><content type="html">A estas alturas no es ningún secreto que en el escritorio Windows 8 ha tenido bastante menos éxito que el que se presupone a un nuevo sistema operativo de Microsoft debería conseguir. Su cuota de uso en la web &lt;a href="http://www.zdnet.com/windows-8-edges-to-3-84-percent-share-still-fails-to-spark-7000014746/"&gt;es peor&lt;/a&gt; que la de Vista, y Vista ya de por si no fue precisamente popular. Pero el caso de Windows 8 no se queda ahí, hay varias historias  entrecruzadas rondando internet -no todas negativas- que dan para hablar largo y tendido.&lt;br /&gt;
&lt;br /&gt;
Uno de mis favoritos son &lt;a href="https://www.computerworld.com/s/article/9238887/Retailers_didn_t_do_Windows_8_any_favors"&gt;este&lt;/a&gt; o &lt;a href="http://www.theregister.co.uk/2013/01/24/windows_8_blame_game/"&gt;este&lt;/a&gt;, en los que se argumenta que la culpa de los malos resultados de Windows 8 la tienen los vendedores de PCs tradicionales, por querer seguir vendiendo....PCs tradicionales, y por no querer seguir las indicaciones de Microsoft. Lo cierto es que son hipótesis creíbles, teniendo en cuenta la existencia de Surface como supuesta muestra de lo que Windows 8 debería ser.&lt;br /&gt;
&lt;br /&gt;
Uno de los últimos dramas ocurrió hace unos días, en &lt;a href="https://blogs.technet.com/b/microsoft_blog/archive/2013/05/10/staying-centered.aspx?Redirected=true"&gt;un post&lt;/a&gt; del "Corporate Vice President of Corporate Communications" de Microsoft. Este responsable de comunicación decidió utilizar una técnica comunicativa muy común, consistente en acusar a los medios de comunicación de sensacionalismo. Es decir, echar balones fuera. Lo cómico es que esos medios sensacionalistas coinciden al señalar lo que todos sabemos: Imposibilidad de arrancar en el escritorio clásico, ausencia de botón de inicio. Pero está previsto que la próxima actualización de Windows, &lt;a href="http://www.zdnet.com/what-microsofts-blue-is-and-isnt-7000013747/"&gt;8.1 "Blue"&lt;/a&gt;, restaure precisamente ese funcionalidad. El responsable de "comunicaciones corporativas" puede decir lo que quiera, pero con los hechos Microsoft da la razón a los medios a quienes acusan de sensacionalistas.&lt;br /&gt;
&lt;br /&gt;
Y, por supuesto,  repite una y mil veces aquello de que ellos escuchan atentamente a sus clientes. Sin embargo, todos recordamos que la ausencia del botón de inicio y la imposibilidad de iniciar en el escritorio clásico fueron mencionados repetidamente en los análisis de todas las versiones preliminares de Windows 8. Surgieron varios programas para añadir de nuevo el botón de inicio, y en lugar de escuchar a los clientes, Microsoft &lt;a href="https://www.computerworld.com/s/article/9230024/Microsoft_blocks_Windows_8_Start_button_boot_to_desktop_hacks"&gt;intentó activamente&lt;/a&gt; hacer difícil la creación de esos programas.&lt;br /&gt;
&lt;br /&gt;
Otro drama interesante es la curiosa persistencia de gente que sigue 
afirmando en serio que la(s) interfaz(ces) de Windows no tienen ningún 
problema, que es mejor que Windows 7 y que es cosa de acostumbrarse. 
Como ya mencioné, a la dualidad de interfaces de Windows 8 sólo cabe 
acostumbrarse como uno se acostumbra en Linux a las diferencias entre 
aplicaciones GNOME y KDE, es decir, educando al cerebro para que ignore 
los problemas.&lt;br /&gt;
&lt;br /&gt;
Pero no todo es malo. Poca, muy poca gente menciona que Windows 8 está teniendo cierto éxito en las tabletas, &lt;a href="http://techcrunch.com/2013/04/25/strategy-analytics-q1-tablet-stats/"&gt;pasando en un año&lt;/a&gt; de una cuota de mercado del 0% al 7.8%. Teniendo en cuenta que se trata de la entrada de un jugador nuevo en medio de una competencia feroz entre iPad y Android, me parecen cifras más que respetables. Puede que Windows 8 haya causado un lío tremendo en el escritorio con su mezcla de interfaces, pero está claro que obtienen un beneficio de todo eso, que es ser un buen sistema operativo para tabletas.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/yEAPyFFb338" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/1146993363224839549/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/05/dramas-de-windows-8.html#comment-form" title="3 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/1146993363224839549?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/1146993363224839549?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/yEAPyFFb338/dramas-de-windows-8.html" title="Dramas de Windows 8" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>3</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/05/dramas-de-windows-8.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0UMRH47fyp7ImA9WhBUFkw.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-6967028144208676593</id><published>2013-05-03T21:53:00.004+02:00</published><updated>2013-05-03T22:01:25.007+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-05-03T22:01:25.007+02:00</app:edited><title> Las novedades de Linux 3.9</title><content type="html">(Si, si, perdón por el retraso).&lt;br /&gt;
&lt;br /&gt;
Ya se ha &lt;a href="https://lkml.org/lkml/2013/4/28/69"&gt;anunciado&lt;/a&gt; la  
versión 3.9 del kernel Linux. Esta versión incluye soporte experimental en Btrfs para los modos RAID5/6 y mejor defragmentación en archivos compartidos por snapshots; soporte para el emulador "goldfish" usado por el SDK de Android; posibilidad de usar dispositivos SSD como dispositivos cache; dos nuevas arquitecturas: Synopsys ARC 700 y Meta Imagination; soporte de KVM en la arquitectura ARM; un driver de Intel que inyecta ciclos ociosos para mejorar en rendimiento-por-vatio, soporte para portátiles Chrome OS, un nuevo estado de suspensión energético, y la eliminación de la opción obsoleta CONFIG_EXPERIMENTAL. También se han
 incluido  drivers nuevos y  muchas  otras mejoras y pequeños cambios. 
La lista completa de cambios,  en  inglés,  puede &lt;a href="http://kernelnewbies.org/Linux_3.9"&gt;encontrarse aquí&lt;/a&gt;, como siempre. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte experimental de RAID5/6 y defragmentación optimizada en presencia de snapshots:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;b&gt;· RAID5/6: &lt;/b&gt;Btrfs ha añadido soporte de RAID5 y RAID6. El soporte es aun experimental y no está preparado para gestionar cuelgues del sistema, por lo tanto sólo se recomienda su uso en pruebas.&lt;br /&gt;
&amp;nbsp;&lt;b&gt;&amp;nbsp;&amp;nbsp; ·&lt;/b&gt; &lt;b&gt;Defragmentación optimizada en presencia de snapshots&lt;/b&gt;: Debido al diseño copy-on-write de Btrfs, varios snapshots pueden compartir los mismos bloques de datos. Esta compartición de bloques podía deshacerse tras un proceso de defragmentación, ya que al intentar defragmentar parte de un archivo se activaba el proceso de copy-on-write, y quedaba un archivo fragmentado y otro defragmentado, y los datos de ambos duplicados y no compartidos. En esta versión el proceso de defragmentación tiene en cuenta la presencia de snapshots.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Emulador "goldfish" de Android&lt;/b&gt;: El entorno de desarrollo de Android proporciona una plataforma de virtualización ARM basada en QEMU llamada "goldfish". Esta plataforma proporciona una CPU virtual y controladores para la batería, MMC, sonido, gráficos, etc. Esta versión de Linux incorpora el soporta para esta plataforma goldfish, lo cual hace más sencillo desarrollar para Android.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Almacenamiento SSD como caché: &lt;/b&gt;El device-mapper ha añadido un target (dm-cache) que permite utilizar dispositivos veloces (por ejemplo, SSD) como cachés de dispositivos más lentos (como los discos tradicionaes). Este target soporta plugins que implementan diferentes políticas respecto al funcionamiento de caché. Soporta modos de escritura writeback y writethrough. Documentación: &lt;a href="https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/Documentation/device-mapper/cache.txt?id=c6b4fcbad044e6fffcc75bba160e720eb8d67d17"&gt;Documentation/device-mapper/cache.txt&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Nueva arquitectura: procesadores Synopsys ARC 700&lt;/b&gt;: Esta versión soporta la familia de procesadores ARC700 processor (750D y 770D) fabricados por Synopsys. &lt;br /&gt;
&lt;br /&gt;
El ARC700 es un core RISC de 32 bits con MMU, altamente configurable y eficiente energéticamente. Está embebido en SoCs que se incluyen en televisiones, reproductores digitales, dispositivos de red. Hay más información sobre estos procesadores&amp;nbsp; &lt;a href="http://www.synopsys.com/IP/ProcessorIP/ARCProcessors/Pages/default.aspx"&gt;aquí&lt;/a&gt;. Más información sobre el proceso de porteo a Linux puede encontrarse en esta charla: &lt;a href="https://raw.github.com/vineetgarc/publish/master/ELCE-2012-ARC-Linux.pdf"&gt;ELCE-Barclone '12&lt;/a&gt;. La toolchain GNU, basada en GCC 4.4 + uClibc 0.9.30.3 está disponible &lt;a href="http://github.com/foss-for-synopsys-dwc-arc-processors/linux.git"&gt;en GitHub&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Nueva arquitectura: procesadores Meta Imagination&lt;/b&gt;: Esta versión incluye soporte para los procesadores Meta ATP (Meta 1) y Meta HTP (Meta 2) de Imagination Technologies. &lt;br /&gt;
&lt;br /&gt;
Los procesadores Meta son procesadores de propósito general de 32 bits, con soporte de multihilo por hardware, y que también incluyen un conjunto de instrucciones DSP. Pueden encontrarse en muchas radios digitales. Pueden ejecutar diferentes sistemas operativos en diferentes hilos de hadware, por ejemplo, una radio digital podría ejecutar un RTOS para decodificar señales y audio en tres hilos de hardware, y ejecutar Linux en un cuarto hilo para gestionar la infertaz de usuario, red, etc.&amp;nbsp; Los HTPs también son capaces de ejecutar Linux SMP en múltiples hilos hardware. El conjunto de instrucciones y la documentación sobre la arquitectura pueden encontrarse &lt;a href="http://www.imgtec.com/downloads.asp"&gt;aquí&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte de KVM en ARM&lt;/b&gt;: La arquitectura ARM ahora soporta el sistema de virtualización KVM.&lt;a href="http://git.kernel.org/linus/749cf76c5a363e1383108a914ea09530bfa0bd43"&gt;&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Driver Intel PowerClamp para la inyección de ciclos ociosos para mejora del rendimiento energético&lt;/b&gt;: El driver Intel PowerClam permite inyectar ciclos "idle" a las CPUs. El objetivo es mantener el estado &lt;a href="https://en.wikipedia.org/wiki/Advanced_Configuration_and_Power_Interface#Processor_states"&gt;energético-C&lt;/a&gt; para un determinado conjunto de CPUs. Comparado con otros sistemas existentes en el kernel, como ACPI PAD (desactivar CPUs) y modulación de frecuencia, este sistema es a menudo más eficiente en términos de rendimiento/W. Documentación: &lt;a href="https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/plain/Documentation/thermal/intel_powerclamp.txt?id=d6d71ee4a14ae602db343ec48c491851d7ec5267"&gt;Documentation/thermal/intel_powerclamp.txt&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Nuevo estado de suspensión "suspend-freeze"&lt;/b&gt;: Esta versión introduce un nuevo modo de suspensión. Equivale a procesos congelados + dispositivos dormidos + procesadores ociosos. Este estado es útil para 1) plataformas que no soporta suspensión a memoria, o la que tienen está mal implementada 2) plataformas que tienen un estado energético ocioso extremadamente eficiente y que pueden ser utilizadas para reemplazar a la suspensión a memoria.&lt;br /&gt;
&lt;br /&gt;
Comparado con la suspensió a memoria, suspend-freeze ahorra menos energía porque el sistema aun está en estado de ejecución, pero tiene menos latencia en la reanudación porque no toca la BIOS y los procesadores están en estado ocioso. Comparado con RTPM/estado ocioso, suspend-freeze ahorra más energía porque el procesador tiene más tiempo para dormir una vez que los procesos han sido congelados, y puede ahorra más energía de los dispositivos que no tienen buen soporte RTPM. Para activar este modo de suspensión, haga "echo freeze &amp;gt; /sys/power/state"&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte de portátiles Chrome OS&lt;/b&gt;: Se ha añadido soporte para todos los dispositivos de los portátiles Chrome vendidos por varios fabricantes.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Eliminación de CONFIG_EXPERIMENTAL&lt;/b&gt;: CONFIG_EXPERIMENTAL era una opción de configuración que tenía como objeto activar características experimentales que la gente normal no debía usar. Pero los cambios en el modelo de desarrollo y el directorio staging lo han convertido en obsoleto. Estos días casi todas las distros la activan por defecto, convirtiéndolo en algo inútil, por lo que ha sido eliminada. A partir de ahora, los desarrolladores añadirán el texto "(EXPERIMENTAL)" en el título de la opción de configuración para prevenir a los usuarios.&lt;br /&gt;
&lt;br /&gt;
Y eso es todo. La lista completa de cambios en inglés, &lt;a href="http://kernelnewbies.org/Linux_3.9"&gt;aquí&lt;/a&gt;&amp;nbsp; &lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/KoB3l4YnGjo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/6967028144208676593/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/05/las-novedades-de-linux-39.html#comment-form" title="7 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/6967028144208676593?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/6967028144208676593?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/KoB3l4YnGjo/las-novedades-de-linux-39.html" title=" Las novedades de Linux 3.9" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/05/las-novedades-de-linux-39.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DU4FQ34zcSp7ImA9WhBWE0k.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-6717897021049657028</id><published>2013-04-07T14:02:00.000+02:00</published><updated>2013-04-07T17:18:32.089+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-07T17:18:32.089+02:00</app:edited><title>Baseline, el nuevo JIT javascript de Firefox (y de paso, la historia de los JITs de Firefox)</title><content type="html">Como colofón a la &lt;a href="http://diegocg.blogspot.com.es/2013/04/google-anuncia-blink-un-fork-de-webkit.html"&gt;entrada anterior&lt;/a&gt;, hoy tengo la oportunidad de retomar la sana costumbre de proselitismo firefoxero, como se hacía en los tiempos del &lt;a href="http://www.mozilla.org/en-US/press/mozilla-2004-12-15.html"&gt;anuncio de dos páginas en el New York Times&lt;/a&gt; pagado con donaciones ("crowdfunding" que se diría ahora, en lugar del "fundraising" que se utilizó entonces), o los primeros &lt;a href="http://www.mozilla.org/en-US/press/mozilla-2005-10-19.html"&gt;100 millones de descargas&lt;/a&gt;. Sin intención anti-blink, que conste (aunque quizás la entrada aparentara lo contrario,  blink me parece el sucesor más fiel al espíritu del  webkit original).&lt;br /&gt;
&lt;br /&gt;
Firefox &lt;a href="https://blog.mozilla.org/javascript/2013/04/05/the-baseline-compiler-has-landed/"&gt;ha anunciado&lt;/a&gt; que acaba de introducir en sus &lt;a href="http://nightly.mozilla.org/"&gt;builds nocturnas&lt;/a&gt; un nuevo JIT: Baseline. El anuncio es una lectura muy interesante que merece un post épico sobre la intrincada historia de los motores Javascript de Firefox y la evolución de sus JITs.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;SpiderMonkey: intérprete a secas&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
En un principio, el motor Javascript de Firefox (llamado SpiderMonkey desde que Brendan Eich lo escribió mientras creaba el lenguaje) era simplemente un intérprete de bytecode. Por aquel entonces los JITs eran algo reservado a Java y similares. En Firefox 3.5 se introdujo el primer JIT, TraceMonkey. Por aquel entonces tanto el V8 de Chrome como el Squirrelfish de Apple del mundo Webkit ya tenían sus JITs.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;TraceMonkey: tracing JIT&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
Este JIT de Mozilla, sin embargo, era algo diferente. Los motores de webkit eran JITs "whole-method", que quiere decir que compilaban a código nativo métodos enteros. Sin embargo, Javascript es un lenguaje con variables de tipado  dinámico, es decir, el tipo de una variable pueden cambiar durante la ejecución, por lo que el tipo de muchas variables no puede determinarse durante la compilación. Por eso, las implementaciones de lenguajes de tipado dinámico tienen que implementar un sistema que vaya tomando nota del tipo de cada variable y pueda enfrentarse a cambios de tipos. Los JITs webkit generaban código nativo que incluía ese sistema, sistema que, como es de esperar, afecta notablemente al rendimiento.&lt;br /&gt;
&lt;br /&gt;
TraceMonkey no generaba código nativo para métodos, lo generaba para "traces", que no son más que una ruta de código determinada. El intérprete empieza a interpretar el bytecode, y cuando  el bytecode saltaba "hacia atrás" (caso típico de un loop), tomaba nota de ello. Cuando ese mismo salto ocurría varias veces, TraceMonkey generaba código nativo para esa porción de código.&lt;br /&gt;
&lt;br /&gt;
La gran ventaja de este método era que al entrar en acción no para generar código genérico para una función, sino una ruta de código muy concreta ya ejecutada muchas veces, y conociendo el conjunto de tipos concreto  utilizados por las variables en esas ejecuciones, TraceMonkey tenía la oportunidad de optimizar el código nativo para ese conjunto de tipos, sin incluir todo un sistema capaz de funcionar con tipos dinámicos (sólo comprobaciones de cambio de tipo), por lo que el código generado estaba más optimizado que el código de los JITs webkit. Las desventajas  era que si una trace cambiaba los tipos asumidos, había que desecharla y volver al intérprete inicial. Y si una ruta de código con muchos "ifs" pasaba siempre por las mismas condiciones y de repente en una cambiaba de dirección, lo mismo.&lt;br /&gt;
&lt;br /&gt;
TraceMonkey era bueno optimizando loops con tipos y rutas de código estables, pero para lo demás se volvía al (lento) intérprete. Los webkit generaban código nativo menos optimizado, por incluir toda la gestión de tipos, pero podían optimizar cualquier función, no una ruta concreta, y su optimización era válida en presencia de cambios de tipos y de rutas de código, y duraba para todo el programa. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;JaegerMonkey: whole-method JIT, pero sin eliminar TraceMonkey&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Aunque TraceMonkey era bueno en lo suyo, había espacios donde claramente no podía competir en todos los casos con los JITs webkit, así que Firefox 4 introdujo un JIT "whole-method" como los de ellos, llamado JaegerMonkey. Sin embargo, TraceMonkey seguía siendo el mejor para loops estables, por lo que se siguió recurriendo a él para esos casos.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;JaegerMonkey + type inference: adios a TraceMonkey&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Firefox 9 añadió a SpiderMonkey (el intérprete) inferencia de tipos. A grandes rasgos, la inferencia de tipos consiste en intentar averiguar lo máximo posible sobre los tipos de las variables y sus cambios en todo momento. Gracias a esa información JaegerMonkey pasó a poder hacer optimizaciones de tipos parecidas a las de TraceMonkey.&lt;br /&gt;
&lt;br /&gt;
Dado que JaegerMonkey hacía más o menos el trabajo de TraceMonkey y la integración entre ambos era problemática (y, además, TraceMonkey se había convertido en un monstruo al que se había intentado forzar a hacer lo que no podía), se desactivó TraceMonkey por defecto en Firefox 10, y se eliminó por completo en Firefox 11.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;IonMonkey: whole-method JIT + type inference + IR, pero también JaegerMonkey&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Firefox 18 (publicado hace medio año) incluyó otro JIT, IonMonkey. Sus fundamentos vienen a ser los mismos que los de JaegerMonkey, excepto en un aspecto. Al compilar una función, JaegerMonkey lo hace traduciendo el bytecode a código máquina nativo más o menos directamente.&lt;br /&gt;
&lt;br /&gt;
IonMonkey no hace esa traducción directa, traduce en primer lugar el código Javascript en primer lugar a unas estructuras de datos, una "representación intermedia" (IR), sobre la cual se pueden aplicar algoritmos de optimización mucho más complejos e infinitamente más eficientes. Es así, de hecho, como funcionan los grandes compiladores. Sólo hay un problema, y es que esta clase de compilación es compleja, lenta y usa muchos recursos. Se trata de la mejor optimización posible, pero sólo merece la pena en métodos que verdaderamente lo merezcan. Por lo que se siguió utilizando JaegerMonkey, que hacía optimizaciones regulares, pero rápidas. &lt;br /&gt;
&lt;br /&gt;
Llegados a este punto, el esquema es:&lt;br /&gt;
&amp;nbsp;· Se empieza con el intérprete SpiderMonkey (que es lento pero es la mejor opción para el código no crítico que casi no se ejecuta, ya que esos casos las compilaciones son más costosas que los beneficios potenciales)&lt;br /&gt;
&amp;nbsp;· Si una función se llama bastante se hace una optimización simple pero rápida con JaegerMonkey.&lt;br /&gt;
&amp;nbsp;· Si esa función sigue llamándose con mucha insistencia, se hace una optimización profunda pero lenta con IonMonkey.&lt;br /&gt;
&amp;nbsp;· Si hay un cambio de tipos en una función en alguno de los dos JITs, se desechan las optimizaciones y se vuelve al intérprete (pero ocurre con menos frecuencia que en TraceMonkey)&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Baseline: adiós a JaegerMonkey&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
El esquema presente de los JITs de Firefox parece equilibrado, pero a través de tanto cambio ha acumulado deficiencias. El encargado de recoger información de los tipos es el intérprete SpiderMonkey, que se lo pasa a los JITs. Es por esa razón que si hay un cambio de tipos es necesario desechar el código nativo generado y volver al (lento) intérprete, para sea él quien recoja la información de los nuevos tipos.&lt;br /&gt;
&lt;br /&gt;
Baseline es un reemplazo de JaegerMonkey, diseñado como él para generar código poco optimizado pero con rapidez, con la diferencia de que es capaz de analizar tipos por si mismo, y gracias a una optimización llamada "inline cache", si hay un cambio de tipos es capaz de adaptarse e incorporarlo a la optimización existente sin empezar de cero. Y toda la información de tipos es compartida con IonMonkey. De ese modo, un cambio de tipos en el código nunca supone el regreso al  intérprete, sino a la optimización media de Baseline.&lt;br /&gt;
&lt;br /&gt;
Es más, su gestión de tipos es mucho más avanzada que la del intérprete y permite mejores optimizaciones y consume menos memoria que Jaeger, sin que por ello deje de compilar con rapidez. Además, las llamadas entre código nativo optimizado por Ion y el optimizado por Baseline son más rápidas que con Jaeger. Baseline además comparte mucho código con IonMonkey, y por último, Baseline entrará a optimizar una función cuando se ejecuta 10 veces, mucho antes que JaegerMonkey, que lo hacía tras 40.  Los &lt;a href="http://arewefastyet.com/"&gt;benchmarks&lt;/a&gt; muestran una mejora notoria y plena competitividad con otros motores javascript (que, aunque no lo he mencionado, también han ido mejorando con el tiempo).&lt;br /&gt;
&lt;br /&gt;
Y ese es el resumen de la evolución de los motores Javascript de Firefox...&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Extra: OdinMonkey (asm.js)&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
...con una excepción: OdinMonkey, también conocido como &lt;a href="http://asmjs.org/"&gt;asm.js&lt;/a&gt;, que es algo reciente. Es un experimento de Mozilla, y no tiene que ver con los motores javascript referidos anteriormente. Se trata de un subconjunto de Javascript legalmente válido, pero que renuncia a las funcionalidades más costosas del lenguaje, como el tipado dinámico o la gestión de memoria automática.&lt;br /&gt;
&lt;br /&gt;
Este subconjunto de Javascript se ha diseñado con la idea -francamente revolucionaria- de permitir compilar código C/C++. Es decir, coger un programa C/C++ y compilarlo no a código x86, sino a este subconjunto de Javascript. Es decir, que este subconjunto de Javascript funcionaría como una especie de "representación intermedia", de pseudobytecode.&lt;br /&gt;
&lt;br /&gt;
Lo gracioso está en que, al 
prescindir de las características complejas, es posible utilizar no un compilador
 JIT, sino uno "ahead-of-time", para generar código &lt;i&gt;muy&lt;/i&gt; optimizado a partir de ese Javascript especial. Y por &lt;i&gt;muy&lt;/i&gt; optimizado estamos hablando que es el doble de lento que los programas generados por  compiladores como clang (y eso es ser muy, muy rápido). Ah, y con la seguridad de una máquina virtual.&lt;br /&gt;
&lt;br /&gt;
De momento, asm.js supone la obsolescencia del Native Client de Google Chrome, pero los desarrolladores están planeando facilitar  que asm.js pueda ser usado por lenguajes como Java o C#, con lo cual asm.js podría convertirse en una VM universal que compita con las de esos lenguajes.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/_9aI38awriQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/6717897021049657028/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/04/baseline-el-nuevo-jit-javascript-de.html#comment-form" title="9 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/6717897021049657028?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/6717897021049657028?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/_9aI38awriQ/baseline-el-nuevo-jit-javascript-de.html" title="Baseline, el nuevo JIT javascript de Firefox (y de paso, la historia de los JITs de Firefox)" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>9</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/04/baseline-el-nuevo-jit-javascript-de.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkQARXwzeyp7ImA9WhBWEEo.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-674911327866900648</id><published>2013-04-04T00:22:00.003+02:00</published><updated>2013-04-04T14:25:44.283+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-04T14:25:44.283+02:00</app:edited><title>Google anuncia Blink, un fork de Webkit, y a nadie debería sorprenderle</title><content type="html">Pues si, no es una broma retrasada del April Fools: Google &lt;a href="http://www.chromium.org/blink"&gt;ha decidido hacer un fork de Webkit&lt;/a&gt;. Se trata de una decisión tajante y las consecuencias son fáciles de adivinar, así que no hay mucho que decir al respecto, más allá de lo obvio: es una mala noticia y una prueba de que Google cada vez defiende más sus intereses sin permitirse sentimentalismos (igual que Apple). De hecho me apunto una predicción: aunque Google haga público el código de Blink,  acabará haciendo el desarrollo en secreto, como ya hace con Android.&lt;br /&gt;
&lt;br /&gt;
Sin embargo, no se dejen engañar: aunque no era muy conocido, los conflictos y problemas en Webkit existían y eran abundantes, y aunque quizás un fork quedaba lejos, hacía tiempo que había dejado de tener una dirección única. Permitanme citarles un par de blogs que permiten intuir los problemas del proyecto Webkit:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;"WebKit has eight build systems, which cause perverse behavior. Peel back  the covers and you’ll find tension about past code forks: V8 vs.  Apple’s JavaScriptCore (“Nitro”), iOS (in a secret repository at  apple.com for years, finally landing), various graphics back ends,  several network stacks, two multi-process models (Chrome’s,  stealth-developed for two years; and then Apple’s “WebKit2″ framework).  Behind the technical clashes lie deep business conflicts."&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Brendan Eich, &lt;a href="https://brendaneich.com/2013/02/why-mozilla-matters/"&gt;"Why Mozilla Matters"&lt;/a&gt;, escrito el pasado 14 de Febrero.&lt;br /&gt;
&lt;br /&gt;
Y este otro:&lt;br /&gt;
&lt;h4&gt;
&lt;i&gt;"what’s not shared in WebKit ports:&lt;/i&gt;&lt;/h4&gt;
&lt;i&gt; &lt;/i&gt; &lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;Anything on the GPU &lt;/i&gt;&lt;ul&gt;
&lt;li&gt;&lt;i&gt;3D Transforms&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;WebGL&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;Video decoding&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;i&gt;2D drawing to the screen &lt;/i&gt;&lt;ul&gt;
&lt;li&gt;&lt;i&gt;Antialiasing approaches&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;SVG and CSS gradient rendering&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;i&gt;Text rendering and hyphenation&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;Network stack (SPDY, prerendering, WebSocket transport)&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;A JavaScript engine &lt;/i&gt;&lt;ul&gt;
&lt;li&gt;&lt;i&gt;JavaScriptCore is in the WebKit repo. There are bindings in WebKit for both it and V8&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;i&gt;Rendering of form controls&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;&lt;code&gt;video&lt;/code&gt; and &lt;code&gt;audio&lt;/code&gt; element behavior (and codec support)&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;Image decoding&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;&lt;i&gt;Navigating back/forward &lt;/i&gt;&lt;ul&gt;
&lt;li&gt;&lt;i&gt;The navigation parts of pushState()&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;i&gt;SSL features like Strict Transport Security and Public Key Pins"&lt;/i&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;i&gt;&lt;/i&gt; Paul Irish, &lt;a href="http://paulirish.com/2013/webkit-for-developers/"&gt;"Webkit for developers"&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
En efecto, como se puede deducir de esos posts hace tiempo que Webkit estaba &lt;i&gt;forkeado&lt;/i&gt; de facto, y lejos de ser ese motor de navegador minimalista y moderno que era en sus inicios, se había convertido -por culpa de Apple y Google- en un monstruo. Cada corporación intentaba plasmar sus intereses, y en las áreas más conflictivas en lugar de buscar un consenso técnico cada uno empotraba su solución particular. Parece ahora obvio que la comunidad estaba rota hace tiempo, y simplemente estamos asistiendo a su confirmación oficial.&lt;br /&gt;
&lt;br /&gt;
Personalmente no me afecta demasiado, ya que siempre me negué a usar Chrome, un navegador &lt;a href="http://en.wikipedia.org/wiki/Google_Chrome#Privacy"&gt;que recoge datos privados de sus usuarios&lt;/a&gt; y que  incluye publicidad del Chromebook (¿software de escritorio con adware incorporado? ¿estamos en 2001?). Hubo un tiempo en el que los problemas de rendimiento y memoria de Firefox me tentaron a usar Chromium, aunque no me gustaba demasiado su carácter de segundón, pero hace tiempo que Firefox eliminó (y mejoró con creces) esos problemas, y se trata de una fundación sin ánimo de lucro con un &lt;a href="https://blog.mozilla.org/theden/2013/02/06/mozilla-is-most-trusted-internet-company-in-privacy/"&gt;buen historial de respeto a la privacidad&lt;/a&gt;. Viendo el panorama me alegro de no haber cambiado, porque visto lo visto, Firefox va a seguir siendo el único gran navegador verdaderamente neutral.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/o2fhbjcTTcg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/674911327866900648/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/04/google-anuncia-blink-un-fork-de-webkit.html#comment-form" title="8 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/674911327866900648?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/674911327866900648?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/o2fhbjcTTcg/google-anuncia-blink-un-fork-de-webkit.html" title="Google anuncia Blink, un fork de Webkit, y a nadie debería sorprenderle" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>8</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/04/google-anuncia-blink-un-fork-de-webkit.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C04MRXY8eCp7ImA9WhBXGEs.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-2277515161355862773</id><published>2013-04-02T01:17:00.002+02:00</published><updated>2013-04-02T02:19:44.870+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-04-02T02:19:44.870+02:00</app:edited><title>Mis 2 mBTC sobre Bitcoin</title><content type="html">Como últimamente se habla mucho sobre Bitcoin, he decidido probarlo (subiéndome al tren el último, para variar), escribir sobre el tema, y, ya de paso,  poner aquí, en mi blog, una dirección de bitcoin de pedigüeñeo descarado: &lt;a href="bitcoin:1HCP4dqRyr3GNMLWcCpvCnefKNZ1YQA8Lc"&gt;1HCP4dqRyr3GNMLWcCpvCnefKNZ1YQA8Lc&lt;/a&gt; , que pienso añadir al blog, porque es gratis y porque si. ¿A qué viene esto?, se preguntarán. ¿Acaso soy tan creído como para pensar que este blog es lo suficientemente bueno como para los que me leen que bañen en oro? ¿He bebido el kool-aid de los fieles de Bitcoin, la moneda-dios? Me temo que no, en ninguno de los dos casos.&lt;br /&gt;
&lt;br /&gt;
De hecho, estoy bastante seguro de que no recibiré nada que no sea irrelevante, pero eso es lo de menos. A mi entender, lo interesante de bitcoin es que es tan sencillo e inofensivo que incluso si no se pudiesen convertir a €/$, daría igual, son lo suficientemente divertidos como para servir de entretenimiento por si mismos. De hecho, no tengo intención alguna convertir los míseros dólares que he conseguido, ni de emplear un mísero ciclo de mi GPU en minar nada, ni esperar a que se revaloricen con la esperanza de hacerme millonario. Me hace ilusión ver subir el balance y poder enviar a otros, no hay más.&lt;br /&gt;
&lt;br /&gt;
En realidad, lo que más quería tratar sobre Bitcoin es lo difícil que resulta encontrar artículos de calidad sobre el tema. En la mayoría de artículos existen dos grandes corrientes de opinión sobre el Bitcoin: o es la moneda del futuro que va a derribar al dólar y al euro y a acabar con los bancos, o es una estafa piramidal que se derrumbará mañana mismo. Lo más probable es que las expectativas reales de Bitcoin no se encuentren en ningún extremo.&lt;br /&gt;
&lt;br /&gt;
Respecto al fervor Bitcoin, toda o casi toda la comunidad de bitcoin sigue la creencia de que las monedas fiduciarias  como el euro y el dólar son una estafa inflacionaria impuesta por gobiernos y poderes financieros a las sociedades modernas y están destinados al fracaso. Estas ideas están muy generalizadas en internet (incluido este blog, hace años) entre todo tipo de ideologías y ha sido popularizadas por la corriente liberal-austriaca. Sin embargo, la visión del mundo de esa escuela &lt;a href="http://laproadelargo.blogspot.com.es/2012/11/por-que-la-solucion-liberal-al-problema.html"&gt;no es necesariamente correcta&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Un mundo en el que bitcoin fuese la moneda principal no impediría por si sola la acaparación usurera, ni la aparición de esquemas financieros sobre él (como ha &lt;a href="http://laproadelargo.blogspot.com.es/2013/01/por-que-nodebemos-nopagamos.html"&gt;ocurrido&lt;/a&gt; con el &lt;a href="http://laproadelargo.blogspot.com.es/2013/02/por-que-nodebemos-pagamos-continuacion.html"&gt;oro&lt;/a&gt; en el &lt;a href="http://laproadelargo.blogspot.com.es/2013/03/de-la-entrada-anterior-fraude.html"&gt;pasado&lt;/a&gt;). Eso no quiere decir que el bitcoin sea por si mismo un mal invento, al contrario, es un ingenio muy interesante. Pero el bitcoin no puede por si mismo no puede hacer buenos a quienes no quieren serlo, ni puede modificar todas las reglas del juego (si alguien cree que el Bitcoin por si sólo puede hacer surgir  una economía mágica donde todo es utópico, nadie es pobre, todo es maravilloso y el Estado pasa a ser algo secundario, tengo unos cuantos puentes que venderle). Por otra parte, aunque  el euro, el dólar y demás monedas fiduciarias son criticables, la idea de que van a derrumbarse inevitablemente mañana por el mero hecho de serlo, me temo que se sustenta más en fe que en otra cosa.&lt;br /&gt;
&lt;br /&gt;
Respecto a los escépticos, están, para empezar, los defectos habituales que citan la mayoría de los artículos (ejemplo, el hecho de que si un ladrón logra acceder a tu cartera, es muy fácil hacer desaparecer su contenido sin que  ningún cuerpo policial pueda recuperarlas jamás). Pero esos son defectos que, para los defensores de Bitcoin, son ventajas, y lo son desde ese punto de vista.&lt;br /&gt;
&lt;br /&gt;
El argumento detractor típico que se suele escuchar es que el bitcoin es esencialmente una estafa piramidal especuladora. Ciertamente, existen razones para pensarlo: la utilidad del bitcoin debería estar en su uso como moneda, y si bien ese uso existe, si uno echa un ojo a las comunidades bitcoin, no predomina el intercambio de servicios y bienes, sino personas que acaparan esperando la revalorización infinita de su cartera. Suelen creerse más inteligentes que los críticos catastrofistas cierrabares, que para ellos son meros envidiosos que no supieron entrar a tiempo: una psicología bastante  parecida a la de quienes invertían en pisos en España hace unos años.&lt;br /&gt;
&lt;br /&gt;
Sin embargo, no todo es blanco o negro. Los "especuladores" del bitcoin pueden ganar mucho dinero en el proceso y muchos, de hecho, se han hecho ricos, lo cual no es ninguna estupidez ni tiene nada de irreal. Y si bien Bitcoin puede sufrir una corrección severa, es arriesgado predecir cuándo ocurriría. Podría tardar años y antes de ello llegar la cotización BTC/USD a niveles astronómicos. Recuerden que en la burbuja inmobiliaria española se estuvo hablando del encarecimiento de los pisos durante muchos años previos a la explosión.&lt;br /&gt;
&lt;br /&gt;
Pero incluso se sufriera un crash catastrófico, eso no tendría por qué significar el fin de Bitcoin, podría ser simplemente la normalización de su demanda.&lt;br /&gt;
&lt;br /&gt;
En mi opinión, la mayor influencia de Bitcoin en el mundo va a ser el ejemplo. Para empezar, hay que tener en cuenta que se trata de la primera criptomoneda p2p verdaderamente popular, pero no tiene por qué ser la última. Y, sobre todo, si Bitcoin se hiciera verdaderamente popular, no les quepa duda que el sistema financiero intentaría imitar algunas de sus ventajas. Los bancos centrales, por ejemplo, &lt;a href="http://www.thestar.com/business/2012/04/11/royal_canadian_mint_to_create_digital_currency.html"&gt;están tanteando&lt;/a&gt; con crear sus propias monedas electrónicas. Bitcoin es muy útil para esos esfuerzos. La digitalización del dinero, en general, es un tema muy interesante y que traerá muchos cambios, pero me cuesta creer que Bitcoin vaya a ser el destino final de los ahorros de todo el mundo para el resto de la historia. Quizás sea mejor pensar en Bitcoin como un prototipo; eso si, como un prototipo exitoso, y a día de hoy muy entretenido.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/6sRmSpu53P8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/2277515161355862773/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/04/mis-2-mbtc-sobre-bitcoin.html#comment-form" title="7 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/2277515161355862773?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/2277515161355862773?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/6sRmSpu53P8/mis-2-mbtc-sobre-bitcoin.html" title="Mis 2 mBTC sobre Bitcoin" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/04/mis-2-mbtc-sobre-bitcoin.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0YHSHw8cCp7ImA9WhBQEkQ.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-1294872217611234421</id><published>2013-03-14T20:40:00.002+01:00</published><updated>2013-03-14T22:05:39.278+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-14T22:05:39.278+01:00</app:edited><title>¿Qué hay de Mir?</title><content type="html">Llevo unos días pensando en escribir algo sobre el servidor gráfico de Canonical y, la verdad, no se me ocurre demasiado. Lo único que se puede hacer es desbarrar un poco sobre lo esencial que ya se ha comentado en otros sitios: las alegaciones que hacen sobre la toma decisión de crear Mir por motivos técnicos son, a todas luces, un montón de malas excusas. Una cosa es que hayan querido escribir su propio servidor gráfico, y otro que hayan intentado convencernos de que no tenían elección: esto último es una gran falacia.&lt;br /&gt;
&lt;br /&gt;
Para argumentar, la gente de Canonical se ha inventado &lt;a href="https://plus.google.com/113883146362955330174/posts/PXc93m8nKwk"&gt;argumentos claramente absurdos&lt;/a&gt;, del tipo "Weston no encajaba bien en nuestra suite de tests, hubiera sido difícil adaptarlos y los tests de Weston nos parecen inferiores". Ajá. Y por eso tomas la decisión alternativa de escribir un servidor gráfico de cero. Debe ser una suite de tests bastante buena para preferir reescribir el código a testar que adaptar los tests, o contribuir a  los tests existentes en Weston (que hubiera beneficiado a todo el mundo).&lt;br /&gt;
&lt;br /&gt;
O aquel de "Weston prácticamente no tenía gestión de dispositivos de entrada cuando tomamos la decisión". Ajá. ¿Y como Weston no tenía gestión de dispositivos de entrada, tomas la decisión de escribir un servidor gráfico de cero que requerirá escribir todo, incluyendo &lt;i&gt;esa gestión de dispositivos de entrada de cuya ausencia te quejas&lt;/i&gt;? Al final, lo que ha ocurrido es que la comunidad ha añadido a Weston esa capacidad mucho antes de que Canonical anunciara Mir, con lo cual han hecho un ridículo espantoso mencionando en el wiki que la gestión de dispositivos de Weston no estaba a la altura, cuando resulta estar más avanzado que Mir: no habían vuelto a mirar Weston desde hace meses.&lt;br /&gt;
&lt;br /&gt;
La realidad de esta historia es que Canonical se ha convertido en una 
organización bastante introvertida que está demasiado ocupada haciendo realidad 
su visión y no se entera  bien ni se preocupa demasiado de lo que ocurre fuera. Lo más probable es que no hayan puesto demasiado empeño en Weston y simplemente hayan dado rienda suelta a la imaginación porque si, y cuando han venido las críticas han decidido construir el razonamiento "weston-no-estaba-preparado", argumento falaz teniendo en cuenta que, por muchas carencias que tenga Weston, empezar un servidor gráfico  de cero, por definición, tendrá más y habrá menos gente trabajando en él.&lt;br /&gt;
&lt;br /&gt;
Podrían haber resuelto muchas de sus dudas 
simplemente preguntando en las listas de correo si alguien estaba 
trabajando en tal punto, coordinándose con otros, algo de primero de 
comunidades de software libre, pero no se molestaron. Y si algo de Weston estuviera mal y no les gustase, o tuviesen alguna necesidad especial, podrían simplemente decirlo, pero no se han pasado por allí ni a decir buenos días. &lt;br /&gt;
&lt;br /&gt;
Lo triste es que Canonical simplemente se está complicando la vida inútilmente, porque un servidor gráfico simplemente no es tan importante como para molestarse en hacer lo que están haciendo. Puedo entender lo de Unity, algo que el usuario ve y es vital para el uso de Ubuntu, pero el servidor gráfico es infraestructura y no añadirá nada de valor a Ubuntu, sólo deuda técnica acumulada y sueldos de programadores que se hagan cargo de ella. Podría perdonarse si tuviera alguna gran ventaja técnica  (como los hechos se lo perdonaron a systemd respecto a upstart), pero no la tiene, de hecho es más que probable lo contrario.&lt;br /&gt;
&lt;br /&gt;
Respecto al futuro de Wayland, no hay que tener ningún miedo, ya que está condenado a existir y progresar. Para que Mir pudiera desplazarlo, a Canonical tendría que importarle las necesidades y opiniones de otras personas que no sean ellos mismos, y eso no va a ocurrir. Wayland es un proyecto comunitario, y no me refiero a frikis, sino a que es un proyecto donde hay 
comunicación entre los programadores del servidor gráfico, los de Mesa, 
los de los drivers del kernel, los de los toolkits, gestores de 
ventanas, aplicaciones, distros. Mir es un servidor gráfico desarrollado a puerta cerrada, sin colaboración con nadie, diseñado por y para Unity, pasando absolutamente del resto del mundo. ¡Ah, y  para contribuir en él se requiere cesión del copyright del código! Wayland está para quedarse, Mir mientras haya dinero detrás.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/NvtgHVMkS-8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/1294872217611234421/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/03/que-hay-de-mir.html#comment-form" title="5 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/1294872217611234421?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/1294872217611234421?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/NvtgHVMkS-8/que-hay-de-mir.html" title="¿Qué hay de Mir?" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>5</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/03/que-hay-de-mir.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cCQHc7cSp7ImA9WhBQEUU.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-5031902023074349650</id><published>2013-03-13T00:03:00.000+01:00</published><updated>2013-03-13T15:31:01.909+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-13T15:31:01.909+01:00</app:edited><title>Google Glasses y el intento de generalizar la tecnología</title><content type="html">Frente a la información publicada sobre Google Glasses, hay dos clases de reacciones: la de quienes creen que es algo maravilloso, por lo que pagarían cantidades insospechadas de dinero, y los que no le ven gran interés e incluso &lt;a href="http://www.cbc.ca/news/yourcommunity/2013/03/seattle-bar-bans-google-glass-months-before-release.html"&gt;lo están prohibiendo en sus establecimientos&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Yo soy más bien de estos últimos. Google Glasses me parece un invento genial para situaciones y  usos específicos, pero que se convierta en un gadget de uso generalizado entre toda la población, como teléfonos móviles, me parece improbable.&lt;br /&gt;
&lt;br /&gt;
Empecemos por el formato. Este servidor de ustedes no tiene una vista de piloto de aviones y usa gafas desde pequeño, pero últimamente sólo me las pongo para conducir porque cada vez me molestan más. Llevar unas gafas permanentemente sin necesidad alguna es algo que no estoy dispuesto a hacer bajo ninguna circunstancia, por muy maravillosas que sean, y para quienes nunca han llevado gafas tampoco va a ser cómodo. De gastarme dinero en algo, lo haría en una de esas operaciones láser, para dejar de utilizar gafas. Y aunque no soy un experto en estética y modas, la popularización masiva de las gafas me parece bastante improbable: guste o no, la mayoría de la gente va a querer ir por la vida sin llevarlas. Los smartphones, en cambio, son la mar de cómodos, se meten en el bolsillo y no molestan a nadie (si a Sergey Brin &lt;a href="http://edition.cnn.com/2013/02/28/tech/innovation/brin-google-glass"&gt;le molestan&lt;/a&gt;, debe estar usándolos mal).&lt;br /&gt;
&lt;br /&gt;
En segundo lugar está el aspecto social, tan ignorado. Google ha creado varios vídeos-demostración, en &lt;a href="http://www.youtube.com/watch?v=ECceIt9nwrE"&gt;uno de los vídeos&lt;/a&gt; (nota, este &lt;a href="http://diegocg.blogspot.com/2013/03/google-glasses-y-la-generalizacion-de.html?showComment=1363133505762#c7505831493263927160"&gt;es una parodia&lt;/a&gt;), el portador acude a una cita con una chica, la cual desconoce claramente la funcionalidad de las gafas. A lo largo de la cena, el chico utiliza sus Google Glasses a escondidas para adivinar aspectos de la personalidad de la chica, fingir que tienen intereses compartidos y, en general, hacerse el interesante. Todo muy bonito.&lt;br /&gt;
&lt;br /&gt;
El problema es que es una situación de ficción que sólo muestran el punto de vista del portador. En un mundo donde las Google Glasses estuviesen generalizadas, la chica conocería perfectamente la naturaleza de esas gafas, y el portador no podría disimular su uso. Sobre todo, la chica sabría que esas gafas tienen una cámara que puede grabarla en cualquier momento. Esta no se trata de las situaciones que se crean con un smartphone, en las que si alguien quiere grabar algo tiene que dejar clara sus intenciones de hacerlo, se trata de que habría una cámara apuntándote constantemente, y no sabrías si te están grabando o no. Imagínense que alguien les apuntara con la cámara de un smartphone toda una cena, ¿se sentirían cómodos?. Que la cámara sea pequeña y disimulada es secundario, un objetivo es un objetivo.&lt;br /&gt;
&lt;br /&gt;
No sé ustedes, pero a mi  me parece algo bastante inaceptable socialmente, no sólo pueden llevar Google Glasses un millonario en una demostración tecnológica, la gente desagradable también podría llevarlas, imagínense a absolutamente todo el mundo con ellas. En el vídeo &lt;strike&gt;de Google&lt;/strike&gt;, se muestra cómo el chico hace una foto disimulada
 al escote de la chica, si las mujeres supieran que todos los usuarios de Google Glasses pueden hacer cosas así, seguramente serían más suspicaces con quienes las llevan. ¿Se atreverían a mostrarse ante estas gafas del mismo modo que lo harían  sin su presencia? No sorprendería que se exigieran regulaciones para que fuese 
obligatorio un led parpadeante en las gafas cuando graban. Que un bar haya prohibido las Google Glasses en su establecimiento no tiene porque ser sólo marketing. Lo más probable es que la mayoría de la gente acabe asumiendo que quien 
va por la vida apuntando con un objetivo continuamente a todo el mundo 
es o un aspirante a director de cine, o un tipo raro (valga la redundancia).&lt;br /&gt;
&lt;br /&gt;
Tercero, y quizás más importante: Si se fijan, el verdadero protagonista de los vídeos de demostración de Google Glasses no son las Google Glasses en si, sino Google Now: la tecnología de reconocimiento de voz e interfaz natural de Google, es decir, el equivalente al Siri de Apple. En los vídeos se ve a un tipo que puede gestionar sus mensajes y contactos con la voz,  lo verdaderamente emocionante es eso, el hecho de poder interaccionar con el ordenador con la voz, las gafas son secundarias  (de hecho, los vídeos intentan vender prácticamente el mismo mensaje que los vídeos de promoción de Siri). No hace falta decir que esa tecnología de reconocimiento de voz puede funcionar igualmente en un smartphone.&lt;br /&gt;
&lt;br /&gt;
No quiero decir con esto que las Google Glasses sean una chapuza, por supuesto. Sin dudan van a ser muy útiles para muchos trabajos en los que uno podría consultar cosas sin tener que moverse. Serían imprescindibles en aquellos casos en los que las manos estén ocupadas. Por descontado, serían útiles a los mancos. Y qué decir de los juegos, o de la &lt;a href="http://gallir.wordpress.com/2009/01/28/ley-de-kerensky/"&gt;Ley de Kerenski&lt;/a&gt;. ¿Pero un gadget generalizado entre la población? No lo veo.&lt;br /&gt;
&lt;br /&gt;
(Por cierto, no sería de extrañar que el tan rumoreado Apple Watch fuese cierto y se tratase de un intento de facilitar el acceso directo al móvil y a las notificaciones y a Siri de un modo análogo a Google Glasses, pero sin colgar de las orejas todo el rato ni apuntar con una cámara a todo el mundo. Si así fuera, desde luego tendría mucho más sentido que Glasses)&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/eWasmQYKFK8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/5031902023074349650/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/03/google-glasses-y-la-generalizacion-de.html#comment-form" title="11 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5031902023074349650?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5031902023074349650?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/eWasmQYKFK8/google-glasses-y-la-generalizacion-de.html" title="Google Glasses y el intento de generalizar la tecnología" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>11</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/03/google-glasses-y-la-generalizacion-de.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkUARXs6fCp7ImA9WhBRFEQ.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-3952075047446220082</id><published>2013-03-05T15:37:00.000+01:00</published><updated>2013-03-05T15:37:24.514+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-03-05T15:37:24.514+01:00</app:edited><title>Linux Apps: ¿Un paso hacia adelante?</title><content type="html">Estamos pasando por una época en la que los grandes cambios de la informática surgen en torno a los dispositivos portáctiles, y muchas cosas que se daban por hechas pasan a repensarse para encajar, de un modo u otro, con la mente puesta en los portáctiles. Los proyectos de software libre sacan de su bolsillo su teléfono Android y sienten, con cada movimiento de la yema del dedo, que los pixeles de la pantalla son dibujados por instrucciones de un software que no es el suyo.&lt;br /&gt;
&lt;br /&gt;
Esto produce una frustración que, tarde o temprano, les lleva a ponerse manos a la obra e intentar hacer cosas para solucionarlo. Los puntos de vista y preocupaciones que predominaban cuando el escritorio tradicional era el rey desaparecen, sus problemas se dan por solucionados, y la atención se centra en los portáctiles y en  lo que de una manera u otra lo rodea o se sincroniza con ello: interfaces táctiles, tiendas de aplicaciones.&lt;br /&gt;
&lt;br /&gt;
GNOME, en particular, está muy afectado por esta manera de pensar. La interfaz de GNOME 3 se diseñó con esa mentalidad. Ahora, GNOME ha decidido aplicar ese punto de vista a otros aspectos de la infraestructura del proyecto: &lt;a href="http://treitter.livejournal.com/14871.html"&gt;Javascript como lenguaje prioritario&lt;/a&gt; para aplicaciones, y &lt;a href="http://blogs.gnome.org/alexl/2013/02/01/developer-hackfest-status/"&gt;aplicaciones confinadas&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Respecto a la elección de Javascript como lenguaje oficial para aplicaciones, sólo cabe aplaudir. GNOME lleva demasiados años de devaneo estéril sobre qué lenguaje no-C de alto nivel escoger como "oficial". Y se equivocan los que piensan que no tener un lenguaje oficial no es importante. La falta de un criterio oficial ha dispersado inútilmente los recursos, porque todos se dedicaron a intentar hacer valer el suyo: Sun hacía en Java aplicaciones para su &lt;i&gt;Java Desktop&lt;/i&gt; que ya nadie recuerda, Icaza pretendió que se usara C# y sólo consiguió que la gente se devanara los sesos intentando librarse de Mono, reescribiendo aplicaciones C# en C++, o intentando crear un nuevo conjunto de aplicaciones en Vala. Resumiendo, conflictos y trabajo malgastado. Una elección oficial, aunque sea una decisión meramente política, incita a dejar de intentar luchar por el trono. Quien quiera usar otros lenguajes podrá seguir haciéndolo, pero serán decisiones pragmáticas, alejadas de las luchas ideológicas subterráneas.&lt;br /&gt;
&lt;br /&gt;
Hay quien ha argumentado que Javascript es una mala elección, y que lo lógico, por tradición gnomera, hubiese sido Python. Aunque es una postura comprensible, yo creo que lo importante es que se hayan decidido por uno, sea el que sea. Además, recuerden que  la inversión técnica ha logrado que los motores  de los navegadores (GNOME usa el de Firefox en su GJS) &lt;a href="http://benchmarksgame.alioth.debian.org/u64/benchmark.php?test=all&amp;amp;lang=v8&amp;amp;lang2=python3"&gt;sean por lo general bastante más rápidos que el interprete Python oficial&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Pero el anuncio estrella es el de crear &lt;a href="http://www.h-online.com/open/news/item/GNOME-developers-plan-Linux-apps-1798691.html"&gt;una nueva manera de distribuir y ejecutar aplicaciones&lt;/a&gt;, a imitación de las App Stores existentes. Básicamente, las aplicaciones se suministrarán en un archivo-imagen. Este archivo-imagen se montará y se ejecutará en una jaula, construida con infraestructura del kernel, en la que sólo tendrá acceso a sus archivos y a  las librerías del sistema que haya declarado previamente en una especie de dependencias de alto nivel ("system" para una aplicación que use librerías básicas como libc, "gnome-platform-1.0" para librerías GNOME, etc. Dado que cada proceso está aislado del mundo exterior, la comunicación entre procesos sucederá a través de una imitación de los Intents de Android que funcionarán sobre el IPC al estilo DBUS que se espera que se incluya en el kernel.&lt;br /&gt;
&lt;br /&gt;
En principio, este sistema no es exclusivo de GNOME, KDE y cualquier otro escritorio podrían usarlo también. De ahí que hayan dado en llamarlo "Linux Apps", y no "GNOME Apps", aunque hayan sido las aplicaciones de GNOME las que les han llevado a poner manos a la obra.&lt;br /&gt;
&lt;br /&gt;
Lo interesante de esta propuesta es que rompe radicalmente con el modelo de distribución de aplicaciones en Linux. En realidad, lo que están intentando es crear lo que mucha gente lleva deseando desde hace muchos años: un entorno de desarrollo y distribución de aplicaciones uniforme entre diferentes distros Linux. Teóricamente, esta uniformización facilitaría a las empresas la 
programación de software para Linux, al poder olvidarse de .deb, .rpm, o
 de librerías exóticas. Las distribuciones se limitarían a ocuparse de la infraestructura del sistema operativo y de software no-de-usuario, las aplicaciones del usuario serían una cosa aparte. &lt;br /&gt;
&lt;br /&gt;
La consecuencia lógica de esta clase de aplicaciones tendría que ser alguna clase de "App Store" al margen de las distros, aunque que aun no se ha hablado de eso, y existe la opción de incluir imágenes de Linux Apps en paquetes tradicionales. En su contra, está el hecho de que el modelo de 
ejecución de aplicaciones en jaulas no tiene por qué ser el mejor del mundo, aunque cabe esperar que permitan la creación de Linux Apps que especifiquen su deseo de ser ejecutadas fuera de la jaula. Todavía es pronto para ver en qué acaba esto, pero es una propuesta que podría llegar a ser muy útil.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/JNw2vwJNSR8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/3952075047446220082/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/03/linux-apps-un-paso-hacia-adelante.html#comment-form" title="14 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/3952075047446220082?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/3952075047446220082?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/JNw2vwJNSR8/linux-apps-un-paso-hacia-adelante.html" title="Linux Apps: ¿Un paso hacia adelante?" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>14</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/03/linux-apps-un-paso-hacia-adelante.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUUAQno5fip7ImA9WhBSE00.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-3744141686685746408</id><published>2013-02-19T20:21:00.001+01:00</published><updated>2013-02-19T21:54:03.426+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-19T21:54:03.426+01:00</app:edited><title>Las novedades de Linux 3.8</title><content type="html">Ya se ha &lt;a href="http://lkml.org/lkml/2013/2/18/476"&gt;anunciado&lt;/a&gt; la  versión 3.8 del kernel Linux. Esta versión incluye soporte en Ext4 para empotrar pequeños archivos dentro del inodo, que mejora el rendimiento para esos archivos y permite ahorrar algo de espacio. Hay también una nueva característica de Btrfs que permite el reemplazado rápido de un disco por otro, un nuevo sistema de archivos F2FS optimizado para SSDs, soporte de diferentes espacios de nombre para procesos ejecutados por usuarios sin privilegios, contabilidad de la memoria de pila y del slab en el controlador de recurso de memoria, checksums en el journal de XFS, un rediseño de las políticas para arquitecturas NUMA y, por supuesto, el muy mencionado fin de soporte de los procesadores 386. También se han incluido  drivers nuevos y  muchas  otras mejoras y pequeños cambios. La lista completa de cambios,  en  inglés,  puede &lt;a href="http://kernelnewbies.org/Linux_3.8"&gt;encontrarse aquí&lt;/a&gt;, como siempre.&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Ext4 empotra los archivos pequeños en el inodo&lt;/b&gt;: Cada archivo en Ext4 tiene su correspondiente &lt;a href="http://es.wikipedia.org/wiki/Inodo"&gt;inodo&lt;/a&gt; que almacena información variada -tamaño, fecha de creación, propietario, etc- sobre el archivo (puede verse esa información con el comando &lt;a href="http://linux.die.net/man/1/stat"&gt;stat(1)&lt;/a&gt;). Pero el inodo no almacena los datos del archivo, sólo información sobre dónde encontrarlos. &lt;br /&gt;
&lt;br /&gt;
El tamaño utilizado por cada inodo queda predeterminado a la hora de crear el sistema de archivos con &lt;a href="http://linux.die.net/man/8/mkfs.ext4"&gt;mkfs.ext4(8)&lt;/a&gt;, y por defecto son 256 bytes. Pero ese espacio no se utiliza siempre del todo (a pesar de que los atributos extendidos pequeños hacen uso de él), y hay millones de inodos en un sistema de archivos típico, así que se pierde un poco de espacio. Al mismo tiempo, cada archivo de datos necesita asignarse al menos un bloque (por defecto de 4KB de tamaño), incluso si el archivo sólo va a usar unos pocos bytes. Y se producen movimientos del brazo del disco para leer esos pocos bytes, porque los bloques de datos no se ubican contiguos a los inodos. &lt;br /&gt;
&lt;br /&gt;
Ext4 ha añadido el soporte para almacenar archivos muy pequeños en el espacio sin utilizar de los inodos. Con esta característica se utiliza el espacio sin usar de los inodos, no se asigna un bloque de 4KB para los datos del archivo, y leer esos archivos es más rápido, porque una vez que se lee el inodo también están disponibles los datos, sin necesidad de movimientos del brazo de disco. Algunas &lt;a href="https://lwn.net/Articles/468678/"&gt;pruebas simples&lt;/a&gt; muestran que con las fuentes de un Linux 3.0, el nuevo sistema puede ahorrar más de un 1% del espacio de disco. En un directorio /usr de prueba, se ahorró más del 3% del espacio. El rendimiento para los archivos pequeños &lt;a href="https://lwn.net/Articles/516645/"&gt;también se ha incrementado&lt;/a&gt;. Los archivos que pueden ser empotrados pueden configurarse indirectamente incrementando el tamaño del inodo (opción -I de &lt;a href="http://linux.die.net/man/8/mkfs.ext4"&gt;mkfs.ext4(8)&lt;/a&gt;) - cuando más grande sea el inodo, más grandes los archivos que pueden empotrarse (pero si la carga utilizada no hace uso extensivo de pequeños archivos, ese espacio se gastará).&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Btrfs: reemplazo rápido de dispositivos&lt;/b&gt;: Como sistema de archivos capaz de expandirse sobre múltiples discos, Btrfs puede eliminar un disco fácilmente, ya sea porque quieres reducir el tamaño de tu pool de almacenamiento, o simplemente porque el disco está fallando y quieres sustituirle:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="color: white;"&gt;&lt;span style="background-color: black;"&gt;# btrfs device add new_disk&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="color: white;"&gt;&lt;span style="background-color: black;"&gt;# btrfs device delete old_disk&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pero este proceso no es tan rápido como podría ser. Btrfs ha añadido una operación para reemplazar un disco, que es mucho más rápida: &lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: xx-small;"&gt;&lt;span style="color: white;"&gt;&lt;span style="background-color: black;"&gt;# btrfs replace mountpoint old_disk new_disk &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
La copia normalmente procede al 90% de la velocidad del disco, mientras no haya otras operaciones simultáneamente. La operación puede llevarse a cabo en un sistema en funcionamiento, no requiere desmontar el sistema de archivos o detener procesos, y no es un problema que se apague el ordenador por corte de energía durante la operación; el proceso continuará en el próximo montaje. Es posible usar el comando &lt;span style="background-color: black;"&gt;&lt;span style="color: white;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;btrfs replace status&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; para comprobar la evolución de la operación, o &lt;span style="color: white;"&gt;&lt;span style="background-color: black;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;btrfs replace cancel&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; para cancelarla.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;F2FS, un sistema de archivos para SSDs&lt;/b&gt;: F2FS es un sistema de archivos experimental, aportado por Samsung, que está optimizado para dispositivos de almacenamiento basados en memoria flash. Linux ya tiene varios sistemas de archivo -logfs, ubifs, jffs2- para memoria flash, pero están diseñados para dispositivos flash "nativos" que exponen la memoria flash directamente&amp;nbsp; al ordenador. Gran parte de los dispositivos de memoria flash que existen en el mercado no son "nativos", sino que tienen un firmware que emula una interfaz de bloques (FTL), como la de los dispositivos tradicionales, lo cual permite utilizar los sistemas de almacenamiento y sistemas de archivo tradicionales. Estos sistemas de archivo tienen algunas optimizaciones para estos SSDs, pero el sistema de archivos y su formato es el mismo de siempre.&lt;br /&gt;
&lt;br /&gt;
F2FS es un sistema de archivos diseñado para SSDs que tiene en cuenta la existencia de una capa de traducción a bloques e intenta hacer el mejor uso posible de ella. Para más información se recomienda este artículo:&lt;a href="https://lwn.net/Articles/518988/"&gt; An f2fs teardown.&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Completado el soporte de espacios de nombres para usuarios sin privilegios&lt;/b&gt;: Los espacios de nombre para cada proceso permiten tener espacios de nombre diferentes para varios recursos. Por ejemplo, un proceso puede ver una serie de puntos de montaje, números de PID y estado de la pila de red, y un proceso en otro espacio de nombres podría ver otros. El soporte para espacios de nombres para cada proceso ha estado en desarrollo desde hace años: El comando &lt;a href="http://linux.die.net/man/1/unshare"&gt;unshare(1)&lt;/a&gt;, disponible en distribuciones de Linux modernas, permite iniciar un proceso con los espacios de nombres de puntos de montaje , UTS, IPC o pila de red "no compartidos" con su padre; y systemd utiliza espacios de nombre de los puntos de montaje para las opciones de configuracion de unidades ReadWriteDirectories, ReadOnlyDirectories o InaccessibleDirectories; y para systemd-nspawn. Pero el uso de espacios de nombres estaba limitado a root.&lt;br /&gt;
&lt;br /&gt;
Esta versión añade la capacidad de usar espacios de nombres para cada proceso por usuarios sin privilegios, con seguridad. Los recursos con espacios de nombres disponibles son los puntos de montaje, UTS, IPC, PIDs, y pila de red. Para más detalles sobre los espacios de nombres en Linux, qué son, cómo funcionan, detalles sobre la API y programas de ejemplo, es recomendable leer estos artículos: Namespaces in operation, &lt;a href="https://lwn.net/Articles/531114/"&gt;part 1: namespaces overview&lt;/a&gt;, &lt;a href="https://lwn.net/Articles/531381/"&gt;part 2: the namespaces API&lt;/a&gt;, &lt;a href="https://lwn.net/Articles/532271/"&gt;part 3: PID namespaces&lt;/a&gt;, &lt;a href="https://lwn.net/Articles/532748/"&gt;part 4: more on PID namespaces&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Checksums en el journal de XFS:&lt;/b&gt; XFS está planeando añadir &lt;a href="http://www.youtube.com/watch?v=FegjLbCnoBw"&gt;checksums de metadatos en el futuro&lt;/a&gt;. Como parte de esa iniciativa, esta versión añade soporte de checksums en el journal.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;"Página cero" para las páginas de memoria gigantescas&lt;/b&gt;: Las páginas gigantes son un tipo de páginas proporcionadas por la CPU, y son mucho más grandes de lo normal. Suelen ser usadas por grandes bases de datos y aplicaciones que usan grandes porciones de memoria. Por otro lado, la "página cero" es una página de memoria llena de ceros. Esta página es utilizada por el kernel para ahorrar memoria: algunas aplicaciones asignan grandes porciones de memoria llenas de ceros pero no escriben en toda esa memoria, así que en lugar de asignar toda esa memoria, el kernel hace que toda esa memoria apunte a una sola página llena de ceros. La página cero estaba disponible solamente para tamaños de página de memoria normales (4KB en x86), esta versión añade una página cero gigante para aplicaciones que usan páginas gigantes.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;El controlador de memoria soporta la contabilidad de memoria del kernel&lt;/b&gt;: El controlador de memoria de Linux es un &lt;a href="https://en.wikipedia.org/wiki/Cgroups"&gt;control group&lt;/a&gt; que puede limitar, contabilizar e isolar el uso de memoria para grupos arbitrarios de procesos. En esta versión, el controlador de memoria tiene soporte para contabilizar dos tipos de memoria de kernel: la pila, y el uso de slabs. Estos límites pueden utilizarse para cosas como para bombas fork.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Balanceo de NUMA automático&lt;/b&gt;: Muchas máquinas modernas son de arquitectura "non uniform memory access" (NUMA), es decir, acceso de memoria no uniforme: tienen controladores de memoria en cada procesador, y acceder a la memoria del procesador local es mucho más rápido que acceder a la memoria de un procesador remoto, de modo que la ubicación de la memoria en el mismo nodo donde se ejecute el proceso que la referencie es crítico para el rendimiento. Esto es especialmente cierto en grandes servidores con docenas o centenas de procesadores.&lt;br /&gt;

&lt;br /&gt;La implementación NUMA de Linux tenía algunas deficiencias. En esta versión se incluye una nueva fundación para NUMA que permitirá construir políticas NUMA más inteligentes y que proporcionen mejor rendimiento. Para más detalles, &lt;a href="https://lwn.net/Articles/524977/"&gt;NUMA in a hurry,&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Eliminación del soporte de 386&lt;/b&gt;: Tal y como se ha comentado en muchos sitios, esta versión de Linux deja de soportar por primera vez el procesador Intel 386 (el 486, sin embargo, aun se soporta)&lt;/li&gt;
&lt;/ul&gt;
&amp;nbsp;
Y eso es todo. La lista completa de cambios en inglés, &lt;a href="http://kernelnewbies.org/Linux_3.8"&gt;aquí&lt;/a&gt;
&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/TAPeui3QO2w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/3744141686685746408/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/02/las-novedades-de-linux-38.html#comment-form" title="11 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/3744141686685746408?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/3744141686685746408?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/TAPeui3QO2w/las-novedades-de-linux-38.html" title="Las novedades de Linux 3.8" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>11</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/02/las-novedades-de-linux-38.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMHSXY_fCp7ImA9WhBTE0g.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-7547917341474797435</id><published>2013-02-08T17:34:00.000+01:00</published><updated>2013-02-08T20:40:38.844+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-08T20:40:38.844+01:00</app:edited><title>KDE 4.10</title><content type="html">Normalmente las nuevas versiones de KDE no me llaman la atención en exceso: tienen mejoras interesantes, pero esas mejoras son como las de las nuevas versiones de Chrome y Firefox, que por ser relativamente frecuentes e incorporar menos cambios fundamentales, llaman menos la atención. La &lt;a href="http://kde.org/announcements/4.10/"&gt;recién publicada versión 4.10&lt;/a&gt; me parece, sin embargo, interesante de comentar:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: center;"&gt;
&lt;b&gt;&lt;span style="background-color: yellow;"&gt;&lt;span style="color: red;"&gt;ADVERTENCIA&lt;/span&gt;&lt;/span&gt;: ¡IMÁGENES MOSTRANDO OPCIONES DE CONFIGURACIÓN!&lt;/b&gt;&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;/div&gt;
&lt;div style="text-align: center;"&gt;
&lt;span style="font-size: xx-small;"&gt;Proteja a sus hijos de esta página si lo cree conveniente&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: left;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Los menús de las aplicaciones &lt;a href="http://gnumdk.blogspot.com.es/2012/11/appmenu-support-in-kde-410.html"&gt;se pueden mover&lt;/a&gt; a un botón situado en la barra de la ventana, como Office y Firefox en Windows, o a un menú tipo OS X. &lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-uqlkYr499f4/ULTRavE6ppI/AAAAAAAAJcI/D38zC3AI8Xk/s1600/menubar.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="71" src="http://4.bp.blogspot.com/-uqlkYr499f4/ULTRavE6ppI/AAAAAAAAJcI/D38zC3AI8Xk/s320/menubar.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-tYgx-NwIXMI/ULTRfIGcrXI/AAAAAAAAJcQ/iO7JDqczkVA/s1600/menu.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="296" src="http://4.bp.blogspot.com/-tYgx-NwIXMI/ULTRfIGcrXI/AAAAAAAAJcQ/iO7JDqczkVA/s320/menu.gif" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Scripts opcionales descargables para el gestor de ventanas (ej. efectos visuales). Desgraciadamente, los desarrolladores de KDE no han logrado implementar una página web de extensiones que requiere un plugin en el navegador para funcionar, como hacen otros escritorios que presumen de usabilidad, sino que han tenido que conformarse con una ventana que descarga las cosas transparentemente a golpe de clic:&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://kde.org/announcements/4.10/screenshots/jpg/kwin-ghns.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="225" src="http://kde.org/announcements/4.10/screenshots/jpg/kwin-ghns.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;El sistema de búsqueda global, nepomuk, &lt;a href="http://vhanda.in/blog/2012/11/nepomuk-without-strigi/"&gt;ha sustituido&lt;/a&gt; el indexador de archivos que solían utilizar -Strigi- por una solución propia que aunque por el momento es inferior a Strigi, es más conveniente a largo plazo. Además, han modificado el proceso de escaneado de archivos &lt;a href="http://vhanda.in/blog/2013/01/nepomuk-indexing-architecture/"&gt;en dos partes&lt;/a&gt;, por primera vez he podido usarlo sin notar cómo afecta al rendimiento. &lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;También han modificado la forma de &lt;span id="goog_400552264"&gt;&lt;/span&gt;&lt;span id="goog_400552265"&gt;&lt;/span&gt;configurar la exclusión de archivos a configurar, en lugar de extensiones se pueden seleccionar cómodamente tipos mime&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://vhanda.in/images/nepomuk-mimetype.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="310" src="http://vhanda.in/images/nepomuk-mimetype.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;También han &lt;a href="http://vhanda.in/blog/2013/01/nepomuk-tags-kioslave/"&gt;añadido&lt;/a&gt; un kioslave para tags de archivo. &lt;a href="http://userbase.kde.org/Nepomuk/kioslaves/search"&gt;Con cosas así&lt;/a&gt;, es difícil tener envidia de BeOS. Nepomuk ha dado quebraderos de cabeza a mucha gente, pero poco a poco se está convirtiendo en algo sólido.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://vhanda.in/images/nepomuk-tags-browsing.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="152" src="http://vhanda.in/images/nepomuk-tags-browsing.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Fondos de pantalla animados. La gracia no está en el fondo animado en sí, algo que ha estado disponible en todos los escritorios desde siempre de una manera u otra (¡Active Desktop! ¡mplayer a pantalla completa forzado a mostrarse por debajo de todas las ventanas!), sino que está basado en QML. Eso permite bastante libertad, como bajar imágenes ascii de &lt;a href="http://animals.ivolo.me/"&gt;un sitio web&lt;/a&gt; y mostrarlas en el escritorio, o coger unas burbujas SVG y ponerlas un fondo de color cambiante. Gnome 3.4 &lt;a href="http://help.gnome.org/misc/release-notes/3.4/#rnusers.background"&gt;tiene&lt;/a&gt; un escritorio animado, pero se limita a imágenes que un archivo .xml especifica cuando se deben cambiar.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://kde.org/announcements/4.10/screenshots/jpg/plasma-animated-wallpaper.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="180" src="http://kde.org/announcements/4.10/screenshots/jpg/plasma-animated-wallpaper.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;/ul&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Dolphin es &lt;a href="https://git.reviewboard.kde.org/r/107025/"&gt;mucho más rápido&lt;/a&gt; abriendo directorios con muchos archivos, gracias a la utilización de múltiples cores.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;PD&lt;/b&gt; - se me olvidaba: después de tantas modificaciones en tantas versiones, el notificador de eventos en el systray por fin empieza a tener un comportamiento normal.&lt;/li&gt;
&lt;/ul&gt;
Hay &lt;a href="http://kde.org/announcements/4.10/"&gt;muchos otros cambios&lt;/a&gt;, por supuesto, pero estos me interesaban especialmente.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/AIgDw3jmo_w" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/7547917341474797435/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/02/kde-410.html#comment-form" title="5 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/7547917341474797435?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/7547917341474797435?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/AIgDw3jmo_w/kde-410.html" title="KDE 4.10" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-uqlkYr499f4/ULTRavE6ppI/AAAAAAAAJcI/D38zC3AI8Xk/s72-c/menubar.gif" height="72" width="72" /><thr:total>5</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/02/kde-410.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUAARHY4eip7ImA9WhBTEUs.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-4677450662806825576</id><published>2013-02-05T20:53:00.001+01:00</published><updated>2013-02-06T16:15:45.832+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-06T16:15:45.832+01:00</app:edited><title>Mientras haya dinero...</title><content type="html">Hace dos años que Microsoft "convenció" a Nokia &lt;a href="http://www.microsoft.com/en-us/news/press/2011/feb11/02-11partnership.aspx"&gt;para atar su futuro&lt;/a&gt; al de Windows Phone. Con el trato, Nokia conseguía una plataforma de software...y &lt;a href="http://allthingsd.com/20120126/microsofts-millions-help-cushion-nokias-windows-phone-transition/"&gt;unos cuantos millones&lt;/a&gt; por el detalle de dar oportunidad a Microsoft de tener algún futuro en la telefonía portátil. Dicho de otro modo, Microsoft compró con dinero la oportunidad que no había sabido aprovechar.&lt;br /&gt;
&lt;br /&gt;
Hoy, Microsoft ha dado un &lt;a href="http://www.businesswire.com/news/home/20130205006211/en/Dell-Enters-Agreement-Acquired-Michael-Dell-Silver"&gt;préstamo de 2.000$ millones para que Dell salga de la bolsa&lt;/a&gt; y quede en manos de su dueño, sin tener que dar cuenta a los inversores. Si meterse  en la fabricación de hardware con el Surface -que no está siendo un &lt;a href="http://bits.blogs.nytimes.com/2013/01/15/microsoft-surface-low-sales-estimates/"&gt;éxito de ventas&lt;/a&gt;- ya le causó roces con los fabricantes de PCs, no creo que aproximarse amistosamente a Dell vaya a mejorar esas relaciones. Aunque tampoco se sabe muy bien qué  pretende Dell. ¿Seguir afianzándose en entornos empresariales, volver a intentar vender pantallas táctiles portátiles? Una de las motivaciones para salir de los mercados es no tener que dar explicaciones públicas a nadie. Por sus productos les conoceremos.&lt;br /&gt;
&lt;br /&gt;
Cabe preguntarse si hay algún paralelismo entre ambos casos, un intento de ganarse el apoyo de empresas a golpe de talón. Se hace difícil pensar que Microsoft haya decidido prestar 2.000$
 millones a alguien para que le sea &lt;i&gt;infiel&lt;/i&gt;. Los demás fabricantes de PCs, en cambio, tienen bien claro que en su objetivo vital de seguir vendiendo PCs e intentar pillar, si pueden, un trozo de tarta &lt;i&gt;portáctil&lt;/i&gt;, no va a haber fidelidad a ningún software.&lt;br /&gt;
&lt;br /&gt;
Y no limitan sus infidelidades a Android. Acer, por ejemplo, ha decidido probar con chromebooks. Y, para sorpresa de todos, incluidos este servidor de ustedes, y los linuxeros que están cansados de los chistes de "the year of the linux desktop", resulta que los chromebooks han copado el &lt;a href="http://www.bloomberg.com/news/2013-01-27/acer-sees-success-in-chrome-pcs-as-windows-fails-to-drive-sales.html"&gt;5-10% de sus ventas a EE.UU&lt;/a&gt;. Es una miseria, pero sorprendente. HP por su parte acaba de presentar &lt;a href="http://www.shopping.hp.com/en_US/home-office/-/products/Laptops/HP-Pavilion/D1A48UA"&gt;su chromebook&lt;/a&gt;, Lenovo lo va a probar orientándolo al mercado &lt;a href="http://www.lenovo.com/education/us/en/edu-series.html"&gt;gubernamental-escolar&lt;/a&gt;, y los que ya lo habían adoptado, como el omnipresente Samsung, se están encontrando en el &lt;a href="http://www.amazon.com/Best-Sellers-Electronics-Laptop-Computers/zgbs/electronics/565108/ref=zg_bs_nav_e_3_565098"&gt;puesto número 1 de portátiles más vendidos&lt;/a&gt; en Amazon, por delante de los Macbook.&lt;br /&gt;
&lt;br /&gt;
Como &lt;a href="http://www.zdnet.com/microsoft-needs-to-start-worrying-about-chromebooks-7000010784/"&gt;cuentan en ZDNet&lt;/a&gt;,
 esta fiebre por los chromebooks no es una novedad: no se trata 
más que la reedición de la fiebre de notebooks baratos con linux de hace
 algunos años. En aquel entonces, Microsoft actuó con rapidez, 
reanimando XP como sistema operativo con bajo uso de recursos, con mucho
 éxito. Ahora tendrá que hacer una jugada parecida. Windows 8 no es la catástrofe técnica que fue Vista, pero su polémica interfaz (o el precio de las licencias) están siendo un obstáculo. Pero algo tendrán que hacer: que Microsoft no tenga éxito con los &lt;i&gt;portáctiles&lt;/i&gt; y que Windows 8 
esté teniendo peor acogida que Vista es un problema, pero que Linux 
tenga el atrevimiento de empezar quitar cuota de mercado a Windows en su
 feudo sería como para hacer saltar todas las alarmas.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/1r9v8LNNnF4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/4677450662806825576/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/02/mientras-haya-dinero.html#comment-form" title="1 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/4677450662806825576?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/4677450662806825576?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/1r9v8LNNnF4/mientras-haya-dinero.html" title="Mientras haya dinero..." /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/02/mientras-haya-dinero.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0ADRng7eip7ImA9WhNaFEw.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-4872721244879558812</id><published>2013-01-28T23:16:00.002+01:00</published><updated>2013-01-29T00:29:37.602+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-29T00:29:37.602+01:00</app:edited><title>Tecnología y capital</title><content type="html">Cuando se habla de ordenadores, muchas veces se olvida que se trata de un campo fundamentalmente estadounidense, y que por tanto la política interna de ese país tiene una gran influencia en el sector.&lt;br /&gt;
&lt;br /&gt;
Uno de los aspectos de esa política interna frecuentemente discutidos por gente como la de Occupy Wall Street es el del aumento de la desigualdad entre ricos y pobres y el enriquecimiento indiscriminado de las multinacionales. Sea legítimo o no ese enriquecimiento, basta echar una ojeada a la &lt;a href="http://www.cnbc.com/id/46737290/Apple039s_Cash_Hoard_Now_Nearly_Double_of_Microsoft"&gt;lista de multinacionales estadounidenses con más dinero en la caja fuerte&lt;/a&gt; (una mas larga, pero menos actualizada, &lt;a href="http://blogs.marketwatch.com/thetell/2011/07/27/apple-microsoft-cisco-lead-corporate-cash-list/"&gt;aquí&lt;/a&gt;) para darse cuenta de un detalle: las multinacionales tecnológicas dominan claramente el panorama. De las cinco primeras, cuatro son tecnológicas: Apple, Microsoft, Cisco y Google; y más adelante hay otras como Oracle o Intel.&lt;br /&gt;
&lt;br /&gt;
Apple merece mención especial: terminó el año 2012 con &lt;a href="http://www.theregister.co.uk/2013/01/24/apple_still_in_good_shape/"&gt;137.100$ millones&lt;/a&gt; en el bolsillo, el doble que el siguiente de la lista, Microsoft (cabría preguntarse por qué Apple no reduce el margen de beneficios y baja el precio de sus productos para competir mejor).&lt;br /&gt;
&lt;br /&gt;
¿Qué demonios van a hacer  estas compañías con todo ese dinero? Quizás parte se lo den a los inversores, quizás parte lo usen para financiar una transición en caso de decadencia. Pero parte de ello lo usarán, sin duda, en investigar y comprar pequeñas empresas con ideas rompedoras. Es decir, para que el sector tecnológico siga sorprendiéndonos -y perdónenme el tono de profetilla- con nuevas y maravillosas invenciones.&lt;br /&gt;
&lt;br /&gt;
Pero lo que venía a querer decir en este post es que me parece posible que esas "invenciones" tengan lugar en un espectro de la industria más amplio del que cabría esperar hoy, dado que parece haber una tendencia a que las fronteras de la "tecnología" se difuminen cada vez más. El sector informático ha estado relativamente contenido en sí mismo durante mucho tiempo, pero la progresiva reducción del tamaño de los componentes está logrando introducir pequeños ordenadores en todo aquel producto tradicional que pueda beneficiarse de software. Lo hemos visto con los teléfonos, se está empezando a ver con la televisión. ¿Por qué no en la &lt;a href="http://en.wikipedia.org/wiki/Google_driverless_car"&gt;automoción&lt;/a&gt;, por qué no en otros sectores industriales? No será por falta de dinero...&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/fdQ38ZwZ_OI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/4872721244879558812/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/01/tecnologia-y-capital.html#comment-form" title="4 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/4872721244879558812?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/4872721244879558812?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/fdQ38ZwZ_OI/tecnologia-y-capital.html" title="Tecnología y capital" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/01/tecnologia-y-capital.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEAHRHw5eip7ImA9WhNbE0U.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-8949784835299503427</id><published>2013-01-17T01:26:00.003+01:00</published><updated>2013-01-17T01:32:15.222+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-01-17T01:32:15.222+01:00</app:edited><title>El menos preocupante estado de ZFS libre</title><content type="html">El pasado Agosto escribí &lt;a href="http://diegocg.blogspot.com.es/2012/08/el-preocupante-estado-de-zfs-libre.html"&gt;este artículo sobre la decadencia de ZFS-libre&lt;/a&gt;. El resumen es que la versión de ZFS usada en proyectos libres como FreeBSD está basada en el código presente hace dos años en OpenSolaris, antes de que Sun fuese comprada, y que Oracle ha dejado de publicar nuevo código de las últimas versiones de Solaris.&lt;br /&gt;
&lt;br /&gt;
El código libre disponible de ZFS queda por tanto  anticuado, atascado en la versión de pool 28, mientras que Oracle utiliza la 33, con características ya incompatibles con las versiones viejas, sin contar aquellas que tenga en desarrollo. La única salida, contaba entonces, era que los sistemas operativos libres hicieran un fork.&lt;br /&gt;
&lt;br /&gt;
La buena noticia es que, como podemos ver en &lt;a href="http://zfsday.com/wp-content/uploads/2012/08/ZFS-Day-Matt-Ahrens.pdf"&gt;estas diapositivas&lt;/a&gt;, procedentes del &lt;a href="http://zfsday.com/zfsday/"&gt;ZFS day&lt;/a&gt;, ese fork ya existe en firme y parece tener cierto movimiento. En el PDF detallan varias mejoras hechas al fork, que han dado en llamar "Open ZFS". Lo cual me hace recordar lo ridículo que fue  aquel marketing que 
vendía ZFS como el sistema de archivos universal y definitivo.  &lt;br /&gt;
&lt;br /&gt;
Para ser sinceros, las mejoras no son como para tirar cohetes y la actividad aun es escasa (¿implementarán el "bp rewrite", o se darán por vencidos &lt;a href="http://permalink.gmane.org/gmane.os.illumos.devel/5203"&gt;vistos los problemas&lt;/a&gt;?). Y la actividad en el resto del kernel Illumos es aun más escasa. Pero al menos los sistemas operativos de código libre que dependen de ZFS ya no están en el limbo en el que han estado en estos dos años.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/z_SMKjwv-Lw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/8949784835299503427/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/01/el-menos-preocupante-estado-de-zfs-libre.html#comment-form" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/8949784835299503427?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/8949784835299503427?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/z_SMKjwv-Lw/el-menos-preocupante-estado-de-zfs-libre.html" title="El menos preocupante estado de ZFS libre" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/01/el-menos-preocupante-estado-de-zfs-libre.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0YNQ3czcCp7ImA9WhBSEEg.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-1922044872334165911</id><published>2013-01-03T01:08:00.004+01:00</published><updated>2013-02-16T22:46:32.988+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2013-02-16T22:46:32.988+01:00</app:edited><title>Predicciones 2013</title><content type="html">No puedo quejarme de las &lt;a href="http://diegocg.blogspot.com.es/2012/01/predicciones-2012.html"&gt;predicciones que hice&lt;/a&gt; para el 2012: El netbook &lt;a href="http://hardware.slashdot.org/story/12/12/31/1829212/does-2012-mark-the-end-of-the-netbook"&gt;está muriendose&lt;/a&gt; y las tabletas van &lt;a href="http://www.idc.com/getdoc.jsp?containerId=prUS23849612#.UMc8sOlGJ5R"&gt;camino de superar a los portátiles&lt;/a&gt; (demostrando que las críticas unánimes al iPad eran absurdas). Apple sigue siendo &lt;a href="http://www.tomshardware.com/news/Android-iPad-Apple-Google-Market,19375.html"&gt;líder (ajustado) de cuota de mercado&lt;/a&gt; de esas tabletas, el arrebato androidero que se predecía, análogo al del sector smartphone, está ocurriendo, pero con más lentitud. Ubuntu sigue siendo la distribución linuxera de referencia para nuevos usuarios, Google+ está en todos los rincones de Google&amp;nbsp;y Nokia ha caído con la mediocridad esperada (que, por otra parte, todo el mundo menos ellos veía venir). Aunque la predicción que más me gusta es la de "Windows 8 verá la luz, pero a nadie le importará gran cosa", algo que está sucediendo con &lt;a href="http://www.computerworld.com/s/article/9235059/Windows_8_s_uptake_falls_behind_Vista_s_pace"&gt;más intensidad&lt;/a&gt; de la que se esperaba. Por otro lado, la "televisión inteligente" sigue sin hacer demasiada aparición, Steve Ballmer sigue en Microsoft, Windows Phone sigue sin arrancar, y Firefox, a pesar de su enorme mejora, no ha detenido &lt;a href="http://gs.statcounter.com/#browser-ww-monthly-201012-201212"&gt;su caída&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Procedo entonces a las predicciones de este año. Algunas son renovadas del año pasado:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Aparecerá la "Apple TV", y habrá movimiento en las televisiones inteligentes.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Firefox frenará su caída.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Ballmer se irá de Microsoft.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Windows 8 tendrá cierto éxito con algunos teléfonos y/o tabletas.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Microsoft lanzará algún parche oficial para usar Windows 8 con escritorio tradicional y menú de inicio.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Steam en Linux tendrá gran acogida entre aficionados a los juegos.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· KDE y Gnome se meterán, en serio, a diseñar una versión optimizada para interfaces táctiles.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Los desarrolladores de Illumos se atreverán a sacar una versión de ZFS con mejoras en el formato de disco.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Facebook meterá la pata en alguna cosa y como consecuencia Google+ crecerá.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Algún otro proyecto se saldrá de GNU por discrepancias con la FSF.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Lennart Poettering buscará otra pieza crítica de infraestructura para reescribir de cero.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Btrfs será usado como sistema de archivos por defecto en más de una gran distribución.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· Modelo &lt;i&gt;rolling release&lt;/i&gt; en Fedora, y potencialmente en Debian.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· &lt;a href="http://www.yomiuri.co.jp/dy/business/T121230002722.htm"&gt;Este rumor&lt;/a&gt; de un teléfono Tizen hecho por Samsung se quedará en nada.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;· &lt;a href="https://plus.google.com/101269518953146211374/posts/FXXyUL8p8Rs"&gt;Añadido tarde&lt;/a&gt;, el 16 de Febrero: las distros empezarán a huir de grub2.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/4UE4XZgrPdc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/1922044872334165911/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2013/01/predicciones-2013.html#comment-form" title="17 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/1922044872334165911?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/1922044872334165911?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/4UE4XZgrPdc/predicciones-2013.html" title="Predicciones 2013" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>17</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2013/01/predicciones-2013.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkYNRH4_fip7ImA9WhNVE04.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-598011446942185227</id><published>2012-12-23T22:08:00.001+01:00</published><updated>2012-12-24T08:29:55.046+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-24T08:29:55.046+01:00</app:edited><title>Otra piedrecita en el zapato de la FSF</title><content type="html">Aunque en este blog alguna vez se ha criticado a la FSF y a Stallman, en realidad mi opinión personal sobre el asunto está algo entre mezclada. Comparto sus objetivos de fomentar el software libre, valoro que Stallman dedique su vida a patear el mundo dando charlas, aplaudo el trabajo de asesoramiento legal, me arrodillo ante la lucha contra el incumplimiento de la GPL, y soy consciente de que su tendencia a pensar lo peor de las multinacionales acaba teniendo muchos aciertos (se empeñan en darle la razón). Pero por otra parte se trata de un tipo que mantiene opiniones extremas y a menudo toma decisiones que a mi me parecen francamente estúpidas y que muestran una relación con la realidad un tanto especial.&lt;br /&gt;
&lt;br /&gt;
Esto viene a cuento porque el mantenedor de GNU sed ha renunciado a su puesto. En &lt;a href="http://article.gmane.org/gmane.comp.lang.smalltalk.gnu.general/7873"&gt;el anuncio de versión detalla sus razones&lt;/a&gt;. No se trata de una ruptura confrontada ni de odios personales, simplemente disconformidades con la forma de gestionar el proyecto GNU. Además, en el propio anuncio  nos enteramos de que el mantenedor de GnuTLS está &lt;a href="https://lwn.net/Articles/529558/"&gt;moviendo el proyecto fuera de GNU&lt;/a&gt;, por razones parecidas: creen en la causa del software libre, pero están de desacuerdo con la gestión y las decisiones que se toman.&lt;br /&gt;
&lt;br /&gt;
A mi me parece que esto no hace más que confirmar y fomentar  la deriva e irrelevancia de GNU tal y como se pretendía plantear originalmente, que era como un proyecto de sistema operativo, y no el repositorio de proyectos variados que es hoy. Por mucho que se empeñen en seguir fomentando el uso del palabro "GNU/Linux", como si las distribuciones Linux fuesen, en cuanto a proyectos, seguidoras en algo de GNU, lo cierto es que la porción de software GNU incluido en una distribución moderna &lt;a href="http://pedrocr.pt/text/how-much-gnu-in-gnu-linux"&gt;es más bien pequeña&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Las noticias de conflictos entre la FSF y desarrolladores de proyectos 
GNU no son nuevas, y sospecho 
que no serán las últimas. En los conflictos de GNU suelen haber un patrón que se repite: los programadores y mantenedores que aportan la mayoría del código se encuentran un día con decisiones o prácticas con las que ellos no están del todo acuerdo. Solucionar esos problemas internos no parece imposible, claro. Pero no hay que esperar milagros, recordemos que el éxito de LLVM (que acaba de anunciar su &lt;a href="http://llvm.org/releases/3.2/docs/ReleaseNotes.html"&gt;versión 3.2&lt;/a&gt;) se debe en buena parte a la &lt;a href="https://lwn.net/Articles/301135/"&gt;politización de las decisiones técnicas de GCC&lt;/a&gt;. GCC siempre fue la joya de la corona, pero ahora que la gente puede &lt;a href="http://lists.freebsd.org/pipermail/freebsd-current/2012-November/037610.html"&gt;pasar olímpicamente&lt;/a&gt; de GCC (aunque la muerte de GCC está muy exagerada), su valor se reduce, y con él el de GNU como proyecto. Aunque el software libre sale ganando, claro. &lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/Llby46v3_jY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/598011446942185227/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/12/otra-piedrecita-en-el-zapato-de-la-fsf.html#comment-form" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/598011446942185227?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/598011446942185227?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/Llby46v3_jY/otra-piedrecita-en-el-zapato-de-la-fsf.html" title="Otra piedrecita en el zapato de la FSF" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/12/otra-piedrecita-en-el-zapato-de-la-fsf.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEQMQ3w6fyp7ImA9WhNWGUg.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-8086845192721688461</id><published>2012-12-19T23:30:00.002+01:00</published><updated>2012-12-19T23:33:02.217+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-19T23:33:02.217+01:00</app:edited><title>QT 5.0</title><content type="html">Hoy toca versionitis de QT 5.0: &lt;a href="http://blog.qt.digia.com/blog/2012/12/19/qt-5-0/"&gt;anuncio&lt;/a&gt; y &lt;a href="http://www.youtube.com/watch?v=vhWS_bN-T3k"&gt;vídeo&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen="allowfullscreen" frameborder="0" height="360" src="http://www.youtube.com/embed/vhWS_bN-T3k" width="640"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/jJMo6BtUYAg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/8086845192721688461/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/12/qt-50.html#comment-form" title="1 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/8086845192721688461?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/8086845192721688461?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/jJMo6BtUYAg/qt-50.html" title="QT 5.0" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://img.youtube.com/vi/vhWS_bN-T3k/default.jpg" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/12/qt-50.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0MGQno7eyp7ImA9WhNWF0o.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-37580923921300631</id><published>2012-12-17T22:23:00.000+01:00</published><updated>2012-12-17T22:23:43.403+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-17T22:23:43.403+01:00</app:edited><title>Premio a la chapuza del año</title><content type="html">&lt;br /&gt;
En Samsung a algún genio se le ha ocurrido incluir &lt;a href="https://plus.google.com/114657443111661859546/posts/cd5e2ZBhUGK"&gt;un dispositivo en /dev que permite acceso a toda la memoria del sistema&lt;/a&gt; en sus dispositivos Android. ¿Permisos de dicho dispositivo? ¡Abierto para todo el mundo! ¡Lectura y escritura! Ha habido otros problemas de seguridad, pero el absurdo que supone algo así no puede describirse con palabras. Es como volver a los tiempos de MS-DOS, sin protección de memoria ni multiusuario ni nada.&lt;br /&gt;
&lt;br /&gt;
Por si esto no fuese bastante, han tenido la magnífica idea de hacer que varias librerías utilicen este dispositivo directamente, tal y como hacía X.org hace años, cuando accedía directamente a memoria para leer el bus PCI, lo cual hace complicado solucionar el problema. Y como remate final, el dispositivo incluye ioctls para sincronizar las caches L1 y L2 de la CPU (¿por qué una aplicación requiere acceso a algo así? Ni idea). Ni tan siquiera se les ha ocurrido usar  el /dev/mem que viene de serie en cualquier kernel, se han tomado la molestia de reimplementar la cosa a mano.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/jH1-aGFxWco" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/37580923921300631/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/12/premio-la-chapuza-del-ano.html#comment-form" title="19 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/37580923921300631?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/37580923921300631?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/jH1-aGFxWco/premio-la-chapuza-del-ano.html" title="Premio a la chapuza del año" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>19</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/12/premio-la-chapuza-del-ano.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMBSXgzcSp7ImA9WhNWF00.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-9153931957778413535</id><published>2012-12-16T21:33:00.000+01:00</published><updated>2012-12-17T01:00:58.689+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-17T01:00:58.689+01:00</app:edited><title>Btrfs y colisiones de hash</title><content type="html">A estas alturas habrán leído titulares en muchos sitios de Internet sobre un fallo de seguridad/ataque de denegación en Btrfs,  provocando colisiones de hash desvelado por &lt;a href="http://crypto.junod.info/2012/12/13/hash-dos-and-btrfs/"&gt;este blog&lt;/a&gt;. Como suele ocurrir con las cosas técnicas, la información ha oscilado entre la ausencia y la confusión, de ahí esta entrada.&lt;br /&gt;
&lt;br /&gt;
La mayor confusión es que al mencionar la palabra "hash" junto con "btrfs", mucha gente ha asociado esto con la capacidad de Btrfs o ZFS de hacer checksums de todos los datos del disco, pero no tiene nada que ver. De lo que trata el ataque es del hash de los nombres de los archivos. Organizar el contenido de los directorios con un hash puede sorprender, pero es un método estándar utilizado por todos los sistemas de archivo modernos: Ext3/4, XFS, Reiserfs v3, JFS, ZFS, etc. Los checksums para asegurar la integridad del sistema de archivos son otro asunto.&lt;br /&gt;
&lt;br /&gt;
Para calcular el hash de los nombres de archivo, Btrfs utiliza el algoritmo &lt;a href="http://en.wikipedia.org/wiki/Cyclic_redundancy_check#Commonly_used_and_standardized_CRCs"&gt;crc-32c&lt;/a&gt;. Como ha demostrado el artículo del blog citado anteriormente, se trata de un algoritmo débil frente a ataques de colisiones; es decir, es relativamente fácil generar a propósito un nombre de archivo cuyo hash crc32c sea idéntico al de otro con un nombre diferente. No pueden existir dos nombres con el mismo hash, por lo tanto se puede imposibilitar la creación de un archivo determinado creando otro que tenga el mismo hash.&lt;br /&gt;
&lt;br /&gt;
El principal problema de Btrfs es que no se gestionan correctamente esas colisiones de hash. Una colisión por si misma no es ningún problema: se detecta fácilmente, se prohíbe la creación del archivo con hash duplicado, se devuelve error, y punto. No poder crear el archivo por la colisión es una molestia pero que se puede gestionar sin problemas, sin embargo, Btrfs parece entrar en un loop infinito para el proceso que encuentra la colisión, y eso es un fallo. Sobre su solución, hace poco que Btrfs ha añadido verdadera gestión de errores (&lt;a href="http://kernelnewbies.org/Linux_3.4#head-373602392397ed518e4b4ce6a7c0a7517ea640f8"&gt;Linux 3.4&lt;/a&gt;), y parece que había algunos parches en SuSE relacionados con ello que solucionan el problema de la colisión que aun no están en mainline - o quizás algunos fallos que hacen que el sistema de archivos se remonte en modo de solo lectura (el asunto no está del todo claro aun). En breve se enviarán los parches para 3.8 y para -stable, y Btrfs gestionará el problema normalmente, sin entrar en loops infinitos ni sufrir errores extraños. Hasta aquí el problema en la gestión de colisiones.&lt;br /&gt;
&lt;br /&gt;
El otro asunto es la discusión sobre si el algoritmo de hash utilizado por Btrfs es demasiado débil. Este asunto es un poco más sutil. Lo cierto es que, aunque es cierto que el algoritmo es débil frente a colisiones, no es nada nuevo. El autor de Btrfs ya &lt;a href="https://lwn.net/Articles/529143/"&gt;ha dicho&lt;/a&gt; que nunca esperó que crc-32c fuese capaz de resistir ataques colisiones. Seguramente tampoco resistan los de reiserfs, ni Ext4, ni XFS, si se intenta. Incluso ZFS usa &lt;a href="http://news.ycombinator.com/item?id=4916090"&gt;CRC-64&lt;/a&gt;, que es más fuerte, pero no inquebrantable.&lt;br /&gt;
&lt;br /&gt;
Lo cierto es que los algoritmos de hash utilizados habitualmente para ordenar directorios no se escogen pensando en resistir ataques extremos - de ser así, de entrada no usarían algoritmos como CRC. Esos algoritmos no se escogen pensando en resistir pruebas extremas de seguridad sino más bien en evitar coincidencias 
casuales y asegurar la integridad de datos (por ejemplo, en archivos comprimidos). Al fin y al cabo, se asume que si alguien permite a cualquier persona crear archivos en un directorio de su propiedad, es su problema (podrían hacerse otra clase de ataques DoS, como simplemente crear el máximo número de archivos posible que permita el sistema de archivos en un directorio).&lt;br /&gt;
&lt;br /&gt;
Además, en los sistemas de archivo se tiene muy en cuenta que el algoritmo sea de cálculo sencillo, para afectar lo menos posible 
al rendimiento. Una de las razones por las que Btrfs utiliza crc-32c es que las CPUs Intel modernas con soporte SSE4.2 tienen una instrucción crc32c que permite usar ese algoritmo prácticamente "gratis". No parece que el autor de Btrfs tenga intención de cambiar el algoritmo por defecto (aunque quizás acepte otros alternativos para quienes quieran usarlos), simplemente solucionará el problema de gestión correcta de colisiones. Aun así, Btrfs un tiene espacio de 64 bits  para almacenar el hash de los elementos de un directorio, por lo que añadir soporte para otro (u otros cuantos) algoritmos no sería especialmente difícil.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/_9Vc7gR9fZ8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/9153931957778413535/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/12/btrfs-y-colisiones-de-hash.html#comment-form" title="0 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/9153931957778413535?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/9153931957778413535?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/_9Vc7gR9fZ8/btrfs-y-colisiones-de-hash.html" title="Btrfs y colisiones de hash" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/12/btrfs-y-colisiones-de-hash.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Dk8ERn06eip7ImA9WhNWEk4.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-5640756397103859951</id><published>2012-12-11T14:58:00.002+01:00</published><updated>2012-12-11T15:06:47.312+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-12-11T15:06:47.312+01:00</app:edited><title>Las novedades de Linux 3.7</title><content type="html">Ya se ha &lt;a href="https://lkml.org/lkml/2012/12/10/688"&gt;anunciado&lt;/a&gt; la 
versión 3.7 del kernel Linux. Esta versión incluye soporte para la nueva arquitectura de 64 bits de ARM, soporte ARM para multiplataforma - la habilidad de arrancar diferentes sistemas ARM con un mismo kernel-, soporte para la firma criptográfica de módulos del kernel, fsync() más veloz en Btrfs y soporte en éste para desactivar copy-on-write para cada archivo utilizando la herramienta chattr, una nueva herramienta "perf trace" que intenta imitar a strace, soporte completo para la característica TCP Fast Open, soporte experimental del protocolo SMBv2 usado por sistemas Windows modernos, soporte estable de NFS 4.1 y pNFS, un protocolo de tunelación que permite transferir paquetes ethernet de la Capa 2 a través de UDP, y soporte para la característica de seguridad de procesadores Intel "SMAP". También se han incluido  drivers nuevos y  muchas 
otras mejoras y pequeños cambios. La lista completa de cambios,  en 
inglés,  puede &lt;a href="http://kernelnewbies.org/Linux_3.7"&gt;encontrarse aquí&lt;/a&gt;, como siempre.&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte de ARM multiplataforma&lt;/b&gt;: Una distribución Linux típica puede arrancar y funcionar en cientos de modelos diferentes (diferentes CPUs, GPUs, placas madre, chipsets, etc) de un mismo CD. Esta capacidad de arrancar en diferentes configuraciones de hardware es algo habitual en el mundo PC, pero no existía en el&amp;nbsp; mundo ARM Linux. En esta versión, Linux ha añadido soporte para esta capacidad. Esto hará mucho más sencillo el soporte de sistemas ARM por parte de las distros&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte de la arquitectura de 64 bits de ARM&lt;/b&gt;: Los modelos más modernos de ARM, ARMv8, añaden por primera vez soporte de direccionamiento de memoria de 64 bits. Estas CPUs pueden ejecutar código de 32 bits, pero el conjunto de instrucciones de 64 bits es muy diferente, no tan solo una extensión de las de 32 bits, así que el soporte de Linux ha sido añadido como una arquitectura completamente nueva - arm64.&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Módulos del kernel firmados criptográficamente&lt;/b&gt;: Esta versión añade soporte para firmar módulos del kernel. De ese modo, el kernel puede prohibir la carga de módulos que no estén firmados con la clave correcta - incluso si lo intenta el usuario root. Esta característica es útil para propósitos de seguridad, ya que un atacante que ganase privilegios de root no podría instalar un rootkit utilizando la carga de módulos.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Mejoras en Btrfs&lt;/b&gt;:&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;b&gt;*&lt;/b&gt; &lt;i&gt;Mejoras de rendimiento de fsync()&lt;/i&gt;: La llamada al sistema fsync() escribe los datos modificados de un archivo al disco. El rendimiento de fsync() es importante para software como dpkg/rpm, Firefox, qemu, etc. El rendimiento de fsync() ha sido bastante malo históricamente, pero en esta versión es varias veces más rápido.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &lt;b&gt;*&lt;/b&gt; &lt;i&gt;Soporte para desactivar copy-on-write&lt;/i&gt; para cada archivo usando chattr: Btrfs puede desactivar copy-on-write para los datos de una archivo usando la opción de montaje "nodatacow". En esta versión es posible desactivar copy-on-write individualmente para cada archivo utilizando el comando "chattr +C archivo" (requiere un e2fsprogs reciente).&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; Copy-on-write no es beneficios para todo el mundo, y algunas aplicaciones quieren desactivarlo para conseguir mejor rendimiento y menor fragmentación. Nota: Para desactivar copy-on-write es necesario usar chattr en un archivo vacío, no funcionará en uno que ya tenga datos (en ese caso se puede crear un archivo temporal vacío, desactivar copy-on-write en él, copiar los datos de uno a otro y renombrar el archivo). Nota2: Desactivar copy-on-write desactivará también los checksums. Nota 3: Es posible usar chattr +C en un directorio, de modo que los nuevos archivos creados dentro de ese directorio heredarán la desactivación de copy-on-write&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;b&gt;*&lt;/b&gt; &lt;i&gt;Eliminación del límite de enlaces duros dentro de un sólo directorio&lt;/i&gt;: Btrfs no permitía la creación de más de 20 enlaces duros dentro de un mismo directorio. Se ha hecho una modificación del formato del disco para añadir un nuevo tipo de "referencias a inodo" que eleva el límite por directorio a 65K.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp; &lt;b&gt;*&lt;/b&gt; &lt;i&gt;Hole punching&lt;/i&gt;: "Hole punching" es la habilidad para desasignar un rango de espacio dentro de un archivo (usando la llamada al sistema fallocate() con el modo FALLOC_FL_PUNCH_HOLE). Btrfs ha añadido soporte para esta característica&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· perf trace, una alternativa a strace&lt;/b&gt;: El subsistema de trazado perf ha añadido una nueva herramienta: perf trace. Esta herramienta debería parecerse a la venerable herramienta strace, pero en lugar de usar la llamada de systema ptrace(), utiliza la infraestructura de trazado de Linux. Su propósito es hacer el uso de las características de trazado más sencillo a los usuarios. Esta herramienta está en sus primeras versiones, pero mejorará con el tiempo.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· TCP Fast Open (lado del servidor):&lt;/b&gt; Linux ya añadió soporte para TCP Fast Open ("apertura rápida") para clientes en Linux 3.6. En esta versión se ha añadido soporte para el lado del servidor, completando de ese modo el soporte.&lt;br /&gt;
&lt;br /&gt;
"Fast Open" es una optimización al proceso de establecimiento de una 
conexión TCP que permite eliminar un round time trip (RTT) de ciertas 
conexiones. Fast Open puede mejorar la carga de páginas entre un 4 y un 
41%.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte experimental del protocolo SMBv2&lt;/b&gt;: ¡Nota! La lista de cambios de la versión anterior del kernel, ya mencionó esta característica, pero fue un error. El soporte no estaba disponible en esa versión, fue desactivado a última hora y sólo ha sido completado en esta versión.&lt;br /&gt;
&lt;br /&gt;
El sistema de red cifs ha añadido soporte para la versión 2 del 
protocolo SMB. El protocolo SMB2 es el sucesor de los populares CIFS y 
SMB, y es el protocolo de invercambio de archivos por defecto en 
sistemas Windows desde Windows Vista en 2006. SMB2 eventualmente 
permitirá mejor rendimiento y seguridad y características que no eran 
posible con anteriores versiones del protocolo.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· NFS v4.1 ya no se considera experimental&lt;/b&gt;: El soporte para NFS v4.1 ([http://tools.ietf.org/html/rfc5661 RFC 5661]) ha estado en desarrollo durante mucho tiempo, y en esta versión se ha librado por primera vez de la etiqueta "experimental". La principal característica de NFS v4.1 es pNFS, es decir, "parallel NFS". pNFS permite tomar ventaja de clusters de servidores, permitiendo promorcionar acceso en paralelo escalable a archivos individuales o sistemas de archivos distribuidos entre varios servidores. Un sólo sistema de archivos puede estar repartido entre varios servidores, tanto a nivel de archivo como a nivel de bloque.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Protocolo de tunelización vxlan "Virtual extensible LAN"&lt;/b&gt;: Linux ha añadido soporte para vxlan, un protocolo de tunelización que permite transmitir paquetes ethernet de la Capa 2 sobre UDP. vxlan es usado con frecuencia para tunelizar redes en entornos de virtualización. El protocolo vxlan en si mismo es un [http://tools.ietf.org/html/draft-mahalingam-dutt-dcops-vxlan-02 borrador de RFC] que está diseñado para solventar el problema de número límitado de VLANs (4096), con vxlan el identificador se expande a 24 bits. El protocolo se ejecuta sobre UDP usando un sólo puerto de destino. A diferencia de otros túneles, una vxlan es una red de 1 a N destinos, no sólo punto a punto. Hay una implementación de vxlan para Openvswitch.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;· Soporte para la característica SMAP de Intel&lt;/b&gt;: El "Supervisor Mode Access Prevention (SMAP)" es una característica que estará disponible en futuras CPUs Intel. Prohíbe al kernel el acceso a páginas de memoria usadas por el espacio de usuario. Esto permite detener ciertos tipos de exploits.&lt;br /&gt;
&lt;br /&gt;
Y eso es todo. La lista completa de cambios en inglés, &lt;a href="http://kernelnewbies.org/Linux_3.7"&gt;aquí&lt;/a&gt;.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/Gs1gtMl9b9o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/5640756397103859951/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/12/las-novedades-de-linux-37.html#comment-form" title="7 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5640756397103859951?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5640756397103859951?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/Gs1gtMl9b9o/las-novedades-de-linux-37.html" title="Las novedades de Linux 3.7" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/12/las-novedades-de-linux-37.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEADQngzcCp7ImA9WhNQEE8.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-8539967730933185565</id><published>2012-11-16T00:22:00.000+01:00</published><updated>2012-11-16T00:39:33.688+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-16T00:39:33.688+01:00</app:edited><title>Google añade cadenas a Android</title><content type="html">Que Android tiene algunos problemas de fragmentación no es a estas alturas una noticia. Es más, ni tan siquiera es sorprendente, o evitable. Si permites que cualquier hijo de vecino ponga Android a cualquier cacharro chino, como mínimo tienes que empezar por aceptar la existencia de diferencias inevitables de rendimiento y capacidades entre unos cacharros y otros, que pueden llegar a afectar a los desarrolladores. La fragmentación de Android es algo con lo que hay que reconciliarse y saber convivir.&lt;br /&gt;
&lt;br /&gt;
Aun así, es lógico que Google intente corregir o al menos desincentivar la fragmentación. Puestos a elegir entre fragmentación y no fragmentación de una plataforma, todos preferimos la no fragmentación. Que sea inevitable no quiere decir que haya que aplaudirla y darle facilidades.&lt;br /&gt;
&lt;br /&gt;
Pero hay muchos tipos de fragmentación, y formas y formas de luchar contra ella. Y la que acaba de escoger Google no huele nada bien. Concretamente, Google ha decidido actualizar las &lt;a href="http://developer.android.com/sdk/terms.html"&gt;condiciones del SDK de Android&lt;/a&gt; para el desarrollo de aplicaciones, añadiendo la siguiente línea:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;3.4 You agree that you will not take any actions that may cause or 
result in the fragmentation of Android, including but not limited to 
distributing, participating in the creation of, or promoting in any way a
 software development kit derived from the SDK.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Muy bienintencionado, pero esa prohibición entra en conflicto filosófico con las &lt;a href="http://www.gnu.org/philosophy/free-sw.html"&gt;libertades esenciales&lt;/a&gt; del software libre. Un ciudadano debería tener libertad plena incluso para crear un SDK alternativo, que fragmente a Android o no, es secundario y hasta irrelevante. Y estas nuevas condiciones no sólo está prohibiendo eso, sino incluso el mero hecho de &lt;i&gt;"participating in the creation of, or promoting"&lt;/i&gt;.&lt;br /&gt;
&lt;br /&gt;
Naturalmente, nadie está obligado a escribir programas para Android, pero eso no es obstáculo para preocuparse por que Android esté evolucionando hacia una plataforma que no se puede llamar "libre" con  propiedad.&lt;br /&gt;
&lt;br /&gt;
Desde un punto de vista histórico, preocupa que Android esté empezando a reproducir los comportamientos de su padre. Android es una plataforma Java y, recuerden que Java es una plataforma que su creador Sun Microsystems promocionaba como abierta -existe un comité donde los grandes participantes  acordaban los cambios en común, etc-, pero en la práctica Sun exhibía con frecuencia cierta paranoia ante la posibilidad de un fork, hablando de lo buena que es la uniformidad y de la fatalidad cósmica que sería que alguien la rompiese. Cuando Android vió la luz, todo fueron palabras bonitas, pero no fueron capaces de conseguir que Android comprara licencias y se uniera al mundo Java oficial.&lt;br /&gt;
&lt;br /&gt;
Ante la insistencia de Google de ir por su cuenta, se pusieron serios. Google reaccionó en plan: hey, tan sólo estamos jugando con partes de
 Java y tratando de crear really cool gadgets, ¿por qué odias 
la innovación? De ahí surgió, posteriormente a la compra de Sun, el caso de &lt;a href="http://en.swpat.org/wiki/Oracle_v._Google_%282010,_USA%29"&gt;Oracle vs Google&lt;/a&gt; por infringir patentes en Android - un intento desesperado de mantener el control de Java a golpe de sentencia, y que nos deparó ese entrañable momento en el que Oracle intentó defender que se pudiera aplicar copyright a una API.&lt;br /&gt;
&lt;br /&gt;
Ironías de la vida, ahora es Google quien empieza a ver con malos ojos que alguien intente romper la uniformidad que tanto despreciaban. ¿Hasta que punto estarán dispuestos a llegar para defender la de Android? ¿Que valora Google más, o valorará dentro de unos años, los principios y la libertad del software o las enormes cantidades de dinero e inversión técnica depositadas en Android?&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/DUsa-b_ufXk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/8539967730933185565/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/11/google-anade-cadenas-android.html#comment-form" title="7 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/8539967730933185565?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/8539967730933185565?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/DUsa-b_ufXk/google-anade-cadenas-android.html" title="Google añade cadenas a Android" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>7</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/11/google-anade-cadenas-android.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQGQXk9cCp7ImA9WhNRF0g.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-5603752964321114017</id><published>2012-11-12T21:39:00.001+01:00</published><updated>2012-11-12T22:55:20.768+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-11-12T22:55:20.768+01:00</app:edited><title>Windows 8</title><content type="html">Hace tantos años que se viene deseando el fin del monopolio Windows, que parece mentira que haya llegado un punto que parezca que su caída esté, al menos, dentro de las posibilidades. Hasta el propio Steve Ballmer lo admite.&lt;br /&gt;
&lt;br /&gt;
Como es bien sabido, los dispositivos portátiles y táctiles requieren un tipo de interfaces de usuario que difieren en muchos aspectos del conocido esquema &lt;a href="http://en.wikipedia.org/wiki/WIMP_%28computing%29"&gt;WIMP&lt;/a&gt;. En el sistema operativo inaugurador del sector, iOS, la nueva interfaz  fue introducida a través del "kit" de Cococa UIKit, mientras que el tradicional AppKit de OS X no está disponible en dispositivos &lt;i&gt;portáctiles&lt;/i&gt; (portables+táctiles). Por su parte, Android no tenía pasado alguno, así que fue implementado exclusivamente para dispositivos portáctiles.&lt;br /&gt;
&lt;br /&gt;
Windows 8 ha optado por una vía alternativa, consistente en permitir ambas interfaces, la tradicional de Windows y la nueva, para portáctiles, apodada Metro (nombre que Microsoft ha pedido que no se use, pero que usaré de todos modos porque hay que tener mala leche popularizar un término y luego tratar de eliminar su uso). Sin embargo, la capacidad de usar ambos tipos de interfaz se reduce a usarlas dentro del mismo sistema operativo, porque visualmente están prácticamente divorciadas: existen dos escritorios, el escritorio tradicional y el escritorio Metro, y cada tipo de aplicación se ejecuta en su escritorio, y  se puede cambiar de un escritorio a otro.&lt;br /&gt;
&lt;br /&gt;
Por esa razón, la sensación de cambiar de un escritorio a otro es parecida a la de cambiar entre diferences máquinas virtuales en un programa de virtualización. Y no es una sensación sólo visual. Cada aplicación Metro se ejecuta dentro de una "sandbox", y esa sandbox no es un entorno libre donde el programador puede hacer lo que quiera, como se hacía en los programas de toda la vida, sino WinRT, una especie de &lt;a href="http://arstechnica.com/features/2012/10/windows-8-and-winrt-everything-old-is-new-again"&gt;runtime/librería/API&lt;/a&gt; (el artículo enlazado es muy recomendable) formada con pedazos de varias tecnologías de Microsoft, que por el momento está orientada a dispositivos portáctiles y a propósitos muy específicos (se permite el uso de Direct3D para crear juegos, pero curiosamente no hay acceso completo a una API tan básica como la API de sockets Berkeley que utilizan todos los sistemas operativos para comunicarse en Internet). &lt;br /&gt;
&lt;br /&gt;
Esta separación de ambos tipos de aplicaciones llega a extremos francamente ridículos. Por ejemplo, la tienda de aplicaciones sólo está permitida para aplicaciones que usen WinRT, con lo cual gran parte de las aplicaciones del escritorio tradicional de Windows están excluidas. ¿Por qué esa limitación, porque no extender la tienda de aplicaciones a todo tipo de aplicaciones? Las aplicaciones WinRT están tan aisladas que ni tan siquiera han facilitado la comunicación  con las aplicaciones del escritorio tradicional: No sólo es que sea  técnicamente se hayan prohibido deliberadamente ciertos mecanismos de IPC, es que las propias reglas de la tienda de aplicaciones lo prohiben expresamente.&lt;br /&gt;
&lt;br /&gt;
Usar un sistema operativo que está divorciado de este modo consigo mismo es bastante fustrante. Por una parte, se mantiene la compatibilidad con el universo tradicional  Windows, pero complican deliberada e innecesariamente su uso habitual a quienes no están interesados en Metro. El escritorio por defecto es siempre el escritorio Metro, hay varias acciones que sacan al usuario forzosamente del escritorio tradicional cuando se encuentra en él, y se elimina el botón "start" y su menú. Estas decisiones son completamente "políticas", no técnicas, y son el principal origen de  quejas. La gente no entiende por qué no hay ninguna opción, o siquiera clave de registro, que permita establecer el escritorio tradicional como escritorio por defecto, y la recuperación del botón de inicio (hay que recurrir a aplicaciones de terceros). ¿Es que Windows ha sido invadido por desarrolladores como los de Gnome 3?&lt;br /&gt;
&lt;br /&gt;
Tal vez en parte, pero existe una razón más importante, y es que es obvio que Windows 8 ha sido diseñado fundamentalmente para dispositivos portáctiles. Al fin y al cabo, es ese sector en el que Microsoft está necesitado de ganar cuota de mercado y relevancia. Seguramente preveen que la mayor parte de escritorios va a quedarse con Windows 7 y no les importa, lo que quieren es plantar cara a Apple y a Android.&lt;br /&gt;
&lt;br /&gt;
¿Y qué tal es Windows 8 en ese campo, qué tal es el escritorio táctil Metro? No he tenido la oportunidad de probarlo en tableta, pero dado que el escritorio Metro está diseñado para poder ser usado con teclado y ratón, es fácil hacerse una idea. Y lo cierto es que en muchos aspectos es francamente bueno: los gráficos son muy fluidos, y el estilo de las aplicaciones Metro tiene su sitio. La pantalla inicial Metro, con sus "tiles" dinámicos, es en principio una buena idea, aunque han simplificado el concepto demasiado. En resumen, se puede decir que Microsoft ya no tiene carencias como plataforma portáctil. Pero eso no basta: se nota la falta de madurez y la desventaja de su tienda de aplicaciones frente a iOS y Android.&lt;br /&gt;
&lt;br /&gt;
Esa desventaja parece  insuperable a día de hoy, pero sólo el tiempo dirá lo que ocurre. Lo cierto es que aunque en el mundo de los smartphones está difícil, Windows 8 tiene algunas posibilidades en el mercado de las tabletas. Es  sabido que Android no ha tenido en las tabletas el mismo éxito arrollador que tuvo en smartphones. &lt;a href="http://www.slate.com/blogs/moneybox/2012/09/05/android_tablets_why_a_huge_phone_os_success_doesn_t_work_as_well_on_tablets_.html"&gt;Matthew Yglesias contó&lt;/a&gt; que esto se debía a razones puramente económicas: el negocio telefónico está dominado por empresas de telecomunicaciones que están incentivadas a ofrecer teléfonos con Android  porque ganan más dinero con ello, pero a los centros comerciales y tiendas  artículos electrónicos no les importa vender una tableta iPad o Android siempre y cuando vendan uno, por lo que la competencia está más igualada. Aunque Android está &lt;a href="http://www.journalism.org/analysis_report/device_ownership"&gt;avanzando&lt;/a&gt; en este mercado rápidamente, que el aun líder del mercado haya lanzado el iPad mini demuestra que es un mercado menos establecido. Windows 8 puede encontrar ahí un hueco.&lt;br /&gt;
&lt;br /&gt;
Por lo demás, Windows 8 es un sistema operativo rápido y ligero. Los tiempos de arranque son buenos (utilizan una técnica muy curiosa, consistente en hibernar una sesión del sistema justo hasta el punto en el que comienza la sesión del usuario, y resumir esa imagen en cada arranque), la interfaz -tanto la Metro como la tradicional- es rápida. De no ser por el asunto de Metro, sería un  sustituto indiscutible de Windows 7, pero la marginación del escritorio tradicional y el forzado de una interfaz táctil lo convertirá en una oveja negra para mucha gente.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/GBLaHAu4goY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/5603752964321114017/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/11/windows-8.html#comment-form" title="4 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5603752964321114017?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/5603752964321114017?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/GBLaHAu4goY/windows-8.html" title="Windows 8" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/11/windows-8.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkIGQX09eyp7ImA9WhNSFk0.&quot;"><id>tag:blogger.com,1999:blog-7974522.post-9048735017657999792</id><published>2012-10-30T15:48:00.003+01:00</published><updated>2012-10-30T15:48:40.363+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2012-10-30T15:48:40.363+01:00</app:edited><title>AMD se da por vencida, Intel y ARM no</title><content type="html">Del mismo modo que Intel es un ejemplo de multinacional letalmente competitiva, capaz de cometer errores mastodónticos y corregirlos sin perder el liderazgo, AMD ha acabado convirtiéndose en ejemplo de lo contrario. El único buen momento de AMD en la última década fue el Opteron, una joya que no supieron capitalizar y que se ha convertido en una excepción en su historia. Hoy, en un mundo en el que la eficiencia de un procesador importa a veces más que su rendimiento bruto, han decidido no enfrentarse al mundo y &lt;a href="http://www.theregister.co.uk/2012/10/30/amd_to_partner_with_arm_for_server_cpus/"&gt;pasar a usar ARM&lt;/a&gt; en servidores.&lt;br /&gt;
&lt;br /&gt;
Que AMD recurra a procesadores ARM para algo es equivalente a reconocer que no son capaces de crear procesadores x86 de bajo consumo equivalentes. Es más, probablemente una de las razones que les ha impulsado a tomar esta decisión es que ARM iba a acabar comiéndose parte de su mercado de servidores, y han preferido unirse a otro bando antes que perder la guerra x86 vs ARM. Intel, por su parte, ha empezado con desventaja, pero al menos tienen intención de presentar batalla y ganarla.&lt;br /&gt;
&lt;br /&gt;
Tras esta reorganización de bandos en el campo de procesadores de bajo consumo, prácticamente todos los competidores de Intel en el campo de semiconductores se han unido en el lado de ARM, e incluso algunos aliados tradicionales en otros campos, como Microsoft, han declarado su neutralidad. La pelea será cruel.&lt;img src="http://feeds.feedburner.com/~r/diegocg/~4/lUPdyb2dZrs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://diegocg.blogspot.com/feeds/9048735017657999792/comments/default" title="Enviar comentarios" /><link rel="replies" type="text/html" href="http://diegocg.blogspot.com/2012/10/amd-se-da-por-vencida-intel-y-arm-no.html#comment-form" title="8 comentarios" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/9048735017657999792?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/7974522/posts/default/9048735017657999792?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/diegocg/~3/lUPdyb2dZrs/amd-se-da-por-vencida-intel-y-arm-no.html" title="AMD se da por vencida, Intel y ARM no" /><author><name>Diego Calleja</name><uri>https://plus.google.com/101269518953146211374</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="32" height="32" src="//lh5.googleusercontent.com/-NoTYJiGzCsQ/AAAAAAAAAAI/AAAAAAAAAZc/F7rLslHn6AE/s512-c/photo.jpg" /></author><thr:total>8</thr:total><feedburner:origLink>http://diegocg.blogspot.com/2012/10/amd-se-da-por-vencida-intel-y-arm-no.html</feedburner:origLink></entry></feed>
