• 什么是Crossdev[I]
  • sys-devel/crossdev
    Available versions: 0.9.18-r10 ~0.9.19 **99999999
    Installed versions: 0.9.18-r10(03:44:50 PM 11/29/2009)
    Homepage: http://www.gentoo.org/
    Description: Gentoo Cross-toolchain generator

    交叉编译时很多嵌入式开发必须的工具,因为资料太少,遇到的问题又很难解决,所以交叉的开发环境一直让很多程序员头疼。我们就来了解一下gentoo下如何构建交叉编译环境。
    先说说工具链,工具链是用来组建一个系统的工具包集合,因为它们使用输入和输出连接在一起,所以称为链。通常工具链包括以下几部分: Continue reading »

     

    还有一周,公元记年的最后一位又要从0开始了。回首这十年,互联网技术的发展令人震惊。是时候总结以下这十年了,那些改变我们生活的技术和不怎么有用的技术们了。原作者通过邀请O‘Reilly内部的编辑,作者和朋友们,以及一些工业界的人士,连同一些评论和趋势,为我们总结了分别十种十年来最好和最坏的技术,这些技术没有特定的顺序。

    • AJAX–已经很难记起AJAX(Asynchronous JavaScript and XML)诞生之前的生活时什么样子了吧,没关系,我将带你回忆。那是非常枯燥的年代,Web 1.0包含了大量的静态网页,每次点击都需要在web服务器上处理一个轮回,若你需要更多内容,就必须在网页中嵌入JAVA工具,并在心中祈祷用户的浏览器支持它。没有AJAX,我们就不会走到Web2.0,GMail和很多基于云计算的web应用。Flash依然很流行,但是在HTML5将要到来的时候,以前需要Flash或者Silverlight才能运行的RIA(胖互联网应用,Rich Internet Application)现在都能使用AJAX完成了。 Continue reading »
     

    这是gcc maillist中某国际友人 laurent@guerby.net 做的2个小时报告的ppt,报告题目为GCC Toulibre 20091216。最近一直想深入了解gcc,而这个ppt基本包含本博想了解的内容,所以将其翻译并分享到这里。翻译过程中,很多地方可能有错,请大家不吝赐教。原版的ppt见文末。

    • 什么是GCC

    GCC–GNU Compiler Collection,即GNU 编译器集合。GCC即可作为本地编译器也能作为交叉编译器,它支持很多高级语言和多个编译和目标平台。GCC的网址 http://gcc.gnu.org.它是FSF基金会版权所有的自由软件. Continue reading »

     

    不知不觉,一个多月的时间,Fred Chow的讲义就被翻译完了。感谢那些奉献代码的人,在编译器优化上所做的努力和探索永没有止境。

    感谢忍住我蹩脚的英语和汉语,看了这些翻译的朋友们。在这个翻译的过程中,深深感到自己的水平很不足,很多翻译别说雅和达,连信这个简单的要求都很难达到。争取将这些资料进一步的完善,能够给更多的人一个可靠的参考。希望大家多提意见和建议.

    单就我个人,还是在翻译的过程中,学到了很多,原先都是单纯的看ppt,但是发现那样的话,印象不顾深刻,所以就决定一点点的翻译。自这个博客创建以来,一直希望能将这里搞成编译爱好者们喜欢的网站,呵呵我将继续努力。
    Fred Chow是Open64的几个元老级人物之一,高屋建瓴,统观全局的讲述,让我在翻译的过程中很是佩服,只有在这样的积累下,才能讲出这么详实概括的课程。 Continue reading »

     

    此文是Fred Chow在德拉华大学所讲open64课程讲义的翻译,转载请注明出处 http://www.lingcc.com
    Fred Chow 原版讲义见最后一页

    • 软件开发指南

    使用内部选项来开关每个优化–测试正常后的优化选项默认打开.尽量按照模块化原理开发,相关的模块定义尽量本地化。#ifdef Is_True_On宏来标记来断言和确认的使用。通过断言,确认程序和DevWarns协助debug。虽然包含debug信息的编译器速度慢很多,但是可以尽早的发现错误。

    • Debug辅助工具

    四类:抽取某个阶段内和不同阶段间的程序代码(使用选项 -tr???);抽取某个阶段内或不同阶段间的符号表(使用选项 -ts???);分析/优化过程中方便跟踪的工具(使用选项 -tt???);提供能在调试器中调用的打印程序。

    • 存储管理

    使用存储池机制(commom/util/memory.c)代替malloc/free.提供任意数量的独立操作的存储池,有类似栈的操作,pop是释放内存的唯一方式。使用基于临时特性的存储池–永久的、PU级的、阶段级的和基本块级的。 Continue reading »

     

    现在自己可谓hostmoster和bluehost都体验过的,有信心说些评价给各位想在国外空间建博的朋友。我现在的blog建在bluehost上。hostmoster和bluehost我各有半个月的使用记录。hostmonster从09年11月18-12月3日。bluehost从09年12月02日到现在。
    这两家的cpanel没有任何区别,所有的功能都用着非常顺手。如果还没有购买过主机的朋友,想买,我很推荐这两家。要说对于个人建站哪个最好,我推荐bluehost。理由如下:
    1,功能方便,稳定。我测试了一下,我域名所绑定的主机上有700域名共享IP,可以使用这个工具查询http://www.my-ip-neighbors.com/index.php。目前还没有被封的情况。CPanel上的功能基本是网站维护所需的所有功能。
    2,价格相对便宜,虽然hostmonster和bluehost的最优惠价格都一样,但是因为bluehost相对稳定,而且对高负载的处理更加科学,所以推荐使用bluehost。我在bluehost购买的是两年的服务。总共$90多。送域名。和国内的相比,价格差不多。
    3,之所以推荐bluehost而非hostmonster,最重要的一点是CPU throttling上。Hostmonster在处理长时间高负载时,只是简单的断掉链接。每次负载增大时,刷新页面,浏览器就会提示服务器无响应。而bluehost在这方面就更加的柔和,迄今位置,我还没有经历过一次强制断开。 而在hostmonster上每天几乎都会有一次(我折腾的比较多).
    当然了,就现在的形式来看,缺点还是很明显的。那就是得每天提心掉胆的。说不定哪天就直接不能访问,所有的努力都将从新开始。
    不过,我还是先心存幻想把。毕竟,我只是想找个稳定的,高质量的,对得起咱老百姓的钱包的主机,认认真真的记录我的生活和学习。

    至于其他国外的主机,我也曾对比过,现在已经想不起来什么原因了,反正觉得bluehost最适合我,多半是价格和延时的原因。可以参考我先前写过的总结一下自己购买主机的情况。想购买的,可以多找找优惠链接,多搜搜就会有。另外,最近不建议买,未来太不明朗了。。。

     

    OpenMp和自动并行化
    此文是Fred Chow在德拉华大学所讲open64课程讲义的翻译,转载请注明出处 http://www.lingcc.com
    Fred Chow 原版讲义见最后一页

    • 并行化

    两种在open64中获得粗粒度并行化的方法:OpenMP和自动并行化。前者使用选项-mp来指导并行化,在Fortran,C和C++中支持OpenMP2.5。后者需要选项-apo打开,功能是在LNO阶段检测并行的循环并插入指导。在同一个编译中,可以两个同时使用。

    • 对粗粒度并行化的支持

    并行化的代码给出它自己函数的轮廓(?),轮廓函数嵌入到原始过程中,原始过程中的本地变量采用静态链的方式访问,指向轮廓函数的指针被传到libopenmp中的同步机制中用来做定型执行的调度。其中会有一段并行的代码保存下来以备串行执行之用

    • 并行运行时执行

    通过大量产生线程来达到执行并行代码区域的效果,默认情况下的线程数是CPU的个数,libopenmp(PathScale专利)包含:线程控制和同步机制和OpenMP intrinsic相关机制.运行时的动作通过环境变量控制,如指定线程和处理器之间的亲和性 Continue reading »

     

    1,因为代码是从svn库里先checkout出来的,为了方面使用mercurial,就先做了清理工作。
    删除当前目录下的所有.svn文件夹
    find . -name “.svn” -type d -exec rm -rfv ‘{}’ \;
    . 当前目录下
    -name “.svn” 文件/文件夹名称为.svn
    -type d 文件类型为文件夹
    -exec 执行之后的命令直到 \;
    rm -rfv ‘{}’ 删除find命令找到的所有文件夹 , ‘{}’表示使用find的输出做为rm的输入
    Continue reading »

     
    • 啥是nanojit?

    Javascript的JIT后端,原先firefox直接使用javascript解释器,效率比较低。nanojit可以将频繁执行的javascript代码直接翻译为机器码执行,效率更高,性能更好。详细的介绍可以参看这篇文章:an overview of TraceMonkey,  (我是中国人,我要看中文 ).本博还有一篇英文介绍,自己的蹩脚英语拙作。确实闲着无聊可以猛击这里

    • 咋又蹦出来个tracemonkey?

    这得先从spidermonkey说起,spidermonkey是firefox里的Javascprit解释器。因为增加了Nanojit,这种通过跟踪(trace)热JAVAscript代码的JIT。所以改名叫tracemonkey。

    • 我只关心这个firefox!

    那就从这个地址下载吧,firefox_release.mips1-1_mipsel.deb. 下载之后切换到root帐号或者直接执行。注意目前Nanojit只测试了O32的龙芯,龙芯默认的操作系统和其他Debian衍生系统都能使用(目前测试了debian-en和Rays,没有问题).目前2E和2F的机器都能使用。N32的gentoo系统还不支持。 Continue reading »

    2009-2011© 编译点滴 Suffusion theme by Sayontan Sinha

    无觅相关文章插件,快速提升流量