Felix's profileWALDEN LAKEPhotosBlogListsMore Tools Help

Blog


    5/10/2009

    Baby I`Am Yours

    ALEX:
    Baby, I'm yours (Baby, I'm yours)
    And I'll be yours until the stars fall from the sky,
    Yours, until the rivers all run dry
    In other words, until I die
    OISIN:
    Baby, I'm yours (Baby, I'm yours)
    And I'll be yours until the sun no longer shines,
    Yours, until the poets run out of rhyme
    In other words, until the end of time
    ALEX:
    I'm gonna stay right here by your side,
    Do my best to keep you satisfied
    Nothin' in the world could drive me away
    'Cause every day, you'll hear me say
    Baby, I'm yours (Baby, I'm yours)
    And I'll be yours until two and two is three,
    Yours, until the mountains crumble to the sea
    In other words, until eternity
    Baby, I'm yours
    (Til the stars fall from the sky)
    Baby, I'm yours
    (Til the rivers all run dry)
    Baby, I'm yours
    (Til the sun no longer shines)
    Baby, I'm yours
    (Til the poets run out of rhymes)

    4/30/2009

    所有学生都应该看看的激励文章

    大多数的我们
       经常上网,也经常发现很牛的人。看到他们,才猛然发现自己的渺小。
       当然,不能成为精英并不是什么错事,天分这样的东西实在是求不得的。虽然成功是1份天才加上99份汗水,但是爱因斯坦他老人家也坦言:1份的天才比99份汗水都要重要。
       看着这些牛人们的言行,浮躁的心马上沉寂下来。自己还是读书太少,见识太少,更美好的生活和更美好的人在你头顶上你仰望不到的地方。想到这里,不知天高地厚的鲁莽自然的就变为谦和。还是会羡慕,还是会感慨,但是更多的是认清自己是大多数这个现实,然后踏心的去做好自己应该做的而不是幻想。
       转载一篇博客,以激励自己
      给学弟学妹,尤其有意念文学博士的同学
      我在北美读书,不断有小朋友问我学习和申请的事情,不回答不好,回答吧,又好像我有以教人似的。经验教训谈这种东西最不靠谱,别人的事情,也就是看个热闹,该自己奋斗的还是自己奋斗。我终于写了这一篇,写得很费力,时间太紧迫,为这个搁下了要紧的任务,代价代价。生活残酷,过河卒子只能拼命向前。得看长远的将来的目标,尽量不让一日闲过啊。只要看看身边牛人,学术超人,就觉得自己该狠狠摸爬滚打,而不是这样向后看(自抽一下)。
      我现在的生活,称为yard life。学校的中心地带是一个被圈起来的yard,往来的游人的热闹不改变它的幽静。yard是一颗巨大的孤独的心脏,每个人有自己专注的事,每天工作12小时是生活的常态,学习8小时以下是不道德,也不敢的。要保持优异的记录,简历上不容许留下败笔。一个经常在图书馆遇到的高年级以色列同学说:“我在这里是第七年,我没有后悔在这里度过的每一天。我也没见过一个不勤奋的同学。如果不勤奋,就不会来这里了。” 他的神情和气质就是那种沉着坚强,知道自己在做什么,知道人生应该如何实现的人。就冲这一句,“我没有后悔在这里度过的每一天",我大为惭愧仰视。
      我在美国就像是农民工子弟在城里上学。壮观的图书馆,密集的资源,一群启蒙很早且极其勤奋的人聚在一起,聚成一间大牛棚。牛人同学大多出身优越,从小的学习环境非我可比,都上过扎实的语言训练课,有人从12岁开始学拉丁语和希腊语,有人高中修过几门大学的法语文学课,有人每年至少去十个国家。有一位甚至说:“过去的6个暑假,我都没有浪费,都在上语言班。”我脑子里顿时扑通了一下,想起我这个穷人浪费了所有夏天和周末,没有上过任何语言班,法语联盟,歌德学院,新东方,统统无缘(出国前在新东方打暑假工,导师跌眼镜说,你为什么不趁这个时候学习啊?!)。我的法语德语都是自学,还是很心酸地。如果让我重新选择一次,条件允许的话,会报语言班,而不是冷冷清清地自学。
      所以要尽量趁年轻多上学,学对自己长远有好处的东西,比如语言。工欲善其事,必先利其器,学好了语言才能走得远。到了博士生这一步,最大的心病就是原著读得太少了。想我当年摇摇摆摆看一点哲学和理论书,兴致勃勃地跟。一次在某课程网页上一举看到了3个不知道的人名,Agamben,De Certeau,Judith Butler,那是和我非常相关的课,我心想我真是孤陋啊,去找来看看吧,于是就跟上来了,被誉为“跟得紧”。那种读书的法子掰玉米捡芝麻,看见什么就跟什么,一团糊涂。写得高明的书,但自己读不透,没有吸取到眼光见识,只是博趣,开阔一下眼界罢了,搞不好只是name-dropping。理论书和二手的文献批评好读,也不好读。要读透需要原文的功夫,要明白人家的讨论对象,人家怎样细读。如果不理解语境,没有原著的知识,读二手书是没有大的益处,索然无味的。
      我有一个可怕的想法。“三十不学艺”,人到一定年纪(三十当然不是实指),就有暮气和自保之心,学东西就没主动性了。尤其学习外语,来自母语的抗拒力很厉害。母语是自己的comfort zone,容易固步自封。你上课学语言,跟着老师和同学走,但一下课就和那个语言无关了,做作业和看课文都勉强,不用说主动去思考和写作了。人年纪越大,越不想做基础的活儿,求胜心切,时间也紧张,不能拿出一往无前的劲儿来。学习趁年轻哦!
      语言是文科生命线,一般比较文学的最低要求是三四门语言。美国这边的博士项目,往往有一个理论的考试和一个原著的考试,比如我的学校,一个是common essay exam,考分析论辩能力,一个是reading check, 考三门语言的原著阅读。语言不是学着玩的,而是修相关的课,考相关的试。法文课是法语讨论,意大利文课是意大利语讨论。小论文用原文写,大论文可以英语写(当然最好是原文)。牛人是没边的,会八门语言的大有人在,而且跨度很大,,除了简直人人都会的法语德语西班牙语拉丁语外,还有希腊语+中文,日语+印地语+梵语,希腊语+阿拉伯语+希伯莱语,俄语+挪威语+中文+日语,这样的高难度组合,简直是什么难拣什么学。reading check这一关是很有道理的,要紧的是读作品,用原文读,读英译是欺骗和不负责任,是混不过去的。(责任这个词很重要。)
      语言学习方面,阅读高于一切。语言不好的原因就是阅读不够。阅读给语言以内涵,口语和写作可以从读书中练。书看多了,思想和表达都有变化。讲一个小故事:研三毕业那年,朋友A接了一个汉译英的翻译活,请B做了一部分。B交稿了,A看了觉得不合格,费了很大心修改。她和我感叹说:“真想不到,语言功底这么差,还得我重做。”我也很诧异,不至于啊,B是北大本科出身,现在又念了研究生。A淡然说了一句:“书读少了。”我顿时无比崇拜,这四个字分量很重啊!应该用匾悬起来,警钟长鸣。后来我开始琢磨周围的人读了多少书。遇到现在的同学L,她本科修了中文、法语、西班牙语三个学位。我问她修过多少门法语文学课,她说八门。问她读了多少法文书,她说,小说大概30多部,戏剧大概30多部,诗歌就不好数了。顿时我就沮丧得不行了。和我的英语文学可能差不多,可人家还修了其他两个学位呢。我法文不好,写作不行,根本原因就是“书读少了”。对于文科同学,读书才是根本,日常交往和沟通没什么难,难的是表达思想和论辩,学到圆熟,像使唤自己人一样使唤它。上课发言辞不达意的感觉是很不好受的。
      很根本的一条,是合理安排时间(再自抽一下)。和一个老师谈夏天的语言班。他当年在纽约上过一个古希腊语虐习班,每天实打实上课8小时,其他的时间,除了睡觉吃饭,全部用于写各种作业练习,大概也要花上6小时。每天一小考,每周一大考,每天学习到深夜两三点,如此坚持了10个星期,学了大约相当两年的课程。语言班很多,没有最疯狂,只有更疯狂,报这个班的必定是强悍的人,否则神经必然崩溃。在高强度的学习里,他锻炼身体没有间断。我问他如何做到。他斩钉截铁地说:我每天都跑步,十多年不断,再忙也跑步,这是我生命的一部分!压力大的情况下,尤其要约束自己的行为。你要考虑放纵的后果。对于必将会后悔的事情,现在就不要做。比如吃饭,我不吃垃圾食品,不吃批萨,因为,if I eat Pizza, I cannot run! 现在我就是再忙,也自己做饭,保证合理的饮食和健康的习惯。有运动习惯的人就是这样,你不是有意识地下指令,而是顺应身体的需要。让你的意志跟着身体走, 而不是身体勉强服从于意志!为了不让生活起冲突,你必须安排时间!
      下面要谈的比较具体,关键词是:国外课程,Google,广播,有声书,电驴, 电子词典,podcast。我土了,大家随便看看,土了过时了的内容,请自动忽略。小朋友们条件优越,后来居上是天然之理,可以走直路就不要走弯路。
      当我是一名无知的乡下小本的时候,常去看国外大学的课程网页。很多学校把课放到了网上,中国的院校比较封闭,所以可到国外网页看看,寻找他山之玉。眼睛永远比胃口大,读不了书,至少了解书目,对自己仍然有用。我从大一起到哈佛耶鲁之类的网上溜达,看看人家读什么书上什么课,参照着找书读,一片懵懂的向往。书主要仍然是经典书,是四海之内都容易找到的书,孤陋寡闻的无知小本,最需要的就是指路的光明,第一次读荷马史诗和柏拉图都是在看了耶鲁课表后找来读的(当然读的英文,那时的心情简直什么书不读英文就不甘心)。后来念研究生的时候,要看批评著作和文论,大学的书单也很有用,像英国大学的course module和reading list很全。心中常想想自己的同辈,受另一种教育的幸运的人,在做什么事情,进度有多快,能感到一种鞭策。
      找资料的话,有一些专门针对某作品、某作品、某类别的学术网页,给出现成的bibliography。网上搜东西,手勤一点都可以搜到,但不必太费力,买椟还珠,做了书皮专家却没有看书。有一条正道是看书,经过一本书的引用推荐,跳到另一本书。
      Google scholar,想必大家常用。Google家还有一个伟大产品叫Google book。涵盖很强大,可以预览,比如输入croxton play,就跳出一大批讨论了这个作品的书。在网上预览,省去了在图书馆翻来倒去的时间。技术窍门很快可以摸索到,比如很多页不能直接浏览,但search inside the book就可以浏览该页了。国内图书馆没有的书,可以通过Google book看。一些过了版权期的旧书,可以在Google book大大方方地看,下载。力荐John Carroll写的三部《神曲》的书,这套书应该翻译过来!前两部都可以下载,第三本也快了(名叫In Patria,扉页题词In Via et in Patria)。过去的著名老学者George Saintsbury,Grandagent,都可以下载了看。还有Wikipedia,每日的必需。国内没有完全解封,我当年是通过answers.com看的,它包括了wikipedia的资料。现在不晓得怎样,但一定是有办法突破的。
      网站广播。对学英语很有益。BBC的在线广播基本可以通过flashget等软件下载(也可在firefox装flashgot插件)。推荐BBC arts and drama,戏剧和文学朗读节目,源源不断的狄更斯小说(他老人家一年四季没断过),各种经典名著。冬天天冷,我就睡觉不起,赖在床上戴耳机听BBC消遣,那时候听过Villette,Little Dorrit, 纳尼亚传奇,戏剧(莎士比亚,契诃夫,萧伯纳,王尔德哪,还有难得见到的新剧)。这样,我培养出了对有声书的深情爱好。朗读没有视觉压迫,紧随着原书和作者,愉快充实的感觉。听Voyage Out时想到,Woolf的语言真的非常有味道,念出来才能体会。很多作品都是这样的,朗诵是语言专业必须训练的。爽利顿挫的英国英语,听着真的很幸福啊。英文听力不好的同学可以坚持慢慢听,比看美剧受教益。名著就是名著,让内心丰富。
      校园网的最大便利是BBS和ftp,营造了一个可爱的群体。Ftp注定是校园网的专利,出了校园,就怀念曾经光顾的各种影视站、科教资料点、音乐站、动漫站,比如著名的文艺片阵地rocker.cc。但是校园网是个相对封闭的地方,信息来源受到种种限制。除了动漫综艺和美剧日剧更新比较快,李敖演讲、馒头事件等热点传播得及时,其他资料,更新是比较较少的,诸多重复。ftp是分流和共享的好地方,但个人需要的特别资源,还得靠自己寻找。ftp语言站资料很多,但好像大多是教材的扫描和录音,第二外语的基础学习。如果有了一定基础,我推荐德国之音的德语学习Top thema,法国TV5的新闻7 Jours sur la Planete,锻炼听力,有文字可参,又是最新发生的有趣味的时事。(现在我推荐意大利电视台RAI的节目RAI click. 他家电视比BBC大方,电视节目都上了网,意大利语版的《战争与和平》看得真养眼。RAI还有一个文学节目ad alta voce,有声书的朗读。可惜我不再是无事可做的北大研究生了,彻底没有时间看电视,电影也不敢看。)
      广播收集的有声书毕竟有限,当我脱离校园网怀抱之后,就进入了电驴emule的阶段。到了电驴,世界就大了,自由了,海阔天空(也慢了)。这个世界多么平朗开放。当我找到了英音朗诵的《罗马帝国衰亡史》,简直涕泗交横。那么多没有想过的宝贝一直在网上,而且源源不断地在增加。夜以继日以蜗牛的速度挂电驴,收集狂本性爆发,有声书越收越多,法语的莫里哀、巴尔扎克、雨果、波德莱尔、兰波、普鲁斯特,德语的圣经、神曲、席勒、黑塞,意大利语的圣经、曼佐尼、卡尔维诺、Svevo……欧洲到底是读书人多,有声书极多,不仅本国作品,还有大量翻译作品(德语的陀思妥耶夫斯基,意大利语的司汤达)。有些东西不可思议,竟然有《纯粹理性批评》的德文版。太多了,只能视为为退休后陶冶情操做准备。等我老了,退休了,就听这些玩吧。或者视为为饥荒积粮:一旦失去了语言环境,可以用这些听力资料保持语言能力。
      电驴的下一步是ipod。网上资料积累多了,但人不是总在电脑前。用电脑的时候,经常是做事写东西的时候。终于有一天,我开了窍,去买了一个ipod。为什么下这个决心呢?因为被一位西班牙语系同学震撼到死。一起到外校上《神曲》的课,坐她的车回来,她在车上不放音乐,放意大利童话,无辜地问我:你没有意见吧?这是个严肃的同学,我完全相信她ipod满载着教育的内容。她意大利文比我好,我无地自容,第二天就到店里买了一个80G的ipod classic,从此成了ipod支持者。现在我走路自觉ipod,终于可以少想低俗的事情,给生活增加文化了。(去年我问一名古典系同学,走路的时候脑子里想什么,他说,背希腊拉丁词汇变位。我抓狂地想,真是读书种子啊。)吉本是英国最伟大的作者之一,走路的时候,坐车的时候,挂耳机听春秋笔法的《罗马帝国衰亡史》,经常就笑起来。收的那么多法语意大利语资料,终于有了用武之地。在图书馆上自习的时候,对照书,听《神曲》的朗诵,对理解和记忆是莫大的帮助。在修《约婚夫妇》的课,对照听过几次,曼佐尼可比雨果,好久不读这种伟大的欧洲小说了,惊喜。走在漫天大雪里,耳边回响着意大利文的朗诵,保罗的书信,劝善劝信,优美有力,真给人一种不可阻挡的信心。
      有了ipod 之后,我才开始听podcast,互联网广播。原来这么多教育机构和电台发布了广播呀。做法是,打开itunes,进入itunes store,搜索,选择节目。可以用电脑听,也可以下载到ipod/mp3里。这里介绍几个教育节目,都是教授讲课的录音。College de France的文学(法语,非常慢的讲解,清晰好懂),Alexandro Manzoni(意大利语,全文朗诵,每一章有讲解),Divina Commedia(意大利语,课堂录音,各章节有讲解)。类似的节目相当丰富,意大利人好像特别热爱podcast,古典文学、神话、薄伽丘、戈尔多尼、十五世纪、十六世纪、十七世纪、一直到二十世纪,都有节目。这和意大利教课风格大概有关系,讲座多于讨论。我听这些,也就是练一练耳朵,给自己制造一个语言环境,知识上是用处不大的。除了这些法意文学广播,还有Oxford medieval English(中古英语的课堂录音),艺术史,哲学,政治哲学讲座,可以按照各人的兴趣听一听。新闻节目就更多了,各大媒体电台都有自己的podcast。
      人的声音(书的声音)是可以听上瘾的,学业的要求可以养成为自己的爱好。我们有幸生在人类历史上最美好的电子时代,声音不再是一转而逝的,而是可以流传,复制,重播,到世界各个角落。大家知道Roberto Benigni是《美丽人生》的导演和主演,但可能不知道他是杰出的朗诵家,能全文背诵《神曲》。他热爱但丁,在意大利巡回演出,背诵《神曲》。Youtube上有他几个朗诵视频。我听过的《神曲》朗诵里,他当之无愧是第一。做梦也想听遍他的全文。读诗就要读出来,甚至背出来。想想过去的莎剧演员背台词的功力,这是一个很了不起的传统。每天朗诵外文,一定帮助。默读会漏掉东西,而朗读却让你接近文本,接近作者的写作。真的,就像在体验自己在写这篇文章,如何运筹辞章和结构。
      ftp应该有很多电子词典。我只能靠电驴。我最近下了一个意意辞典,一个意英辞典,简直爱不释手。最强烈推荐Oxford Superlex,英法、法英、英德、德英、英西、西英,大集成。CNKI翻译助手这个网页有意思,可以看看一些奇怪的东西在汉语论文里是怎么翻译的。
      最后一个提醒是,电脑和ipod引诱人玩物丧志,拼命积攒、整理、分类自己的文件,所以要克制。更不必说其他的视听和聊天的分心了。本科时我没有电脑,得以面壁用功学习。研究生期间就给电脑废了,玩物丧志的多,收获的少。现在有美国同学就住在没有网络的房子里,可以在家看书写作,说This is the secret of productivity. 这是一个良好教训,要利用网络,不能依赖于网络。就是这位同学,去年感恩节的时候,我问他:放假这几天,你都做了什么?他怅然说:没出门,在屋里待着。Except when I was running, I was just working. 这就是博士生的日子,running + working = yard life.
      好了,写了这些摸索的经历,不伦不类的经验教训谈,完成了答复小朋友的任务。这个关节写这些东西,自觉太不负责了,后果严重,五内俱焚。要赶紧回归yard life,做一个负责的graduate student。祝大家新学期一切顺利,多有收获。有希望就好。有一个憧憬的目标,保持充实的生活的进取的决心,是很美好的状态。描述yard life只是增加我对自己不靠谱生活的可悲感。现在我滚到一边,埋头学习,面壁去了。
      一些链接:
      BBC arts & drama http://www.bbc.co.uk/radio/aod/genres/artsdrama/channel.shtml
      Deutsche Welle http://www.dw-world.de/dw/article/0,2144,1838576,00.html
      TV5 monde http://www.tv5.org/TV5Site/7-jours/sommaire.php?id_dossier=180
      France24 News http://www.livewtv.com/news/france24_fr.htm
      Google book http://books.google.com/bkshp?tab=mp
      Google scholar http://scholar.google.com/schhp?tab=ps
      RAI click http://www.raiclicktv.it/raiclickpc/secure/homePage.srv
      Princeton Dante http://etcweb.princeton.edu/dante/pdp/
      Perseus http://www.perseus.tufts.edu/
      Etymology http://www.etymonline.com/
      CNKI翻译助手 http://dict.cnki.net/dict.aspx
      John Smyth Carroll
    http://books.google.com/books?ei=y5u5R-SwK5GSzQT9vq2aDQ&q=%22john+smyth+carroll&btnG=Search+Books
      Dante and Aquinas
    http://books.google.com/books?id=IA0MAAAAIAAJ&pg=PA124&dq=%22dante+and+aquinas&lr=&ei=16a5R87KGJO0yQTWgqXECw
      显示full view的都可以下载,右上角有download标志.

    10/14/2008

    英文类最受欢迎时尚杂志排行榜2008

    1. InStyle
    2. Glamour
    3. Marie Claire
    4. Vogue
    5. Elle
    6. Esquire
    7. Harper's BAZAAR
    8. Allure
    9. W
    10. Town & Country


    1. InStyle,这是1994年6月创刊的时尚杂志,归属于 Time Inc.旗下(Time Inc.旗下还有《People》“人物”、《Sports Illustrated》“体育画报”、《Parenting》“父母”等畅销杂志)。InStyle以介绍明星的时尚为主,难怪畅销度高居第一啦!

    2,Glamour,1939年创刊,归属 Conde Nast (康迪纳仕集团)旗下(康迪纳仕集团旗下杂志还有:《Vogue》、《 Lucky》、《Self》“悦己”)。
    《Glamour》以介绍最新的美容、发型和服饰潮流为主,提供专家建议;还有关注女性内心情感、女性性爱方面的文章。
    《Glamour》的实用性使它倍受女性欢迎。

    3,Marie Claire 《Marie Claire》最早是一本法国杂志,于1937年创刊。《Marie Claire》美国版直到1994年才诞生。今天,《Marie Claire》在全球27个国家和地区发行。《Marie Claire》中文版翻译为“嘉人”。
    《Marie Claire》属于Hearst Communications Inc. 旗下(Hearst Communications Inc. 旗下还有《Cosmopolitan》《Seventeen》《Good Housekeeping》《Town and Country》等杂志。)

    4,Vogue 这本杂志历史可是够悠久的!!1892年创刊,属于康迪纳仕集团(Conde Nast Publications)旗下。《Vogue》的总部在英国伦敦。2005年《Vogue》中国版创刊。
    重量级的大牌广告是《Vogue》的特点,每期都会大篇幅的登像 Burberry、David Yurman、Louis Vuitton、Prada等时尚大牌的广告大片。每期一篇时尚、艺术、文化方面的Feature文章。为高端读者提供电影、音乐、戏剧、书等有文艺点评栏目。

    5,Elle 国内版的《Elle》叫《世界时装之苑》, “Elle”是法语,很多中国人发音都有错哦,有人说“艾拉”,有人说“艾莉”,其实“elle”的发音和大写字母“L”是一样的,Elle翻译过来就是“她”的意思。嘻嘻,现在你知道了这个,你也是达人一枚啦!
    《Elle》也是法国Lagardere Group旗下的杂志,每期都有一篇名人访谈、时尚趋势解读、每月时尚大事件的日历。《Elle》的资讯从服装、珠宝配饰等“必备”(must-have) 品,到美容皮肤护理、女性健康、恋爱家庭等方面。

    每年有一次“Elle Style Award”奖,《Elle》杂志会刊登年度着装“best of the best”各奖项得主。《Elle》杂志是时尚行业的权威杂志,根据《Elle》来选择这一季时尚界最热门的东东,就绝对没错啦!《Elle》还出了一本专注于最时尚的室内设计的杂志《Elle Décor》。

    喜欢《Elle》杂志的女性一般是有些阅历,成熟的都市

    6, Esquire 这是raymon要求介绍的男性时尚杂志啦!排名第六哦!“Esquire”中文翻译过来就是“绅士”、“君子”的意思。《Esquire》中文版是时尚集团下面的《时尚先生》。
    《Esquire》创刊已经70多年了,属于 Hearst Corporation 旗下,拿过杂志类的大奖。《Esquire》杂志的内容比较广泛,既有男性时尚产品、时尚大牌的介绍,也有政_治的、体育的、旅游的题材。
    《Esquire》杂志最出名的是“Dubious Achievement Awards”栏目,回顾上一年度最不寻常的事件。
    喜欢《Esquire》杂志的男性是那种受过良好教育、有修养的男士。
    7, Harper's BAZAAR
    国内就是《时尚芭莎》了。其实 “Bazaar”是“集市”的意思,“Harper” 则是创刊人 James Harper 和 John Harper 兄弟的家族名字。

    《Harper's BAZAAR》是一本美国杂志,1867年创刊,真是历史够悠久的哦!!它是美国历史上第一份自己的时尚杂志。属于Hearst Communications Inc. 旗下。除了美国本土,《Harper's BAZAAR》还在全球18个国家发行。


    《Harper's BAZAAR》每期都有时尚专业人眼中的明星访谈,设计师访谈,每季潮流趋势等亮点专栏。此外,从包包到鞋,到牛仔裤,《Harper's BAZAAR》将提供给你最佳的穿搭建议,《Harper's BAZAAR》还有很多主题:每季的潮流回顾、新一季新情报、能穿整年的经典服饰、如何走大胆明亮性感路线……等等。
    8,Allure
    《Allure》是康迪纳仕集团(Conde Nast Publications.)旗下杂志,1991年创刊,算是年轻的时尚杂志啦!
    “Allure”中文是“诱惑”的意思。《Allure》杂志聚焦在美容领域。

    每期《Allure》杂志都有业内专家提供的扮靓贴士和秘笈。此外,还有健康、减肥、时尚的内容。无论你是想看改变整个造型的内容,还是只是想保养秀发,《Allure》杂志都会提供专业指导。

    了解哪种风格最适合你,了解最新最好的护肤护发产品,了解最新的妆容流行趋势、了解最新的发型发色、新香——《Allure》杂志都会给你专家建议和明星建议。
    《Allure》现在尚无中文版的。
    9,W——

    《W》1892年创刊,也是康迪纳仕 (Conde Nast Publications) 旗下。《W》是一本美国杂志,创刊人是 Louis Fairchild ,当初在芝加哥出版。《W》定位很高端,聚焦在高级定制时装上,报道最新的时尚界流行动态、名流访谈等,同时也涉及一些旅游、生活方式、上流社会的派对等,图片质量超凡脱俗。
    《W》的开本比一般杂志要大很多,更增加了其施客 (chic) 魅力。《W》是获奖女性时尚杂志。《W》尚无中文版杂志。

    10, Town & Country——
    《Town & Country》是一本美国上流社会时尚读物,1846年创刊,历史悠久,是美国历史上连续出版时间最长的时尚生活杂志!《Town & Country》至今尚无中文版。
    《Town & Country》包括时尚、旅游、婚礼、派对盛事、设计、美容、艺术、古董等内容,华丽的图片和精美的文字彰显《T&C》独特不凡的高雅和奢侈品味。《Town & Country》的读者是上流社会名流和中产阶级。

    《Town & Country》在杂志界享有盛誉
    5/3/2008

    CHECKLIST for VISA APPLICATION

    A.   Basic Documents
    1.      I-20
    2.      Offer Letter from *****& Admission Letter
    3.      DS156(Visa Fee) /157 /158 (50*50photo)
    4.      SEVIS Fee & zhongxin 943 Receipt
    5.      Passport/ Student ID/ID Card
    B.    Documents Concerning Study
    1.      Certificate of Master &Bachelor degree            (English and Chinese)
    2.      Transcript in **** University                      (English and Chinese)
    3.      TOEFL & GRE Score Report
    4.      Certificates of Awards
    5.      Study Plan
    6.      Curriculum Vitae
    C.   Materials related University of ****
    1.        Introduction of *** and the Dept. of Statistics & Probability at ****
    2.        Curriculum Vitae of My Future Advisor
    3.        E-mails between I and **** 
    D.    Other Documents
    1.        Photos of My Family and Boyfriend
    2.      Publication and Certificate(SCI&EI)
    3.        Recommendation Letters
    4.        Personal Statement
    5.        Three Reports About Statistics:
    1) Why USA?
    2) Why this University?
    3) Future plan when come back.

    4/28/2008

    Polymath to Dartmouth

    how can I be a polymath?

    without enough studious in my major,

    the more devoted in the life, the more requital I got back.

    what kind of dreams are necessary for me that I wish to pursue?

    ps: life is wonderful, I aware that I have  lost in paradise.

    4/22/2008

    java api 帮助文档 chm 1.5 1.6 中文版英文版

    Sun 公司提供的Java API Docs是学习和使用Java语言中最经常使用的参考资料之一。但是长期以来此文档只有英文版,对于中国地区的Java开发者来说相当的不便。目前Sun 公司正在组织多方力量将此文档翻译成中文,并于2005年10月31日在Sun 中国技术社区(http://gceclub.sun.com.cn/)正式发布第一批中文版Java API文档(包括java.lang和java.util类库API 文档的中文版)。经过将近10个月的努力,目前我们已经将Java SE 5.0的全部API文档中文化。开发人员可以通过Sun 中国技术社区的网站在线浏览相关文档,也可以将全部文档下载到本地以方便检索和使用。

    J2SE DK & API下载
    -------------------------
    http://java.sun.com/j2se/1.3/download.html
    http://java.sun.com/j2se/1.4.2/download.html
    http://java.sun.com/javase/downloads/index_jdk5.jsp
    http://java.sun.com/javase/downloads/index.jsp

    J2EE DK & API下载
    -------------------------
    http://java.sun.com/j2ee/1.3/index.jsp
    http://java.sun.com/j2ee/1.3/download.html
    http://java.sun.com/j2ee/1.4/index.jsp
    http://java.sun.com/j2ee/1.4/download.html
    http://java.sun.com/javaee/downloads/index.jsp

    JDK1.6API中文版(全)
    -------------------------
    * HTML 格式(在线英文) http://java.sun.com/javase/6/docs/
    * HTML 格式(在线中文) http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/html/zh_CN/api/index.html
    * zip 格式(中文) http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/html_zh_CN.zip
    * CHM 格式(中文)  http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/publish/1.6.0/chm/JDK_API_1_6_zh_CN.CHM

    JDK1.5API中文版(全)
    -------------------------
    * HTML 格式(在线英文) http://java.sun.com/javase/5/docs/
    * HTML 格式(在线中文)  http://gceclub.sun.com.cn/Java_Docs/html/zh_CN/api/index.html
    * zip 格式(中文) http://gceclub.sun.com.cn/Java_Docs/html_zh_CN.zip
    * CHM 格式(中文) http://download.java.net/jdk/jdk-api-localizations/jdk-api-zh-cn/builds/JDK_API_1_5_zh_CN.CHM

    相关网站
    -------------------------
    http://java.sun.com
    http://gceclub.sun.com.cn/
    http://developers.sun.com/downloads/
    http://java.sun.com/javaee/downloads/
    http://java.sun.com/javase/downloads/
    http://www.netbeans.info/downloads/

    4/21/2008

    找回 显示桌面 快捷方式

    把“快速启动栏”中的“显示桌面”删除的人实在不少,想找回这个快捷方式的方法比较烦琐,

    打开“记事本”程序,在其中输入如下内容:
    [Shell]
    Command=2
    IconFile=explorer.exe,3
    [Taskbar]
    Command=ToggleDesktop
    然后把这个文件保存为:“Show Desktop.scf” or "显示桌面.scf" ,必须确认文件名和双引号中的一样。然后把保持的Show Desktop.scf文件复制到:“C:\Documents and Settings\用户名\Application Data\ Microsoft\Internet Explorer\Quick Launch”目录下。其中你需要把“用户名”替换成你需要恢复“显示桌面”按钮的用户名。

    以下方法更好更方便:

    其实除此之外,还有一个更加方便的方法:点击“开始→运行”,

    在“运行”框中键入“regsvr32 /n /i:u shell32”回车,

    在弹出框点击“确定”,当系统提示“Shell32中的DllInstall成功”时,

    再次点击“确定”,“快速启动栏”里的“显示桌面”又回来了!

     
    PS:

    “收藏夹”里的网站是需要经常访问的,有没有想过把它贴到桌面上?

    点击“开始→运行”,在运行框中输入“Iexplore -channelband”回车,

    桌面上就会弹出一个“收藏夹”工具栏,非常方便。

    F1~F12在Windows系统中的作用

    F1到F12。不过你知道所有这些键的作用吗?你知道这些键怎样为你节省时间吗……
    F1~F12都有什么用?所有的键盘都至少有12个功能键,通常被称为F键,其位置一般是在键盘顶部,从F1到F12。不过你知道所有这些键的作用吗?你知道这些键怎样为你节省时间吗?

          F1: 如果你处在一个选定的程序中而需要帮助,那么请按下F1。如果现在不是处在任何程序中,而是处在资源管理器或桌面,那么按下F1就会出现Windows的帮助程序。如果你正在对某个程序进行操作,而想得到Windows帮助,则需要按下Win+F1。按下Shift+F1,会出现"What's This?"的帮助信息。
      F2:如果在资源管理器中选定了一个文件或文件夹,按下F2则会对这个选定的文件或文件夹重命名。
      F3:在资源管理器或桌面上按下F3,则会出现“搜索文件”的窗口,因此如果想对某个文件夹中的文件进行搜索,那么直接按下F3键就能快速打开搜索窗口,并且搜索范围已经默认设置为该文件夹。同样,在Windows Media Player中按下它,会出现“通过搜索计算机添加到媒体库”的窗口。
      F4:这个键用来打开IE中的地址栏列表,要关闭IE窗口,可以用Alt+F4组合键。
      F5:用来刷新IE或资源管理器中当前所在窗口的内容。
      F6:可以快速在资源管理器及IE中定位到地址栏。
      F7:在Windows中没有任何作用。不过在DOS窗口中,它是有作用的,试试看吧!
      F8:在启动电脑时,可以用它来显示启动菜单。有些电脑还可以在电脑启动最初按下这个键来快速调出启动设置菜单,从中可以快速选择是软盘启动,还是光盘启动,或者直接用硬盘启动,不必费事进入BIOS进行启动顺序的修改。另外,还可以在安装Windows时接受微软的安装协议。
      F9:在Windows中同样没有任何作用。但在Windows Media Player中可以用来快速降低音量。
      F10:用来激活Windows或程序中的菜单,按下Shift+F10会出现右键快捷菜单。和键盘中Application键的作用是相同的。而在Windows Media Player中,它的功能是提高音量。
      F11:可以使当前的资源管理器或IE变为全屏显示。
      F12:在Windows中同样没有任何作用。但在Word中,按下它会快速弹出另存为文件的窗口。

    4/14/2008

    Direct 3D 10 系统--概述与技术专业分析

    注:这篇文章是MS在SIGGraph上发表的论文,很好很强大,翻译很辛苦

    点击http://download.microsoft.com/download/f/2/d/f2d5ee2c-b7ba-4cd0-9686-b6508b5479a1/Direct3D10_web.pdf下载原文

    摘要

    本文描述了第四代PC平台上图形图像单元(GPU)的系统构架。与上一代图形管道相比,新的管道有了重大改变,引入了一个新的可编程阶段(stage)用于生产额外的图元,并把图元流保存到内存中;扩展了所有可编程阶段的功能,涉及到顶点、图片内存资源,以及新的储存格式。此外,我们还描述了API、运行时以及实现新管道的着色语言的结构性改变。解决当前系统中的缺陷,是我们设计的基本思想。文章不但描述了重要设计抉择背后的原理,同时也描述了那些最终被否决的方案。

    1.前言

    过去10年,OpenGL和Direct3D所依赖的渲染管道构架已经取得了重大发展。最近5年中,随着从固定管道到可编程管道的过渡,发生了许多戏剧性的变化。虽然变化的进程很快,但每一步都反映出了设计者在通用性、性能以及成本上所做出的妥协。

    我们一直在努力了解以及构建一个系统,来解决许多程序中对图形加速器的需求(呈现图形、CAD、多媒体处理,等等)。但是,我们更想把注意力集中在交互式娱乐应用中。这些程序需要管理数十亿字节的艺术品,包括几何体、纹理、动画数据以及着色程序,占用大量系统资源(CPU、内存、带宽),以可交互的速率渲染丰富的、充满细节的图片。在处理海量数据的同时,保证渲染的灵活性,是对设计者的重大挑战之一。在系统设计的方方面面,都可以反映出我们对这个问题的解决方案。

    与上个版本的Direct3D一样,Direct3D 10同样是在应用程序开发者、硬件设计师以及API/运行时构架师三方的合作下设计的。在三年多的设计过程中,合作者之间详细的交流是无价的,让我们更深入了软硬件部署的代价,以及在大量不同硬件进行权衡。在开发Direct3D 10的过程中,调查显示应用程序开发者通常受以下限制的困扰,以及用来缓解这些问题的策略:

    1. 状态(state)改变的代价过高。改变任何类型的状态(顶点格式、纹理、shader、shader参数、混合模式,等等)都会付出很大代价。优化方法通常是通过查询对象状态来排序,减少API状态改变次数;减少外观的改变;或者使用基于shader的技术,使用shader来决定状态。对于后者,例子之一就是把多张纹理打包为一张纹理地图(texture map)(也称为纹理地图集),通过纹理坐标变换,来索引相应的子纹理。

    2. 硬件加速器性能变化太多。 应用程序不得不编写一系列分支语句,以保证在不同硬件上都能正常运行。这些问题会影响到程序的特性设置,资源管理,算法精度,以及储存格式。

    3. CPU和GPU之间频繁的同步。传统的图形管道允许有限制的重新使用管道当前产生的数据,作为下一个处理步骤的输入数据。Render-to-texture就是这种机制的最好例子之一,所渲染的图片接下来能被当作纹理使用,最小化CPU的干涉。但是,产生新顶点数据,或者创建立方贴图就需要CPU与GPU进行更多的协调和通信,降低了效率。

    4. 指令以及数据类型的限制。通常都以精度和所支持的流程控制指令来衡量vertex shader,同样的方法也用来衡量pixel shader,但是,无论是pixel还是vertex shader都不支持整数指令。此外,出于对pixel shader精确性的要求,还指定了浮点算法。应用程序要么不使用这些额外的功能,要么模仿他们的使用。基于表格功能的计算就是例子之一。

    5. 资源限制。 纹理读取的次数、纹理范围、程序指令,等等,都受到限制。应用程序不得不压缩算法,或者把它们分为多个shader pass。因此,还出现了对自动划分shader程序的研究。

    2.背景

    我们的系统建立于PC,工作站以及游戏机平台上的应用程序可编程渲染管道。当前的图形管道分为两个编程阶段,一个用于处理顶点数据(vertex shader),一个用来处理像素或片断(fragment or pixel shader)。在Lindholm2001里描述了设计早期vertex shader的思想和折中。除了细小的差别以外,pixel shader也是按这样的轨迹来设计的。可以把顶点以及像素着色器的发展分为4代(包括Direct3D 10),如表一所示:

    clip_image001[1]

    通过挖掘顶点和像素片断之间的独立性,硬件管道实现了很高的处理吞吐量。大多数顶点和像素着色器都是以并行的状态来处理相互独立的顶点和像素片断。典型的硬件实现中pixel shader的数量要比vertex shader多很多,反映出典型的渲染过程中,像素处理的工作量要比顶点多很多。与vertex shader相比,这种特性将影响pixel shader的性能,因为pixel shader被过多的复制了。

    可编程管道直接使用了较低的抽象层,比如OpenGL或Direct3D。这些抽象层隐藏了不同硬件管道实现之间的差别,提供了一个方便的接口。对特定的平台来说,比如游戏机,它的硬件管道与PC平台相比是不同的,底层细节也是由这些抽象层来暴露。

    我们把这些抽象层称为运行时(runtime),并且通过它所提供的API对他进行控制。运行时为设备提供了独立的资源管理(分配内存,控制生存期,初始化,虚拟技术,等等),所有纹理贴图,顶点缓冲,状态改变以及和硬件加速器的通信都通过特定设备的驱动程序来完成。对可变成管道来说,运行时还加入了对照色程序的抽象和管理任务。

    由于早期可编程处理器对指令储存空间的限制,为了在有限资源内,最大化对硬件的控制,不得不使用类似于汇编的语言来编写照色程序。但是,随着硬件功能的增加,需要一种高级的编程抽象来提高程序员的生产力。一种与C类似,并且添加了对潜在渲染管道进行定制的编程语言满足了这种需求。此外,还发展出了一些其他的语言,利用浮点处理器和GPU内存带宽来完成渲染以外的一些计算,但是,我们不打算在这篇文章里对这些应用进行讨论。

    虽然新的编程语言有必要与CPU编程语言(特别是C)类似,但我们还是进行了一些重要的修饰。举例来说,硬件结构和编译模型更像是一台虚拟机,汇编着色语言扮演了独立于硬件的中间语言(IL),而不是特定的机器语言。在离线环境下,Microsoft HLSL之类的高级语言被编译为IL,在程序运行时,通过驱动程序内建的翻译器,实时转换为目标硬件的指令。需要注意的是,OpenGL shading language使用了一种不同的方法来完成运行时的编译过程。

    另一个重要的区别是,着色程序并不是孤立的程序,通过一个运行在CPU上的程序来协调渲染管道,它们通常是共同(in concert)执行的。 此外CPU程序还以纹理或填充寄存器常量的方式,为着色程序提供参数。

    虽然本文没有具体描述特定硬件新图形管道的构架,但图形管道的设计很大程度上都是根据硬件实用性以及多硬件并行处理来设计的。此外,当前硬件实现的结构体系也将延续或者影响我们的设计。

    3.图形管道

             Direct3D保留了通用硬件加速器的3D管道结构。我们添加了两个新的阶段,并对其他的阶段进行了简化或者进一步归纳(generalized)。基本的图形管道如图1所示。为了保证文章的连续性,我们将讨论图形管道的每一个阶段,而不是只讨论新增的两个阶段。为了和以前的术语一致,使用了通用的术语,比如顶点(vertex),纹理(texture)以及像素(pixel),但需要注意,这些术语只表示普通用法中的某些特定含义。

             Input Assembler(IA)从附加到顶点缓冲上的8个输入流中接收1D的顶点数据,并且把数据项转换为规范的格式(比如,float32)。可以为每个流指定独立的顶点结构,每种结构最多包含16个域(也称为元素,element)。每种元素可以由1到4个基本数据项组成(比如,float32s)。通过读取当前的有效流来装配(assembled)顶点。一般来说,将会连续的从顶点缓冲中读取顶点数据,但是,如果指定了索引缓冲,那么每个流将使用共享的索引来计算每个顶点缓冲中顶点数据的偏移值。指定索引可以带来额外的性能优化,顶点处理器将根据索引值计算结果,通过用索引值作索引的结果缓存,可以避免使用相同索引重新计结果(译注:这里的结果因该是指顶点数据序列)。

    此外,IA还提供了一种机制,允许IA高效的复制对象n次。这种机制是实现instancing的解决方案,把包含k个顶点的数据块(block)复制n次。同时,将使用当前的实体(instance),图元(primitive),以及顶点id对图元数据进行“标记(tagged)”,在可编程阶段,可以访问这些id,以便计算变换,材质等参数。

             Vertex Shader(VS) 通常用来把顶点从模型空间变换到裁剪空间。VS读取一个顶点,输出一个顶点。VS与其它可编程阶段一样,有一些共同的特性,包括支持扩展的浮点、整数、控制类型,可以访问128块内存缓冲(纹理)以及16个参数(常量)冲。我们会在第四节详细讨论这些通用核心(common core)。

             Geometry Shader(GS) 把同一图元的所有顶点作为输入,产生新的顶点或者图元。输入和输出图元的类型不一定要匹配,但对着色程序程序来说是固定的。以发射额外图元对象的方式,GS程序可以增加输入图元的数量,每一次调用(per-invocation)最多产生1024个32-bit的顶点数据。三角形和线段被输出为连续的顶点带。在一次调用中,GS程序可以输出1个以上的图形带,或者删除输入的图元,不进行任何输出。GS程序同样可以在不产生新几何体的情况下,把额外的属性附加到图元上,比如为每个图元计算额外的属性。由于可以访问当前图元的所有顶点,因此,计算三角形平面方程(triangle’s plane equation)之类的几何属性将会容易。

    除了输入图元之外,还可以处理三角形和线段的邻接顶点。每个三角形包含三个顶点,以及三个邻接顶点,而每条线段则包含2个顶点以及2个邻接顶点。对于三角形和线段来说,邻接顶点将作为顶点缓冲格式的一部份,当指定(渲染)了带邻接的图元拓扑之后,IA会对提取邻接顶点。

    clip_image002[1]

             Stream Output(SO)将把GS输出的顶点信息复制为4个连续的输出缓冲子集。理想情况下,SO的输出能力(不带索引)应该和IA(8 streams * 16 elements)的输入能力相匹配,但硬件代价是不合理的。SO只能输出一个1~16元素的流,或者4个单一元素的流。此外, IA可以读取8或者16bit的数据类型,并把他们转换为float32,而SO只能写入原始的32-bit的数据类型。但是,数据类型转换和打包可以在GS程序中轻易实现,减少了固定功能的支持。

             Set-up and Rasterization Stage(RS) 是一个功能固定的阶段,用来处理剪切(clipping),剔除(culling),透视划分,观察点变化,图元设置,裁剪(scissoring),深度偏移,以及片断(fragment)生成。现代GPU设计总是包含某种形势的早期深度处理(z-cull,hierarchical-z)。我们将明确讨论这种优化,因为对应用程序开发者来说,它变的不太透明了。RS的输入是单一图元的顶点以及属性,输出一系列像素片断。

             Pixel shader程序指定了通过顶点属性插值产生片断属性的方式(no interpolation, non-perspective-corrected interpolation, or perspective-corrected interpolation)。现代GPU通常支持多采样抗锯齿。当一个片断不包含像素的中心时,需要很小心的指定属性赋值行为,因为中心点的值有可能超出范围。通过片断边界,可以使用赋值限定器(质心centroid)来指定所需的值。

             Pixel Shader(PS)读取单一像素片断的属性,输出包含1~8个属性(颜色)以及任意深度值的单一片断。每个属性值(元素)要么被分别写入单独的颜色缓冲中(称为渲染目标),要么完全丢弃(不输出片断)。一般情况下,深度和stencil值来自于RS。PS可以可以替些深度值,但无法改变stencil值。无论是丢弃像素还是重写深度值,都有可能影响RS中的深度处理优化(depth-processing optimizations),因为这样做会改变片断的可见性。

             Output Merger(OM)接收来自于PS的片断,执行普通的 stencil和深度测试操作,以及渲染目标混合。OM为一个统一的depth / stencil缓冲以及8个其他的渲染目标(属性缓冲)指定了约束点(bind point)。Pixel shader必须分别为每个渲染目标输出单独的值(不支持多点传送)。此外,所有的渲染目标都共享一种混合功能,但是,可以对每个渲染目标独立的激活或者屏蔽混合。

    引用:

    内存结构以及数据流

    现代GPU很大程度上都在处理持续性(retained)的数据结构,包括顶点和索引缓冲,纹理贴图,渲染目标,以及depth/stencil缓冲。GPU通常把这些数据储存在直接连接到它自身的高性能内存系统中。数据结构的类型包括1D到3D的图片、 2D的立方贴图(所有贴图都可以选择是否包含mipmap层次),以及1D同族(homogenous)或不同族(heterogeneous)的索引以及顶点缓冲。为了提高效率,Direct3D 10对这些数据结构进行了统一,统称为资源。性能在两个方面得到了提升:首先,在一个单独的渲染pass中,可以增加处理数据的范围;第二,增加了易用性,可以在第一个pass中产生资源数据,然后在接下来的渲染pass中使用这些数据。

    单pass渲染效率的提高得益于几个方面。首先是数组化资源(arrayed resources)。纹理以及渲染目标将被创建为一个同类型资源的线形数组(最多包含512个元素),并且作为纹理或者渲染目标,约束到图形管道上。用于处理纹理的着色指令将包含由着色器计算(shader-computed)的数组索引。这减轻了应用程序开发者把多张图片打包为一张纹理,以及控制纹理坐标选取子纹理的工作量。但是,纹理数组队对打(解)包尺寸不一致的的图片不一定有用,应为数组中的元素都应该具有相同尺寸。

    当把一个渲染目标的数组约束到OM时,将为GS中的每个图元计算目标数组索引。这允许GS把图元分类(或者复制)到不同的数组元素中。使用一个pass,把环境渲染到包含6个2D渲染目标的立方贴图就是例子之一。当处理环境中的几何体时,由GS决定把图元渲染到立方贴图的哪个面,并且为每个面输出(issue)一次图元。需要注意,GS的渲染目标数据选择机制与PS的多渲染目标输出是独立的。

    为了激活render-to-cube-map以及简化数组的使用,我们为资源引入了view的概念(resource are extended with the notion of a view),要么选择资源中的一个子集(e.g 选取数组中的一个元素),要么把额外的类型数据绑定到部分类型化(partially-typed)的资源上。对后一种情况来说Direct3D 10允许创建不受特定元素类型约束的资源(e.g float16,snorm 16,etc)。这在一定程度上允许了储存类型的“转换”,数据类型可以改变,但数据类型的大小不能变(e.g 不能把两个float16当作一个float32 来对待)。不能直接把资源约束到管道上;而需要通过view来绑定。同一资源的两个不同view可以同死约束到管道上。

    在接下来的pass中使用渲染好的立方贴图是multipass渲染或重复渲染的一个例子,它们都是由Direct3D 10更加灵活的资源模型来实现。另外一个类似的有用特性就是render-to-vertex-buffer。实现方法之一就是把顶点缓冲作为渲染目标(使用一个view)连接到管道上,使用着色器中的一个阶段来计算新顶点数据,并且把它当作颜色熟悉数据传递到余下的管道,输入渲染目标。这种方法的复杂性在于:数据尺寸以及顶点元素类型一致性(4 x float32)的限制, 相对简单操作却需要使用管道的多个阶段(e.g VS and PS),以及如何把1D顶点数据映射为2D渲染目标的问题。Driect3D 10应用程序使用view来选择顶点缓冲中邻近的子区域,并把它作为宽度为n,高度为1的2D渲染目标,子区域的最大宽度为8K个元素。

    流输出的特性提供了交替(alternative)处理连续1D输出的能力。流输出的特性之一就是支持丰富的输出格式,举个例子来说,可以输出相当于每个顶点16 x 4x float32个元素的数据,也意味着更大的缓冲(128MB vs. 128KB)。流输出不支持随机访问(分散scatter)输出流中的数据,相反渲染目标的方法却可以,通过绘制点和使用VS修改渲染目标点坐标的方法来控制寻址。出于这些原因,两种方法都是很有用的。

    为了支持重复计算,根据资源将会连接到图形管道的哪一个约束点(bind points),我们放宽了资源系统规定参数(constraints)的范围(i.e IA buffer, VS/GS/PS texture, SO buffer,以及OM render targets),并把view作为适配器(e.g 渲染到一个单独的mipmap层次,或者3D纹理中的2D片)。然而,这些适配器并不是完全通用的:2D资源不能当作1D资源来处理,由单一元素组成的同族资源不能转变为非同族的资源,比如多元素顶点缓冲。这些限制主要是为了防止对整个资源结构的多重定义(reinterpretation),以便硬件实现优化储存层次。同样,同一资源不能同时作为输入和输出数据的限制仍然存在。

    3.2 储存格式

    虽然在着色器上操作的都是32-bit的数据(浮点或者整数),但是我们提供了丰富的数据储存类型来减少内存占用以及带宽。如果数据类型不是8-bit的整数倍,那么将被和其他类型的数据打包到一起,组成8-bit的整数倍数据。几乎可以使用所有格式来处理顶点缓冲,纹理,流输出(使用手动转换和打包),以及渲染目标。下表列举了这些数据类型。

    clip_image004[1]

             Unorm,snorm,以及float16(half)是已经被广泛使用的格式。虽然float16对高动态范围(hight-dynamic range)图片的应用很有吸引力,但他需要消耗过多的储存空间,以及内存带宽。Direct3D 10提供了两种可选的32-bit打包方式:两个float11(R,G)和一个float10(B)的组合,以及一种共享指数?(shared-exponent)的格式—R、G、B每个元素9-bit,指数5-bit。这些类型被限制为正数,可以提供与float16一样地动态范围(10个数量级 order of magnitude)。对于低精度的情况来说,11-11-10的格式是渲染HDR颜色数据的目标(destination)格式,而共享指数的格式则被限制为用来进行纹理操作的源格式。共享指数的格式使用了一种比较复杂的编码方式来避免人工效果(artifacts),因此被限定为只读的。

    除了这些简单的压缩格式之外,Direct3D 10还增加了一种4x4 texel block compression (S3TC) 格式。这种格式一到四元素的版本,分别可以提供8:1,6:1,以及4:1的压缩率。包含三到四个颜色元素的格式适合于低动态范围(low-dynamic-range)颜色,而二个元素的格式则适合于切线空间的法线图数据。

    3.3设计考虑

    另外还有几个构架设计决定也是值得讨论的。

    与前一代的技术相比,Direct3D 10要求所有特性都必须由硬件来实现。但其中有两个例外的地方:代价昂贵的32-bit浮点纹理过滤,以及包含多采用(multisampler)抗锯齿的渲染纹理格式。这增加了实现提供者的负担,但也反映出应用程序开发者更注重性能,而不是如何解决特性难题。强调硬件对重要格式的支持,增加了他们支持各种不同应用程序的可能性。

    从管道与核心API中移除了所有可以通过可编程体系实现的传统固定管道功能。包括顶点变换,光照,点精灵,雾,以及alpha混合。虽然使用软件可以轻易模拟固定功能的特性,但我们相信为了减少复杂性,应该通过其他的库来实现这些功能,而不是核心API。

    尽管我们对管道进行了比较大的改动,但固定管道中一些重要的部分仍然存在。在早期的考虑中,我们曾希望把IA也作为完全可编程的部分,允许实现复杂的索引风格或者顶点布局(layouts),但最终我们认为这些额外的复杂性不一定是有用的。相反,VS的内存读取功能允许在VS中实现复杂的索引方案(indexing schemes);事实上,可以只计算顶点的id,而不从IA中读取任何数据。不管怎样,出于性能的考虑,我们仍然保留了一个强大的IA,它在管道中的位置和功能可以为硬件在管理与顶点相关的内存通信时提供便利。

    对于GS来说,涉及到许多复杂的设计问题。其中,比较重要的管道性能权衡之一,就是在保持顺序操作的情况下实现并行。GS保留了输入数据的顺序,因此,多个并行执行的GS单元不能发射出超出顺序(out of order)的图元。这需要对并行的实现做一些变化:缓冲他们的输出,按照输入顺序依次处理整个缓冲。高效的缓存管理,可以根据输出数据的上限,以及GS程序的能力,来指定一个较小的(译注:缓冲)界限(bound)。1024个32-bit值的最大限度(ceiling)是硬件代价和有效放大率(amplification)的折衷,比如,挤出(extruding)三角形的边。毫无疑问,使用GS来进行更大的尺度缩放——比如镶嵌(tessellation)——是很有诱惑力的,但是,我们预料这将会导致性能的迅速降低。

    在应用中,GS包含了和RS同样多的功能。虽然我们希望GS执行族划分(homogeneous devide),观察变换,等等。但在这些操作之前进行剪切是不切实际的,因此,在剪切时,GS-RS进行了划分。GS执行一些剪切设置,e.g 计算顶点到模型剪切平面(model clip-plane)的距离,之后,连同顶点在裁剪空间的坐标,一起传递给RS。由于没有精确定义过固定功能的RS顶点处理精度和准度设置,因此对GS来说,虽然误差不大,但无法精确模拟变换,来产生图片空间(image-space)的坐标。这限制了GS的通用性,无法实现一些基于图元的图片空间坐标的算法。

    最后,固定功能对OM的限制也是经常讨论到的。OM单元是唯一的同时支持内存读写(read-modify-write)的阶段,这也是可编程单元经常需要使用的特性之一。有人曾提出把OM的功能合并到PS中。但是,管理复杂管道要承担的风险,以及最大化内存系统的效率的需求,都没有理由证明这种合并是有必要的。由于PS的计算都是在像素片断上执行,而混合(blend)操作是基于采样来计算,因此,多采样(multisampling)进一步复杂化了结构。促使PS依据采样粒度来执行,对性能有重要意义。此外,使用提前的depth和stencil遮挡优化,也能极大的提高性能。

    Shader Model 4.0

    在以前的Direct3D版本中,可编程管道阶段都是通过每个阶段独立的虚拟机来实现,i.e.,顶点和片断处理器。每个虚拟机都被描述为一个基于寄存器的冯.诺依曼式处理器(register-based Von Neumann-style),包含一组和汇编语言类似的指令,作为交互阶段之间的通信的输入和输出寄存器,通用寄存器(也称为临时寄存器),以及一组连接到纹理之类资源的资源绑定点。

             Direct3D 10定义了一个称为“公共核心(common core)”的虚拟机,作为每个编程阶段的基础,如图3所示。这个虚拟机保留了以前模型中的许多特性,比如基本的4 –tuple寄存器,以及浮点运算操作,此外,还增加了以下特性:

    clip_image005[1]

    *32-bit的整数指令(数学运算,位运算以及转换);

    *通用和索引寄存器将使用统一的内存池(4096 x 4);

    *独立的不过滤或者过滤内存读取指令(加载和采样指令);

    *不相关(decoupled)的纹理绑定点(128)和采样状态(16);

    *支持阴影贴图采样;

    *多层(16)常量(参数)缓冲(4096 x 4);

    以上几点,就是显卡功能的主要增加部分。这个统一的模型,能让GPU上各种算法,逻辑和流程控制指令更接近于CPU。寄存器,纹理绑定点以及指令储存空间都得到了显著的提升,将不会是未来几年,困扰开发者的问题。随着资源量的增长,为了不影响性能,硬件实现将发生一定的线性退化。

    很显然,随着纹理绑定点的增加,并不需要增加相同数量的独特纹理过滤组合(unique texture filtering combinations)。相反,我们将减少采样阶段的耦合,用单独的对象和采样指令来指定纹理和对其进行采样的采样器。通过load指令,以非标准化寻址(non-normalized addresses)的方式,可以读取未经过滤的纹理。

    满足常量储存空间的增长和高效更新常量的需求,是一个挑战。当前系统的问题在于高效的更新单独的常量单元,以及管道化(pipelining)更新的操作两方面。当需要在多个shader程序之间转换时,这个问题会更加严重,每一次都需要重新加载与新shader相关的所有常量。其中,很明显的解决方案之一,就是以不同的频率来每次更新一个常量组(e.g 每帧一次,每个对象一次,每个对象实体一次)。这样,我们就能把常量储存空间分为独立的缓冲,同时,把更新常量与把常量绑定到管道的操作分离开。分离这些操作,允许(注:硬件)实现更好的完成两种操作的管道化。因为这些操作将等同于处理纹理资源,我们考虑过随纹理移除(remove)或统一(unifying)常量。

    但是,在许多重要方面,常量和纹理的引用方式是不同的。通常,常量的访问频率比纹理高的多,同时,对一组顶点或者像素来说,将使用相同索引。相反,纹理的访问频率则比较低,此外,索引值(纹理坐标值)也是不同的。这表示在实际的硬件实现中,处理常量和纹理的方式是截然不同的。

    还有一个不太明显,但对处理核心来说同样重要的地方,就是数据的呈现方式,算法精度,以及(注:数据)行为和以前的版本相比,都有更加严格的规范。因为大部分人都只把着色程序,常量以及其他管道阶段认为是应用程序艺术创作内容的一部分,而没有认识到他们是执行引擎(execution engine)的一部分。因此,为了保证这些内容在不同实现间的可移植性(portable)以及不同代系统间的兼容性,有很大压力。当然,这也反映出了可编程着色所取得的成功。

    我们尽可能的在所有地方都避免了使用自定义的行为,而遵守CPU标准。为了获得精确的行为,我们花了几年时间,转向IEEE-754[IEEE 1985]定义的单精度浮点数据呈现方式。对这一代的显卡来说,基本的运算操作(加,减,乘)都精确到1 ulp(而不是IEEE-754中定义的0.5ulp)。除法和平方根精确到2ulp。非规格化数将被近似为0 (Denormalized numbers are flushed to zero)(但是将被定义为float16类型的数据),并且完全实现了IEEE-754文档(NaNs,无限大)。部分差异是由于实现代价和实用性的考虑而产生的,在设计中,我们放在第一位考虑的是在不同硬件实现间创建良好定义的(well-defined)、一致的行为,其次才是在合理的硬件代价之下,提高精度。

    其中比较大的设计决定争议之一就在直接采用IEEE-754特定行为(special behavior)。在前一代(shader model 3.0)的系统中,我们就引入了这一行为,但对于那些依赖于把NaNs近似(flushed)为0的系统来说,带来了一些与可移植性相关的问题。虽然我们考虑了添加一个独特的模式来允许特定的抑制(suppression of specials),但最终我们决定:让未来所有的硬件都支持这个功能,虽然在很长一个时期内都将付出昂贵的维护代价,但能在短期减少shader开发的复杂性。

    这个严格的规范不仅限制了可编程单元,还将影响到过滤、光栅化,subpixel precision,数据转换,混合操作等各方面规则的定义。我们的目标有两个:对应用程序的开发者来说,保证行为的一致性和可预言性(predictability)。

    为了实现这些目标,需要仔细讨论关于NaN-propagation,算法优化或者内存操作,包括0和1的系数???等等(Pursuit of these objectives necessitated detailed discussions about NaN-propagation, optimizations of arithmetic or memory operations involving coefficients of 0 and 1, etc)。总的来说,我们尽量在对性能有重大优化的地方达成妥协。

    4.1 Stage-Specific Functionality

    每个独特的着色阶段可能会有一些独特功能,来扩展普通行为。这些特点包括输入和输出属性寄存器的结构差异,以及额外的指令。对VS来说,16x4浮点数据元素的输入和输出结构,定义了公共核心。

            GS可以读取上面这个值6倍数量的顶点,因为它不但必须读取一个三角形的所有顶点,还必须访问3个邻接顶点。由于GS可以输出一个以上的顶点或图元,它可以使用其它阶段的流模型:把值累积(accumulated)在输出寄存器,在程序结束时产生输出信号。我们添加了一条emit指令,作为把累积的结果输出给下一阶段的信号。同样,我们还增加了一条cut指令,作为一条图元带结束的标志。GS使用一条编译时配置指令(compile-time configuration directive)来指定最大输出量。每个输出的顶点都可以包含多达32个4 x float32的元素,作为RS的输入,并且接下来再作为PS的输入。这个值是vertex shader的两倍。这些额外的资源将把裁剪和剔除信息传递给RS,同时也可作为传递给PS的基于每个图元数据的额外信息。

             PS有32x4个输入寄存器,但只能在GS处于激活(active)状态时才能完全使用它们。如果GS没有处于激活状态,那么PS只能使用来自于VS的16x4个值作为输入。这些输入值将包含编译时的指令,用来指定对每种属性的赋值(插值)方式。PS的输出直接连接到8个渲染目标上,因此,它有8x4个输出寄存器,外加一个深度寄存器。PS添加用于丢弃像素的指令,避免把这些像素渲染到渲染目标上,此外还将添加计算图像空间(image-space)微分(derivatives)的指令。只有PS阶段包含内建(built-in)的屏幕空间概念,因此,即使VS和PS都包含纹理采样的指令,但它们并不包含用来计算mipmap过滤的LOD指令,也不包含微分指令。当条件表达式在像素间发生变化时,在流程控制语句中的微分行为将会出问题(ill-defined)。因此,通过编译时的强制,不允许在非标准(non-uniform)流程控制中使用微分指令。

    最后一组支持数据交换的特性是为IA和RS之类的固定功能的阶段而设计的。举个例子,IA产生一组系统生成的值(system-generated values):顶点,实体,图元id,同时RS产生一个值用来指定某个多边形是正面还是背面。类似的,RS接受来自于shader的系统插值数据(system interpreted values),比如图元中每个位置的纹理坐标,剪切和剔出距离,以及渲染目标数组索引。系统生成的值,声明为相应的系统生成名称(system-generated name)之后,作为可编程阶段的输入数据。相反,系统插值数据是通过在可编程阶段把输出数据定义为相应的系统插值值的名称(name of the system-interpreted value)来生成。这些值可能会在shader所用的众多输入输出寄存器中产生不利影响,因此某些情况下必须对它们进行定义,否侧将返回错误结果(e.g., RS需要从各种属性中分辨出位置信息)。共享其他类型的寄存器用来输入和输出保证了整体构架更加规则,同时避免浪费资源,

    虽然在可编程阶段中创建一种机制来管理固定功能阶段(e.g. 混合模式,depth or stencil configurations)是很有吸引力的,但当前,我们我们只允在对一定阶段进行这些操作。

    Core API and Runtime

    我们把API和运行时分为了两个独立,但是完整的部分:核心API/运行时以及着色语言/状态管理系统。我们将讲述新运行时中几个比较重要的部分,以及与当前系统相比的变化。

    核心API以及运行时作为硬件系统上的一个薄抽象层(thin abstraction layer),扮演了low-overhead的角色。可编程管线的转变和固定功能冗余功能的移除,戏剧性的简化了API和运行时。API为以下操作提供服务:分配以及修改资源;创建视图状态并把他们绑定到管线的不同部分;创建shader并且把他们绑定到管线;控制管线不可编程部分的状态;初始化渲染操作;通过检索统计(retrieving statistics)或资源内容,从管线中查询信息。

    StateManagement

    我们要解决的主要问题之一,就是减少应用程序到硬件之间传输指令的端到端的消耗。我们把指令分为两类:分配或释放资源的类型,以及改变管线状态的类型。其中,我们特别关心后者,因为他们在应用程序中将频繁出现。我们使用了一个简单的模型,来把这些指令传递给管线。运行时将为应用程序的指令分配一块内存缓冲。每条通过运行时到驱动的API指令,都将转变为特定的硬件指令,并储存到这个缓冲里。当缓冲被填满或另一个操作需要同步渲染状态的时候(e.g 读取一个渲染目标的内容),整个缓冲就被提交给硬件。

    在过去10年的PC系统上,运行时模型几乎没变化。我们的目标是在不需要额外处理的情况下,把指令附加到缓冲中。在过去,这显然是不切实际的,因此,我们尽量了解其中的原因,并且寻找和修改设计方案,让我们的模型接近这个目标。

    我们发现在运行时和驱动两方面,都有一些原因,会带来额外的处理。

    *API和硬件之间的不匹配

    *延迟处理的风格(deferred processing style)

    * 错误传输应用程序请求

    上面三个原因中,第三个是最容易解决的,只要在应用程序开发者,运行时,驱动,以及硬件提供者之间达成一致,就能极大的改善情况(e.g 不是10%而是数十倍的提高)。

    第二个问题涉及到传统的实现策略:当图元提交到管线时,分辨哪些状态改变是累积的。这样做的优点是可以成批的处理一组状态的改变,同时,相互独立的(非正交的non-orthogonal)状态实现可以一起处理,而不是每次处理相关改变中一个独立的状态。他还允许丢弃冗余状态。但是,这些功能都需要占用额外的CPU周期来记录改变,并且进行全局控制。非正交的灾难性例子之一,就是纹理绑定的改变,需要重新编译shader,以适应新的纹理格式。我们提倡尽可能减少对硬件状态实现的依赖性,把对冗余状态改变的处理,划分到运行时中一个可选的层来处理。

    第一个问题涉及到多种类型的不匹配。重编译shader时的正交不匹配??就是例子之一(orthogonality mismatches as exemplified by the shader recompile example),当然还有很多种其他情况。原因之一与状态改变的粒度(granularity)有关。无论OpenGL还是以前的Direct3D本版,都把状态改变的粒度定义的非常精细(fine granularity),e.g,改变一个混合因子,或者改变一种采样模式。我们已经进行了许多尝试,努力把状态改变集中到一起,以提高效率,比如,使用OpenGL中的显示列表或者Direct3D 9中的状态块(state blocks)。虽然这些解决方案可以工作的很好,但是,我们选择了一种更简单的方法。丢弃固定管线的冗余功能已经大大减少了总的状态种类数量。通过分析,我们发现当前过细的粒度划分,并没有什么优点,因此,我们把分散的状态组织为了较大的,相关的,不可变的聚合体(immutable aggregates)成为状态对象(state objects)。这样可以建立一个清晰的模型,指明哪些状态应该是独立的,哪些不是,从而减少完全重新装配管线所需的API调用数量。我们发现使用了这些新API的程序,能提高匹配的准确性。

             Direct3D 10定义了5个状态对象:InputLayout(vertex buffer layout),Sampler,Rasterizer,DepthStencil,以及Blend。这样的划分,反映了状态逻辑上的关系,如果应用程序需要单独频繁的改变某个独立状态,那么可以进一步对此进行细分。当创建状态对象时,驱动将为此状态创建相应的硬件表示(e.g,一组寄存器值),当对象需要绑定到管线时,相应的命令就被复制到命令缓冲中。某些硬件实现可能会在硬件中保留(缓存)状态表示,从而减少把API命令转换为硬件命令的代价。

    在第四节中,我们描述了更新管线常量时可能出现的问题。他实际上只是管道故障(hazards)中,比较普通的一种。当某个值即将被使用,但之前的值仍在使用时,同样可能导致一些故障。解决这个问题通常使用的方法就是,使用额外的储存空间来保存新值,同时,重定向引用,指向新的缓冲。

    另一种故障发生在从刚写入数据的资源中读取数据时。比如,把之前的渲染目标作为纹理来使用。当进行这样的交换时,要求渲染指令已经执行完毕,同时,所有数据已被写入渲染目标,这样才能从中拾取数据。与前面的描述的更新故障不同,read-after-write故障更难,或者根本不可能在API和运行时中解决。为了避免在这种情况下对管线造成延迟(stalling),应用程序在构建时,就应该尽量避免渲染操作需要立即读取之前渲染目标中的数据。

    Validation and Error Handing

    部分API设计的原则是避免发生错误,或者避免对某些使用频率较低,但代价很大的操作进行错误检查,比如对创建对象进行检查,而不是对使用对象检查。虽然我们对性能的需求,不允许通过API对已部署的程序进行过多错误检查。这里,我们的错误检测和报告策略是把错误分为两类,致命和非致命的。在任何版本的运行时中,都会对致命错误进行检测和报告。非致命错误的检测则是通过一个单独的监听层来完成,它对运行时来说是透明的。这个验证层最初是在程序的开发时使用,当部署程序的时候,开发者通常会屏蔽它。为了检测错误,它通常还会寻找和报告API的不理想(non-ideal)使用类型。可以对这个验证层进行控制,指定他对哪些错误进行探测和报告。

    错误分化的方法确实有一点点模糊(ambiguity):哪些错误总是会被检测,哪些没有被检测出的错误将有怎样的行为?未定义的错误行为稍后可能会转变为一种unintended but relied upon (defacto) behavior。再者,如果运行时没有检测出某个特定的错误,那么驱动将忽略性能代价,尽力避免出现灾难性的硬件错误。我们将努力鉴别出这种错误,并且在运行时中对他们进行检测。另外,在渲染时,我们不会进行任何错误检查,e.g,错误检测将被延迟,直到一个Draw命令完成。致命错误保护扩了深度缓冲和渲染目标尺寸不匹配,同时把一个资源绑定到读取和写入操作上,等等,不致命的错误则包括:不匹配的shader类型联接(签名),以及数据格式声明不匹配。

    在当前着色编成模型发展的阶段,捕获着色程序运行期间的错误代价是很大的。因此,我们定义了完善的行为,比如,当数组越界时返回0,来获得一致的行为。从长远来看,硬件将会支持异常机制。

    Resource Mapping and Access

    API和管线设计比较复杂的问题之一,关系到如何在CPU和GPU之间共享资源。举个例子,无论Direct3D还是OpenGL都允许顶点缓冲映射到程序的地址空间中,而不管缓冲具体是分配在系统内存还是显存中。但是,分配的位置将会导致性能的巨大差异。现代图形加速器上,显存和加速器之间的带宽可能超过50GB/s,而PCI-E则只能为系统和GPU之间提供2.8GB/s的带宽。

    此外还有一些其它的问题。比如,CPU对所访问的数据缓存与否,同样会带来很大的性能差异。同时,是否write-combine,也会造成同样的差异。另外,当GPU访问资源时,为了提高空间的一致性,资源加载的方法可能是form row-order to another(e.g, Morton, boustrophedon, or pi orders), or tiled [Blinn 1990; Hakura and Gupta 1997; Igehy et al. 1999]。我们认为这些方法本质上都是为了保证分割模式(tiling pattern)对应用程序透明,因此,当资源映射到CPU时,应该是以线形方式组织的。由于分割模式同时也依赖于访问模式,2D和3D纹理之间是有差异的,而且这种差异不仅仅是CPU和GPU之间的不同造成的。出于对性能的重要用影响,我们尝试暴露所有这些功能,但由于其本身的复杂性,却很难让应用程序真正获得性能上的提升。我使用了一个简单的模型,尽力提供了尽可能多的功能。

    我们对特定资源的写入者和读取者进行了分类,e.g,GPU vs.CPU以及read vs. write。如果最初只有一位客户访问资源,那么问题就变得简单了,因为可以采取对主要客户比较有利的方式,来分配资源。同样,如果可以预知资源将被用来读取或写入,也会有很大帮助。幸运的是,这样的描述完全可以覆盖大部分典型的应用范围。比如,渲染目标和纹理主要由GPU进行访问,并且分别被限制为写入目标和读取资源。另一方面,顶点缓冲的使用就比较复杂了。虽然静态的集合体主要由GPU来读取,但是动态的几何体则常常作为动画的一部分,先由CPU来生成,在由GPU进行处理。这些操作将导致频繁的CPU写入和GPU读取处理。

             Direct3D 10根据使用类型,把资源分为3类:default, immutable, dynamic,以及staging。Default对应比较简单的纹理,渲染目标,或者只由GPU访问的静态顶点缓冲。Default类型资源的初始化,通常需要复制另一资源的数据来进行。Immutable类型的资源不允许复制操作,但是在创建时,提供了另一种方法来进行初始化。Default和immutable类型的资源都不能映射到应用程序地址空间中,让CPU对它们进行访问。动态资源不但可以在管线中使用,也允许映射到CPU,进行只写的操作。适合于生成顶点数据,或者进行视频解码,等等。最后,staging类型的资源只允许CPU对其进行访问,但是,可以对它的数据进行复制。Staging类型的资源对于初始化或者获取只有GPU能访问的资源时比较有用。

    为了检查资源可以绑到管线的哪个位置,将在创建资源时,对资源的布局(placement)和编码方式进行验证。这些分类包括:顶点缓冲,索引缓冲,常量缓冲,shader资源(纹理),输出流缓冲,渲染目标,或者depth/stencil缓冲。这样的分类有两个目的:为驱动提供资源布局的信息,简化使用资源时的错误检查。

    HLSL 10

    高级着色语言广泛,迅速的被人们所接受,无疑显示了这种语言的重要性。为了支持新管线的特性,我们对高级着色语言――HLSL也提出了一些新的目标。简单的说,我们希望应用程序开发者使用HLSL高效的开发程序,而不需要了解虚拟机的复杂细节,比如,寄存器名称或常量缓冲索引。我们把目标精炼为以下几个小点:

    1. 应用程序不需要了解资源是如何配置和分配的。

    2. 把bind-by-position作为主要的绑定机制,而不是现在的bind-by-name。

    3. 程序员不再需要编写中间(汇编)语言代码

    第一个目标主要用于解决下面这个问题:当前系统中,应用程序开发者需要学会控制常量储存空间中的参数布局。开发者需要对多个shader进行全局分配和布局(global allocation and placement),以便在多个shader之间共享某些变量。通过在每个管线阶段添加的多个常量缓冲,我们相信,编译器有足够的信息能自动对缓冲进行布局,当然,程序员还是要控制把参数分配到常量缓冲中的操作。我们对语言进行了扩展,允许把缓冲名作为参数的一部分,进行声明。

    第二个目标则是设计思想的改变,主要与性能和未来的进一步发展有关系。Bind-by-name主要用于几个地方:对多个shader之间输入和输出数据进行匹配,让vertex shader的布局与vertex shader进行匹配,等等。虽然运行时可以让源数据和目标数据之间的名字匹配操作进行的比较高效,并且实现源—目标对缓存,但我们觉得这些只会带来不必要的复杂性,并且为运行时添加额外的负载。新系统中,将在多个方面发生变化。Shader的输出和输入将与签名(signature)相关,这和C总的函数原形有些类似。只有当前一阶段的输出和后一阶段的输入兼容时,管线才是有效的。兼容意味着输入和输出间element-by-element的对应。这里,我们允许下一阶段的管线,不使用上一阶段拖尾的(trailing)的输出数据。

    Bind-by-postion通用影响到IA和SO阶段的顶点缓冲绑定。但是,对这几个阶段,我们将创建独立的对象来封装(encapsulate)绑定,让代价较大的匹配操作只在创建时运行一次。

    第三个目标是比较具有争议性的,它表示我们的实现将不支持使用使用中间语言编写的shader作为输入。我们认为着色程序的发展已经达到了一定复杂程度,因此,手写的IL很难比编译器产生的代码高效。此外,当我们改进优化技巧,联接,以及与驱动的交互时,无法保证对手写IL代码的支持和兼容。作为诊断技术,系统将支持编译器生成中间代码作为输出,但是,我们不允许应用程序开发者修改编译器的输出,并把它注入到运行时中。

    如何最优化编译器生成的代码性能,有很多问题。首先,是优化的范围,驱动可能允许把中间语言转换为特定机器语言时进行优化。随着shader复杂性的增加,确保开发者在优化之上,有充分的控制权,改变操作的执行顺序是相当重要的。特别是需要保证关键代码的恒定性(invariance),多pass算法应该能生成同样的中间值,以便把这些值复制到分散的shader中。我们考虑了几种在源码上指定中间值的方案,比如,要求以一种特定的方式来编译子程序,而不管这个子程序是否是内连的。但是,研究最终让我们选择了更加常见的方法:使用与驱动编译器相关的,可选择的,定义良好的优化级别。

    请注意,我们首选的使用模型是在编写shader时,编译HLSL代码,在程序运行时通过驱动编译IL代码。这样的目的是希望减少程序运行时,编译shader所花费的时间。但是,在运行时再把HLSL编译为IL也是可以的。

    HLSL-FX 10

    我们注意到,编程管道的成功,改变了人们的观点,shader程序不但是引擎的一部分,同时,也是艺术家创作工具之一。为了适应这方面的应用,Effect(FX)系统对HLSL进行了扩展,允许使用它来初始化管线的固定功能部分。这和CgFX以及Cg所描述的方法很类似。虽然这些方法有共同的基础,但HLSL-FX是进行了革新的。我们的目标是,FX首先需要满足实时运行的需求,其次,才是作为内容创建者的工具。基于一些历史原因,这两者在很多方面都是由差别的。创作工具常常通过牺牲性能来换取灵活性,而我们的运行时则把性能放在第一位。

    通过我们积累的经验和努力,FX系统在易用性和性能方便都有了充分的提高。最终FX,HLSL,API,运行时,以及管线都紧密的结合到一起,作为互补的解决方案。我们同样对频繁的状态操作进行了改变,分离了名字查找以及匹配操作。

    再次来讨论处理状态改变的方式。构建应用程序的方法之一是渲染一系列几何体,每个几何体都有其各自的管线配置(一个Effect)。通过设置常量缓冲中的shader参数,纹理绑定,以及其他固定功能的状态,来传递参数给Effect。为了最大化性能,应用程序应该使用一个Effect来绘制所有物体。这是场景管理系统中,传统的状态排序解决方案。但是,对一个Effect来说,可能有几个层次的参数,比如,当前时间和观察点是属于per-frame的状态;纹理或顶点数据则是角色的静态状态;位置和姿势则是对象的动态状态,等等。我们使用了一个单独的常量缓冲来储存shader每个层次的参数,当绘制物体时,将直接绑定保存静态参数的常量缓冲,保存动态参数的缓冲则要经过更新后再绑定。

    在实际应用中,应用程序并不能总是通过Effect来排序对象。通常还可能有其他的机制,控制着绘图,比如物体的远近程度,透明度,等等。我们已经把Direct3D 10系统状态改变的代价进行了充分缩减,因此,重新配置整个管道也是很高效的。

    3/23/2008

    全奖有哪些 经济资助 美国奖学金

    key word: 美国奖学金 经济资助

    大家习惯把那些个经济资助都叫做奖学金,实际上呢~奖学金只是国外大学给学生经济资助的其中一种~拿奖学金一共有多少种涅~

    1.助学金(全额奖学金,又叫全奖)   英文叫做Fellowship(FS) 是所有经济资助中最高的一种,不仅学费生活费全免,还有其他的补助,你基本不用花一分钱,还有多余的钱钱拿~呵呵~但是呢,美国每年只有100多所学校有提供全奖的资格给1000个优秀的国际学生~所以竞争是非常激烈的,但是没关系~我们中国学生的综合素质水平还有智商本来就很有优势,努努力还是有希望的~我说的是本来就非常优秀的哈,世界前1000~也不是什么人都能达到的~很多朋友条件很一般还想申请名校申请全奖,其实是非常不实际的。

    2.奖学金(这才是奖学金哦) 英文叫做Scholorship(SS) 这个钱钱说不好,有的多有的少,我们习惯叫他半奖,表现为学费或者其他杂费的减免,这个奖学金的名额相对来说多了很多,我觉得只要是条件过得去的中国学生,好好准备自己的材料完全有可能申请到这个,但是我接触到的很多朋友不是找中介就是自己套模版,完全千篇一律失去自己的特色,老外每天看到一样格式的ps什么心情哈~中介也一样套模版,而且他根本不了解你也没心思去深入了解你,根本不可能帮你写出只属于你自己的精彩PS。这也是为什么很多人条件不错结果一点奖学金也没拿到,或者只拿到一点点。

    3.学费减免 英文叫做Tuition waiver(TW) 这个钱钱一般是公立大学才有的,我们都知道公立大学对自己州内的居民(美国人,不是留学生)的学费是远远低于外地来的学生和国际学生的~就好比我们北京的学生考北京的大学有照顾-_-!这个是针对比较优秀的学生,可以将其学费降低到州内学生的水平,就好比外地学生成绩好就给你北京学生的待遇~就是一个借读变正式读的区别~还是能省掉不少钱的。

    4.助研助教 英文叫做Research/Teaching Assistantship(RA/TA) 我个人是比较喜欢这个的,学习实践加钱钱~完美~实际上就是你用自己的劳动去赚钱钱,这个一般来说能申请到的都是条件比较优秀的学生。

    5.校内工作 英文叫做On-Campus job 就是学校的其他杂工啦,比如打扫卫生~比起TA,RA是差一些,但是一年大概能收入$8000,也能减轻不少经济压力,这个主要是经济有困难的学生申请。

    6.校外打工 英文叫做Off-Campus job 这个一般是要学生去了学习一年后才能去申请的打工,工资相比其校内工作高出2倍左右~也是很多留学生的选择。

    1/29/2008

    XBOX360拆机和拆X支架换螺丝全图片详细教程(modify)

    修好了三红机, 正常工作至今, 为避免自己的360以后也三红, 决定还是拆了

    X支架, 拍了图片攻略, 想拆机的朋友可以参考一下..

    本功略完全参考zhao96师傅的"国外最有效的三红修理方法"的帖子制作, 主要目的是为了让需要看攻略修机的朋友表跑到海外论坛了, 直接在XBOX-SKY就可以看到拆机过程.. 感谢提供工具和各类材料规格的师傅, 特别感谢提供"胶带法"去除原装导热硅胶的师傅, 用胶带真是比酒精方便多了... 鞠躬!

    工具:

    拆上下底板, 机壳背面卡口, X型支架卡口: 最小号的一字钟表螺丝刀.

    拆主机: T-9, T-10梅花螺丝刀.

    材料:

    导热硅胶: arctic silver (没有买到, 我用coolermaster的黄金导热硅胶代替)

    螺丝&垫片: 5X10mm沉头螺丝, 圆头螺丝都可以, 5mm螺丝配套垫片.

    (如果垫片外径过大, 压到线路板走线, 建议大家务必按照"国外最有效的三红修

    理方法"中介绍的方法: 2尼龙垫片+2金属垫片分别安装在主板2边 )

    导热硅胶刮片: 我是用coolermaster导热胶的包装盒做的..

    显存散热片: 也是coolermaster的, 我是太无聊了才加的..

    还有: 感谢最早提出: 加显存/内存散热片, 还有剪去机箱背面风扇网格的方法的师傅! 鞠躬! (显存散热片完全可以加, 机箱背面网格完全可以不剪, 虽然最早提出此项改进措施的师傅剪了, 我也跟着剪了.. 感觉风量是大了, 而且机箱背面样子更狠了.. 有气势了.. 但还是建议大家剪之前请再三思考.. 谢谢 )

    补充nec88师傅的擦硅胶新方法:

    在清理原先导热硅胶的时候,找到了新方法!散热片,

    直接用3M黑胶布有粘性的那面用力擦!很快就清理干净了!比一层一层的粘快多了!

    而且我用的还是大兴的3M黑胶布哦~~ 芯片也可用这方法,但擦的力气要温柔,轻

    轻的~轻轻的~很快也就清理干净了。

    以上攻略除了"螺丝没有上紧的状态开机3红变2红等2分钟", 还有"冷却后稍上紧螺丝"

    这2个步骤之外, 其他跟修复三红的过程是一样地.. 以后等有机会再修三红机的时候

    再拍照片来修改..

     

     

     

     

    1/13/2008

    The Remotest Distance in the World

    If the remotest distance in the world is not between life and death surely,
    It must be the love between you and me.
    You are right in front of me, but I just can't say "love you" tenderly.

    If that is not the remotest distance in the world surely,
    It must be the way I love you,
    I love you, but you can't be with me.

    If that is still not the remotest distance in the world surely,
    It must be the way I pretend not loving you.
    I feel the breath of love clearly, but I have to pretend it never hits me

     

    致大海

    再见吧,自由的原素!
    最后一次了,在我眼前
    你的蓝色的浪头翻滚起伏,
    你的骄傲的美闪烁壮观。
    仿佛友人的忧郁的絮语,
    仿佛他别离一刻的招呼,
    最后一次了,我听着你的
    喧声呼唤,你的沉郁的吐诉。
    我全心渴望的国度啊,大海!
    多么常常地,在你的岸上
    我静静地,迷惘地徘徊,
    苦思着我那珍爱的愿望。
    啊,我多么爱听你的回声,
    那喑哑的声音,那深渊之歌,
    我爱听你黄昏时分的幽静,
    和你任性的脾气的发作!
    渔人的渺小的帆凭着
    你的喜怒无常的保护
    在两齿之间大胆地滑过,
    但你若汹涌起来,无法克服,
    成群的渔船就会覆没。
    直到现在,我还不能离开
    这令我厌烦的凝固的石岸,
    我还没有热烈地拥抱你,大海!
    也没有让我的诗情的波澜
    随着你的山脊跑开!
    你在期待,呼唤……我却被缚住,
    我的心徒然想要挣脱开,
    是更强烈的感情把我迷住,
    于是我在岸边留下来……
    有什么可顾惜的?而今哪里
    能使我奔上坦荡的途径?
    在你的荒凉中,只有一件东西
    也许还激动我的心灵。
    一面峭壁,一座光荣的坟墓……
    那里,种种伟大的回忆
    已在寒冷的梦里沉没,
    啊,是拿破仑熄灭在那里。
    他已经在苦恼里长眠。
    紧随着他,另一个天才
    象风暴之间驰过我们面前,
    啊,我们心灵的另一个主宰。
    他去了,使自由在悲泣中!
    他把自己的桂 冠留给世上。
    喧腾吧,为险恶的天时而汹涌,
    噢,大海!他曾经为你歌唱。
    他是由你的精气塑成的,
    海啊,他是你的形象的反映;
    他象你似的深沉、有力、阴郁,
    他也倔强得和你一样。
    世界空虚了……哦,海洋,
    现在你还能把我带到哪里?
    到处,人们的命运都是一样:
    哪里有幸福,必有教育
    或暴君看守得非常严密。
    再见吧,大海!你壮观的美色
    将永远不会被我遗忘;
    我将久久地,久久地听着
    你在黄昏时分的轰响。
    心里充满了你,我将要把
    你的山岩,你的海湾,
    你的光和影,你的浪花的喋喋,
    带到森林,带到寂静的荒原。

    12/25/2007

    My X'mas Schedule

    December 24th, 2007 

    上午研读了A Midsummer Night’s Dream(From W. William Shakespeare's Comedy)

    Shakespeare真的很会搞怪, 不但主角被很涮一顿,连Athens(αἱ Άθῆναι)的小市民也不放过.太搞笑了.

    涉及了太多的Iliad(ΙΛΙΑΣ)中的内容,我又得把Homeros翻出来找,还把Bible也要回来了.

    中午商量去司门口的教堂,不想有一同学正从那边回来告知路上超级堵,无赖计划泡汤

    我们可得赶回来睡觉,Christmas Eve 太冷啦.通宵还是算了.

    下午不曾想开了党会讨论转正问题,作为共党好同志的我没看到通知(麻烦老大,您通知早点好不,4点开会,2点才贴)

    入会被狠批一顿,但谁敢阻我转正之路,一切顺利呀.(不枉我写了那么多的汇报,总结)

    PostScript:唯一不爽,开个会拖到近7点, & So Boring.

    晚上继续Shakespeare's Dream

    December 25th, 2007

    今天可是要祝福中国一个新的Java developer的诞生咯.

    整天的听Linkin Park写 code. 感觉真是爽.

    键盘敲的指尖冰凉, 思想的热浪在脑海中不断的涌动,描绘我的Developer生活.

    And right now I write this down. 为了不忘却2007的所有毁灭与一切重生.

    莎士比亚

    PS: also can see So What on hi.baidu.com

    12/24/2007

    Above us only sky

    John Lennon 是个无神论者啊

    liverpool的 机场竟然名叫 John Lennon Airport

    12/22/2007

    Eros in the Bible

    当读《圣经》的时候,至少有两件重要的事情需要记住。第一,
    总是要考虑经文的上下文,要去了解任何一篇写作(不管它是一封信、
    一个演讲或者一本《圣经》),一定得了解它的背景。想想是谁讲的、
    讲给谁听的、为何要这样写、以及当时的文化是怎样。就《圣经》而
    言,当时《圣经》时代的文化与社会情况和我们现代的风气是截然有
    差距的。例如,当《圣经》说,上帝命令人类要“生养众多”,记住
    这是针对以色列,一个被许多敌人包围的小沙漠国家,他们必须要“繁
    殖”才能生存。
      第二,《圣经》起初是口语记载的,然后采用古老的语言(主要
    是希伯来文在《旧约圣经》,希腊文在《新约圣经》)书写而成的。
    经数个世纪,它是用原文反复抄袭的,然后再翻译成其它的语言。就
    任何一个会说或会读至少一样它国语文的人而言,翻译需要诠释以及
    个人的判断能力。即使用最周详的方法,翻译人员及抄袭人员都有可
    能犯下人为的疏忽。
    希伯来语的经文述说了一篇广幅的历史故事,并且包括了很多书
    及文章。这正是耶稣所熟悉并且不断研读的圣经。对基督徒而言,它
    仍是整个信仰生活的根基。同时,它也包括了被引用来反对男女同性
    恋者的习见经文。创世记19章1-28节所讲的所多玛的罪是什么
    呢?这篇旧约经文经常被误用为上帝对同性恋不满的“圣经证据”。
    就很多人而言,这些城市之所以被毁灭,是因为居民犯了“同性恋的
    罪”。要说所多玛和蛾摩拉(Gomorrah)被毁灭是因为同性恋的原因,
    就是误解了经文。先知以西结在以西结书上,同样是上帝所默示的书,
    提到上帝对所多玛不满有许多不同的原因:“看哪,你妹妹所多玛的
    罪孽是这样:她和她的众女都心骄气傲,粮食饱足,大享安逸,并没
    有辅助困苦和穷人的手。她们狂傲,在我面前行可憎的事,我看见便
    将她们除掉。(字面而言,就是犯了崇拜偶像的罪)”(以西结书16
    章49-50节)。圣经中其它的提示,被诅咒的“所多玛的罪”是
    骄傲和冷淡的接待。所多玛人触犯了对“外人殷勤接待”的律法。此
    律法为他们在文化上得遵守的宗教仪式。引用创世记19章5节“把
    他们带出来,任我们所为”是大部份误译的基本原因。在这里所用的
    希伯来字yadha,英文“to know”,中文“任我们所为”,在《旧约》
    中出现了943次,并且只有在十个地方它意味着性交──每次被用
    时都指的是异性之间的关系。但即使所多玛人的确对天使犯了同性间
    攻击,这篇经文很明显就是在谴责强奸罪(当然也是一种极不友善的
    招待方式)。强奸,不管是异性或同性,在任何情况下都是罪。
    耶稣的确也以一个坦诚及不具威胁的方法来讨论人类的性问题。
    从一方面来讲,他肯定婚姻的好处,但从另一方面而言,他也说,婚
    姻并不适合每一个人(罗马书19章3-12节)。除此之外,《圣
    经》记载里没有一个字说到耶稣在指责同性恋。
    希腊文有四种爱
    第一个是「eros」指两性之间的爱情,此字总是含有性
    爱的意思。此字没有在新约中出现。
    第二个是「storge」指父母与子女之间,弟兄姊妹之间
    ,及亲戚之间的爱,此字也没有在新约中出现。
    第三个是「philia」,描写一种同时涉及身心灵的热情
    ,亲密而温柔的关係,係人间最高的爱,但它的光仍会
    摇曳不定,它的热仍然可以冷却。此字是非宗教的希腊
    文文献里最高的「爱」字。
    第四个是「agape」,此字是新约作者常用的「爱」字
    ,此字的名词从来没有在非宗教的希腊文文献中出现过

    ●agapan和philein之间的区别在於后者是较为本能性,较多涉
    及自然流露的感情或强烈的爱的感觉。前者则意味着经过思
    考而做出选择,并且有敬重、尊崇的含意。 所以新约提到人
    对上帝的爱时,都是用前者。 但是论到上帝爱他的儿子,则
    前者、后者(约翰福音五章20节)都有使用。
    ●agape的基本意义:
    a.一种普及万人的善意及相应的行为。
    b.有责任及能力去爱那些不可爱的人,去寻求别人的最高利
    益,不管那人是谁,也不论他所做或曾做的是什么事,也
    不计较他对此爱的回应如何。换言之,「功过应得之赏罚
    」这个观念在基督化的爱中是没有地位的。
    c. 此爱与人间的爱根本上不同的地方, 就是后者是一种「
    不由自主」的反应,但前者乃是一种整个人的操练,不是
    一种毫不费力便自然产生的情感上的回应。而是以意志克
    服自己,使自己能爱人的自我征服。
    d.一种热诚而深切的关心别人,设身处地的关心别人的爱。
    ●此种爱在基督徒的生命中所佔的重要地位:
    a.应是基督徒生活的气氛、是基督徒行事为人不变的动机。
    (弗五 2 西三 12、14 林前十六 14)
    b.此爱是基督徒合一的秘诀。
    (西二 2)
    c.爱是持守真理应有的态度,基督徒的自由应受爱的支配。
    (弗四 15)
    d.爱是带来实际行动的,导致实际的捐输与真诚的宽恕。
    (林后八7-8 24)
    e.此爱不是受感情左右、软弱无力的东西,而是具备敏锐的
    洞察力,能辨别是非,在需要时也不避讳严词谴责和警告
    。(腓一 9-10 林后二 4)
    ●这样的爱不是人自己可以产生出来的,而是圣灵的产品。基督
    徒需要追求爱(林前十四 1),亦即追求被圣灵引导、顺着圣灵
    而行(加拉太书五章18、16节)。

    12/21/2007

    The Twelve Days of Christmas

    Twelve Days of Christmas1 Twelve Days of Christmas2

     

    Lyrics

    Play Music !

    On the first day of Christmas,
    my true love sent to me
    A partridge in a pear tree.
    On the second day of Christmas,
    my true love sent to me
    Two turtle doves,
    And a partridge in a pear tree.
    On the third day of Christmas,
    my true love sent to me
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the fourth day of Christmas,
    my true love sent to me
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the fifth day of Christmas,
    my true love sent to me
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the sixth day of Christmas,
    my true love sent to me
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the seventh day of Christmas,
    my true love sent to me
    Seven swans a-swimming,
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the eighth day of Christmas,
    my true love sent to me
    Eight maids a-milking,
    Seven swans a-swimming,
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the ninth day of Christmas,
    my true love sent to me
    Nine ladies dancing,
    Eight maids a-milking,
    Seven swans a-swimming,
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the tenth day of Christmas,
    my true love sent to me
    Ten lords a-leaping,
    Nine ladies dancing,
    Eight maids a-milking,
    Seven swans a-swimming,
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the eleventh day of Christmas,
    my true love sent to me
    Eleven pipers piping,
    Ten lords a-leaping,
    Nine ladies dancing,
    Eight maids a-milking,
    Seven swans a-swimming,
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree.
    On the twelfth day of Christmas,
    my true love sent to me
    Twelve drummers drumming,
    Eleven pipers piping,
    Ten lords a-leaping,
    Nine ladies dancing,
    Eight maids a-milking,
    Seven swans a-swimming,
    Six geese a-laying,
    Five golden rings,
    Four calling birds,
    Three French hens,
    Two turtle doves,
    And a partridge in a pear tree!

    Postscript:

    Religious symbolism of The Twelve Days of Christmas (The 12 Days of Christmas)

    1 True Love refers to God
    2 Turtle Doves refers to the Old and New Testaments
    3 French Hens refers to Faith, Hope and Charity, the Theological Virtues
    4 Calling Birds refers to the Four Gospels and/or the Four Evangelists
    5 Golden Rings refers to the first Five Books of the Old Testament, the "Pentateuch", which gives the history of man's fall from grace.
    6 Geese A-laying refers to the six days of creation
    7 Swans A-swimming refers to the seven gifts of the Holy Spirit, the seven sacraments
    8 Maids A-milking refers to the eight beatitudes
    9 Ladies Dancing refers to the nine Fruits of the Holy Spirit
    10 Lords A-leaping refers to the ten commandments
    11 Pipers Piping refers to the eleven faithful apostles
    12 Drummers Drumming refers to the twelve points of doctrine in the Apostle's Creed

    12/18/2007

    Wedding Day

    artist:Seal

    Today, I give it, all to you,
    On this day we recall the memories,
    Of what we're goin' through,
    This day, we're gonna win it,
    Givin' you all above,
    Many minds will recall with us tommorrow,
    Followin' our love,
    In my heart a place,
    A most special place,
    And it's all for you,
    You're my girl, you're my, angel,
    The will's the same for us,
    Honey they can't be wrong,
    Cause everybody knows it was hard to break the sorrow,
    Then you came along,
    In my heart, a place,
    A most special place,
    And it's all for you,
    You're my girl, you're my angel, you're my girl
    Oo ooh, aa aah, oo ooh, oo oo oo ooh, oooh and you're the one,
    [ Wedding Day lyrics found on http://www.completealbumlyrics.com ]
    Padada papada, aah aah, aah aah,
    Padada papada, aah aah, eee ee ee,
    In my heart, a place,
    A most special place,
    And it's all for you,
    And it's all for you,
    In my heart, a place, and it's all for you,
    A most special place, and it's all for you,
    And it's all for you,
    You're my girl,
    You're my heaven, you're my world,
    In my heart, a place, and it's all for you,
    A most special place, and it's all for you,
    And it's all for you,
    You're my girl,
    You're my angel, you're my girl
    Padada papada, aah aah, aah aah,
    Padada papada, aah aah, aah aah,

    这歌声真的是相当的直入心脾

    提供下载:

    http://www.verycd.com/topics/205175/

    学习揉弦

    有几种方法,你可以试试,可能会有利于学习揉弦:
    1.一是做指端关节前后屈仰动作。先在桌子上练,分别练习各个手指一关节向后躺下(不是完全贴在桌子上),再立起的动作,再分别作左右晃动。由快到慢,最后五个指头一起练习。
    2.首先应学会手腕揉弦。其方法可先将手臂放在大腿上或椅臂上,然后将手腕放松前后摇动,力求平均,待动作习惯自如后,再放到指板上练习。 同时要注意:
    在手腕前后揉动时,带动手指的关节,手指的触弦点不能随着手腕的揉动而移位。在练习手腕揉弦时,可先从三指开始。因为用三指揉动可以使动作更为宽松,然后再练习二指和一指。而练习四指时,还可将三指紧靠四指帮助揉动。这样的练习会使颤动的效果更为自如。在手腕揉弦练习的基础上也可逐渐学习和熟悉手臂的揉弦和手指的揉弦。目的是为了更好的丰富演奏上的表现力,适应于各种力度和情绪变化的需要。
    我本人觉得一开始学揉弦的时候应拉些较为舒缓的曲子,这样比较容易让自己渐渐适应揉弦的.
    同时我想对第一个回答的人说一下:真的可以自学么,我觉得小提琴这个东西还是很深的,最好有老师辅导,否则自己若学错了什么地方,想改也不好改了~~~`

    11/28/2007

    waiting for the toefl's bulletin

    time through my eyes so fast as i could not see what was going on then.

    toefl is coming, i have already arrange the test in February or March,

    after the gre day, i lose my passion no the english words and do not have any analytical writing practise at all.

    once i can not persist, i would backward.

    and the score comes out 1300/3.0 

    Review my whole life, i get everything i wanted, but for reward, almost nothing.

    i should say sorry to one who raises or helps me.

    Post script: Suffering more ...

    10/17/2007

    世界著名骗局一览表

    加的夫巨人骗局
      这是发生的最早也是最大的一个媒体骗局,“加的夫巨人骗局”开始于1869年,工人们在纽约州加的夫海港的一座农场挖井,挖出一座神秘的化石,其形状是一个高达10英尺的巨人。当报纸对此进行了大篇幅报道之后,争论战就此打响,甚至还有一些“专家”推测这个“人类化石”应该来源于《圣经》中记载过的那段日子:巨人在地球上漫步。与此同时,农场主威廉·C·纽厄尔将自己的农场对外开放,允许别人买票来观看这座巨石像,很快,他就以3万美金的价钱将化石卖给了位于锡拉库扎港口的一个大财团。两个月之后,这座化石开始了巡展,骗局才被纽厄尔的一个远房亲戚乔治·赫尔揭穿,这位雪茄销售商表示,他们联手制造了这个骟局,只为了证明美国人是多么地容易上当受骗。如今,这座“加的夫巨石”保存在纽约州古珀镇的一家农业博物馆中。
    皮尔丹人骗局
      1912年,英格兰的皮尔丹有一位业余收藏家查尔斯·道森对外宣称了一个重大的发现,那是一个头盖骨的化石,据说可以解开人猿向人类的进化谜团……整个世界都为此沸腾了,一些人类学家甚至将这个发现当成了自己毕业研究的事业。1953年,科学家才意识到这块闻名于世界的头盖骨其实是伪造的,是用一块地球上随处可见的动物骨头做成的。直到今天,这个骗局仍然被当作科学史上最著名的欺骗行为之一。
    维梅尔骗局
      二战之后,有人从纳粹军官赫尔曼·戈林的收藏中发现了一幅荷兰大师约翰尼斯·维梅尔的作品……官方迅速追查到,这幅画是由一位荷兰画家汉斯·范·梅赫伦卖给戈林的。梅赫伦以叛国罪被捕后,却在法庭上语出惊人,原来他卖出去的画是自己伪造的,为了证明这一点,他还在监狱亲手复制了维梅尔的另一幅画。事实证明,梅赫伦是这个世界是最伟大的复制画家之一,经过了仔细的鉴定,还发现了另外14幅假冒成维梅尔手笔的画,梅赫伦从中获利数百万美元。他模仿的手段如此之高明,甚至在他公开表示了自己的作假行为之后,仍然有一些专家拿不准那些画到底是不是真的。
    石器时代的部落骗局
      上世纪70年代,费迪南德·马科斯总统在任期间的文化部长曼纽尔·伊利赞尔德向全世界宣告,他与一个在菲律宾新发现的部落进行了“第一次亲密接触”,即塔桑代人,据说他们代表着人类远古的过去--塔桑代人就像生活在石器时代一样,住在山洞里,全身赤裸,过着钻木取火、使用石器或竹木工具、主要靠采集为生的生活。《国家地理》杂志以及媒体的新闻网都有派记者过去,但是却几乎没有人能够找到他们。然而当马科斯倒台之后,那些对塔桑代人进行研究的人却发现,他们竟然穿着T恤衫和牛仔裤,而且会使用大量的现代工具。这个部落的成员随后承认他们收取了伊利赞尔德的酬金,丢掉了他们的衣服,使用假的石器,在这里过 “原始”的生活。
    波士顿马拉松骗局
      1980年,第一个在波士顿马拉松大赛中穿过终点线的女人震惊了在场的每一位评委,不仅仅是因为她打破了这个项目的世界纪录,同时,她在这个领域中可以说是完全没什么名气。她的名字叫罗丝·鲁兹,后来,调查机构和目击证人都表示鲁兹在穿越终点线之前,至少比别人少跑了0.5英里……尽管鲁兹一再声明这种指责毫无根据,然而评委会仍然取消了她第一名的成绩,而第二个穿过终点的杰姬·加罗成了新的冠军。
    毒瘾骗局
      这是发生在1980年最能打击新闻业的丑闻之一。那一年,《华盛顿邮报》的黑人女记者珍妮特·库克被授予普利策奖,因为她报道得那篇感人、心碎的关于一个名叫吉米的8岁男孩染上毒瘾的故事。当政府要求库克公开男孩的真实身份,好给予他适当的救助时,她却拒绝了,并声称这种做法会危及自己的生命。但是在连续的压力之下,库克最终只好承认“吉米”是一个完全虚构的人物。
    希特勒日记骗局
      发生在1983年最大的新闻故事之一,德国的《明星》周刊表示收藏了一本阿道夫·希特勒1932-1945年的日记本。日记本是在一架坠毁的飞机中找到的,并被一名东德的将军保存了几十年。在经历了一场争夺版权的风波之后,《明星》表示这些日记百分之百是真的。然而,当专家最终有机会看到这些日记时,他们发现日记不但是伪造的,而且手法还非常拙劣。后来,《明星》只好承认自己被一名西德的收藏家给骗了,这些日记都是那个人自己写的。
    米力瓦利合唱团骗局
      德国的米力瓦利合唱团是上世纪80年代末乐坛上的一记重型炮弹,同时还赢得了1989年的格莱美奖。然而,后来却曝出让所有的歌迷都崩溃的丑闻,原来这个二重唱组合并没有什么音乐天分,只是通过对口型造假……米力瓦利合唱团被剥夺了格莱美奖,即使他们曾尝试着发行自己的专辑来恢复人气,可惜他们的丑闻对于歌迷的伤害实在是太深了。

    9/27/2007

    WAP包月-手机上qq wap www msn UCMAI BBT及手机上IE下载、电脑上网设置

    一、手机上CMWAP方法
    利用CMWAP方式上网设置全功略
    作者:OK527大头虾
    利用CMWAP上WWW、WAP、MMS的不用切换的最合理的设置
    设置如下:
    A、数据连接设置
    进设置/数据连接/菜单/编辑连接,将:1 拨号连接、2 VPN连接、3 代理服务器连接、4 GPRS连接 里的所有东西全删掉!这样大家就不用担心上CMNET,不删也没关系,把有接入点是CMNET的,改个名就行了。以后有用到CMNET的时候改回来就好了。
    然后进 3 代理服务器连接 点击菜单/ 1 添加:
    描述:www
    连接方:WAP网络
    连接到:Internet
    代理服务器:10.0.0.172:80
    类型:HTTP
    完成。
    (另注:这个是用来上WWW的代理)
    再添加:
    描述:wap
    连接方:WAP网络
    连接到:安全WAP网络
    代理服务器:10.0.0.172:9201
    类型:WAP
    完成。
    再按完成。
    (另注:这个是用来直接上WAP的,直接上WAP是在包月里的,不要再代理)
    跟着进 4 GPRS连接,点击菜单/添加:
    描述:ok527
    连接到:WAP网络
    访问点:CMWAP
    完成。
    再按完成。
    第三次按完成。
    现已回到数据连接主菜单,点击菜单/选项:
    我的桌面机连接到:安全WAP网络
    完成。
    进入数据连接主菜单,将主菜单“安全WAP连接”和"WAP连接"、“Internet” 连接都选择ok527,按完成.
    B、彩信设置
    进彩信/选项,将连接设置选为“WAP网络”.按完成。
    C、IE代理设置
    进IE浏览器/菜单/选项/连接:
    去掉“自动检测设置”的勾;
    选择网络:Internet
    完成。
    是因为,"Internet 连接"和“安全WAP连接”都已有代理,而彩信软件本身已经设置好代理了,于是只剩下“WAP网络”是无代理的,所以彩信中心设置的连接设置要选为“WAP网络”.
    这样的话不管发MMS或上Internet或Wap,它们所使用的GPRS连接都是ok527,就不会有切换的问题.
    点击一个www开头的网页,打开后跟着点击一个wap开头的页面看看Internet能否打开?
    D、UCWEB,JAVAQQ,UCMAIL
    如果用UCWEB,JAVAQQ,UCMAIL的,在JAVA里的网络设置选WAP网络就行了,HTTP代理不用选就能上,速度很快的,如果你要选HTTP代理,照样能上,这样的话你又多了一层代理,现在很多都是这么设的。大家可以试试。
    JAVAQ模拟器我用过的是DeltaMIDP
    E、BBT
    邦邦通可以用来代替QQ、MSN,并用又有它自己的即时通讯系统。比较不错。
    它与上面的UC系列有三个软件不同,一定要选上“使用代理服务器”,否则不能登陆服务器。
    附一点使用心得,有时上网连接久了,或用其它程序会导致连接设置丢失,怎么办呢,重起一下就好了。。哈哈。。。。
    二、以下是电脑上网方法
    手机连电脑让电脑上GPRS的
    先下载535驱动(和565通用),拨掉手机数据线,然后调出2K或XP的任务管理器,结束wcescomm.EXE,然后在手机里面选择:开始-附件-调制解压器连接,选择你与电脑的连接方式(USB或者红外),然后右软件选择“激活”(千万不要点完成,否则调制解调器又关上了),连上数据线,这时候电脑就会检查到新设备,装好驱动。然后双击刚才下载的那个压缩包里面的USBModem_Dialer,在最下面那行”internet“改为”cmwap“,然后拨号!成功后右下角有网络图标。
    注:第一次安装驱动时可能要重新插拨一次数据线。另外,我提供下载的USBModem_Dialer拨号软件已将internet改为默认cmwap了,不用担心忘记改又用CMNET方式上网。
      因为CMWAP上网方式中国移动已经封了IE、FlashGet、MSN,所以这三个软件不行。上网浏览用OPERA,要进行设置,工具\首选项\高级\网络\代理服务器下HTTP、HTTPS、FTP等后面全部填上10.0.0.172,端口填80。同样位置,工具\首选项\高级\网络\中“浏览器识别”选“识别为Opera”。
    QQ还没被封,只要菜单\系统设置\代理设置中选“使用自定义的网络设置”,类型为“HTTP代理服务器”,服务器填10.0.0.172,端口填80。
    那么有人可能会问不支持HTTP代理的软件怎么办?看下面
    另外你要先安装ccproxy和sockscap两个软件了。
    ccproxy的设置只需要改动一处,其他均用默认值。改动的地方:
    设置->高级->二级代理,选择“启用二级代理”,代理地址为“10.0.0.172”,代理协议“Http”,端口“80”。
    sockscap的设置:
    file->setting:socks server设为“127.0.0.1”,port“1080”,其他可以不动。
    把你需要用代理的软件如ie之类的,拖到sockscap里面。
    以后用的时候只需要先启动ccproxy,然后启动sockscap,如果要运行ie,只要点击sockscap窗口里面的图标即可。
    现在除了OUTLOOK不能用外其它软件都可以上网了, 已经实现了CMNET的所以功能了. 下面是可以成功连接的软件
    上网 - MYIE, OPERA, FIREFOX
    邮件 – Foxmail
    下载 - Flashget ( 已经试过成功下载20M的软件 )
    聊天 - QQ & MSN
    游戏 - QQ游戏, 联众, 中国在线游戏
    杀毒 - McAfee, 瑞星 ( 在线升级 )
    注意:支持直接HTTP代理的软件最好用(10.0.0.172:80)直接代理,因为我感觉用ccproxy和sockscap比较慢。
    三、以下是手机IE下载方法
    首先要安装手机下载插件,然后才能用535上的IE下载文件,支持RAR、MP3、ZIP等,好像支持的格式还不少。偶一直没找到直接下载网页图片的方法,望知道的大侠相告。
    我试过下载2.5M的MP3,一点没问题。就是点击下载后连接比较慢,一但连上后下载速度大约在6k/s,跟拨号差不多。我下载的MP3自动放在\Storage\Applicatio Data\Volatile目录下。