<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>InfoTuga</title> <atom:link href="http://www.infotuga.com/?feed=rss2" rel="self" type="application/rss+xml" /><link>http://www.infotuga.com</link> <description>Informática e Tecnologia</description> <lastBuildDate>Tue, 31 Aug 2010 10:27:43 +0000</lastBuildDate> <generator>http://wordpress.org/?v=2.9.2</generator> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <item><title>Autojump &#8211; o comando cd (change directory) que aprende</title><link>http://www.infotuga.com/?p=716</link> <comments>http://www.infotuga.com/?p=716#comments</comments> <pubDate>Tue, 31 Aug 2010 10:27:43 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[ferramentas]]></category> <category><![CDATA[arquivo]]></category> <category><![CDATA[bash]]></category> <category><![CDATA[directory]]></category> <category><![CDATA[ficheiro]]></category> <category><![CDATA[pasta]]></category> <category><![CDATA[saltar]]></category> <category><![CDATA[zsh]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=716</guid> <description><![CDATA[O Autojump é uma ferramenta para Linux ou MacOS que aprende quais são os directórios mais utilizados e permite &#8220;saltar&#8221; para directamente entre eles.
Resumidamente, se quisesse aceder ao directório &#8220;/home/john/documents/projects/DADVSI/legal&#8221;, bastaria escrever &#8220;j legal&#8221; ou &#8220;j leg&#8221; ou &#8220;j gal&#8221;
Página Principal
Download
]]></description> <content:encoded><![CDATA[<p>O Autojump é uma ferramenta para Linux ou MacOS que aprende quais são os directórios mais utilizados e permite &#8220;saltar&#8221; para directamente entre eles.</p><p>Resumidamente, se quisesse aceder ao directório &#8220;/home/john/documents/projects/DADVSI/legal&#8221;, bastaria escrever &#8220;j legal&#8221; ou &#8220;j leg&#8221; ou &#8220;j gal&#8221;</p><p><a
href="http://github.com/joelthelion/autojump/wiki" target="_blank">Página Principal</a></p><p><a
href="http://github.com/joelthelion/autojump/downloads" target="_blank">Download</a></p><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=716</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Comparativo de desempenho do MySQL em vários sistemas de ficheiros</title><link>http://www.infotuga.com/?p=666</link> <comments>http://www.infotuga.com/?p=666#comments</comments> <pubDate>Wed, 04 Aug 2010 03:26:44 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[teste]]></category> <category><![CDATA[analysis]]></category> <category><![CDATA[benchmark]]></category> <category><![CDATA[btrfs]]></category> <category><![CDATA[ext3]]></category> <category><![CDATA[ext4]]></category> <category><![CDATA[file system]]></category> <category><![CDATA[jfs]]></category> <category><![CDATA[performance]]></category> <category><![CDATA[test]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=666</guid> <description><![CDATA[Nesta segunda ronda de análise ao comportamento do MySQL sobre os mais populares sistemas de ficheiros de Linux foi adicionado um novo concorrente &#8211; o btrfs. Neste artigo o principal objecto de análise irá ser precisamente este novo sistema de ficheiros que pretende vir a ser o sucessor do ext4, mas estará o btrfs pronto [...]]]></description> <content:encoded><![CDATA[<p>Nesta segunda ronda de análise ao comportamento do MySQL sobre os mais populares sistemas de ficheiros de Linux foi adicionado um novo concorrente &#8211; o btrfs. Neste artigo o principal objecto de análise irá ser precisamente este novo sistema de ficheiros que pretende vir a ser o sucessor do ext4, mas estará o btrfs pronto para a produção?</p><p><strong>Update</strong>: Adicionados os resultados para xfs</p><p><span
id="more-666"></span></p><p><strong>Software:</strong></p><p>Ubuntu Maverick</p><p>MySQL 5.1.48</p><p>Kernel 2.6.35-6-generic-pae i686</p><p><strong>Hardware:</strong></p><p>Intel E8400 @ 3.88GHz</p><p>4GB RAM</p><p>Hitachi 5400RPM</p><p><strong>Metodologia:</strong></p><p>Instalação limpa de Ubuntu sempre que era alterado o sistema de ficheiros em análise.</p><p>Nenhuma optimização para o sistema de ficheiros ou MySQL foi selecionada ou instalada.</p><p>Todos os testes foram corridos 5 vezes, retirados os piores e os melhores resultados e calculada a média aritmética entre os restantes.</p><p>Esta plataforma foi escolhida para poder assegurar que o &#8220;bottleneck&#8221; seria o disco rígido e desta forma salientar a eficiência dos vários sistemas de ficheiros em análise.</p><p><strong>Resultados:</strong></p><h2 class="wp-table-reloaded-table-name">Benchmarks MySQL</h2> <span
class="wp-table-reloaded-table-description">Desempenho do MySQL sobre btrfs, ext4, ext3, jfs e reiserfs.<br
/> <br
/> Valores em segundos - menor é melhor (Values in seconds - less is better)</span><table
id="wp-table-reloaded-id-4-no-1" class="wp-table-reloaded wp-table-reloaded-id-4"><thead><tr
class="row-1 odd"><th
class="column-1">Operação</th><th
class="column-2">btrfs</th><th
class="column-3">xfs</th><th
class="column-4">ext4</th><th
class="column-5">ext3</th><th
class="column-6">jfs</th><th
class="column-7">reiserfs</th></tr></thead><tbody
class="row-hover"><tr
class="row-2 even"><td
class="column-1">alter_table_add</td><td
class="column-2">15.00</td><td
class="column-3">11.00</td><td
class="column-4">7.00</td><td
class="column-5">13.00</td><td
class="column-6">4.00</td><td
class="column-7">19.00</td></tr><tr
class="row-3 odd"><td
class="column-1">alter_table_drop</td><td
class="column-2">13.00</td><td
class="column-3">10.00</td><td
class="column-4">7.00</td><td
class="column-5">12.00</td><td
class="column-6">4.00</td><td
class="column-7">20.00</td></tr><tr
class="row-4 even"><td
class="column-1">connect</td><td
class="column-2">2.00</td><td
class="column-3">2.00</td><td
class="column-4">2.00</td><td
class="column-5">3.00</td><td
class="column-6">2.00</td><td
class="column-7">2.00</td></tr><tr
class="row-5 odd"><td
class="column-1">connect+select_1_row</td><td
class="column-2">3.00</td><td
class="column-3">3.00</td><td
class="column-4">3.00</td><td
class="column-5">3.00</td><td
class="column-6">3.00</td><td
class="column-7">3.00</td></tr><tr
class="row-6 even"><td
class="column-1">connect+select_simple</td><td
class="column-2">3.00</td><td
class="column-3">3.00</td><td
class="column-4">3.00</td><td
class="column-5">3.00</td><td
class="column-6">3.00</td><td
class="column-7">3.00</td></tr><tr
class="row-7 odd"><td
class="column-1">count</td><td
class="column-2">3.00</td><td
class="column-3">3.00</td><td
class="column-4">4.00</td><td
class="column-5">2.00</td><td
class="column-6">3.00</td><td
class="column-7">2.00</td></tr><tr
class="row-8 even"><td
class="column-1">count_distinct</td><td
class="column-2">0.00</td><td
class="column-3">1.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-9 odd"><td
class="column-1">count_distinct_2</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-10 even"><td
class="column-1">count_distinct_big</td><td
class="column-2">3.00</td><td
class="column-3">3.00</td><td
class="column-4">3.00</td><td
class="column-5">3.00</td><td
class="column-6">2.00</td><td
class="column-7">3.00</td></tr><tr
class="row-11 odd"><td
class="column-1">count_distinct_group</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-12 even"><td
class="column-1">count_distinct_group_on_key</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">1.00</td></tr><tr
class="row-13 odd"><td
class="column-1">count_distinct_group_on_key_parts</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-14 even"><td
class="column-1">count_distinct_key_prefix</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">1.00</td><td
class="column-7">0.00</td></tr><tr
class="row-15 odd"><td
class="column-1">count_group_on_key_parts</td><td
class="column-2">1.00</td><td
class="column-3">0.00</td><td
class="column-4">1.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-16 even"><td
class="column-1">count_on_key</td><td
class="column-2">6.00</td><td
class="column-3">6.00</td><td
class="column-4">8.00</td><td
class="column-5">8.00</td><td
class="column-6">7.00</td><td
class="column-7">7.00</td></tr><tr
class="row-17 odd"><td
class="column-1">create+drop</td><td
class="column-2">1089.00</td><td
class="column-3">523.00</td><td
class="column-4">506.00</td><td
class="column-5">181.00</td><td
class="column-6">106.00</td><td
class="column-7">123.00</td></tr><tr
class="row-18 even"><td
class="column-1">create_MANY_tables</td><td
class="column-2">3281.00</td><td
class="column-3">588.00</td><td
class="column-4">510.00</td><td
class="column-5">124.00</td><td
class="column-6">116.00</td><td
class="column-7">127.00</td></tr><tr
class="row-19 odd"><td
class="column-1">create_index</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">3.00</td><td
class="column-6">0.00</td><td
class="column-7">3.00</td></tr><tr
class="row-20 even"><td
class="column-1">create_key+drop</td><td
class="column-2">1130.00</td><td
class="column-3">524.00</td><td
class="column-4">506.00</td><td
class="column-5">180.00</td><td
class="column-6">108.00</td><td
class="column-7">122.00</td></tr><tr
class="row-21 odd"><td
class="column-1">create_table</td><td
class="column-2">5.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">0.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-22 even"><td
class="column-1">delete_all_many_keys</td><td
class="column-2">27.00</td><td
class="column-3">9.00</td><td
class="column-4">14.00</td><td
class="column-5">69.00</td><td
class="column-6">53.00</td><td
class="column-7">7.00</td></tr><tr
class="row-23 odd"><td
class="column-1">delete_big</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">1.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-24 even"><td
class="column-1">delete_big_many_keys</td><td
class="column-2">27.00</td><td
class="column-3">9.00</td><td
class="column-4">14.00</td><td
class="column-5">69.00</td><td
class="column-6">53.00</td><td
class="column-7">7.00</td></tr><tr
class="row-25 odd"><td
class="column-1">delete_key</td><td
class="column-2">1.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-26 even"><td
class="column-1">delete_range</td><td
class="column-2">6.00</td><td
class="column-3">2.00</td><td
class="column-4">2.00</td><td
class="column-5">2.00</td><td
class="column-6">2.00</td><td
class="column-7">2.00</td></tr><tr
class="row-27 odd"><td
class="column-1">drop_index</td><td
class="column-2">2.00</td><td
class="column-3">1.00</td><td
class="column-4">0.00</td><td
class="column-5">2.00</td><td
class="column-6">0.00</td><td
class="column-7">3.00</td></tr><tr
class="row-28 even"><td
class="column-1">drop_table</td><td
class="column-2">0.00</td><td
class="column-3">1.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">1.00</td><td
class="column-7">0.00</td></tr><tr
class="row-29 odd"><td
class="column-1">drop_table_when_MANY_tables</td><td
class="column-2">4.00</td><td
class="column-3">112.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">12.00</td><td
class="column-7">1.00</td></tr><tr
class="row-30 even"><td
class="column-1">insert</td><td
class="column-2">23.00</td><td
class="column-3">14.00</td><td
class="column-4">13.00</td><td
class="column-5">11.00</td><td
class="column-6">13.00</td><td
class="column-7">13.00</td></tr><tr
class="row-31 odd"><td
class="column-1">insert_duplicates</td><td
class="column-2">3.00</td><td
class="column-3">5.00</td><td
class="column-4">5.00</td><td
class="column-5">5.00</td><td
class="column-6">5.00</td><td
class="column-7">5.00</td></tr><tr
class="row-32 even"><td
class="column-1">insert_key</td><td
class="column-2">29.00</td><td
class="column-3">13.00</td><td
class="column-4">12.00</td><td
class="column-5">20.00</td><td
class="column-6">14.00</td><td
class="column-7">13.00</td></tr><tr
class="row-33 odd"><td
class="column-1">insert_many_fields</td><td
class="column-2">2.00</td><td
class="column-3">2.00</td><td
class="column-4">2.00</td><td
class="column-5">1.00</td><td
class="column-6">2.00</td><td
class="column-7">2.00</td></tr><tr
class="row-34 even"><td
class="column-1">insert_select_1_key</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">0.00</td><td
class="column-7">1.00</td></tr><tr
class="row-35 odd"><td
class="column-1">insert_select_2_keys</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">2.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-36 even"><td
class="column-1">min_max</td><td
class="column-2">2.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-37 odd"><td
class="column-1">min_max_on_key</td><td
class="column-2">5.00</td><td
class="column-3">7.00</td><td
class="column-4">5.00</td><td
class="column-5">5.00</td><td
class="column-6">5.00</td><td
class="column-7">6.00</td></tr><tr
class="row-38 even"><td
class="column-1">multiple_value_insert</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-39 odd"><td
class="column-1">once_prepared_select</td><td
class="column-2">12.00</td><td
class="column-3">11.00</td><td
class="column-4">11.00</td><td
class="column-5">12.00</td><td
class="column-6">11.00</td><td
class="column-7">11.00</td></tr><tr
class="row-40 even"><td
class="column-1">order_by_big</td><td
class="column-2">6.00</td><td
class="column-3">6.00</td><td
class="column-4">6.00</td><td
class="column-5">6.00</td><td
class="column-6">7.00</td><td
class="column-7">6.00</td></tr><tr
class="row-41 odd"><td
class="column-1">order_by_big_key</td><td
class="column-2">7.00</td><td
class="column-3">6.00</td><td
class="column-4">7.00</td><td
class="column-5">8.00</td><td
class="column-6">8.00</td><td
class="column-7">7.00</td></tr><tr
class="row-42 even"><td
class="column-1">order_by_big_key2</td><td
class="column-2">7.00</td><td
class="column-3">6.00</td><td
class="column-4">7.00</td><td
class="column-5">7.00</td><td
class="column-6">7.00</td><td
class="column-7">7.00</td></tr><tr
class="row-43 odd"><td
class="column-1">order_by_big_key_desc</td><td
class="column-2">7.00</td><td
class="column-3">6.00</td><td
class="column-4">7.00</td><td
class="column-5">7.00</td><td
class="column-6">6.00</td><td
class="column-7">8.00</td></tr><tr
class="row-44 even"><td
class="column-1">order_by_big_key_diff</td><td
class="column-2">6.00</td><td
class="column-3">7.00</td><td
class="column-4">6.00</td><td
class="column-5">6.00</td><td
class="column-6">6.00</td><td
class="column-7">6.00</td></tr><tr
class="row-45 odd"><td
class="column-1">order_by_big_key_prefix</td><td
class="column-2">6.00</td><td
class="column-3">6.00</td><td
class="column-4">5.00</td><td
class="column-5">7.00</td><td
class="column-6">5.00</td><td
class="column-7">6.00</td></tr><tr
class="row-46 even"><td
class="column-1">order_by_key2_diff</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">0.00</td><td
class="column-7">1.00</td></tr><tr
class="row-47 odd"><td
class="column-1">order_by_key_prefix</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">1.00</td><td
class="column-7">0.00</td></tr><tr
class="row-48 even"><td
class="column-1">order_by_range</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-49 odd"><td
class="column-1">outer_join</td><td
class="column-2">2.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">2.00</td><td
class="column-6">1.00</td><td
class="column-7">0.00</td></tr><tr
class="row-50 even"><td
class="column-1">outer_join_found</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-51 odd"><td
class="column-1">outer_join_not_found</td><td
class="column-2">1.00</td><td
class="column-3">0.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-52 even"><td
class="column-1">outer_join_on_key</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">1.00</td></tr><tr
class="row-53 odd"><td
class="column-1">prepared_select</td><td
class="column-2">14.00</td><td
class="column-3">14.00</td><td
class="column-4">14.00</td><td
class="column-5">14.00</td><td
class="column-6">14.00</td><td
class="column-7">14.00</td></tr><tr
class="row-54 even"><td
class="column-1">select_1_row</td><td
class="column-2">7.00</td><td
class="column-3">7.00</td><td
class="column-4">7.00</td><td
class="column-5">6.00</td><td
class="column-6">7.00</td><td
class="column-7">7.00</td></tr><tr
class="row-55 odd"><td
class="column-1">select_1_row_cache</td><td
class="column-2">2.00</td><td
class="column-3">2.00</td><td
class="column-4">2.00</td><td
class="column-5">3.00</td><td
class="column-6">2.00</td><td
class="column-7">2.00</td></tr><tr
class="row-56 even"><td
class="column-1">select_2_rows</td><td
class="column-2">7.00</td><td
class="column-3">7.00</td><td
class="column-4">7.00</td><td
class="column-5">7.00</td><td
class="column-6">7.00</td><td
class="column-7">7.00</td></tr><tr
class="row-57 odd"><td
class="column-1">select_big</td><td
class="column-2">7.00</td><td
class="column-3">7.00</td><td
class="column-4">7.00</td><td
class="column-5">6.00</td><td
class="column-6">7.00</td><td
class="column-7">7.00</td></tr><tr
class="row-58 even"><td
class="column-1">select_big_str</td><td
class="column-2">2.00</td><td
class="column-3">2.00</td><td
class="column-4">2.00</td><td
class="column-5">2.00</td><td
class="column-6">2.00</td><td
class="column-7">2.00</td></tr><tr
class="row-59 odd"><td
class="column-1">select_cache</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-60 even"><td
class="column-1">select_cache2</td><td
class="column-2">32.00</td><td
class="column-3">24.00</td><td
class="column-4">29.00</td><td
class="column-5">26.00</td><td
class="column-6">23.00</td><td
class="column-7">26.00</td></tr><tr
class="row-61 odd"><td
class="column-1">select_column+column</td><td
class="column-2">8.00</td><td
class="column-3">8.00</td><td
class="column-4">8.00</td><td
class="column-5">8.00</td><td
class="column-6">8.00</td><td
class="column-7">8.00</td></tr><tr
class="row-62 even"><td
class="column-1">select_diff_key</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">1.00</td><td
class="column-7">0.00</td></tr><tr
class="row-63 odd"><td
class="column-1">select_distinct</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-64 even"><td
class="column-1">select_group</td><td
class="column-2">2.00</td><td
class="column-3">0.00</td><td
class="column-4">2.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-65 odd"><td
class="column-1">select_group_when_MANY_tables</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">2.00</td></tr><tr
class="row-66 even"><td
class="column-1">select_join</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-67 odd"><td
class="column-1">select_key</td><td
class="column-2">25.00</td><td
class="column-3">25.00</td><td
class="column-4">25.00</td><td
class="column-5">25.00</td><td
class="column-6">25.00</td><td
class="column-7">25.00</td></tr><tr
class="row-68 even"><td
class="column-1">select_key2</td><td
class="column-2">26.00</td><td
class="column-3">27.00</td><td
class="column-4">27.00</td><td
class="column-5">26.00</td><td
class="column-6">26.00</td><td
class="column-7">27.00</td></tr><tr
class="row-69 odd"><td
class="column-1">select_key2_return_key</td><td
class="column-2">25.00</td><td
class="column-3">24.00</td><td
class="column-4">25.00</td><td
class="column-5">25.00</td><td
class="column-6">25.00</td><td
class="column-7">25.00</td></tr><tr
class="row-70 even"><td
class="column-1">select_key2_return_prim</td><td
class="column-2">26.00</td><td
class="column-3">26.00</td><td
class="column-4">26.00</td><td
class="column-5">26.00</td><td
class="column-6">26.00</td><td
class="column-7">25.00</td></tr><tr
class="row-71 odd"><td
class="column-1">select_key_prefix</td><td
class="column-2">27.00</td><td
class="column-3">27.00</td><td
class="column-4">27.00</td><td
class="column-5">27.00</td><td
class="column-6">26.00</td><td
class="column-7">26.00</td></tr><tr
class="row-72 even"><td
class="column-1">select_key_prefix_join</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">2.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-73 odd"><td
class="column-1">select_key_return_key</td><td
class="column-2">24.00</td><td
class="column-3">24.00</td><td
class="column-4">24.00</td><td
class="column-5">24.00</td><td
class="column-6">25.00</td><td
class="column-7">24.00</td></tr><tr
class="row-74 even"><td
class="column-1">select_many_fields</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">2.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-75 odd"><td
class="column-1">select_range</td><td
class="column-2">3.00</td><td
class="column-3">2.00</td><td
class="column-4">2.00</td><td
class="column-5">2.00</td><td
class="column-6">3.00</td><td
class="column-7">2.00</td></tr><tr
class="row-76 even"><td
class="column-1">select_range_key2</td><td
class="column-2">0.00</td><td
class="column-3">1.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">2.00</td></tr><tr
class="row-77 odd"><td
class="column-1">select_range_prefix</td><td
class="column-2">2.00</td><td
class="column-3">2.00</td><td
class="column-4">1.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">2.00</td></tr><tr
class="row-78 even"><td
class="column-1">select_simple</td><td
class="column-2">3.00</td><td
class="column-3">3.00</td><td
class="column-4">3.00</td><td
class="column-5">3.00</td><td
class="column-6">3.00</td><td
class="column-7">3.00</td></tr><tr
class="row-79 odd"><td
class="column-1">select_simple_cache</td><td
class="column-2">3.00</td><td
class="column-3">3.00</td><td
class="column-4">3.00</td><td
class="column-5">3.00</td><td
class="column-6">3.00</td><td
class="column-7">3.00</td></tr><tr
class="row-80 even"><td
class="column-1">select_simple_join</td><td
class="column-2">0.00</td><td
class="column-3">0.00</td><td
class="column-4">0.00</td><td
class="column-5">0.00</td><td
class="column-6">0.00</td><td
class="column-7">0.00</td></tr><tr
class="row-81 odd"><td
class="column-1">update_big</td><td
class="column-2">40.00</td><td
class="column-3">4.00</td><td
class="column-4">4.00</td><td
class="column-5">5.00</td><td
class="column-6">4.00</td><td
class="column-7">5.00</td></tr><tr
class="row-82 even"><td
class="column-1">update_of_key</td><td
class="column-2">4.00</td><td
class="column-3">2.00</td><td
class="column-4">3.00</td><td
class="column-5">5.00</td><td
class="column-6">3.00</td><td
class="column-7">3.00</td></tr><tr
class="row-83 odd"><td
class="column-1">update_of_key_big</td><td
class="column-2">7.00</td><td
class="column-3">4.00</td><td
class="column-4">5.00</td><td
class="column-5">7.00</td><td
class="column-6">3.00</td><td
class="column-7">4.00</td></tr><tr
class="row-84 even"><td
class="column-1">update_of_primary_key_many_keys</td><td
class="column-2">7.00</td><td
class="column-3">3.00</td><td
class="column-4">5.00</td><td
class="column-5">24.00</td><td
class="column-6">8.00</td><td
class="column-7">4.00</td></tr><tr
class="row-85 odd"><td
class="column-1">update_with_key</td><td
class="column-2">16.00</td><td
class="column-3">17.00</td><td
class="column-4">18.00</td><td
class="column-5">14.00</td><td
class="column-6">18.00</td><td
class="column-7">18.00</td></tr><tr
class="row-86 even"><td
class="column-1">update_with_key_prefix</td><td
class="column-2">6.00</td><td
class="column-3">6.00</td><td
class="column-4">6.00</td><td
class="column-5">7.00</td><td
class="column-6">6.00</td><td
class="column-7">6.00</td></tr><tr
class="row-87 odd"><td
class="column-1">wisc_benchmark</td><td
class="column-2">1.00</td><td
class="column-3">1.00</td><td
class="column-4">0.00</td><td
class="column-5">1.00</td><td
class="column-6">1.00</td><td
class="column-7">1.00</td></tr><tr
class="row-88 even"><td
class="column-1">TOTAIS - Menor é melhor. Less is better</td><td
class="column-2">6076.00</td><td
class="column-3">2186.00</td><td
class="column-4">1978.00</td><td
class="column-5">1088.00</td><td
class="column-6">862.00</td><td
class="column-7">840.00</td></tr></tbody></table><p>Após os teste, é penosamente claro que o btrfs não está minimamente preparado para ser utilizado em ambientes onde a principal aplicação seja a base de dados MySQL. Não deixa de ser um facto curioso, pois um dos pontos de propaganda por parte dos programadores é o suporte para software de base de dados.</p><p>Numa outra perspectiva, pode também ser que o MySQL ainda não esteja preparado para tirar partido das potencialidades oferecidas pelo btrfs, nomeadamente o Direct I/O que permite acesso directo ao sistema de ficheiros sem ter de utilizar as caches do sistema operativo, ficando a gestão de memória a cargo da base de dados. Teoricamente, isto será uma mais valia em termos de optimização pois irá permitir uma gestão muito mais especializada dos subsistemas de armazenamento.</p><p>Por enquanto, as melhores opções para MySQL continuam a ser o JFS e o ReiserFS.</p><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=666</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Android &#8211; Como desligar o bloqueio de Ecrân imposto pelo Exchange</title><link>http://www.infotuga.com/?p=661</link> <comments>http://www.infotuga.com/?p=661#comments</comments> <pubDate>Thu, 29 Jul 2010 13:40:17 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Android]]></category> <category><![CDATA[Dicas]]></category> <category><![CDATA[disable]]></category> <category><![CDATA[droid]]></category> <category><![CDATA[lock]]></category> <category><![CDATA[policy]]></category> <category><![CDATA[screen]]></category> <category><![CDATA[security]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=661</guid> <description><![CDATA[Com a actualização do Android 2.1, veio também o suporte completo para o ActiveSync do Microsoft Exchange. As vantagens são muitas, nomeadamente o suporte para politicas de segurança ditadas pelo servidor. No entanto, existe uma politica que têm causado muitas dores de cabeça aos utilizadores &#8211; o bloqueio do ecrân automático e a obrigatoriedade de [...]]]></description> <content:encoded><![CDATA[<p>Com a actualização do Android 2.1, veio também o suporte completo para o ActiveSync do Microsoft Exchange. As vantagens são muitas, nomeadamente o suporte para politicas de segurança ditadas pelo servidor. No entanto, existe uma politica que têm causado muitas dores de cabeça aos utilizadores &#8211; o bloqueio do ecrân automático e a obrigatoriedade de utilizar palavra passe para desbloquear. Embora seja uma medida perfeitamente razoável do ponto de vista da segurança, a realidade é que causa muito incómodo e tem até levado a que alguns utilizadores prescindam das funcionalidades oferecidas pelo Exchange.</p><p><span
id="more-661"></span></p><p>Uma solução é alterar as políticas de segurança do Exchange, mas raramente os administradores de sistemas irão querer diminuir o nível de segurança para facilitar a vida aos utilizadores, outra solução é utilizar uma app para o Android que permite desligar esta política de segurança:</p><p><a
href="http://forum.xda-developers.com/showthread.php?t=655061" target="_blank">LockPicker</a> ( <a
href="market://search/?q=pname:nl.fotoniq.android.lockpicker" target="_blank">Market Link</a> )</p><p>Para utilizar, basta criar uma conta no exchange, correr a app e reiniciar.</p><p>Nota: testado apenas no HTC sense &#8211; os resultados podem variar</p><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=661</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Como desligar as politicas de segurança do Exchange no Windows Mobile</title><link>http://www.infotuga.com/?p=656</link> <comments>http://www.infotuga.com/?p=656#comments</comments> <pubDate>Wed, 28 Jul 2010 22:25:39 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Dicas]]></category> <category><![CDATA[Windows Mobile]]></category> <category><![CDATA[exchange]]></category> <category><![CDATA[Pocket PC]]></category> <category><![CDATA[policy]]></category> <category><![CDATA[registry]]></category> <category><![CDATA[smartphone]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=656</guid> <description><![CDATA[O direct push oferece muitas vantagens, mas por outro lado, também força a utilizar as politicas de segurança do Exchange que nem sempre são muito práticas. Nada mais ingrato do que quando o administrador obriga a utilizar palavras-passe alfanuméricas com um mínimo de 8 caracteres num dispositivo móvel e define bloquear o ecrân ao fim [...]]]></description> <content:encoded><![CDATA[<p>O direct push oferece muitas vantagens, mas por outro lado, também força a utilizar as politicas de segurança do Exchange que nem sempre são muito práticas. Nada mais ingrato do que quando o administrador obriga a utilizar palavras-passe alfanuméricas com um mínimo de 8 caracteres num dispositivo móvel e define bloquear o ecrân ao fim de 1 minuto.</p><p>No Windows Mobile existem algumas definições acessíveis através do registo que permitem desligar o uso ou alterar as politicas de segurança do exchange.</p><p><span
id="more-656"></span></p><p>Para quem não quiser mexer no registo, existe um pequeno programa que ajusta de forma muito fácil as definições &#8211; <a
href="http://blogs.microsoft.co.il/files/folders/tamir/entry46249.aspx" target="_blank">Exchange policy patcher</a></p><p><strong>Ligar ou desligar a politica de segurança do Exchange:</strong></p><p>HKLM\Security\Policies\00001023</p><p>Ligado &#8211; 0</p><p>Desligado &#8211; 1</p><p><strong>Contador de Inactividade:</strong></p><p>HKLM\Comm\Security\Policy\LASSD\AE\<br
/> {50C13377-C66D-400C-889E-C316FC4AB374}\AEFrequencyType</p><p>Ligado &#8211; 1</p><p>Desligado &#8211; 0</p><p><strong>Tempo do contador de inactividade:</strong></p><p>HKLM\Comm\Security\Policy\LASSD\AE\<br
/> {50C13377-C66D-400C-889E-C316FC4AB374}\AEFrequencyValue</p><p>Inserir ou o modificar o valor em minutos.</p><p><strong>Número minimo de caracteres da password:</strong></p><p>HKLM\Comm\Security\Policy\LASSD\LAP\<br
/> lap_pw\MinimumPasswordLength</p><p><strong>Complexidade da senha:</strong></p><p>HKLM\Comm\Security\Policy\LASSD\LAP\<br
/> lap_pw\PasswordComplexity</p><p>Alfanumérica &#8211; 0</p><p>PIN (numérica) &#8211; 1</p><p>Sem restrições &#8211; 2</p><p><strong>Número de tentativas antes de apagar a informação:</strong></p><p>HKLM\Comm\Security\Policy\LASSD\DeviceWipeThreshold</p><p>Desligado &#8211; -1 ( menos um ) qualquer outro valor positivo é o número de tentativas</p><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=656</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Como recuperar a password de root no MySQL</title><link>http://www.infotuga.com/?p=652</link> <comments>http://www.infotuga.com/?p=652#comments</comments> <pubDate>Tue, 27 Jul 2010 00:30:19 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Guias]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[descobrir]]></category> <category><![CDATA[entrar]]></category> <category><![CDATA[new]]></category> <category><![CDATA[recover]]></category> <category><![CDATA[root]]></category> <category><![CDATA[sem senha]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=652</guid> <description><![CDATA[Uma senha esquecida ou perdida no MySQL não significa o fim do mundo. Seguindo os seguintes passos, é possivel recuperar a palavra-passe do administrador (root).
Os seguintes comandos são os utilizados em Ubuntu Server, para outras distribuições, é necessário utilizar os comandos apropriados sempre que não se esteja a operar na shell do MySQL ( mysql&#62; [...]]]></description> <content:encoded><![CDATA[<p>Uma senha esquecida ou perdida no MySQL não significa o fim do mundo. Seguindo os seguintes passos, é possivel recuperar a palavra-passe do administrador (root).</p><p>Os seguintes comandos são os utilizados em Ubuntu Server, para outras distribuições, é necessário utilizar os comandos apropriados sempre que não se esteja a operar na shell do MySQL ( mysql&gt; ).</p><p><span
id="more-652"></span></p><p>1 &#8211; Parar o serviço do MySQL</p><blockquote><p>#: /etc/init.d/mysql stop</p></blockquote><p>2 &#8211; Iniciar o MySQL em modo de segurança</p><blockquote><p>#: mysqld_safe &#8211;skip-grant-tables &amp;</p></blockquote><p>3 &#8211; Ligar ao MySQL com a conta root</p><blockquote><p>#: mysql -u root</p></blockquote><p>4 &#8211; Criar uma nova senha de root para o MySQL</p><blockquote><p>mysql&gt; use mysql;<br
/> mysql&gt; update user set password=PASSWORD(&#8220;NOVA_SENHA&#8221;) where user=&#8217;root&#8217;;<br
/> mysql&gt; flush privileges;<br
/> mysql&gt; quit</p></blockquote><p>5 &#8211; Parar novamente o serviço do MySQL</p><blockquote><p>#: /etc/init.d/mysql stop</p></blockquote><p>6 &#8211; Iniciar o MySQL em modo normal</p><blockquote><p>#: /etc/init.d/mysql start</p></blockquote><p>Agora já deve ser possível ligar ao MySQL utilizando a nova palavra passe</p><blockquote><p>#: mysql -u root -p</p></blockquote><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=652</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Como instalar e configurar um servidor de SVN</title><link>http://www.infotuga.com/?p=645</link> <comments>http://www.infotuga.com/?p=645#comments</comments> <pubDate>Sun, 25 Jul 2010 21:36:57 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Guias]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[colaboração]]></category> <category><![CDATA[colaboration]]></category> <category><![CDATA[install]]></category> <category><![CDATA[subversion]]></category> <category><![CDATA[versioning]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=645</guid> <description><![CDATA[Um servidor SVN ( Apache SubVersion ) têm a função de manter e organizar ficheiros e o seu histórico. Aplica-se principalmente na manutenção de código fonte, páginas web ou documentação.
Neste guia irá ser exemplificada a instalação de um servidor de SVN utilizando a extensão WebDav que irá permitir que os utilizadores SVN sejam independentes dos [...]]]></description> <content:encoded><![CDATA[<p>Um servidor SVN ( Apache SubVersion ) têm a função de manter e organizar ficheiros e o seu histórico. Aplica-se principalmente na manutenção de código fonte, páginas web ou documentação.</p><p>Neste guia irá ser exemplificada a instalação de um servidor de SVN utilizando a extensão WebDav que irá permitir que os utilizadores SVN sejam independentes dos utilizadores de sistema sendo a gestão feita a partir de um ficheiro de configuração webdav.</p><p><span
id="more-645"></span></p><p>Como já é habitual, será utilizada a última versão de Ubuntu Server para exemplificar a instalação. O processo deverá ser idêntico em qualquer outra distribuição baseada em Debian.</p><p>1 &#8211; Transferir e instalar os pacotes do SubVersion e extensão para o Apache</p><blockquote><p>#: sudo apt-get install subversion libapache2-svn</p></blockquote><p>2 &#8211; Criar um directório para os projectos SVN</p><blockquote><p>#: sudo mkdir /var/svn</p></blockquote><p>3 &#8211; Agora é preciso criar o repositório para um projecto</p><blockquote><p>#: svnadmin create &#8211;fs-type fsfs /var/svn/projectoexemplo</p></blockquote><p>4 &#8211; Criar um grupo para os utilizadores do repositório e definir as permissões de utilização</p><blockquote><p>#: sudo groupadd svnusers</p><p>#: chown -R www-data:svnusers /var/svn/*</p><p>#:chmod -R 770 /var/svn/*</p></blockquote><p>5 &#8211; Criar um ficheiro de senhas para o WebDav, para cada novo utilizador será pedida uma nova senha.</p><blockquote><p>#: htpasswd2 -c /etc/apache2/dav_svn.passwd utilizador1</p></blockquote><p>Para os utilizadores seguintes já não será preciso usar a opção -c ( create )</p><blockquote><p>#: htpasswd2 /etc/apache2/dav_svn.passwd utilizador2</p></blockquote><p>6 &#8211; Para aceder a cada um dos repositórios, é necessário criar uma entrada no ficheiro dav_svn.conf localizado no directório /etc/apache2/mods-available/</p><blockquote><p>#: vi /etc/apache2/mods-available/dav_svn.conf</p></blockquote><p>Em baixo, está uma configuração exemplo que deve ser adaptada a cada instalação e criada uma nova entrada para cada novo repositório:</p><blockquote><p>&lt;Location /projecto1&gt;</p><p>DAV svn</p><p>SVNPath /var/svn/projecto1</p><p>AuthType Basic</p><p>AuthName &#8220;repositorio do projecto&#8221;</p><p>AuthUserFile /etc/apache2/dav_svn.passwd</p><p>Require valid-user</p><p>SSLRequireSSL</p><p>&lt;/Location&gt;</p></blockquote><p>Após cada nova entrada no ficheiro dav_svn.conf é necessário reiniciar o Apache</p><blockquote><p>#: /etc/init.d/apache2 restart</p></blockquote><p>Para confirmar que tudo está a funcionar, basta verificar o projecto1 via https</p><blockquote><p>svn co https://www.exemplo.com/projecto1 /var/www/projecto1</p></blockquote><p><strong>Nota:</strong></p><p>Caso se pretenda utilizar o repositório via SSH, é preciso adicionar os utilizadores ao sistema e ao grupo de utilizadores de SVN:</p><blockquote><p>#: useradd -G svnusers utilizador1</p></blockquote><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=645</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Calculadora / contador de dias em javascript</title><link>http://www.infotuga.com/?p=625</link> <comments>http://www.infotuga.com/?p=625#comments</comments> <pubDate>Fri, 23 Jul 2010 17:56:32 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Java]]></category> <category><![CDATA[calculator]]></category> <category><![CDATA[counter]]></category> <category><![CDATA[day]]></category> <category><![CDATA[month]]></category> <category><![CDATA[week]]></category> <category><![CDATA[year]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=625</guid> <description><![CDATA[Está disponível o código fonte em javascript para a calculadora de diferença entre duas datas / contador de dias.
O caso de utilização no InfoTuga pode ser encontrado aqui. Serve para calcular o número de dias e semanas de gravidez.
Para colocar a calculadora a funcionar basta copiar e colar o seguinte código num ficheiro .html &#8211; [...]]]></description> <content:encoded><![CDATA[<p>Está disponível o código fonte em javascript para a calculadora de diferença entre duas datas / contador de dias.</p><p>O caso de utilização no InfoTuga pode ser encontrado <a
href="http://saudebemestar.infotuga.com/calculador/" target="_blank">aqui</a>. Serve para calcular o número de dias e semanas de gravidez.</p><p>Para colocar a calculadora a funcionar basta copiar e colar o seguinte código num ficheiro .html &#8211; calculadora.html, por exemplo.</p><p><span
id="more-625"></span></p><div
id="_mcePaste"><pre>
<div id="_mcePaste">&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//PT"&gt;</div>
<div id="_mcePaste">&lt;HTML&gt;</div>
<div id="_mcePaste">&lt;HEAD&gt;</div>
<div id="_mcePaste">&lt;TITLE&gt;Contador de Dias - Quantos dias ou semanas entre duas datas&lt;/TITLE&gt;</div>
<div id="_mcePaste">&lt;META NAME="GENERATOR" CONTENT="Mozilla/3.0b5aGold (Win16; I) [Netscape]"&gt;</div>
<div id="_mcePaste">&lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"&gt;</div>
<div id="_mcePaste">&lt;META name="title"content="Contador de dias - quantos dias ou semanas entre duas datas"&gt;</div>
<div id="_mcePaste">&lt;META name="keywords" content="calendário, contador, dias, semanas, contar, calculador, calcular"&gt;</div>
<div id="_mcePaste">&lt;META name="description" content="Contador de Dias - Quantos dias ou semanas entre duas datas - Calculadora Online"&gt;</div>
<div id="_mcePaste">&lt;SCRIPT language=JavaScript&gt;</div>
<div id="_mcePaste">&lt;!--</div>
<div id="_mcePaste">function Initialize() {</div>
<div id="_mcePaste">  SetToday(document.ThisForm);</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">function SetToday(form) {</div>
<div id="_mcePaste">  var now = new Date();</div>
<div id="_mcePaste">  var day = now.getDate();</div>
<div id="_mcePaste">  var month = now.getMonth()+1;</div>
<div id="_mcePaste">  var year = now.getFullYear();</div>
<div id="_mcePaste">  form.MonthList1.selectedIndex = month-1;</div>
<div id="_mcePaste">  form.MonthList2.selectedIndex = month-1;</div>
<div id="_mcePaste">  form.DayList1.selectedIndex = day-1;</div>
<div id="_mcePaste">  form.DayList2.selectedIndex = day-1;</div>
<div id="_mcePaste">  form.YearBox1.value = " " + year;</div>
<div id="_mcePaste">  form.YearBox2.value = " " + year;</div>
<div id="_mcePaste">  form.ADBC1.selectedIndex = 0;</div>
<div id="_mcePaste">  form.ADBC2.selectedIndex = 0;</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">function compute(form) {</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var y2a = parseFloat(stripBad(form.YearBox1.value))</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var y3a = y2a</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>if ((form.YearBox1.value == "")||(y2a &lt; 1)) {</div>
<div id="_mcePaste">    alert("Digite um número positivo para\n\n De: [Ano],\n\n e selecione A.D.</div>
<div id="_mcePaste">          ou B.C.\n\n(Não existiu ano 0.)\n\nNão deixe o ano por preencher.")</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var y2b = parseFloat(stripBad(form.YearBox2.value))</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var y3b = y2b</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>if ((form.YearBox2.value == "")||(y2b &lt; 1)) {</div>
<div id="_mcePaste">    alert("Digite um número positivo para\n\n De: [Ano],\n\n e selecione A.D.</div>
<div id="_mcePaste">          ou B.C.\n\n(Não existiu ano 0.)\n\nNão deixe o ano por preencher.")</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste">   var m2a = parseFloat(form.MonthList1.selectedIndex) + 1</div>
<div id="_mcePaste">   var d2a = parseFloat(form.DayList1.selectedIndex) + 1</div>
<div id="_mcePaste">   var m2b = parseFloat(form.MonthList2.selectedIndex) + 1</div>
<div id="_mcePaste">   var d2b = parseFloat(form.DayList2.selectedIndex) + 1</div>
<div id="_mcePaste">   var nday = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);</div>
<div id="_mcePaste">  if (1 == (m2a-1)) {</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>nday[1] = (0 == y2a % 4) &amp;&amp; (0 != y2a % 100) || (0 == y2a % 400) ? 29 : 28;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste">  if (1 == (m2b-1)) {</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>nday[1] = (0 == y2b % 4) &amp;&amp; (0 != y2b % 100) || (0 == y2b % 400) ? 29 : 28;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>if (d2a &gt; nday[m2a-1]) {</div>
<div id="_mcePaste">   alert("Dia inválido. Verifique o Mês e o Dia") }</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>if (d2b &gt; nday[m2b-1]) {</div>
<div id="_mcePaste">   alert("Dia inválido. Verifique o Mês e o Dia") }</div>
<div id="_mcePaste">   var er3a = parseFloat(form.ADBC1.selectedIndex)</div>
<div id="_mcePaste">    if( er3a == 1 ) {y2a = -y2a + 1;}</div>
<div id="_mcePaste">    var rjd1 = cal_to_jd( y2a, m2a, d2a )</div>
<div id="_mcePaste">   var er3b = parseFloat(form.ADBC2.selectedIndex)</div>
<div id="_mcePaste">    if( er3b == 1 ) {y2b = -y2b + 1;}</div>
<div id="_mcePaste">    var rjd2 = cal_to_jd( y2b, m2b, d2b )</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var dayow = rjd2 - rjd1;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>dayow = Math.abs(dayow);</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var wk2 = dayow % 7</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var wk3 = (dayow - wk2)/7</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>wk3 = comma(wk3);</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>dayow = comma(dayow);</div>
<div id="_mcePaste"> <span style="white-space: pre;">	</span>if (d2a &gt; nday[m2a-1]) {</div>
<div id="_mcePaste">   form.txtResult.value = "Dia inválido. Verifique o dia selecionado"}</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>else if (d2b &gt; nday[m2b-1]) {</div>
<div id="_mcePaste">   form.txtResult.value = "Dia inválido. Verifique o dia selecionado"}</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>else if ((form.YearBox1.value == "")||(y3a &lt; 1)) {</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>   form.txtResult.value="Dia inválido. Verifique o ano selecionado" }</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>else if ((form.YearBox2.value == "")||(y3b &lt; 1)) {</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>   form.txtResult.value="Dia inválido. Verifique o ano selecionado" }</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>else {</div>
<div id="_mcePaste">   form.txtResult.value = "  " + dayow + "  Dias" + "   -- ou --   " + wk3 + "  Semanas e  " + wk2 + "  Dias"}</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">function stripBad(string) {</div>
<div id="_mcePaste">    for (var i=0, output='', valid="eE-0123456789."; i&lt;string.length; i++)</div>
<div id="_mcePaste">       if (valid.indexOf(string.charAt(i)) != -1)</div>
<div id="_mcePaste">          output += string.charAt(i)</div>
<div id="_mcePaste">    return output;</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">function comma(num) {</div>
<div id="_mcePaste"> var n = Math.floor(num);</div>
<div id="_mcePaste"> var myNum = num + "";</div>
<div id="_mcePaste"> var myDec = ""</div>
<div id="_mcePaste"> if (myNum.indexOf('.',0) &gt; -1){</div>
<div id="_mcePaste">  myDec = myNum.substring(myNum.indexOf('.',0),myNum.length);</div>
<div id="_mcePaste"> }</div>
<div id="_mcePaste">  var arr=new Array('0'), i=0;</div>
<div id="_mcePaste">  while (n&gt;0)</div>
<div id="_mcePaste">    {arr[i]=''+n%1000; n=Math.floor(n/1000); i++;}</div>
<div id="_mcePaste">  arr=arr.reverse();</div>
<div id="_mcePaste">  for (var i in arr) if (i&gt;0)</div>
<div id="_mcePaste">    while (arr[i].length&lt;3) arr[i]='0'+arr[i];</div>
<div id="_mcePaste">  return arr.join() + myDec;</div>
<div id="_mcePaste">}</div>
<div id="_mcePaste">function cal_to_jd(  y2, m2, d2  ) {</div>
<div id="_mcePaste">   var j1=0;</div>
<div id="_mcePaste">   var jy=0;</div>
<div id="_mcePaste">   var ja=0;</div>
<div id="_mcePaste">   var jm=0;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>if( m2 &gt; 2 ) {</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>jy = y2;</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>jm = m2 + 1;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>} else {</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>jy = y2 - 1;</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>jm = m2 + 13;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var intgr = Math.floor( Math.floor(365.25*jy) + Math.floor(30.6001*jm) + d2 + 1720995 );</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>var intgr2 = intgr;</div>
<div id="_mcePaste">    var gregcal = 15 + 31*( 10 + 12*1582 );</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>if( d2 + 31*(m2 + 12*y2) &gt;= gregcal ) {</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>ja = Math.floor(0.01*jy);</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>intgr2 += 2 - ja + Math.floor(0.25*ja);</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>rjd = intgr2;</div>
<div id="_mcePaste">    return rjd;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>}</div>
<div id="_mcePaste">  --&gt;</div>
<div id="_mcePaste">&lt;/SCRIPT&gt;</div>
<div id="_mcePaste">&lt;/HEAD&gt;</div>
<div id="_mcePaste">&lt;CENTER&gt;</div>
<div id="_mcePaste">&lt;CENTER&gt;</div>
<div id="_mcePaste">&lt;TABLE cellSpacing=0 cellPadding=5 width=350 border=0&gt;</div>
<div id="_mcePaste">  &lt;TBODY&gt;</div>
<div id="_mcePaste">  &lt;FORM name=ThisForm&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;B&gt;De:&lt;/B&gt;&amp;nbsp;&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&amp;nbsp;Mês&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;Dia&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&amp;nbsp;Ano&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&amp;nbsp;Era&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;/TR&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;SELECT compute(document.ThisForm) class=debu3 name=MonthList1&gt;</div>
<div id="_mcePaste">&lt;OPTION selected&gt;Janeiro</div>
<div id="_mcePaste">&lt;OPTION&gt;Fevereiro</div>
<div id="_mcePaste">&lt;OPTION&gt;Março</div>
<div id="_mcePaste">&lt;OPTION&gt;Abril</div>
<div id="_mcePaste">&lt;OPTION&gt;Maio</div>
<div id="_mcePaste">&lt;OPTION&gt;Junho</div>
<div id="_mcePaste">&lt;OPTION&gt;Julho</div>
<div id="_mcePaste">&lt;OPTION&gt;Agosto</div>
<div id="_mcePaste">&lt;OPTION&gt;Septembro</div>
<div id="_mcePaste">&lt;OPTION&gt;Outubro</div>
<div id="_mcePaste">&lt;OPTION&gt;Novembro</div>
<div id="_mcePaste">&lt;OPTION&gt;Dezembro&lt;/OPTION&gt;&lt;/SELECT&gt;&lt;/TD&gt;</div>
<div id="_mcePaste">&lt;TD&gt;&lt;SELECT compute(document.ThisForm) class=debu3 name=DayList1&gt;</div>
<div id="_mcePaste">&lt;OPTION selected&gt;&amp;nbsp;&amp;nbsp;1</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;2</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;3</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;4</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;5</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;6</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;7</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;8</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;9</div>
<div id="_mcePaste">&lt;OPTION&gt;10</div>
<div id="_mcePaste">&lt;OPTION&gt;11</div>
<div id="_mcePaste">&lt;OPTION&gt;12</div>
<div id="_mcePaste">&lt;OPTION&gt;13</div>
<div id="_mcePaste">&lt;OPTION&gt;14</div>
<div id="_mcePaste">&lt;OPTION&gt;15</div>
<div id="_mcePaste">&lt;OPTION&gt;16</div>
<div id="_mcePaste">&lt;OPTION&gt;17</div>
<div id="_mcePaste">&lt;OPTION&gt;18</div>
<div id="_mcePaste">&lt;OPTION&gt;19</div>
<div id="_mcePaste">&lt;OPTION&gt;20</div>
<div id="_mcePaste">&lt;OPTION&gt;21</div>
<div id="_mcePaste">&lt;OPTION&gt;22</div>
<div id="_mcePaste">&lt;OPTION&gt;23</div>
<div id="_mcePaste">&lt;OPTION&gt;24</div>
<div id="_mcePaste">&lt;OPTION&gt;25</div>
<div id="_mcePaste">&lt;OPTION&gt;26</div>
<div id="_mcePaste">&lt;OPTION&gt;27</div>
<div id="_mcePaste">&lt;OPTION&gt;28</div>
<div id="_mcePaste">&lt;OPTION&gt;29</div>
<div id="_mcePaste">&lt;OPTION&gt;30</div>
<div id="_mcePaste">&lt;OPTION&gt;31</div>
<div id="_mcePaste">&lt;/OPTION&gt;&lt;/SELECT&gt;</div>
<div id="_mcePaste">&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&lt;INPUT compute(document.ThisForm) size=4 class=debu3 name=YearBox1&gt;&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&lt;SELECT compute(document.ThisForm) class=debu3 name=ADBC1&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>&lt;OPTION selected&gt;A.D.&lt;OPTION&gt;B.C.&lt;/OPTION&gt;&lt;/SELECT&gt;&lt;/TD&gt;&lt;/TR&gt;</div>
<div id="_mcePaste">&lt;/TBODY&gt;&lt;/TABLE&gt;</div>
<div id="_mcePaste">&lt;TABLE cellSpacing=0 cellPadding=5 width=350 border=0&gt;</div>
<div id="_mcePaste">  &lt;TBODY&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;B&gt;Até:&amp;nbsp;&lt;/B&gt;&amp;nbsp;&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&amp;nbsp;Mês&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;Dia&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&amp;nbsp;Ano&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&amp;nbsp;Era&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;/TR&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&lt;SELECT compute(document.ThisForm) class=debu3 name=MonthList2&gt;</div>
<div id="_mcePaste">&lt;OPTION selected&gt;Janeiro</div>
<div id="_mcePaste">&lt;OPTION&gt;Fevereiro</div>
<div id="_mcePaste">&lt;OPTION&gt;Março</div>
<div id="_mcePaste">&lt;OPTION&gt;Abril</div>
<div id="_mcePaste">&lt;OPTION&gt;Maio</div>
<div id="_mcePaste">&lt;OPTION&gt;Junho</div>
<div id="_mcePaste">&lt;OPTION&gt;Julho</div>
<div id="_mcePaste">&lt;OPTION&gt;Agosto</div>
<div id="_mcePaste">&lt;OPTION&gt;Setembro</div>
<div id="_mcePaste">&lt;OPTION&gt;Outubro</div>
<div id="_mcePaste">&lt;OPTION&gt;Novembro</div>
<div id="_mcePaste">&lt;OPTION&gt;Dezembro</div>
<div id="_mcePaste">&lt;/OPTION&gt;&lt;/SELECT&gt;&lt;/TD&gt;</div>
<div id="_mcePaste">&lt;TD&gt;&lt;SELECT compute(document.ThisForm) class=debu3 name=DayList2&gt;</div>
<div id="_mcePaste">&lt;OPTION selected&gt;&amp;nbsp;&amp;nbsp;1</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;2</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;3</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;4</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;5</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;6</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;7</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;8</div>
<div id="_mcePaste">&lt;OPTION&gt;&amp;nbsp;&amp;nbsp;9</div>
<div id="_mcePaste">&lt;OPTION&gt;10</div>
<div id="_mcePaste">&lt;OPTION&gt;11</div>
<div id="_mcePaste">&lt;OPTION&gt;12</div>
<div id="_mcePaste">&lt;OPTION&gt;13</div>
<div id="_mcePaste">&lt;OPTION&gt;14</div>
<div id="_mcePaste">&lt;OPTION&gt;15</div>
<div id="_mcePaste">&lt;OPTION&gt;16</div>
<div id="_mcePaste">&lt;OPTION&gt;17</div>
<div id="_mcePaste">&lt;OPTION&gt;18</div>
<div id="_mcePaste">&lt;OPTION&gt;19</div>
<div id="_mcePaste">&lt;OPTION&gt;20</div>
<div id="_mcePaste">&lt;OPTION&gt;21</div>
<div id="_mcePaste">&lt;OPTION&gt;22</div>
<div id="_mcePaste">&lt;OPTION&gt;23</div>
<div id="_mcePaste">&lt;OPTION&gt;24</div>
<div id="_mcePaste">&lt;OPTION&gt;25</div>
<div id="_mcePaste">&lt;OPTION&gt;26</div>
<div id="_mcePaste">&lt;OPTION&gt;27</div>
<div id="_mcePaste">&lt;OPTION&gt;28</div>
<div id="_mcePaste">&lt;OPTION&gt;29</div>
<div id="_mcePaste">&lt;OPTION&gt;30</div>
<div id="_mcePaste">&lt;OPTION&gt;31</div>
<div id="_mcePaste">&lt;/OPTION&gt;&lt;/SELECT&gt;</div>
<div id="_mcePaste">&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&lt;INPUT compute(document.ThisForm) size=4 class=debu3 name=YearBox2&gt;&lt;/TD&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">	</span>&lt;TD&gt;&lt;SELECT compute(document.ThisForm) class=debu3 name=ADBC2&gt;</div>
<div id="_mcePaste"><span style="white-space: pre;">		</span>&lt;OPTION selected&gt;A.D.&lt;OPTION&gt;B.C.&lt;/OPTION&gt;&lt;/SELECT&gt;&lt;/TD&gt;&lt;/TR&gt;</div>
<div id="_mcePaste">&lt;/TBODY&gt;&lt;/TABLE&gt;</div>
<div id="_mcePaste">&lt;BR&gt;</div>
<div id="_mcePaste">&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;</div>
<div id="_mcePaste">    &lt;TD align=middle&gt;&lt;INPUT onclick=compute(this.form) type=button value="Carregar para Calcular" class="b2t"&gt;</div>
<div id="_mcePaste">    &lt;/TD&gt;  &lt;TD&gt;&lt;INPUT TYPE="text" NAME="txtResult" class=debu3 SIZE=40&gt; &lt;/TD&gt;&lt;/TR&gt;</div>
<div id="_mcePaste">&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/FORM&gt;&lt;/CENTER&gt;&lt;BR&gt;&lt;BR&gt;</div>
<div id="_mcePaste">&lt;CENTER&gt;&lt;A HREF="calculadora.html"&gt;&lt;FONT SIZE=4 COLOR="#000000"&gt;Reiniciar&lt;/FONT&gt;&lt;/A&gt;&lt;/CENTER&gt;</div>
<div id="_mcePaste">&lt;BR&gt;</div>
<div id="_mcePaste">&lt;/BODY&gt;&lt;/HTML&gt;</div>
</pre></div><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=625</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Como adicionar o gestor de tarefas no HTC Sense 2.5</title><link>http://www.infotuga.com/?p=617</link> <comments>http://www.infotuga.com/?p=617#comments</comments> <pubDate>Sat, 10 Jul 2010 22:18:34 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Dicas]]></category> <category><![CDATA[Pocket PC]]></category> <category><![CDATA[Windows Mobile]]></category> <category><![CDATA[diamond]]></category> <category><![CDATA[diamond 2]]></category> <category><![CDATA[hd]]></category> <category><![CDATA[hd2]]></category> <category><![CDATA[htc]]></category> <category><![CDATA[pro]]></category> <category><![CDATA[task manager]]></category> <category><![CDATA[td]]></category> <category><![CDATA[td2]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=617</guid> <description><![CDATA[Quem utiliza as últimas versões das ROM&#8217;s da HTC que já utilizam shell Manila 2.5 ou Sense 2.5 como é agora intitulada pela HTC, certamente já notou que já não tem o gestor de tarefas no canto superior direito.
Uma forma não muito prática de aceder aos programas em execução é colocar um widget no ecrãn [...]]]></description> <content:encoded><![CDATA[<p>Quem utiliza as últimas versões das ROM&#8217;s da HTC que já utilizam shell Manila 2.5 ou Sense 2.5 como é agora intitulada pela HTC, certamente já notou que já não tem o gestor de tarefas no canto superior direito.</p><p>Uma forma não muito prática de aceder aos programas em execução é colocar um widget no ecrãn &#8220;Hoje&#8221; com um atalho para o gestor do Windows. Este método no entanto, tem dois problemas &#8211; utiliza o espaço que poderia ser usado para outro widget e são precisos muitos clicks para fechar ou mudar de tarefa tornando-se assim pouco amigável.</p><p><span
id="more-617"></span></p><p>Felizmente, alguém do <a
href="http://forum.xda-developers.com/" target="_blank">forum xda-developers</a> adaptou o gestor de tarefas da HTC Sense 2.1 ao Sense 2.5 conseguindo assim devolver uma funcionalidade que tanta falta faz.</p><p>Para instalar, basta transferir o <a
href="http://forum.jayceooi.com/download/file.php?id=39&amp;sid=f73c23047c22c5d62242d2334de26b48" target="_blank">Touch X TaskManager</a>, copiar para o cartão de momória, executar e reiniciar o telemóvel.</p><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=617</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Como desligar o idle timer nos discos da Western Digital</title><link>http://www.infotuga.com/?p=609</link> <comments>http://www.infotuga.com/?p=609#comments</comments> <pubDate>Tue, 06 Jul 2010 10:42:28 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Dicas]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[bevs]]></category> <category><![CDATA[bevt]]></category> <category><![CDATA[disable]]></category> <category><![CDATA[idle timer]]></category> <category><![CDATA[scorpio]]></category> <category><![CDATA[wd]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=609</guid> <description><![CDATA[É sabido que em Linux os discos da Western Digital têm um problema em que estão constantemente a trocar de modo de energia. Isto desgasta muito os mecanismos internos pois as cabeças estão sempre a parquear o que leva a falha prematura.
A solução, é um utilitário da Western Digital ( wdidle3) que permite ajustar ou [...]]]></description> <content:encoded><![CDATA[<p>É sabido que em Linux os discos da Western Digital têm um problema em que estão constantemente a trocar de modo de energia. Isto desgasta muito os mecanismos internos pois as cabeças estão sempre a parquear o que leva a falha prematura.</p><p>A solução, é um utilitário da Western Digital ( <a
href="http://support.wdc.com/product/download.asp?groupid=609&amp;sid=113" target="_blank">wdidle3</a>) que permite ajustar ou desligar o contador interno que &#8220;adormece&#8221; o disco rígido.</p><p>Para o utilizar o utilitário, basta utilizar uma pen usb de arranque formatada com freedos (utilizando o <a
href="http://unetbootin.sourceforge.net/" target="_blank">unetbootin</a>, por exemplo) e corre-lo a partir dai.</p><blockquote><p>a:\wdidle3 /D</p></blockquote><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=609</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>5 Ferramentas de monitorização de sistema para Linux</title><link>http://www.infotuga.com/?p=603</link> <comments>http://www.infotuga.com/?p=603#comments</comments> <pubDate>Sat, 03 Jul 2010 13:43:17 +0000</pubDate> <dc:creator>Rui S. Sousa</dc:creator> <category><![CDATA[Administração]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[ferramentas]]></category> <category><![CDATA[monitoring]]></category> <category><![CDATA[system]]></category> <category><![CDATA[tools]]></category><guid
isPermaLink="false">http://www.infotuga.com/?p=603</guid> <description><![CDATA[A monitorização da performance de servidores é uma tarefa vital. De entre as várias ferramentas disponíveis, destacam-se algumas pela flexibilidade, simplicidade ou capacidade de registo. Segue-se uma lista das mais úteis e com melhor suporte de utilização.1 &#8211; htop
O htop é um visualizador de processos para Linux, é basicamente o conhecido top mas com um [...]]]></description> <content:encoded><![CDATA[<p>A monitorização da performance de servidores é uma tarefa vital. De entre as várias ferramentas disponíveis, destacam-se algumas pela flexibilidade, simplicidade ou capacidade de registo. Segue-se uma lista das mais úteis e com melhor suporte de utilização.</p><p><span
id="more-603"></span></p><p>1 &#8211; <strong>htop</strong></p><p>O htop é um visualizador de processos para Linux, é basicamente o conhecido top mas com um facelift que o torna mais apelativo e mais simples de percepcionar rápidamente a informação que se prentende.</p><p>Fonte: <a
href="http://htop.sourceforge.net/">http://htop.sourceforge.net/</a></p><p>Instalação em Ubuntu:</p><blockquote><p>#: sudo apt-get install htop</p></blockquote><p>2 &#8211; <strong>dstat</strong></p><p>O dstat é um substituto para o vmstat, iostat, netstat e ifstat. O dstat adiciona novas funcionalidades , mais contadores e mais flexibilidade.</p><p>Fonte: <a
href="http://dag.wieers.com/home-made/dstat/">http://dag.wieers.com/home-made/dstat/</a></p><p>Instalação em Ubuntu:</p><blockquote><p>#: sudo apt.get install dstat</p></blockquote><p>3 &#8211; <strong>bmon</strong></p><p>O bmon é monitorizador de utilização da largura de banda com um interface simples e um visualizador em gráfico ASCII.</p><p>Fonte: <a
href="http://freshmeat.net/projects/bmon/">http://freshmeat.net/projects/bmon/</a></p><p>Instalação em Ubuntu:</p><blockquote><p>#: sudo apt-get install bmon</p></blockquote><p>4 &#8211; <strong>iftop</strong></p><p>O iftop, como o nome indica, tem as mesmas funções para a rede assim como o top tem para a utilização de CPU.</p><p>Fonte: <a
href="http://www.ex-parrot.com/pdw/iftop/">http://www.ex-parrot.com/pdw/iftop/</a></p><p>Instalação em Ubuntu:</p><blockquote><p>#: sudo apt-get install iftop</p></blockquote><p>5 &#8211; <strong>iotop</strong></p><p>O iotop permite têm um interface semelhante ao top e permite verificar que processo estão a originar leituras e escritas no disco</p><p>Fonte: <a
href="http://guichaz.free.fr/iotop/">http://guichaz.free.fr/iotop/</a></p><p>Instalação em Ubuntu:</p><p>#: sudo apt-get install iotop</p><p>6 &#8211; <strong>atop</strong></p><p>O atop permite a monitorização e registo de todos os processos em exucução ao já terminados. Em intervalos regulares, regista a utilização de CPU, memória, swap, discos e rede para análise posterior.</p><p>Fonte: <a
href="http://freshmeat.net/projects/atop/">http://freshmeat.net/projects/atop/</a></p><p>Instalação em Ubuntu:</p><blockquote><p>#: sudo apt-get install atop</p></blockquote><div
style='clear:both'></div>]]></content:encoded> <wfw:commentRss>http://www.infotuga.com/?feed=rss2&amp;p=603</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Served from: www.infotuga.com @ 2010-09-11 00:36:03 by W3 Total Cache -->