<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://yinhao1980.spaces.live.com/mmm2008-04-25_07.02/rsspretty.aspx?rssquery=en-US;http%3a%2f%2fyinhao1980.spaces.live.com%2fcategory%2f%e8%ae%a1%e7%ae%97%e6%9c%ba%e4%b8%8e%2bInternet%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>一直最用心，永远最好听: 计算机与 Internet</title><description /><link>http://yinhao1980.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=cat%25E8%25AE%25A1%25E7%25AE%2597%25E6%259C%25BA%25E4%25B8%258E%2bInternet</link><language>en-US</language><pubDate>Sat, 10 May 2008 12:57:22 GMT</pubDate><lastBuildDate>Sat, 10 May 2008 12:57:22 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://yinhao1980.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>-812418273468608274</live:id><live:alias>yinhao1980</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>skype电话</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1372.entry</link><description>&lt;div&gt;    春节的时候给skype充了20元钱，后来觉得不错，又买了100快的国内卡，可以打900分钟国内电话，呵呵。已经快3个月，还剩余100多分钟。没有最便宜，只有更便宜，于是开始在淘宝上买充值卡，于是看到一个好东西，1元钱买8个帐号，每个帐号最多可以打十分钟国内电话。为什么是最多呢？因为这是个一次性电话，如果通话一分钟你就挂了，那这个帐号也就失效了。今天一下子用了四个帐号，其中两个因为跟老爸商量事情，于是10分钟后用新帐号重新拨打了一次&lt;img title="眨眼" style="vertical-align:middle" height=19 alt="眨眼" src="http://shared.live.com/HjKMzTS-xzcms40!CabizA/emoticons/smile_wink.gif" width=19&gt;。只要网速可以的前提下，语音质量还是很不错的，专业点的话可以这么说：MOS值能达到4，顺便说MOS=5是最高级别了。&lt;/div&gt;
&lt;div&gt;    前天去了一下好又多，发现好又多超市里的塑料袋变薄了，收银员也这么说，呵呵。6.1后如果不提供塑料袋的话，我想我买东西会少很多了......&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+skype%e7%94%b5%e8%af%9d&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1372.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1372.entry</guid><pubDate>Sat, 10 May 2008 12:45:24 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!1372/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1372.entry#comment</wfw:comment><dcterms:modified>2008-05-10T12:57:22Z</dcterms:modified></item><item><title>测试一下你的杀毒软件的杀毒能力</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1181.entry</link><description>&lt;div&gt;
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;一段小小的代码为什么有如此大的魅力?请看:一段代码 测你的杀软到底多能干!&lt;/strong&gt;
&lt;p style="text-indent:2em"&gt;前言：标题纯属好玩。如有雷同，纯属抄我！不过这段代码还是值得大家一试!看看你的杀毒软件能不能干吧！
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;鸣谢欧洲计算机防病毒协会提供本测试病毒代码。本代码尽管测试，无任何危险。&lt;/strong&gt;
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;&lt;font color="#ff0000"&gt;测试代码&lt;/font&gt;：&lt;/strong&gt;
&lt;p style="text-indent:2em"&gt;---------------------请复制下面的代码到文本中保存-------------------
&lt;p style="text-indent:2em"&gt;X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
&lt;p style="text-indent:2em"&gt;---------------------请复制上面的代码到文本中保存-------------------
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;测试方法：&lt;/strong&gt;
&lt;p style="text-indent:2em"&gt;1.鼠标右键点击桌面空白处，创建一个“文本文档”。
&lt;p style="text-indent:2em"&gt;2.将下面这段测试代码复制到“文本”里，保存，然后可以直接右键点击这个文本，用杀毒软件扫描。也可以等一会，如果你的杀毒软件还行，会自动报毒并将该文本删除，那就可以初步放心了。
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;测试原理：&lt;/strong&gt;
&lt;p style="text-indent:2em"&gt;该段代码是欧洲计算机防病毒协会开发的一种病毒代码，其中的特征码已经包含在各种杀毒软件的病毒代码库里，所以可以用做测试病毒扫描引擎。
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;测试等级:&lt;/strong&gt; 
&lt;p style="text-indent:2em"&gt;特等：复制完代码后便提示内存有病毒 
&lt;p style="text-indent:2em"&gt;优等：刚保存完就提示病毒(或者直接删除) 
&lt;p style="text-indent:2em"&gt;中等：保存后几秒提示病毒(或者直接删除) 
&lt;p style="text-indent:2em"&gt;下等：需自己启动病毒扫描查杀才提示病毒(或者直接删除) 
&lt;p style="text-indent:2em"&gt;劣等：无论怎么扫描都无法提示病毒(或者直接删除) 
&lt;p style="text-indent:2em"&gt;&lt;strong&gt;最后说明：&lt;/strong&gt;
&lt;p style="text-indent:2em"&gt;请大家测试完后在评论里说下自己用的什么杀毒软件以及排什么等级，那这篇文就好似中文杀毒软件评测文章了，也可以惠及更多的网友了。(转自&lt;a href="http://hi.baidu.com/u414/"&gt;http://hi.baidu.com/u414/&lt;/a&gt;)
&lt;p style="text-indent:2em"&gt;我用的McAfee，属于优等&lt;img title="大笑" style="vertical-align:middle" height=19 alt="大笑" src="http://shared.live.com/HjKMzTS-xzcms40!CabizA/emoticons/smile_teeth.gif" width=19&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e6%b5%8b%e8%af%95%e4%b8%80%e4%b8%8b%e4%bd%a0%e7%9a%84%e6%9d%80%e6%af%92%e8%bd%af%e4%bb%b6%e7%9a%84%e6%9d%80%e6%af%92%e8%83%bd%e5%8a%9b&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1181.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1181.entry</guid><pubDate>Tue, 30 Oct 2007 12:57:29 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!1181/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1181.entry#comment</wfw:comment><dcterms:modified>2007-10-30T12:57:29Z</dcterms:modified></item><item><title>祈祷:-)</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1172.entry</link><description>&lt;div&gt;&lt;font color="#e36c09"&gt;这个周一接到一个010区号的电话，并且称呼我HaoYin，我一愣，后来才知道是HP给我打过来的，关于nx 6330雪花屏的。说让我耐心等一下，HP工程师正在解决雪花屏问题，并且问我刷了新的BIOS后是否有效果。我说我没有刷，因为我看到论坛那么多同学都刷了没效果，于是我就放弃了，于是HP姐姐叫我刷一下BIOS，得知我在上海，让我到上海的金牌服务那里刷机，并且为了表示诚意，将送我一个小礼物。 从来没有打过HP的电话询问雪花屏的问题，怎么会跟我打电话了，后来从称呼HaoYin知道肯定是他们收到了我给HP CEO的E-&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#e36c09"&gt;Mail。我也收到了回信，肯定不是CEO回复的，但是肯定是美国回复的。&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#e36c09"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#e36c09"&gt;我相信群众，因此也就懒得去刷机了。这几天有两个未接电话，今天又接到一个，终于听到了，说下周HP上门给我刷机。因此，我开始祈祷，希望把我的主板，屏幕刷烧了就好了，然后退钱给我，然后我就能换个T61&lt;img title="大笑" style="vertical-align:middle" height=19 alt="大笑" src="http://shared.live.com/HjKMzTS-xzcms40!CabizA/emoticons/smile_teeth.gif" width=19&gt;。&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#e36c09"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#e36c09"&gt;过会听听许茹云的《美梦成真》，希望我这个小小的dream comes true......&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#e36c09"&gt; &lt;/font&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e7%a5%88%e7%a5%b7%3a-)&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1172.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1172.entry</guid><pubDate>Fri, 26 Oct 2007 11:35:06 GMT</pubDate><slash:comments>3</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!1172/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1172.entry#comment</wfw:comment><dcterms:modified>2007-10-26T11:39:28Z</dcterms:modified></item><item><title>不让我闲着啊</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1128.entry</link><description>&lt;div&gt;快放十一了嘛，节前兴奋让我没有多大心思工作了&lt;img title="尴尬" style="vertical-align:middle" alt="尴尬" src="http://shared.live.com/TbRB5QUAj!9gMQWPUATZLg/emoticons/smile_embaressed.gif"&gt;。于是上上网，看看论坛，结果中毒了。上的是TclChina论坛，很健康的一个论坛。FireFox上面弹出一个东西，让我安装，结果我太相信这个论坛了，也太相信FireFox的抵抗力了，结果硬是中了木马。&lt;/div&gt;
&lt;div&gt;于是开始有条不紊的跟病毒作斗争，小木马有啥好怕的，开始上网搜索病毒的资料，查杀方法。看着病毒都被卖咖啡一个个挡住了，可就是不能根除。用了据说能啥10w木马的360卫士，升级到最新病毒库，结果扫描下来一个木马都没有，居然还认为我的卖咖啡是病毒。一气之下恢复ghost了，10分钟后系统回到最干净的状态，木马没了，无能的360卫士也没了。继续使用我的卖咖啡&lt;img title="大笑" style="vertical-align:middle" alt="大笑" src="http://shared.live.com/TbRB5QUAj!9gMQWPUATZLg/emoticons/smile_teeth.gif"&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e4%b8%8d%e8%ae%a9%e6%88%91%e9%97%b2%e7%9d%80%e5%95%8a&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1128.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1128.entry</guid><pubDate>Sun, 30 Sep 2007 00:04:06 GMT</pubDate><slash:comments>4</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!1128/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1128.entry#comment</wfw:comment><dcterms:modified>2007-09-30T00:04:06Z</dcterms:modified></item><item><title>我用的FireFox的插件</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1038.entry</link><description>&lt;div&gt;昨天宽带开通了，铁通的。虽然网上有人说铁通上网的信号跟小灵通打电话的信号差不多，但是人家便宜啊，于是我就装了。从昨天来看，速度还是很快的，可能我这栋楼里只有我这么一个用户吧，第一个吃螃蟹的人，需要点奖励的，希望铁通以后能争气啊。&lt;/div&gt;
&lt;div&gt;网开通了，电脑的软件当然也需要丰富了，上班前没有忘记吧最新的QQ，MSN，Skype，飞信拷到U盘里。回来后这些很容易搞定了，不过Firefox却耗了很长一段时间。平常常用的几个插件，譬如管理tab的&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1122"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Tab Mix Plus&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;，拦截广告的&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1865"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Adblock Plus&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;一会就安装好了，最重要的就是标签同步了。标签同步可以让我办公室的电脑上的保存的常用网址同步到我家里的电脑上，这样就可以省得每此新装的电脑去收集管理常用的网页了。问题是Firefox的同步插件很多，我忘记办公室电脑装的是哪个插件名了，最后google了半个小时，印象中好像是&lt;a href="https://addons.mozilla.org/en-US/firefox/addon/2410"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;Foxmarks Bookmark Synchronizer，&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;事实证明我的印象没错。好事还要多磨，结果0.89死都下不来，网上的连接都指向同一个地址，估计是服务器有问题了，最后下载了0.81版本的，功能估计差不多，顶多以后升级好了。安装完，输入我的帐户信息，立刻同步，熟悉的标签一个个都回来了，呵呵。有芒果网易旅游，有51ditu等等乱七八糟的，我常去的&lt;img title="眨眼" style="vertical-align:middle" alt="眨眼" src="http://shared.live.com/QGncRMHLLpIcOfCh--4aMA/emoticons/smile_wink.gif"&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;现在除了MSN的space我会用IE，其他都使用FireFox了。如果点击MSN上的space按钮能弹出FireFox，而不是IE，我估计早就忘记IE是什么样子老。推荐一个FireFox的网站，这里只有你想不到的，没有你得不到的：&lt;/div&gt;
&lt;div&gt;&lt;a href="https://addons.mozilla.org/en-US/firefox/browse/type:7"&gt;https://addons.mozilla.org/en-US/firefox/browse/type:7&lt;/a&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e6%88%91%e7%94%a8%e7%9a%84FireFox%e7%9a%84%e6%8f%92%e4%bb%b6&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1038.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1038.entry</guid><pubDate>Wed, 12 Sep 2007 23:45:36 GMT</pubDate><slash:comments>4</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!1038/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1038.entry#comment</wfw:comment><dcterms:modified>2007-09-13T05:03:08Z</dcterms:modified></item><item><title>Fibre Channel入门</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1034.entry</link><description>&lt;p&gt;转载自存储在线 &lt;p&gt;&lt;b&gt;&lt;font color="#0070c0"&gt;一、光纤通道基本架构&lt;/font&gt;&lt;/b&gt;  &lt;p&gt;  FC-4 Upper Layer Protocol:SCSI,HIPPI,SBCCS,802.2,ATM,VI,IP &lt;br&gt;  FC-3 common service &lt;br&gt;  FC-2 Framing Protocol /Flow Control &lt;br&gt;  FC-1 Encode/Decode &lt;br&gt;  FC-0 Media:Optical or copper,100MB/sec to 1.062GB/sec &lt;br&gt;  描述： &lt;br&gt;  FC-0:物理层，定制了不同介质，传输距离，信号机制标准，也定义了光纤和铜线接口以及电缆指标 &lt;br&gt;  FC-1:定义编码和解码的标准 &lt;br&gt;  FC-2:定义了帧、流控制、和服务质量等 &lt;br&gt;  FC-3:定义了常用服务，如数据加密和压缩 &lt;br&gt;  FC-4：协议映射层，定义了光纤通道和上层应用之间的接口，上层应用比如：串行SCSI 协议，HBA 的驱动提供了FC-4 的接口函数，FC-4 支持多协议，如：FCP-SCSI,FC-IP,FC-VI。 &lt;p&gt;&lt;b&gt;&lt;font color="#0070c0"&gt;二、FCP-SCSI&lt;/font&gt;&lt;/b&gt;  &lt;p&gt;    FCP-SCSI:是将光纤通道设备映射为一个操作系统可访问的逻辑驱动器的一个串行协议，这个协议使得以前基于SCSI 的应用不做任何修改即可使用光纤通道。FC-SCSI 是存储系统和服务器之间最主要的通信手段。SCSI 扩展了COPY 命令，一个新的ANSI T10 标准，也支持SAN 上存储系统之间通过数据迁移应用来直接移动数据。 &lt;p&gt;    FCP-SCSI 和总线联结方式相比的优点在存储局域网上已经得到证明，FCP-SCSI 提供更高的性能(100M/sec),更远的连接距离(每连接最远达10 公里)，更大的寻址空间(最大16000000 个节点)。FCP-SCSI 使用帧传输取代块传输。帧传输以大数据流传输方式传输短的小的事务数据，这样可提高服务质量。FCP-SCSI 支持为了简化管理和资源存储的存储“池”技术的网络配置。FCP-SCSI 支持提高可靠性和可用性的编码技术。  &lt;p&gt;&lt;b&gt;&lt;font color="#0070c0"&gt;三、FC-IP&lt;/font&gt;&lt;/b&gt;  &lt;p&gt;    FC-IP 将光纤通道地址映射到IP 地址，FC-IP 的寻址方式：广播一个IP 地址，然后从存储节点返回一个MAC 地址。如果SCSI 设备不能区分FCP-SCSI 帧和FC-IP 帧，IP 广播可能导致错误。HDS 系统可通过检测帧头来区分FCP-SCSI 帧和FC-IP 帧，没有这个能力的存储系统必须通过别的方法(如switch zoning)来阻止FC-IP 帧被广播到fibre 端口。 &lt;p&gt;    FC-IP 和以太网比有几个优点：可以和类似FCP-SCSI 存储的内部连接架构集成，以节省使用成本；传输速度更快，效率更高。  &lt;p&gt;    以太网传输数据包最高到1500 字节。包是以太网中基本校正单元，在每一帧后都会导致消耗CPU 周期的一个中断。在GB 以太网里负载通常也是一个限制因素，避免占用全部带宽。而FC-IP 数据帧达到2000 字节，FC-IP 校正基本单元是一个多帧队列。MTU可以达到64 个帧，比较以太网而言允许光纤通道在主机中断之间传输更多的数据。这种MTU可减少需要的CPU 周期和提高传输效率。 &lt;p&gt;    FC-IP 还有使用光纤通道网络的优点，光纤通道网络是基于流控制的封闭网络。以太网设初是考虑到要通过无流控制的公网，它在阻塞发生时，在一贯时间段之后返回并重发包，消耗额外的CPU 周期。IP 应用无须修改即可运行于FC-IP，享受光纤通道带来的高速和大大减少处理中断。 &lt;p&gt;    Emulex 和JNI 是提供FC-IP 驱动的光纤通道HBA 厂商。他们计划传递一个“Combo”以支持FCP-SCSI 和FC-IP。Troika 提供支持FCP-SCSI、FC-IP、FC-IP（QOS）的控制器，QOS 允许网络管理员分配协议优先权。 &lt;br&gt;&lt;p&gt;&lt;font color="#0070c0"&gt;&lt;b&gt;四、FC-VI&lt;/b&gt;&lt;/font&gt;  &lt;p&gt;    FC-VI 是在光纤通道上实现VI 架构，它允许数据在光纤通道接点的内存地址之间快速迁移。FC-VI 是VI 架构的光纤通道应用，一个intel,Compaq,100 多家厂商和组织为了减少服务器通信等待的协议标准。VI 设计的初衷是为了达到集群计算机之间通信等待减少和高带宽的效果。在光纤通道网络里，通过和另一节点接口的HBA 的缓冲区和应用内存之间直接访问(DMA)的方法，这个目标完成了VI 架构建立了内存注册机制，实质上就是限制用户内存的内存地址并支持数据从用户内存直接传输到HBA 的缓存，然后这个数据可以通过外部介质传输到另一个服务器应用内存的指定位置（注册）。如果要使用VI，应用、数据库或操作系统必须从 www.viarch.org 获得相应的API。DB2 6.1 和Oracle8.1 都在他们的数据库集群应用中使用了VI 架构。 &lt;p&gt;    IP over Ethernet 的延迟包括TCP 栈（CPU 负荷）和以太传输延迟。100BaseT 的最大传输速率为100Mbit/sec，FC-IP 减少了以太相关的延迟并以光纤通道的速度传输，提供比IP over Ethernet 更好的吞吐能力，但仍然避免不了TCP/IP 的软件延迟。FC-VI 去掉了TCP栈并提供了应用内存和HBA 之间的DMA。FC-VI 饶过了系统内核，避免了操作系统上下文转换和缓冲改变，实现了更高的传输速率。 &lt;p&gt;    FC-VI 需要一个支持VI 架构的光纤通道HBA，FC-VI HBA 和支持SCSI I/O 的光纤通道HBA 有本质上的不同。Troika 和Finisar 都提供支持VI 架构的光纤通道HBA。Finisar 出售一种基于PCI 的支持VI 架构的光纤通道HBA，支持点对点连接或交换形式。Troika 出售一种基于PCI 的智能控制器?D?DSAN 2000 系列控制器，这种控制器支持FC-SCSI，FC-IP，点对点FC-VI，FC-AL 和交换拓扑。Troika 控制器提供多种管理选项和特征，比如协议优先权配置和在负载均衡的path 变换。 &lt;p&gt;&lt;b&gt;&lt;font color="#0070c0"&gt;五、多协议结构&lt;/font&gt;&lt;/b&gt;  &lt;p&gt;    所有的这三种协议（FC-SCSI，FC-IP，FC-VI）可以备组合成一个光纤通道结构。尽管这些协议也能在FC-AL 里工作，但相应的带宽共享和仲裁消耗忽略掉了FC-IP 和FC-IP 的性能优点。建议使用Fabric交换，这是因为Fabric交换提供服务器之间和服务器与存储设备之间的多个无阻塞的100M/sec 的通路。  &lt;p&gt;    HDS 公司开发了一个模拟使用FC-SCSI，FC-IP，FC-VI 交换结构的多协议商业智能解决方案。使用Ancor、Brocade 或一起使用这两家的Fabric交换机，这个方案于1999 年11 月的计算机分销商展览会和2000 年6 月的Gartner 集团存储2000 年会议上得到验证。在这个方案里的Fabric交换集成了全部数据网络的集中管理并提供了无限的可扩展性（随服务器和存储系统节点的增加）。Fabric 交换的使用牺牲了一些完全可以忽略的性能损耗，在多数情况下，FCP-SCSI 通过交换所消耗不超过2%。 &lt;p&gt;    当越来越多的应用为VI 架构而修改或开发时，我们会看到越来越多数据网络集成到光纤通道上。出现的市场机遇如EAI（企业应用交换）需要提供异平台和异种数据库之间的数据实时传输和交换，FC-VI 使得服务器之间高速数据交换成为可能。现存的应用如NAS 通过使用VI sockets 可以光纤通道的速度运行他们的网络文件系统。 &lt;p&gt;    人们正在努力提出访问存储的IP 标准，Cisco 为SCSI over IP 向IETF 提交了一个规范，目前这个规范仍在开发中，它需要将控制和命令信号与数据信号的传输电缆分开，主要是考虑流控制和传输控制的开销。 &lt;p&gt;相关连接：  &lt;h5&gt;&lt;a href="http://scholar.ilib.cn/Abstract.aspx?A=gxydljqyyjs200205004"&gt;基于存储区域网的Fiber Channel技术&lt;/a&gt;&lt;/h5&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+Fibre+Channel%e5%85%a5%e9%97%a8&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1034.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1034.entry</guid><pubDate>Tue, 11 Sep 2007 02:39:35 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!1034/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!1034.entry#comment</wfw:comment><dcterms:modified>2007-09-11T02:51:27Z</dcterms:modified></item><item><title>baidu跟google比，差距还是很大的！</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!898.entry</link><description>&lt;div&gt;同样搜索“SIS PSE”，google的结果比较令人满意，baidu的简直惨不忍睹，上不了台面的。不怪baidu烂，只怪我期望太高。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+baidu%e8%b7%9fgoogle%e6%af%94%ef%bc%8c%e5%b7%ae%e8%b7%9d%e8%bf%98%e6%98%af%e5%be%88%e5%a4%a7%e7%9a%84%ef%bc%81&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!898.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!898.entry</guid><pubDate>Thu, 07 Jun 2007 09:51:39 GMT</pubDate><slash:comments>4</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!898/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!898.entry#comment</wfw:comment><dcterms:modified>2007-06-07T09:53:17Z</dcterms:modified></item><item><title>It is not really a rumor.</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!897.entry</link><description>&lt;p&gt;最近感觉老东家SIEMENS PSE CN似乎要解散了，一部分同事transfer到SIEMENS NC(数控)，一部分transfer到SIEMENS PA(电力)，杭州的部门transfer到NOKIA SIEMENS. 还有一部分暂时还没有动，看这架势，估计是要解散了，应该不只是rumor。不过还是要恭喜他们的，西门子里没有比PSE中国待遇更差的子公司了。就连SBS这个企业服务部门(帮西门子内部其它子公司维护电脑系统的一个子公司)的待遇都比PSE都要好，装个电脑系统收费就要上千，简直是暴利。讲个笑话&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_teeth.gif"&gt;，我在PSE的时候，电脑估计是中毒了，关机经常蓝屏，但是我还是将就着用，因为重装系统的话要老板签字的，几千块钱的。当然，这也是我目前为止用过的最长的一个系统了，我是撑着的，我多不容易啊&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_regular.gif"&gt;。   
&lt;p&gt;说句实话，西门子PSE是个不错的公司，待遇方面可能一般，但是工作环境，工作压力，福利都是不错的：文具随便拿，电话随便打；经常员工情绪调查，如果出了问题了，就很正儿八经的开始要解决。当然能不能解决就不重要了，再讲个笑话&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_teeth.gif"&gt;，去年员工情绪调查的结果一次比一次坏，跟上个星期的股票似的，连续跌停。于是上头决定公司总全动员，要find the root cause。开始的几天按个谈话，最后一天，每个部门找10多个能唠的，敢说实话的同事，跟manager一起开会。会议正式的不得了： 有会议主持人，有HR在场（似乎是证人的角色），发了很多精美的彩色卡片写意见，还发了红色，绿色，黄色的投票用的可爱的贴纸。期间主持人又是活跃气氛，又是拍照片，又是总结，会议结束后做了一个ppt，是这次会议的过程记录，群发给部门所有人。其实大家都隐约的说出了薪水太低是root cause，这时manager们又说这些不是他们能解决的问题了，真是搞笑，呵呵。 再讲一个笑话&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_teeth.gif"&gt;，每个人有3个票，我有两个贴向了salary。PS：投票大家是一起上的，为了能够得到真正的结果，必须一起上。结果root cause是找到了，可是不能解决。 
&lt;p&gt;最好祝贺他们，因为无论在哪个SIEMENS，至少比在SPSE强。 
&lt;p&gt;BTW，今天连续讲了3个笑话了，再讲一个，这个是赞美PSE的：最近股市流行一首歌，&lt;strong&gt;死了都不卖&lt;/strong&gt;。在PSE，真是&lt;strong&gt;死了都不裁，&lt;/strong&gt;而是给你找下家。赞一个！ 
&lt;p&gt;&lt;br&gt; &lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+It+is+not+really+a+rumor.&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!897.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!897.entry</guid><pubDate>Thu, 07 Jun 2007 03:06:27 GMT</pubDate><slash:comments>3</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!897/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!897.entry#comment</wfw:comment><dcterms:modified>2007-06-13T01:18:13Z</dcterms:modified></item><item><title>OSPF的童话（zz）</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!894.entry</link><description>&lt;div&gt;　　可以把整个网络（一个自治系统AS）看成一个王国，这个王国可以分成b几个区(area)，现在我们来看看区域内的某一个人(你所在的机器root)是怎样得到一张世界地图(routing table)的。&lt;br&gt;　　&lt;br&gt;　　首先，你得跟你周围的人（同一网段如129.102）建立基本联系。你大叫一声“我在这！”(发HELLO报文),于是，周围的人知道你的存在，他们也会大叫，这样你知道周围大概有哪些人，你与他们之间建立了邻居(neighbor)关系，当然，他们之间也有邻居关系。&lt;br&gt;　　&lt;br&gt;　　在你们这一群人中，最有威望(Priority优先级)的人会被推荐为首领（Designated Router）首领与你之间是上下级关系(adjacency邻接)，它会与你建立单线联系，而不许你与其它邻居有过多交往，他会说：“那样做的话，街上太挤了”。&lt;br&gt;　　&lt;br&gt;　　你只好通过首领来知道更多的消息了，首先，你们互通消息，他告诉你他知道的所有地图的地名，你也会告诉他你现知道的地名，当然上也许只有你一个点。(Database Description数据库描述报文)&lt;br&gt;　　&lt;br&gt;　　你发现地名表中有你缺少的或比你新的东西，你会问他要一份更详细的资料，他发现你的地名表中有他需要的东西，他也会向你索求新资料。(Link State Request连接状态请求报文)&lt;br&gt;　　&lt;br&gt;　　当然，你们毫不犹豫地将一份详细资料发送给对方。(Link State Update连接状态升级报文)&lt;br&gt;　　&lt;br&gt;　　收到地图后，互相致谢表示收到了。(Link State Ack连接状态响应报文)现在，你已经尽你所能得到一份地图（Link State DataBase连接状态数据库），你去查找地图把到所有地方的路挑一条最近（shortest path最短路）的，记为一张表格（routing table路由表），当然以后查这份表格就知道到目的地的一条最近的路了。地图也要收好，万一表格上的某条路不通了可以通过图去找一条新的路。&lt;br&gt;　　&lt;br&gt;　　其实跟你有联系的，只是周围一群人，外面的消息要通过首领来知道。因为你的地图是跟首领的一致，我们假设你是首领，你要去画一份世界地图。&lt;br&gt;　　&lt;br&gt;　　你命令所有手下向你通报消息，你可以知道你这一群人的任何一点点小动静（event事件）。你手下还会有同时属于两群人的家伙（同一区内两网段），他会告诉你另一群人的地图，当然也会把你们这一群人的地图泄露，(不过，无所谓啦)。这样，整个区的地图你知道了（对于不知道的那也没办法，我们尽力了）。&lt;br&gt;　　&lt;br&gt;　　通过不停地交换地图，现在，整个区的人都有同样的地图了，住在区边境上的人义不容辞地把这个区的地图（精确到每一群人）发送到别的区，把别的区信息发送进来。国王会把这些边境的人命名为骨干（backbone area）。通过骨干人士的不懈努力，现在，整个国家的地图你都了解得一清二楚了。&lt;br&gt;　　&lt;br&gt;　　有些人“里通外国”（AS Boundary Router自治系统边界路由器） ，他们知道一些“出国”(AS External route自治系统外部路由)的路，当然他们会把这些秘密公之与众（import 引入），通过信息的传递，现在，你已经有一张完整的“世界地图”了。&lt;br&gt;　　&lt;br&gt;　　OSPF是这样标记最短的路的：对于某个目的地，首先，考虑是否有同一区内部到目的地的路（intra area区域内），如果有，则在其中取一条离你最近的（花费最小），写进你的表格中,这个目的地可能是到本群体某个人也可能是到其他群体的，对于经过其他区域的路由，你会不予考虑，跟自己人（同区域）打交道总比与外人（其他区域）打交道好；如果没有本区的路，你只好通过别的区域了（区域间），你只要在地图上找最近的就是了；如果你发现目的地在国外，你也只能先把它标记到你的表格上，期待什么时候王国扩张到那，你就可以把它标记到国内地图上了。&lt;br&gt;　　&lt;br&gt;　　OSPF就是这样，给你一份“世界地图”，并且在上面标记了最短的路，如此而已罢了。&lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://byfiles.storage.live.com&amp;#47;y1pmSbasWfdObf0gGerVBN-Se8vCwUClyOlZQ0Ff4bchhmcjGpzFsqkB8qXIWsM8FQqOhgIcySRhPk"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;F4B9B5E278DE10EE&amp;#33;895&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+OSPF%e7%9a%84%e7%ab%a5%e8%af%9d%ef%bc%88zz%ef%bc%89&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!894.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!894.entry</guid><pubDate>Mon, 04 Jun 2007 02:09:44 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!894/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!894.entry#comment</wfw:comment><dcterms:modified>2007-06-04T02:17:14Z</dcterms:modified></item><item><title>人走不茶不凉</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!888.entry</link><description>&lt;div&gt;今天看到&lt;a href="http://www.cnweblog.com/wood/"&gt;木头&lt;/a&gt;的留言，于是跑到&lt;a href="http://cnweblog/"&gt;cnweblog&lt;/a&gt;那里看看，木头一路写游记，像个二十一世纪的徐霞客，人气旺的一塌糊涂。顺便看了一下自己的老blog   &lt;a href="http://www.cnweblog.com/ayomn/"&gt;http://www.cnweblog.com/ayomn/&lt;/a&gt; 离开了这么长的时间，居然排名稳步上升，离开的时候大概70几位，现在已经50几位了，人走茶不凉 &lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_teeth.gif"&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;顺便推荐一个电视节目预告的网址&lt;a href="http://www.tvmao.com/program/CCTV-CCTV5-w3.html"&gt;http://www.tvmao.com/program/CCTV-CCTV5-w3.html&lt;/a&gt;，速度很块，而且主流的电视台都有了。我曾经访问过cctv的官方网站，速度慢的我怀疑我是不是在电话线拨号上网的?&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://byfiles.storage.live.com&amp;#47;y1pmSbasWfdObfHBLJVzuYmI1j3lEM1YV-vB6oOqGnpNR45cE1-XdEVl2xYoeoyrDTC1EXuDkjj4kY"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;F4B9B5E278DE10EE&amp;#33;889&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e4%ba%ba%e8%b5%b0%e4%b8%8d%e8%8c%b6%e4%b8%8d%e5%87%89&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!888.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!888.entry</guid><pubDate>Fri, 25 May 2007 01:08:48 GMT</pubDate><slash:comments>3</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!888/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!888.entry#comment</wfw:comment><dcterms:modified>2007-05-25T01:16:42Z</dcterms:modified></item><item><title>刷了四次机</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!886.entry</link><description>&lt;div&gt;关于刷机，初衷是为了格掉移动的破东西，到昨天为止一共刷了四次。第一次成功，由于手机还是白名单，没有黑名单，于是过了几天，手又痒了，应该说是昨天早上一起来，就立刻打开本本，开始刷机，结果失败了，一开机，就叫我联系运营商。于是又刷一次，结果还是错误，手机已经不能开机了，看来只能到公司里修手机了。到了公司，重新刷了第一次的版本，成功。现在已经能够很熟练的刷了，20分钟不到就完事，而且刷的时候可以边洗脸什么的了。要知道第一次刷就是眼镜盯着屏幕，生怕蹦出来一个错误呢，而且第一次刷完毕后，要双手一合，默念三分钟，祈祷能开机。现在已经不想刷了，如果还希望手机功能能满自己心意的话，就需要自己做更底层的工作了，当然就需要很多时间在论坛里潜水。顺便说一下，一个礼拜我的积分就达到100，说起来真幽默，一个哥们也是为了赚积分，发了一个帖子(标题：支持。内容只有两个字：支持)，这样的帖子就是找灭的。我于是回帖：水不要灌的这么纯粹。结果我的积分立马从99变为100，意味着可以阅读高权限的帖子了，呵呵。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;现在手机里装了几个程序: 金山词霸，指北针。顺便说一下这个指北针，是利用阳光的，其实当年我就用手表的时针和分针辨别东南西北的，缺点就是太阳躲起来后就瞎了。南京天文台有个老古董，根据阳光能知道当时的时间，很神气，而且冬天和夏天还能修正误差，汗！&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;下面贴一个手机的屏幕，然后回家。&lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://byfiles.storage.live.com&amp;#47;y1pmSbasWfdObdCtpGMbNr2iHkNHxyJP5-0Uyk_0oQ75jO4TA7qDjWyjjFmAfrVHQtBX0jGUIit78w"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;F4B9B5E278DE10EE&amp;#33;887&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e5%88%b7%e4%ba%86%e5%9b%9b%e6%ac%a1%e6%9c%ba&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!886.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!886.entry</guid><pubDate>Thu, 24 May 2007 10:23:50 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!886/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!886.entry#comment</wfw:comment><dcterms:modified>2007-05-24T10:26:33Z</dcterms:modified></item><item><title>刷移动定制K750C</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!877.entry</link><description>&lt;div&gt;这两天一直在忙K750的刷机，因为是移动定制机，里面有很多不喜欢的地方。譬如几个键都给移动占用了，使得我必须使用摇杆，这样无疑会缩短摇杆的寿命；另外很多讨厌的东西，什么移动梦网啊，什么铃声下载啊，都不是我喜欢的；还有一个讨厌的是开机，关机时都是移动的图片和音乐，不过这个昨天被我强制删掉了，手机里安装了一个俄罗斯的软件，然后强制修改文件属性，删除的。&lt;/div&gt;
&lt;div&gt;&lt;br&gt;昨天晚上升级的时候，瓜哥还没有下班，我叫他做我的技术支持。我还是很紧张的，尤其是第一刷的时候，居然弹出error，我当时慌了，居然立刻把数据线给拔了，要知道随便拔线可以是刷机时的大忌，说不定我的小K就变砖头了啊&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_cry.gif"&gt;然后开机，发现不能开机。立刻向瓜哥咨询，瓜哥叫我把电池拔出，然后插进去，果然开机成功。瓜哥说这是常识，汗，看来还是要好好的研究研究文档的，但是CID 36的文档我都已经比较熟悉了啊,难道我的这个是CID 49的？这里顺便说一下CID，是索爱为了防止非官方刷机而设置的障碍，K750开始都是CID 36的，慢慢的被高手给破解了；后来出现了CID 49。我查资料，下载检查程序，然后1关机 2取电池 3装电池 4数据线连接电脑 5运行文件 6点flash 7按手机上的c键 8手机连接数据线 9电脑上查看结果。立刻晕倒，我的居然是CID 49的。不过幸好是red(零售版)，不是brown(工程版)的。我现在还是不清楚为什么red叫零售版，brown叫工程版，我的K750是黑色(black)的。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;好的是，CID 49也已经给破解了，不过刷机比CID 36麻烦多了。而且sebbs.it168.com很多人频频发《又一K750受害者，不能开机，FAR检测不到》 《CID 49刷后不能开机，在线等帮助》类似的帖子。有个斑竹写了这么一句：“很多新手刷机后，开机不了，电脑又检测不到，只能把手机扔在旁边，看着怪可怜的。”看得我是心寒啊，唉！有的哥们刷的时候手一抖，弄错了文件，于是手机变砖头。我准备晚上回去重新刷一下。这里要谢谢瓜哥，给我了很多支持，而且把论坛的帐号给我，我才可以有非常高的权限去看帖子。在这里鄙视一下sebbs.it168.com。很多新注册的新人都不能看一些关键的帖子，其实最需要帮助的是这些新人了，不要再卡他们了，他们怪可怜的！&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e5%88%b7%e7%a7%bb%e5%8a%a8%e5%ae%9a%e5%88%b6K750C&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!877.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!877.entry</guid><pubDate>Tue, 15 May 2007 06:11:49 GMT</pubDate><slash:comments>2</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!877/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!877.entry#comment</wfw:comment><dcterms:modified>2007-05-15T06:18:41Z</dcterms:modified></item><item><title>入手HP nx6330 RQ708PA，发文纪念！</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!862.entry</link><description>&lt;div&gt;今天拿到小本本，不是小黑，而是6330 708。先秀秀自拍的照片，我很喜欢本本合上的样子&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_embaressed.gif"&gt;&lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pmSbasWfdObeSeQzmGFn1etFXCOOWUFuBO_8bR-z8wmeifNGl-fYaEWPDnGq3V0AUUJ02X5jzBpo"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;F4B9B5E278DE10EE&amp;#33;865&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e5%85%a5%e6%89%8bHP+nx6330+RQ708PA%ef%bc%8c%e5%8f%91%e6%96%87%e7%ba%aa%e5%bf%b5%ef%bc%81&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!862.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!862.entry</guid><pubDate>Tue, 17 Apr 2007 06:23:35 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!862/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!862.entry#comment</wfw:comment><dcterms:modified>2007-04-25T01:23:36Z</dcterms:modified></item><item><title>不好！喜欢上小黑了 :-(</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!851.entry</link><description>&lt;div&gt;从来没有想过要加入黑社会，因为小黑一直那样贵。现在从HP到华硕，到SONY，甚至看了lenovo。一个曾经喜欢过的牌子，不过那个时候我在读初中，看到猩猩给legend做的广告，觉得这个本本很漂亮。随着我越来越懂事，也随着我看到的本本越多，发现lenovo是个很操蛋的牌子，哈哈。操蛋这个词是跟洪哥学的，呵呵。用过的本本也有几个了，最开始一个是legend，如果不能开机，就把电池取出来，重新装一下就可以了，我们一直把它当成宝，不敢瞎碰它。后来来了几个HP，nx7010，15寸，宽屏，看电影比较爽，就是笨重点，不适合携带。到了PSE，用起了dell，两个字：难看；再来两个字：便宜；而且做工不是一般的粗糙。认识dell都源自于伟哥，大学里伟哥经常提到dell，他很佩服dell的发家史。不知道他喜欢dell否？如果喜欢的话，估计有很大部分是爱屋及乌的缘故。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;移动真的不是一般的有钱，据说资产5000亿，电信是4000亿。05年在移动总部，测试Wireless LAN需要很多本本，移动立刻调来一批小黑，都是清一色的X41。50多个小黑打开后，齐刷刷的放在工作台上不是一般的壮观&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_regular.gif"&gt;。3个同学都买了水的T系列，两个T42，一个T43。现在都是T60了，fish给我发了一个链接，&lt;a href="http://www-604.ibm.com/webapp/wcs/stores/servlet/CategoryDisplay?storeId=10000392&amp;amp;catalogId=-392&amp;amp;langId=-10&amp;amp;categoryId=4611686018425110757"&gt;lenovo日本官方网站&lt;/a&gt;。真是太高看我这个只知道50音图的人了&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_embaressed.gif"&gt; 还好，上面有图片和英文字母，还有几个珍贵的汉字，因此我终于找到了&lt;a href="http://www-604.ibm.com/webapp/wcs/stores/servlet/CategoryDisplay?storeId=10000392&amp;amp;catalogId=-392&amp;amp;langId=-10&amp;amp;categoryId=4611686018425110757"&gt;T60&lt;/a&gt;，不贵，才16万，呵呵。当然是日元了，折合成人民币1万，如果去商店里买肯定1万都不要。那可是日本行货啊，给个图片先:-)&lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pmSbasWfdObd5kkCtZBy3OQnsr-zm0UDa7CyVzpZd2blynXicDalzHN3nwAEkhnV6TlxitNB02qc"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;F4B9B5E278DE10EE&amp;#33;852&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e4%b8%8d%e5%a5%bd%ef%bc%81%e5%96%9c%e6%ac%a2%e4%b8%8a%e5%b0%8f%e9%bb%91%e4%ba%86+%3a-(&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!851.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!851.entry</guid><pubDate>Tue, 03 Apr 2007 04:58:07 GMT</pubDate><slash:comments>2</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!851/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!851.entry#comment</wfw:comment><dcterms:modified>2007-04-03T08:55:35Z</dcterms:modified></item><item><title>Selenium硒元素</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!786.entry</link><description>&lt;p&gt;&lt;font color="#333399"&gt;Selenium的故事 &lt;/font&gt;&lt;br&gt;Selenium是ThoughtWorks员工在业余时间开发并维护的开源项目，并且在ThoughtWorks的项目中被广泛应用。不过，真正有趣的是它名字的来历：在Selenium出现之前，最著名的web应用功能测试工具当属Mercury Quanlity Center，但那是一个商业工具，功能强大却也价格不菲，常常让开发者们又爱又恨。所以，自己动手开发开源功能测试工具的ThoughtWorker们把这个工具叫做Selenium——&amp;quot;mercury&amp;quot;有“水银”的意思，而&amp;quot;selenium&amp;quot;（硒元素）恰好是专解汞中毒的特效药。 
&lt;p&gt;&lt;font color="#333399"&gt;Selenium IDE&lt;/font&gt; 
&lt;p&gt;这是一个用于FireFox的插件，在Selenium的官方网站上就有的下。运行这个插件后，它能够录制用户在一个网页上的操作，并生成一份可用做Selenium测试过程的html代码，因此可以手工编辑代码，满足不同的需求。How to use Selenium IDE: 
&lt;p&gt;   Step1: download Selenium IDE&lt;br&gt;   Step2: download Firefox 1.5, then install it. &lt;br&gt;   Step3: run Firefox 1.5&lt;br&gt;   Step4: open Selenium IDE with Firefox 1.5&lt;br&gt;   Step5: close Firefox 1.5, and reopen it&lt;br&gt;   Step6: 工具-&amp;gt;Selenium IDE，点击红色的recorder按钮开始录制，在网站中乱点时可以即时看到每个动作的脚本。 
&lt;p&gt;但这个插件还处于初级阶段，能够自动完成的测试功能还是存在很大的局限性。 
&lt;p&gt;&lt;font color="#333399"&gt;Selenium Core&lt;/font&gt;&lt;br&gt;    &lt;br&gt;采用javascript实现，由于js本身安全限制，只能对单站进行测试，不能进行https和http的切换。测试员无须很高的编程语言知识。适于黑盒测试 
&lt;p&gt;&lt;font color="#333399"&gt;Remote Control selenium&lt;/font&gt; 
&lt;p&gt;采用java编写的代理服务器，测试脚本可以采用多种语言编写 .NET, Perl, Python, Ruby。 适合程序员编写，能于业务代码同步，适于白盒测试。 
&lt;p&gt;&lt;font color="#333399"&gt;部署Selenium &lt;/font&gt;
&lt;p&gt;如果想要测试自己开发的发布在服务器端的页面，需要把selenium配置在同一个服务器下： 
&lt;p&gt;Apache ：直接将selenium目录拷贝至htdocs（Apache的确省根目录）目录下，然后启动Apache，用地址&lt;a href="http://server:8080/selenium/TestRunner.html"&gt;http://server:8080/selenium/TestRunner.html&lt;/a&gt;访问例子。 
&lt;p&gt;Tomcat ：直接将selenium目录拷贝至webapps目录下，启动Tomcat，用地址&lt;br&gt;&lt;a href="http://server:8080/selenium/TestRunner.html"&gt;http://server:8080/selenium/TestRunner.html&lt;/a&gt;访问例子。 
&lt;p&gt;IIS：建立一个虚拟目录selenium，将该虚拟目录直接指向实际的selenium目录，用地址&lt;br&gt;&lt;a href="http://server/selenium/TestRunner.html"&gt;http://server/selenium/TestRunner.html&lt;/a&gt;访问例子。 
&lt;p&gt;&lt;a href="http://www.openqa.org/selenium"&gt;&lt;img style="visibility:visible;width:224px;height:83px" alt="" src="http://tkfiles.storage.msn.com/x1pjzF2-RYhxRW45WOO8mMNXiWq8kO_KJmXvoNGt70JgnWO8KKVExgeRVZPG0N-E-e6MuVX1q5n_6sShC_k9_s3vrThcSrxsHURABbPEoBUqQo"&gt;&lt;/a&gt; 
&lt;p&gt; &lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+Selenium%e7%a1%92%e5%85%83%e7%b4%a0&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!786.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!786.entry</guid><pubDate>Tue, 13 Mar 2007 10:26:34 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!786/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!786.entry#comment</wfw:comment><dcterms:modified>2007-03-14T04:48:59Z</dcterms:modified></item><item><title>我的Google</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!782.entry</link><description>&lt;div&gt;    接触GMail应该是刚毕业那会，记得当时简历上写的都是163的邮箱，后来才改用GMail的。不是163不好，而是GMail更好&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_teeth.gif"&gt;。支持全键盘操作，界面和Google一样的简洁，现在申请GMail还是需要别人的Invite:-) 更重要的是在SIEMENS的时候，QQ和MSN都封掉了，GMail的聊天功能没有给CIO禁掉，估计比较需要使用很复杂的过滤条件。登录GMail后，左边就会出现在线的朋友，并且聊天记录可以保存在chat文件夹里。&lt;/div&gt;
&lt;div&gt; &lt;img style="visibility:visible;width:143px;height:59px" alt="" src="http://tkfiles.storage.msn.com/x1pjzF2-RYhxRW45WOO8mMNXmwlUE8EJvRA4P7fEpNFyx8h9QnUkmCwybOcsJHD3Rp8VeLXtR46or06vSK6OXwSpbk0uD1Vji9lRKViLtnSuSE"&gt;&lt;/div&gt;
&lt;div&gt;    昨天尝试了Google的Caldendar，界面也很漂亮，于是也就开始用了，不过我不是作为提醒，而是作为记忆之用。可以把每个时间段里的工作，生活都记录下来，因此还是很不错的。&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;&lt;img style="visibility:visible;width:143px;height:57px" alt="" src="http://tkfiles.storage.msn.com/x1pjzF2-RYhxRW45WOO8mMNXgxouTq8GZSu3lb6gwkUZ6sPJJNoMTit_5e3mH1rM9P7i15456slfJjKYQsZy1xlmWAVIhtTt53Ix2_1i3VznV8"&gt;&lt;/div&gt;
&lt;div&gt;    其实Google还有很多产品，搜索自然不用说了。有个同学用过Google的Group，没有用过，呵呵。&lt;/div&gt;
&lt;div&gt;    Google能成功的原因应该是功能强大，界面清爽吧，我比较喜欢这种风格&lt;img src="http://shared.live.com/VIf!VWmJbs6tK-ObyYk28Q/emoticons/smile_embaressed.gif"&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e6%88%91%e7%9a%84Google&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!782.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!782.entry</guid><pubDate>Tue, 13 Mar 2007 09:29:03 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!782/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!782.entry#comment</wfw:comment><dcterms:modified>2007-03-15T07:03:42Z</dcterms:modified></item><item><title>刚申请了一个skype账号</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!722.entry</link><description>&lt;div&gt;    明天有个skype会议，今天来到网吧试验了一下账号，居然发现密码忘记了，而且似乎不能取回。因为我的账号已经发给对方了，如果对方明天找不到我，就会比较郁闷了，唉。没有办法，只好重新申请了一个账号yinhaonj，然后立刻打电话给朋友，叫他想办法帮我把账号告诉对方。&lt;/div&gt;
&lt;div&gt;其实skype真的很不错，目前在语音质量上能一比高下的还就只有gtalk了。但是目前还是skype的用户多，因为姜还是老的辣吧。今天也试验了一下语音，新账号上没有好友，于是随机加了一个朋友，是个北京的mm，声音很清晰，呵呵。&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;font color="#333333"&gt;下面是从&lt;/font&gt;&lt;a href="http://www.skype.com/"&gt;&lt;u&gt;&lt;font color="#333333"&gt;http://www.skype.com/&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;font color="#333333"&gt;官方网站上的截图，上面也提供免费下载。 &lt;/font&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;&lt;img style="visibility:visible;width:278px;height:386px" alt="" src="http://tkfiles.storage.msn.com/x1pjzF2-RYhxRW45WOO8mMNXt1taJqeqoCN-sq-CeMmuFlIZ9AiU8NOwjpst0GUKQEDoD_htM2tR9QSvl482bwu705xuJpYmpf74SR4rpS8t9ydvp6J4_v01A"&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e5%88%9a%e7%94%b3%e8%af%b7%e4%ba%86%e4%b8%80%e4%b8%aaskype%e8%b4%a6%e5%8f%b7&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!722.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!722.entry</guid><pubDate>Tue, 30 Jan 2007 10:31:15 GMT</pubDate><slash:comments>3</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!722/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!722.entry#comment</wfw:comment><dcterms:modified>2007-03-13T10:17:09Z</dcterms:modified></item><item><title>SuSE给我surprise</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!707.entry</link><description>&lt;div&gt;&lt;font face="新宋体"&gt;第一句话：这星期我一直搞持&lt;span&gt;SuSE 10.0&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;div&gt;先给出一个很不错的&lt;span&gt;SuSE 10.0的安装向导（&lt;a href="http://www.supinfo-projects.com/cn/2006/suse10.0_experience_cn/1/"&gt;http://www.supinfo-projects.com/cn/2006/suse10.0_experience_cn/1/&lt;/a&gt;），个人觉得很不错。可惜我是安装完之后才看到的，否则的话，也就不会遇到下面的一些问题了。塞翁失马，焉知非福，这次遇到问题，正好可以学习一下。&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;&lt;span&gt;&lt;font face="新宋体"&gt;先show一下SuSE 10.0的KDE桌面，当时我是被surprised一下了，的确很漂亮，呵呵。&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;span&gt;&lt;/span&gt;
&lt;div align=left&gt;&lt;br&gt;&lt;font face="新宋体"&gt;&lt;span&gt;1&lt;/span&gt;， 中文字体和中文输入法&lt;br&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;font face="新宋体"&gt;情景&lt;span&gt;1&lt;/span&gt;：安装系统 SuSE 10.0，安装时只选择了English(USA)，安装完毕后，没有中文输入法，但是可以显示中文，后来mount一个vfat硬盘后，使用的是-o iocharset=utf8 参数，能够显示部分中文。一装好&lt;span&gt;SuSE立刻通过adsl上网，要给生哥回一封邮件，很难受，因为只能用英文:-( 这里能上网，完全是因为有一个小路由器，它给我自己拨号了，所以我暂时不需要解决Linux下adsl的拨号问题。这个问题如何解决网上有很多的解决方案。&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;font face="新宋体"&gt;&lt;span&gt;&lt;/span&gt;&lt;/font&gt; &lt;/div&gt;
&lt;div align=left&gt;&lt;font face="新宋体"&gt;&lt;span&gt;情景&lt;span&gt;2&lt;/span&gt;：mount -t vfat -o defaults,iocharset=utf8 /dev/hda7 /mnt/winF 0 0&lt;br&gt;成功访问winF盘，但是中文显示有问题，有漏显，或者字体不均匀等问题。&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;font face="新宋体"&gt;&lt;span&gt;&lt;/span&gt;&lt;/font&gt; &lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;font face="新宋体"&gt;    这个中文的问题让我思考了很多，网上有很多汉化的帖子，大多数是因为linux的字体不好，或者mount Windows系统时参数不准确导致的，说实话，我都不知道我的SuSE 10.0问题在哪里？&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;font face="新宋体"&gt;    给出3个相关的概念：字符集，字体，输入法&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;font face="新宋体"&gt;    为什么我上sina时，能够把中文网页现实的很完美，虽然我的SuSE是纯英文系统，而且只装了English(USA)？因为SuSE里已经有了相应的中文字符集，常用的中文字符集有GB18030，GB2312等。&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    &lt;font face="新宋体"&gt;为什么gentoo官方论坛上中文论坛的网页是用UTF-8编码的，但是新浪网就是用GB2312编码的呢？而Xorg的官方网页竟然是ISO-8859-15编码的，我用FireFox去浏览的话，都可以正确的现实，也说明SuSE&lt;/font&gt;里都有相应的字符集，系统会自动去匹配！&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    为什么有的网页会显示空格，或者问号，那可能说明系统的字符集不是很完整，可能只是取了某一个字符集譬如GB2312的子集。&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    说到现在，说明我的SuSE里有中文字符集了，不需要再添加了。现在显示的不好看，是字体本身的问题了。如何在SuSE 10.0 安装字体？有个实用的安装Windows字体例子：&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    1) 将复制字体文件到SUSE的&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    SUSE10.0会自动加载Windows的分区，通过以下方式可以获取所需的文件：&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;    点击&amp;quot;My Computer&amp;quot;(可以在桌面上找到)--&amp;gt;system partition(即Windows的系统分区)--&amp;gt;WINDOWS--&amp;gt;Fonts--&amp;gt;拷贝&amp;quot;simsun.ttc&amp;quot;到 &amp;quot;/home/user/fonts&amp;quot;(这是一个任意的文件夹，只要你有足够的权限)。&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    2)&lt;/span&gt; 重命名字体文件&lt;/div&gt;
&lt;div align=left&gt;    Linux的字体文件后缀名为*.ttf,所以这里要对文件改名。右键&amp;quot;simsun.ttc&amp;quot;--&amp;gt;选择Rename--&amp;gt;改为&amp;quot;simsun.ttf&amp;quot;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    &lt;/span&gt;3&lt;span&gt;)&lt;/span&gt; 安装字体&lt;/div&gt;
&lt;div align=left&gt;    这一步是通过图形界面来完成的，步骤如下：&lt;/div&gt;
&lt;div align=left&gt;    进入：Main menu--&amp;gt;Control Center--&amp;gt;System Administration--&amp;gt;Font Installer--&amp;gt;Add Fonts, 然后进入存放字体文件的目录，点击finish来完成安装。&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    &lt;/span&gt;4&lt;span&gt;)&lt;/span&gt; 更改默认的字体&lt;/div&gt;
&lt;div align=left&gt;    仍然是使用Control Center--&amp;gt;Appearance &amp;amp; Themes--&amp;gt;Fonts,然后更具个人意愿来选择在哪一部分使用simsun字体，点击将Apply来确定更改。&lt;/div&gt;
&lt;div align=left&gt;到这里，中文字体显示基本上是没有问题了，当然不包括&lt;span&gt;mount的系统，我的硬盘分区情况是C,D,E,F四个盘总共150G，C安装了XP，前三个分区是ntfs格式，F是fat32格式，在linux下，它们分别对应hda1,hda5,hda6,hda7。硬盘总共160G，剩下的10G不属于Windows的扩展分区，用于安装SuSE10.0，占用了hda2,hda3,hda4。&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;mount -t vfat -o defaults,iocharset=utf8 /dev/hda7 /mnt/winF&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;这样就没有问题，F盘下的中文显示良好，如果改成iocharset=GB2312 or cp936等，似乎就有问题了。同样的方式mount winC,winD,winE这几个ntfs的分区后有个问题，就是只有root权限才可以访问，还需要修改访问权限。&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    到这里为止，中文显示的问题已经得到初步解决，如果你对字体不满意，还可以添加更多的字体。下面开始讨论中文输入法：&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    linux下的中文输入法现在已经有几个可以选择的了，这是一个很好的参考&lt;a href="http://www.linuxmine.com/2474.html"&gt;http://www.linuxmine.com/2474.html&lt;/a&gt;，我决定安装scim，下载了一个新版本的，可惜看了README后还是不知道如何安装，汗，可能不需要安装就可以运行。下面我讲一下我是如何安装的，进入YaST软件管理中心，输入scim然后进行搜索，居然会发现很多软件包（这些包都是老版本的，不是我刚下载的新版本）&lt;/span&gt;&lt;span&gt;然后全选，然后accept，等装完后，logout当前用户，重新进入系统，中文输入法就可以用了。这不是我期望的结果，虽然已经可以中文输入了，并且很好用，但是我希望能够亲手这样一下：&lt;/span&gt;&lt;font face="新宋体"&gt;SuSE9.2中如何安装SCIM&lt;span&gt; &lt;/span&gt;&lt;/font&gt;&lt;a href="http://www.linuxeden.com/forum/showthread.php?t=114969"&gt;&lt;font face="新宋体"&gt;http://www.linuxeden.com/forum/showthread.php?t=114969&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div align=left&gt; &lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;font face="新宋体"&gt;2， linux下使用QQ&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;font face="新宋体"&gt;    我使用的是LumaQQ2005，纯java语言编写，下载解压缩后就可以直接使用，不需要安装。&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;/span&gt; &lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;font face="新宋体"&gt;3， linux下如何解压缩rar文件&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;    &lt;font face="新宋体"&gt;大家都知道如何解压缩tar, tar.gz, bz2, bz, gz, zip, tar.bz等文件，如何解压缩rar文件呢？推荐使用rarlinux-3.6.0-tar.gz。解压缩后就可以直接使用，unrar e xxx.rar就可以解压xxx.rar文件了。&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div align=left&gt;&lt;span&gt;&lt;/span&gt;&lt;font face="新宋体"&gt;&lt;br&gt;-- &lt;br&gt;Best Regards&lt;br&gt;&lt;/font&gt;&lt;br&gt;Yin Hao&lt;br&gt;E-Mail:  &lt;a href="mailto:guojun.yin@gmail.com"&gt; guojun.yin@gmail.com&lt;/a&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;table cellspacing="0" border="0"&gt;&lt;tr height="8"&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;p&gt;&lt;a href="http://tkfiles.storage.live.com&amp;#47;y1pmSbasWfdObfQtjMjmsJAJKLe_Y0OxAHvvSIHAjoetThdXpv5DHgP0tsJOPHZuI8NgOgHEhVsUv8"&gt;&lt;img src="http://storage.live.com&amp;#47;items&amp;#47;F4B9B5E278DE10EE&amp;#33;806&amp;#58;thumbnail" border="0"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt;&lt;td width="15"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+SuSE%e7%bb%99%e6%88%91surprise&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!707.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!707.entry</guid><pubDate>Fri, 01 Dec 2006 03:19:26 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!707/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!707.entry#comment</wfw:comment><dcterms:modified>2007-03-15T07:02:27Z</dcterms:modified></item><item><title>Linux大众化看来真的有很长一段路要走</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!655.entry</link><description>&lt;div&gt;&lt;font color="#ff6600" size=3&gt;      最近一直在捣持Red hat 9，其实long long ago就想装个linux。在大二有了自己的电脑后，就到配套市场买了个企鹅linux，当时记得是只蓝色的企鹅。天真的以为linux会象windows一样一路next的就可以搞定的，于是就自己安装起来，结果发现不支持我的显卡，最终的结果是我的硬盘上的文件系统废掉了，windows也进不去了，可怜我收集的n多mp3啊，都是56k的小猫呼哧呼哧从网上拖下来的，当时拨号好象是3块多一小时啊。&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#ff6600" size=3&gt;      因为工作中需要接触linux，所以就开始学起来，但还是心有余悸的，真是一朝被蛇咬，十年怕见绳啊。装之间上网查了很多资料，主要是linux的分区和mount点比较麻烦，在window下是目录从属与分区，而在linux下则是相反。装好Redhat 9之后，主要是玩玩shell，不错，跟当年在操作路由器时感觉差不多，很喜欢敲命令，似乎敲命令比使用图形界面NB一点，哈哈哈。&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#ff6600" size=3&gt;     光是学shell是不能让人过瘾的，多媒体的功能是必须的，因此网上download一个xmms-1.2.10-1.i386.rpm文件，可以播放mp3等。不知道怎么对付rpm文件，同事给我抄了一条命令rpm -ivh xmms-1.2.10-1.i386.rpm，结果提示已经安装了更新的xmms版本1.2.10-9。因此只能卸载1.2.10-9版本。继续查询rpm命令,man rpm。rpm -e xmms后的提示是文件有依赖性，我不管了，继续rpm -e --nodeps xmms,终于强制卸载了xmms，然后rpm -Uvh --replacefiles强制装上了v1.2.10-1， 不错xmms可以运行了，不过一首5分钟的歌曲，在这里10s就唱完了，感觉就是小鸡在乱叫，估计学习爱因斯坦的相对论之后才能听这样的歌曲。可是该怎么听呢？是不是要以x倍的光速运动才能听到正常语速呢？ 不知道！&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#ff6600" size=3&gt;     基本上放弃了xmms，只能上网继续找其他播放软件。xine-lib-1.1.1.tar.gz和kaffeine-0.8.1.tar.bz2，一看后缀就让人头大，幸好解压缩问题不大。可是下面的安装过程很烦琐，原来需要./configure，然后make，然后make install。找了个高手来看，编译的结果是出现3个errors和两个warnings。 Red hat 怎么忍心这么欺负一个linux的新手呢？！&lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font color="#ff6600" size=3&gt;悄悄地说一下，我还是计算机专业毕业的呢&lt;img src="http://spaces.msn.com/rte/emoticons/smile_embaressed.gif"&gt;。看来linux大众化进程不是以日，月可以计的！&lt;/font&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+Linux%e5%a4%a7%e4%bc%97%e5%8c%96%e7%9c%8b%e6%9d%a5%e7%9c%9f%e7%9a%84%e6%9c%89%e5%be%88%e9%95%bf%e4%b8%80%e6%ae%b5%e8%b7%af%e8%a6%81%e8%b5%b0&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!655.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!655.entry</guid><pubDate>Tue, 11 Apr 2006 04:50:20 GMT</pubDate><slash:comments>2</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!655/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!655.entry#comment</wfw:comment><dcterms:modified>2006-04-11T05:42:54Z</dcterms:modified></item><item><title>linux网上资源(欢迎大家添加3Q)</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!652.entry</link><description>&lt;div&gt;国外 &lt;br&gt;&lt;a href="http://lwn.net/"&gt;http://lwn.net/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.tldp.org/"&gt;http://www.tldp.org/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.justlinux.com/"&gt;http://www.justlinux.com/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.linuxtoday.com/"&gt;http://www.linuxtoday.com/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.linuxquestions.org/"&gt;http://www.linuxquestions.org/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.fokus.gmd.de/linux/"&gt;http://www.fokus.gmd.de/linux/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.linux-tutorial.info/"&gt;http://www.linux-tutorial.info/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://public.www.planetmirror.com/"&gt;http://public.www.planetmirror.com/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.freebsdforums.org/forums/"&gt;http://www.freebsdforums.org/forums/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www.netfilter.org/documentation/"&gt;http://www.netfilter.org/documentation/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;a href="http://www-106.ibm.com/developerworks/linux/"&gt;http://www-106.ibm.com/developerworks/linux/&lt;/a&gt; &lt;/div&gt;
&lt;div&gt; &lt;/div&gt;
&lt;p&gt;国内 
&lt;p&gt;永远的UNIX&lt;br&gt;&lt;a href="http://www.fanqiang.com/"&gt;http://www.fanqiang.com/&lt;/a&gt; 
&lt;p&gt;&lt;a href="http://www.linuxsir.com/"&gt;http://www.linuxsir.com/&lt;/a&gt; 
&lt;p&gt;全球最大的 Linux Unix 中文网站&lt;br&gt;&lt;a href="http://www.chinaunix.net/"&gt;http://www.chinaunix.net/&lt;/a&gt; 
&lt;p&gt;中国linux公社&lt;br&gt;&lt;a href="http://www.linuxfans.org/"&gt;http://www.linuxfans.org/&lt;/a&gt; 
&lt;p&gt;&lt;font face=Arial&gt;Linux伊甸园论坛&lt;/font&gt;&lt;br&gt;&lt;a href="http://www.linuxeden.com/"&gt;http://www.linuxeden.com/&lt;/a&gt; 
&lt;p&gt;中国linux论坛&lt;br&gt;&lt;a href="http://www.linuxforum.net/"&gt;http://www.linuxforum.net/&lt;/a&gt; 
&lt;p&gt;linuxAid技术支持中心&lt;br&gt;&lt;a href="http://www.linuxaid.com.cn/"&gt;http://www.linuxaid.com.cn/&lt;/a&gt; 
&lt;p&gt;&lt;a href="http://freesoft.online.sh.cn/"&gt;http://freesoft.online.sh.cn/&lt;/a&gt; 
&lt;p&gt;IBM developerWorks 中国:linux&lt;br&gt;&lt;a href="http://www-900.ibm.com/developerWorks/cn/linux/index.shtml"&gt;http://www-900.ibm.com/developerWorks/cn/linux/index.shtml&lt;/a&gt; 
&lt;p&gt;linux技术中坚站论坛
&lt;p&gt;&lt;a href="http://www.chinalinuxpub.com/bbs/index.php"&gt;http://www.chinalinuxpub.com/bbs/index.php&lt;/a&gt;?&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+linux%e7%bd%91%e4%b8%8a%e8%b5%84%e6%ba%90(%e6%ac%a2%e8%bf%8e%e5%a4%a7%e5%ae%b6%e6%b7%bb%e5%8a%a03Q)&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!652.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!652.entry</guid><pubDate>Thu, 06 Apr 2006 01:15:46 GMT</pubDate><slash:comments>2</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!652/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!652.entry#comment</wfw:comment><dcterms:modified>2007-03-15T07:05:45Z</dcterms:modified></item><item><title>linux文件结构</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!651.entry</link><description>&lt;span&gt;大多数由windows平台转来的用户在使用linux文件系统的时候都会感到困惑。linux文件系统与windows文件系统有很大的差别。本文设身处地的为新手介绍他们的不同点并且向新手介绍linux的文件系统。 &lt;br&gt;&lt;br&gt;　　作为开端，只有一个单独的顶级目录结构。所有一切都从root开始，用'/'代表, 并且延伸到子目录。DOS/Windows有不同的分区同时目录都存于分区上。linux则通过'加载'的方式把所有分区都放置在root下制定的目录里。windows下最接近于root的是c:。&lt;br&gt;　　一句话总结：Windows下，目录结构属于分区；Linux下，分区属于目录结构。&lt;br&gt;&lt;br&gt;　　在windows下, 启动时检测不同的分区并被赋予一个分区字母。在linux下除非你加载一个分区或设备,否则系统不会知道那个分区的存在。这看上去也许不是访问分区或设备的最方便的方式,但他提供了伟大的机动性。&lt;br&gt;&lt;br&gt;　　这种构建的方式被称为统一的文件系统，超越了windows所使用的方式。举个使用/usr的例子。这个目录包含了大多数的系统可执行文件。在Linux文件系统下，你可以选择把它加载为其他分区甚至网络上的其他计算机。系统不会感知其中的不同，因为它表现出的只是本地目录结构下众多的目录中的一个而已。有多少次你希望在windows下移动可执行文件和数据，而得到的是不得不去修改注册表或干脆蓝屏？你可曾奢望过移动c:到其他分区上？&lt;br&gt;&lt;br&gt;　　新手容易困惑的另一点是斜杠'/'的使用，在DOS/Windows下使用的是反斜杠''.&lt;br&gt;&lt;br&gt;　　在linux中，windows的c是用类似/c/windows/system来表示的。Linux是免费的系统。在windows之前，Unix已经存在了很久。从DOS开始使用'/'选项而''作为目录分隔符。&lt;br&gt;&lt;br&gt;　　更加麻烦的是Linux同样选择了大小写敏感。这意味着字母的大小写变得非常重要。所以在这种情况下THIS和ThIs是不同的。这个规定会使dos用户遇到很多麻烦。&lt;br&gt;&lt;br&gt;　　现在我们来看一看linux文件系统目录结构的规划。下面是在root下'ls -p'的结果：&lt;br&gt;&lt;br&gt;&lt;br&gt;代码:&lt;br&gt;bin/ dev/ home/ lost+found/ proc/ sbin/ usr/ boot/ etc/ lib/ mnt/ root/ tmp/ var/&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;/sbin&lt;br&gt;&lt;br&gt;这个目录包含了所有使系统运行的关键二进制可执行文件。包含了系统管理和维护硬件配置的程序。你可以在这里找到lilo, fdisk, init, ifconfig等等。&lt;br&gt;这里有所有用户都需要的关键程序。&lt;br&gt;&lt;br&gt;&lt;br&gt;/usr/sbin&lt;br&gt;&lt;br&gt;另一个包含系统可执行文件的目录。这个目录包含了系统管理员使用的一些其他程序。这里你可以找网络守护程序以及一些不需要维护和修理系统的管理员所使用的程序。&lt;br&gt;&lt;br&gt;&lt;br&gt;/bin&lt;br&gt;&lt;br&gt;相对于/sbin, bin目录包含一些系统管理员和普通用户都可以使用的命令。这个目录通常包含诸如bash, csh等shell，以及诸如cp, mv, rm, cat, ls等非常有用的命令。这些命令对于用户来说是不可缺少的。&lt;br&gt;&lt;br&gt;&lt;br&gt;/usr/bin&lt;br&gt;&lt;br&gt;包含一些其它的用户命令。从另一方面看，这些命令本质上并不是为用户准备的。&lt;br&gt;&lt;br&gt;&lt;br&gt;/boot&lt;br&gt;&lt;br&gt;这个目录包含system.map文件以及Linux kernel。Lilo将启动扇区的备份放在这里。&lt;br&gt;&lt;br&gt;&lt;br&gt;/dev&lt;br&gt;&lt;br&gt;这是一个非常有趣的目录，是Linux文件系统的一个闪亮的特性 - 所有对象都是文件或目录。仔细观察这个目录你会发现hda1, hda2等, 它们代表系统主硬盘的不同分区。/dev/cdrom和/dev/fd0代表你的CDROM驱动器和floppy驱动器。看上去可能有些奇怪，但比较文件和硬件的特性这却是十分合理的。它们都可以读出和写入。例如/dev/dsp，这个文件代笔你的扬声器。那么写入这个文件的数据都回传送到喇叭。试一试 'cat /etc/lilo.conf &amp;gt; /dev/dsp' 你会听到一些声音。这是你的 lilo.conf 文件的声音！同样，向 /dev/ttyS0 ( COM 1 ) 读出或写入数据你可以和接到上面的设备进行通讯。&lt;br&gt;&lt;br&gt;&lt;br&gt;/home&lt;br&gt;&lt;br&gt;Linux 是多用户环境，所以每一个用户都有一个只有自己可以访问的目录（当然管理员也可以访问）。它们以 /home/username 的方式存在。这个目录也保存一些应用对于这个用户的配置，比如 IRC, X 等。&lt;br&gt;&lt;br&gt;&lt;br&gt;/lib&lt;br&gt;&lt;br&gt;这里包含了系统程序所需要的所有共享库文件，类似于 Windows 的共享库 DLL 文件。&lt;br&gt;&lt;br&gt;&lt;br&gt;/lost+found&lt;br&gt;&lt;br&gt;Linux 应该正确的关机。但有时你的系统也可能崩溃掉或突然断电使系统意外关机。那么启动的时候 fsch 将会进行长时间的文件系统检查。Fsck 会检测并试图恢复所发现的不正确的文件。被恢复的文件会放置在这个目录中。所恢复的文件也许并不完整或并不合理，但毕竟提供了一些恢复数据的机会。&lt;br&gt;&lt;br&gt;&lt;br&gt;/mnt&lt;br&gt;&lt;br&gt;这是一个普通的加载目录，在这里你可以加载你的文件系统或设备。&lt;br&gt;加载是使一个文件系统对于系统可用的过程。&lt;br&gt;在加载后你的文件可以在加载目录下访问。&lt;br&gt;这个目录通常包含加载目录或用于加载软驱和光驱的子目录。&lt;br&gt;如果需要，你也可以在这里建立其它的加载目录。&lt;br&gt;对于加载目录的位置并没有强制性的要求，你可以在系统的任意位置建立加载目录。&lt;br&gt;建立 /mnt 只是为了使系统更工整的惯例。&lt;br&gt;&lt;br&gt;&lt;br&gt;/opt&lt;br&gt;&lt;br&gt;这个目录包含所有默认系统安装之外的软件和添加的包。一般来说你可以在这里找到 KDE 和 StarOffice 。这个目录一般并不会经常被启用，这是Unix系统安装的标准。&lt;br&gt;&lt;br&gt;&lt;br&gt;/proc&lt;br&gt;&lt;br&gt;这是系统中极为特殊的一个目录，实际上任何分区上都不存在这个目录。它实际是个实时的、驻留在内存中的文件系统。详细信息请参阅 &lt;a href="http://www.freeos.com/articles/2879/"&gt;&lt;font color="#003366"&gt;&lt;u&gt;http://www.freeos.com/articles/2879/&lt;/u&gt;&lt;/font&gt;&lt;/a&gt; &lt;br&gt;&lt;br&gt;&lt;br&gt;/root&lt;br&gt;&lt;br&gt;这是root的用户用户目录。&lt;br&gt;&lt;br&gt;&lt;br&gt;/tmp&lt;br&gt;&lt;br&gt;这里包含大多数要用到的临时文件。&lt;br&gt;许多程序在这里建立lock文件和存储临时数据。有些系统会在启动或关机时清空此目录。&lt;br&gt;&lt;br&gt;&lt;br&gt;/usr&lt;br&gt;&lt;br&gt;这是系统中很重要的一个目录，这里包含所有用户的二进制文件。&lt;br&gt;X，及其库文件，用户程序比如 telnet, ftp 等等都在这里。&lt;br&gt;/usr/doc包含系统文档。/usr/src/linux包含 Linux kernel 的源码。&lt;br&gt;&lt;br&gt;&lt;br&gt;/var&lt;br&gt;&lt;br&gt;这里存储假脱机(spooling)数据，比如 mail 以及打印机守护的输出。&lt;br&gt;系统日志也存放在这里。你还可以在/var/named下找到BIND的数据库，在/var/yp下找到NIS的数据库。&lt;/span&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+linux%e6%96%87%e4%bb%b6%e7%bb%93%e6%9e%84&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!651.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!651.entry</guid><pubDate>Wed, 05 Apr 2006 06:00:06 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!651/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!651.entry#comment</wfw:comment><dcterms:modified>2006-04-05T07:23:27Z</dcterms:modified></item><item><title>RedHat Linux常见问题集锦1</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!644.entry</link><description>&lt;div&gt;&lt;font color="#000000"&gt;RedHat Linux常见问题集锦 &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;b&gt;修改主机名 &lt;/b&gt;&lt;br&gt;vi /etc/sysconfig/network，修改HOSTNAME一行为HOSTNAME=主机名，重启后也能生效 &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;b&gt;Ret Hat Linux启动到文字界面(不启动xwindow) &lt;/b&gt;&lt;br&gt;将/etc/inittab中 id:5:initdefault: 一行中的5改为3 &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;br&gt;&lt;/font&gt;&lt;a&gt;&lt;/a&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;b&gt;redhat的自动问题 &lt;/b&gt;&lt;br&gt;在www.redhat.com/corp/support/errata/找到补丁，6.1以后的版本带有一个工 &lt;br&gt;具up2date，它能够测定哪些rpm包需要升级，然后自动从redhat的站点下载并完成安装。 &lt;br&gt;&lt;b&gt;windows下看linux分区的软件&lt;/b&gt; &lt;br&gt;Paragon.Ext2FS.Anywhere.2.5.rar和explore2fs-1.00-pre4.zip &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;b&gt;mount用法&lt;/b&gt; &lt;br&gt;fat32的分区 mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom &lt;br&gt;iso文件 mount -o loop /abc.iso /mnt/cdrom &lt;br&gt;软盘 mount /dev/fd0 /mnt/floppy &lt;br&gt;USB闪存 mount /dev/sda1 /mnt/cdrom &lt;br&gt;所有/etc/fstab内容 mount -a &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;可以指定文件格式&amp;quot;-t 格式&amp;quot;, 格式可以为vfat, ext2, ext3等. &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;b&gt;在vmware的LINUX中使用本地硬盘的FAT分区&lt;/b&gt; &lt;br&gt;将本地的FAT分区共享，然后在VMWARE中使用SMBFS挂上。可以将如下的行放到/etc/fstab中： &lt;br&gt;//win_ip/D$ /mnt/d smbfs defaults,auto,username=win_name,password=win_pass,codepage=936,iocharest=gb2312 0 0 &lt;br&gt;其中win_ip是你的windows的IP地址； &lt;br&gt;D$是你的windows里面共享的D盘的共享名； &lt;br&gt;/mnt/d是要将该分区mount到linux的目录； &lt;br&gt;win_name和win_pass是你的WINDOWS里面可以读取该分区的用户，比如你的管理员名和密码。 &lt;br&gt;如果你运行了/etc/rc.d/init.d/netfs，那么在启动的时候就会自动挂载这个分区。 &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;&lt;b&gt;删除名为-a的文件&lt;/b&gt; &lt;br&gt;rm ./-a &lt;br&gt;rm -- -a 告诉rm这是最后一个选项，参见getopt &lt;br&gt;ls -i 列出inum，然后用find . -inum inum_of_thisfile -exec rm '{}' \; &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0007.b &lt;br&gt;删除名为\a的文件 &lt;br&gt;rm \\a &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0007.c &lt;br&gt;删除名字带的/和‘\0'文件 &lt;br&gt;这些字符是正常文件系统所不允许的字符，但可能在文件名中产生，如unix下的NFS文件系统在Mac系统上使用 &lt;br&gt;1.解决的方法，把NFS文件系统在挂到不过滤'/'字符的系统下删除含特殊文件名的文件。 &lt;br&gt;2.也可，将错误文件名的目录其它文件移走，ls -id 显示含该文件目录的inum，umount 文件系统， &lt;br&gt;clri清除该目录的inum，fsck，mount，check your lost+found，rename the file in it. &lt;br&gt;最好是通过WINDOWS FTP过去就可以删除任何文件名的文件了! &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0007.d &lt;br&gt;删除名字带不可见字符的文件 &lt;br&gt;列出文件名并转储到文件：ls -l &amp;gt;aaa &lt;br&gt;然后编辑文件的内容加入rm命令使其内容成为删除上述文件的格式： &lt;br&gt;vi aaa &lt;br&gt;[rm -r ******* &lt;br&gt;] &lt;br&gt;把文件加上执行权限 chmod +x aaa &lt;br&gt;执行 $aaa &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0007.e &lt;br&gt;删除文件大小为零的文件 &lt;br&gt;rm -i `find ./ -size 0` &lt;br&gt;find ./ -size 0 -exec rm {} \; &lt;br&gt;find ./ -size |xargs rm -f &amp;amp;非常有效 &lt;br&gt;for file in * #自己定义需要删除的文件类型 &lt;br&gt;do &lt;br&gt;if [ ! -s ${file} ] &lt;br&gt;then &lt;br&gt;rm ${file} &lt;br&gt;echo &amp;quot;rm $file Success!&amp;quot; &lt;br&gt;fi &lt;br&gt;done &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0008 &lt;br&gt;redhat设置滚轮鼠标 &lt;br&gt;进入X后，选择鼠标的配置，选择wheel mouse(ps/2)就可以了 &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0009 &lt;br&gt;加装xwindow &lt;br&gt;用linux光盘启动，选择升级，然后单独选择包，安装即可 &lt;/font&gt;
&lt;p&gt;&lt;font color="#000000"&gt;0010 &lt;br&gt;删除linux分区 &lt;br&gt;做一张partition magic的启动软盘,启动后删除. 或者用win2000的启动光盘启动,然后删除. &lt;/font&gt;
&lt;p&gt; 
&lt;p&gt;0011 &lt;br&gt;新编译生成的gcc ，使用的标准连接库都在/usr/local/lib 下了，但使用的缺省的连接路径是 /usr/lib 怎样添加？（除了在每次编译时 增加 -L /usr/local/lib 以外)(sakulagi) &lt;br&gt;export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib &lt;br&gt;写到~/.bash_profile里面。 
&lt;p&gt;0012 &lt;br&gt;不编译内核，mount ntfs分区 &lt;br&gt;原装rh8，未升级或编译内核 &lt;br&gt;1. 上google.com搜索并下载 kernel-ntfs-2.4.18-14.i686.rpm &lt;br&gt;2. rpm -ivh kernel-ntfs-2.4.18-14.i686.rpm &lt;br&gt;3. mkdir /mnt/c &lt;br&gt;4. mount -t ntfs /dev/hda1 /mnt/c 
&lt;p&gt;0013 &lt;br&gt;redhat 8.0中用xmms听mp3 &lt;br&gt;下载www.gurulabs.com/files/xmms-mp3-1.2.7-13.p.i386.rpm &lt;br&gt;rpm -Uvh xmms-mp3-1.2.7-13.p.i386.rpm 
&lt;p&gt;0014 &lt;br&gt;找回忘记了的root口令（lilo/grub） &lt;br&gt;三种办法： &lt;br&gt;1.在系统进入单用户状态，直接用passwd root去更改 &lt;br&gt;2.用安装光盘引导系统，进行linux rescue状态，将原来/分区挂接上来,作法如下： &lt;br&gt;cd /mnt &lt;br&gt;mkdir hd &lt;br&gt;mount -t auto /dev/hdaX(原来/分区所在的分区号） hd &lt;br&gt;cd hd &lt;br&gt;chroot ./ &lt;br&gt;passwd root &lt;br&gt;这样可以搞定 &lt;br&gt;3.将本机的硬盘拿下来，挂到其他的linux系统上，采用的办法与第二种相同 &lt;br&gt;rh8中 &lt;br&gt;一. lilo &lt;br&gt;1. 在出现 lilo: 提示时键入 linux single &lt;br&gt;画面显示 lilo: linux single &lt;br&gt;2. 回车可直接进入linux命令行 &lt;br&gt;3. #vi /etc/shadow &lt;br&gt;将第一行，即以root开头的一行中root:后和下一个:前的内容删除， &lt;br&gt;第一行将类似于 &lt;br&gt;root::...... &lt;br&gt;保存 &lt;br&gt;4. #reboot重启，root密码为空 &lt;br&gt;二. grub &lt;br&gt;1. 在出现grub画面时，用上下键选中你平时启动linux的那一项(别选dos哟)，然后按e键 &lt;br&gt;2. 再次用上下键选中你平时启动linux的那一项(类似于kernel /boot/vmlinuz-2.4.18-14 ro root=LABEL=/)，然后按e键 &lt;br&gt;3. 修改你现在见到的命令行，加入single，结果如下： &lt;br&gt;kernel /boot/vmlinuz-2.4.18-14 single ro root=LABEL=/ &lt;br&gt;4. 回车返回，然后按b键启动，即可直接进入linux命令行 &lt;br&gt;5. #vi /etc/shadow &lt;br&gt;将第一行，即以root开头的一行中root:后和下一个:前的内容删除， &lt;br&gt;第一行将类似于 &lt;br&gt;root::...... &lt;br&gt;保存 &lt;br&gt;6. #reboot重启，root密码为空 
&lt;p&gt;0015 &lt;br&gt;使ctrl + alt + del失效 &lt;br&gt;vi /etc/inittab &lt;br&gt;将ca::ctrlaltdel:/sbin/shutdown -t3 -r now这行注释掉，就可以了 
&lt;p&gt;0016 &lt;br&gt;gcc abc.c得到的a.out不能运行 &lt;br&gt;./a.out 
&lt;p&gt;0017 &lt;br&gt;文件在哪个rpm中(无双) &lt;br&gt;上www.rpmfind.net上搜，或者rpm -qf 文件名得到 
&lt;p&gt;0018 &lt;br&gt;把man或info的信息存为文本文件 &lt;br&gt;以 tcsh 为例： &lt;br&gt;man tcsh | col -b &amp;gt; tcsh.txt &lt;br&gt;info tcsh -o tcsh.txt -s 
&lt;p&gt;0019 &lt;br&gt;利用现存两个文件，生成一个新的文件 &lt;br&gt;1. 取出两个文件的并集(重复的行只保留一份) &lt;br&gt;2. 取出两个文件的交集(只留下同时存在于两个文件中的文件) &lt;br&gt;3. 删除交集，留下其他的行 &lt;br&gt;1. cat file1 file2 | sort | uniq &lt;br&gt;2. cat file1 file2 | sort | uniq -d &lt;br&gt;3. cat file1 file2 | sort | uniq -u 
&lt;p&gt;0020 &lt;br&gt;设置com1口，让超级终端通过com1口进行登录 &lt;br&gt;确认有/sbin/agetty，编辑/etc/inittab，添加 &lt;br&gt;7:2345:respawn:/sbin/agetty /dev/ttyS0 9600 &lt;br&gt;9600bps是因为联路由器缺省一般都是这种速率，也可以设成 &lt;br&gt;19200、38400、57600、115200 &lt;br&gt;修改/etc/securetty，添加一行：ttyS0，确保root用户能登录 &lt;br&gt;重启机器，就可以拔掉鼠标键盘显示器（启动时最好还是要看看输出信息）了 &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+RedHat+Linux%e5%b8%b8%e8%a7%81%e9%97%ae%e9%a2%98%e9%9b%86%e9%94%a61&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!644.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!644.entry</guid><pubDate>Thu, 30 Mar 2006 04:50:43 GMT</pubDate><slash:comments>5</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!644/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!644.entry#comment</wfw:comment><dcterms:modified>2006-03-30T04:52:52Z</dcterms:modified></item><item><title>左值右值</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!280.entry</link><description>&lt;div&gt;&lt;font size=3&gt;发信人: seaboy (浪小), 信区: C_and_CPP &lt;br&gt;标  题: 左值右值 &lt;br&gt;发信站: 哈工大紫丁香 (2003年06月21日18:55:23 星期六), 站内信件 &lt;br&gt;&lt;br&gt;                          &lt;br&gt;    左值（lvalue）和右值（rvalue）是编程中两个非常基本的概念，但是也非常容易让 人误解，看了很多文章，自我感觉真正将这个问题讲的很透彻的文章还没有看见，所以自告奋勇来尝试一下。如果左值右值的概念不是非常清楚的话，它们迟早会像拦路虎一样跳出来，让你烦心不已，就像玩电脑游戏的时候每隔一段时间总有那么几个地雷考验你的耐性，如果一次把所有地雷扫尽就好了。：） &lt;br&gt;&lt;br&gt;    左值（lvalue）和右值（rvalue）最先来源于C语言。最先在C语言中表示位于赋值运算符两侧的两个值，左边的就叫左值，右边的就叫右值。比如： &lt;br&gt;&lt;br&gt;    int ii = 5;//ii是左值，5是右值 &lt;br&gt;    int jj = ii;//jj是左值，ii是右值 &lt;br&gt;&lt;br&gt;    上面表明，左值肯定可以作为右值使用，但反之则不然。左值和右值的最早区别就在于能否改变。左值是可以变的，右值不能变。【注1】 &lt;br&gt;&lt;br&gt;    注1：这一点在C++中已经猪羊变色，不再成立。拱猪游戏还是挺好玩的，我还真抓过好几次全红心，不过真的好险。：） &lt;br&gt;&lt;br&gt;    在很多文章中提到，在C++中，左值更多的指的是可以定位，即有地址的值，而右值没有地址。【注2】 &lt;br&gt;&lt;br&gt;    注2：这一点仍然不准确，我在程序中生成一个临时右值std::vector()，你能够说它没有地址吗？难道它是没有肉体的鬼魂或幽灵？它是有地址的，而且它也是绝对的右值。 &lt;br&gt;&lt;br&gt;&lt;br&gt;    在现代C++中，现在左值和右值基本上已经失去它们原本所具有的意义，对于左值表达式，通过具体名字和引用（pointer or reference）来指定一个对象。非左值就是右值。 &lt;br&gt;我来下一个定义： &lt;br&gt;&lt;br&gt;    左值表示程序中必须有一个特定的名字引用到这个值。 &lt;br&gt;    右值表示程序中没有一个特定的名字引用到这个值。 &lt;br&gt;    跟它们是否可以改变，是否在栈或堆（stack or heap）中有地址毫无关系。 &lt;br&gt;&lt;br&gt;    1．左值 &lt;br&gt;&lt;br&gt;    在下面的代码中： &lt;br&gt;    int ii = 5; &lt;br&gt;    int const jj = ii; &lt;br&gt;    int a[5]; &lt;br&gt;    a[0] = 100; &lt;br&gt;    *(a+3) = 200; &lt;br&gt;int const&amp;amp; max( int const&amp;amp; a, int const&amp;amp; b ) //call by reference &lt;br&gt;{ &lt;br&gt;        return a &amp;gt; b ? a : b; &lt;br&gt;} &lt;br&gt;&lt;br&gt;int&amp;amp; fun(int&amp;amp; a) //call by reference &lt;br&gt;{ &lt;br&gt;        a += 5; &lt;br&gt;   return a; &lt;br&gt;} &lt;br&gt;&lt;br&gt;    ii，jj，a[0]，*(a+3)，还有函数max的返回值比如max(ii, jj)，【注3】函数fun的返回值fun(ii)都是左值。，它们都是有特定的引用名字的值。ii，jj，a[0]，*(a+3)，max(ii, jj)，fun(ii)分别就是它们的名字。 &lt;br&gt;&lt;br&gt;    注3：在这里有一个不太容易分清楚的盲点。那就是有人会问max(8, 9)到达是左值还是右值，C++标准规定常量引用（reference to const）可以引用到右值，所以max(8, 9)似乎应该是右值，不过不管它是左值，还是右值，我们都不能试图去改变它。为了与前面的概念一致，我认为它是左值，不可改变的常量左值。 &lt;br&gt;&lt;br&gt;    左值有不能改变的，即被const所修饰的左值，比如上面的jj，max(ii, jj)都是被常量（const）魔咒所困住的左值。 &lt;br&gt;&lt;br&gt;    没有被const困住的左值当然是可以改变的，比如下面的代码都是成立的： &lt;br&gt;    ii = 600; &lt;br&gt;    a[0] = 700; &lt;br&gt;    fun(ii) = 800; //OK! &lt;br&gt;&lt;br&gt;    我们的眼睛没有问题，fun(ii) = 800;完全正确，因为它是可以改变的左值。 &lt;br&gt;&lt;br&gt;    所以我们看STL的源码，就会理解std::vector中的重载operator[]运算符的返回值为什么要写成引用，因为operator[]必须返回左值。 &lt;br&gt;&lt;br&gt;    2．右值 &lt;br&gt;&lt;br&gt;    没有特定名字的值是右值。先看下面的代码： &lt;br&gt;    std::list(); &lt;br&gt;    std::string(“It is a rvalue!”); &lt;br&gt;int fun1() //call by value &lt;br&gt;{ &lt;br&gt;        … &lt;br&gt;} &lt;br&gt;&lt;br&gt;int* fun2() //call by reference &lt;br&gt;{ &lt;br&gt;        … &lt;br&gt;} &lt;br&gt;&lt;br&gt;    其中std::list()，std::string(“It is a rvalue!”)，函数fun1的返回值fun1()， &lt;br&gt;函数fun2的返回值fun2()都是右值，它们的值都没有特定的名字去引用。也许有人会奇怪，fun2()也是右值？最前面的max(a,b)不是左值吗？ &lt;br&gt;&lt;br&gt;   请看清楚，函数fun2的返回值是pointer，pointer也是call by value，而函数max的返回值是reference，reference是call by reference。所以说C++中引入reference不仅仅是为了方便，它也是一种必须。【注4】 &lt;br&gt;&lt;br&gt;    注4：Scott Meyers写的《More Effective C++》的条款1专门讲了pointer和reference的区别，写的很好，辨别的非常清楚。 &lt;br&gt;&lt;br&gt;    fun2()是右值，但 *fun2()却是左值，就跟经常看到的*p一样，所以看C++库代码的时候，会发现重载operator*的函数返回值是reference。 &lt;br&gt;    当然我还遗漏了一种右值，那就是字面上的（literal）值，比如5，8.23，’a’等等理所当然的都是右值。 &lt;br&gt;&lt;br&gt;    右值最初出现的时候，一个最大的特征就是不可改变。但就跟我们的道德标准一样，时代不同了，标准也变化了，以前的三纲五常早已经被扔到历史的垃圾堆里面了。 &lt;br&gt;&lt;br&gt;    C++中有可以改变的右值，而且这个特性还非常有用。那就是用户自定义的类（class）的构造函数生成的临时对象。比如： &lt;br&gt;    std::vector(9)，std::deque()，……都是可以改变的右值。在Herb Sutter的《More Exceptional C++》中的条款7的page51页有这样几行代码： &lt;br&gt;&lt;br&gt;// Example 7-2(b): The right way to shrink-to-fit a vector. &lt;br&gt;vector&amp;lt;Customer&amp;gt; c( 10000 ); &lt;br&gt;// ...now c.capacity() &amp;gt;= 10000... &lt;br&gt;// erase all but the first 10 elements &lt;br&gt;c.erase( c.begin()+10, c.end() ); &lt;br&gt;// the following line does shrink c's &lt;br&gt;// internal buffer to fit (or close) &lt;br&gt;vector&amp;lt;Customer&amp;gt;( c ).swap( c ); &lt;br&gt;// ...now c.capacity() == c.size(), or &lt;br&gt;// perhaps a little more than c.size() &lt;br&gt;&lt;br&gt;    认真看几遍，你会发现但vector的大小增大到一定程度，你又用不着这么多空间的时候，你会想办法把它收缩到最合适的大小，但利用别的办法比如调用成员函数reserve()都无法办到，这个时候就必须利用右值可以改变这个性质了。 &lt;br&gt;&lt;br&gt;    vector&amp;lt;Customer&amp;gt;( c ).swap( c );这行代码就是点睛之处。 &lt;br&gt;&lt;br&gt;    首先使用复制构造函数生成临时右值vector&amp;lt;Customer&amp;gt;( c )，这个右值正好是合适大小，然后和c交换【注5】，c就变成合适大小了，最后在整个表达式结束的时候，这个临时右值析构归还内存空间。真是绅士一般的优雅！ &lt;br&gt;&lt;br&gt;    注5：这个时候这个临时右值就发生了改变。 &lt;br&gt;&lt;br&gt;    如果还不理解，可以看看书，或者直接看库的源代码。 &lt;br&gt;&lt;br&gt;    至于为什么会这样？我思考了一下，我想是这样的，我们看类（class）的数据布置结构，会发现它的每一个数据成员都是有名字的，我想编译器在编译的过程中，都会生成一个外部不所知的对这个临时对象右值的名字引用，但需要改变这个临时对象的时候，这个名字就用上了。比如： &lt;br&gt;class Point &lt;br&gt;{ &lt;br&gt;public: //纯粹为了方便，我把数据成员公开，现实中尽量不要这样用 &lt;br&gt;        int x, y ,z; &lt;br&gt;        ……//其他各种成员函数 &lt;br&gt;}; &lt;br&gt;    我们现在就可以改变右值，用到了匿名的引用名字。 &lt;br&gt;    Point().x = 6;//改变了右值 &lt;br&gt;    Point().y = 6;//同意改变了右值，不过注意，这个右值跟上面的不是同一个。 &lt;br&gt;&lt;br&gt;   总结 &lt;br&gt;   左值和右值的真正区别我想就是这些了，左值表示有特定的名字引用，而右值没有特定的名字引用。当然我仍然会有疏忽，希望大家能够提醒我，指正我的不足。 &lt;br&gt;&lt;br&gt;   前两天看Herb Sutter从邮件中寄来的新文章（我订阅了他的新文章邮件通知），一篇是讲Tuple数据结构的，没有什么新意，以前好像看过，还有一篇名字是：（Mostly）Private,地址为&lt;/font&gt;&lt;u&gt;&lt;font color="#0000ff" size=3&gt;&lt;a href="http://www.cuj.com/documents/s=8273/cujcexp2107sutter/"&gt;http://www.cuj.com/documents/s=8273/cujcexp2107sutter/&lt;/a&gt;&lt;/font&gt;&lt;/u&gt;&lt;/div&gt;
&lt;div&gt;&lt;font size=3&gt;深，但看完文章，发现随处可见C++的波诡云谲，又会对什么叫袖里乾坤，滴水藏海多一份感性认识。 &lt;br&gt;&lt;br&gt;    在下一篇文章我想从不同于一般的角度，从自己的经历谈谈在校毕业生在IT行业怎样找工作，我想会让所有读者都有一些思考，不仅仅是求职者。题目我已经想好了，就叫《 扮虎吃猪》，不过现在我有一些别的事情要忙，所以可能会让大家等几&lt;/font&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-812418273468608274&amp;page=RSS%3a+%e5%b7%a6%e5%80%bc%e5%8f%b3%e5%80%bc&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=yinhao1980.spaces.live.com&amp;amp;GT1=yinhao1980"&gt;</description><comments>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!280.entry#comment</comments><guid isPermaLink="true">http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!280.entry</guid><pubDate>Thu, 17 Nov 2005 04:56:35 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://yinhao1980.spaces.live.com/blog/cns!F4B9B5E278DE10EE!280/comments/feed.rss</wfw:commentRss><wfw:comment>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!280.entry#comment</wfw:comment><dcterms:modified>2005-11-17T09:48:46Z</dcterms:modified></item><item><title>C++的 RTTI 观念和用途</title><link>http://yinhao1980.spaces.live.com/Blog/cns!F4B9B5E278DE10EE!278.entry</link><description>&lt;div&gt;&lt;font size=3&gt;      自从1993年Bjarne Stroustrup 〔注1 〕提出有关C++ 的RTTI功能之建议﹐以及C++的异常处理(exception handling)需要RTTI；最近新推出的C++ 或多或少已提供RTTI。 然而，若不小心使用RTTI，可能会导致软件弹性的降低。本文将介绍RTTI的观念和近况﹐并说明如何善用它。 &lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;font size=3&gt;&lt;font color="#ff0000"&gt;什么是RTTI﹖&lt;/font&gt; &lt;br&gt;      在C++ 环境中﹐头文件(header file) 含有类之定义(class definition)亦即包含有关类的结构资料(representational information)。但是﹐这些资料只供编译器(compiler)使用﹐编译完毕后并未留下来﹐所以在执行时期(at run-time) ﹐无法得知对象的类资料﹐包括类名称、数据成员名称与类型、函数名称与类型等等。例如﹐两个类﹐其继承关系如下图： &lt;br&gt;若有如下指令﹕ &lt;br&gt;            Figure *p; &lt;br&gt;            p = new Circle(); &lt;br&gt;            Figure &amp;amp;q = *p; &lt;br&gt;在执行时﹐p指向一个对象﹐但欲得知此对象之类资料﹐就有困难了。同样欲得知q 所参考(reference) 对象的类资料﹐也无法得到。RTTI(Run-Time Type Identification)就是要解决这困难﹐也就是在执行时﹐您想知道指针所指到或参考到的对象类型时﹐该对象有能力来告诉您。随着应用场合之不同﹐所需支持的RTTI范围也不同。最单纯的RTTI包括﹕ &lt;br&gt;●类识别(class identification)──包括类名称或ID。 &lt;br&gt;●继承关系(inheritance relationship)──支持执行时期的「往下变换类型」(downward casting)﹐亦即动态变换类型(dynamic casting) 。 &lt;/font&gt;&lt;/div&gt;
&lt;div&gt;&lt;font size=3&gt;&lt;br&gt;在对象数据库存取上﹐还需要下述RTTI﹕ &lt;br&gt;●对象结构(object layout) ──包括属性的类型、名称及其位置（position或offset）。&lt;br&gt;●成员函数表(table of functions)──包括函数的类型、名称、及其参数类型等。&lt;br&gt;其目的是协助对象的I/O 和持久化(persistence) ﹐也提供调试讯息等。 &lt;br&gt;      若依照Bjarne Stroustrup 之建议〔注1 〕﹐C++ 还应包括更完整的RTTI﹕ &lt;br&gt;●能得知类所实例化的各对象 。 &lt;br&gt;●能参考到函数的源代码。 &lt;br&gt;●能取得类的有关在线说明(on-line documentation) 。 &lt;br&gt;其实这些都是C++ 编译完成时﹐所丢弃的资料﹐如今只是希望寻找个途径来将之保留到执行期间。然而﹐要提供完整的RTTI﹐将会大幅提高C++ 的复杂度﹗ &lt;/font&gt;&lt;/div&gt;&lt;font size=3&gt;
&lt;div&gt;&lt;br&gt;&lt;font color="#ff0000"&gt;RTTI可能伴随的副作用 &lt;br&gt;&lt;/font&gt;      RTTI最主要的副作用是﹕程序员可能会利用RTTI来支持其「复选」(multiple-selection)方法﹐而不使用虚函数(virtual function)方法。 &lt;br&gt;      虽然这两种方法皆能达到多态化(polymorphism) ﹐但使用复选方法﹐常导致违反著名的「开放╱封闭原则」(open/closed principle) 〔注2 〕。反之﹐使用虚函数方法则可合乎这个原则，请看下图﹕ &lt;br&gt;     Circle和Square皆是由Figure所派生出来的子类﹐它们各有自己的draw()函数。当C++ 提供了RTTI﹐就可写个函数如下﹕ &lt;br&gt; void drawing( Figure *p ) &lt;br&gt;      { &lt;br&gt;           if( typeid(*p).name() == &amp;quot;Circle&amp;quot; ) &lt;br&gt;                      ((Circle*)p)  -&amp;gt;  draw(); &lt;br&gt;           if( typeid(*p).name() == &amp;quot;Rectangle&amp;quot; ) &lt;br&gt;                      ((Rectangle*)p) -&amp;gt; draw(); &lt;br&gt;       } &lt;br&gt;  虽然drawing() 函数也具有多型性﹐但它与Figure类体系的结构具有紧密的相关性。当Figure类体系再派生出子类时﹐drawing() 函数的内容必须多加个if指令。因而违反了「开放╱封闭原则」﹐如下﹕ &lt;br&gt;很显然地﹐drawing() 函数应加以修正。 &lt;br&gt;      想一想﹐如果C++ 并未提供RTTI﹐则程序员毫无选择必须使用虚函数来支持drawing() 函数的多型性。于是程序员将draw()宣告为虚函数﹐并写drawing() 如下﹕ &lt;br&gt;     void drawing(Figure *p) &lt;br&gt;                 {     p-&amp;gt;draw();      } &lt;br&gt;     如此﹐Figure类体系能随时派生类﹐而不必修正drawing() 函数。亦即﹐Figure体系有个稳定的接口(interface) ﹐drawing() 使用这接口﹐使得drawing() 函数也稳定﹐不会随Figure类体系的扩充而变动。这是封闭的一面。而这稳定的接口并未限制Figure体系的成长﹐这是开放的一面。因而合乎「开放╱封闭」原则﹐软件的结构会更具弹性﹐更易于随环境而不断成长。 &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;font color="#ff0000"&gt;RTTI的常见的使用场合&lt;/font&gt; &lt;br&gt;      一般而言﹐RTTI的常见使用场合有四﹕异常处理(exceptions handling)、动态转类型(dynamic casting) 、模块集成、以及对象I/O 。 &lt;br&gt;1.异常处理──  大家所熟悉的C++ 新功能﹕异常处理﹐其需要RTTI﹐如类名称等。 &lt;br&gt;2.动态转类型──  在类体系(class hierarchy) 中﹐往下的类型转换需要类继承的RTTI。 &lt;br&gt;3.模块集成──  当某个程序模块里的对象欲跟另一程序模块的对象沟通时﹐应如何得知对方的身分呢﹖知道其身分资料﹐才能呼叫其函数。一般的C++ 程序﹐常见的解决方法是──在源代码中把对方对象之类定义（即存在头文件里）包含进来﹐在编译时进行连结工作。然而﹐像目前流行的主从(Client-Server) 架构中﹐客户端(client)的模块对象﹐常需与主机端(server)的现成模块对象沟通﹐它们必须在执行时沟通﹐但又常无法一再重新编译。于是靠标头文件来提供的类定义资料﹐无助于执行时的沟通工作﹐只得依赖RTTI了。 &lt;br&gt;4.对象I/O ──  C++ 程序常将其对象存入数据库﹐未来可再读取之。对象常内含其它小对象﹐因之在存入数据库时﹐除了必须知道对象所属的类名称﹐也必须知道各内含小对象之所属类﹐才能完整地将对象存进去。储存时﹐也将这些RTTI资料连同对象内容一起存入数据库中。未来﹐读取对象时﹐可依据这些RTTI资料来分配内存空间给对象。&lt;/div&gt;
&lt;div&gt; &lt;br&gt;&lt;font color="#ff0000"&gt;RTTI从那里来﹖&lt;/font&gt; &lt;br&gt;  上述谈到RTTI的用途﹐以及其副作用。这众多争论﹐使得RTTI的标准迟迟未呈现出来。也导致各C++ 开发环境提供者﹐依其环境所需而以各种方式来支持RTTI﹐且其支持RTTI的范围也所不同。  目前常见的支持方式包括﹕ &lt;br&gt;●由类库提供RTTI──例如﹐Microsoft 公司的Visual C++环境。 &lt;br&gt;●由C++ 编译器(compiler)提供──例如﹐Borland C++ 4.5 版本。 &lt;br&gt;●由源代码产生器(code generator)提供──例如Bellvobr系统。 &lt;br&gt;●由OO数据库的特殊预处理器(preprocessor)提供──例如Poet系统。 &lt;br&gt;●由程序员自己加上去。 &lt;br&gt;这些方法皆只提供简单的RTTI﹐其仅为Stroustrup先生所建议RTTI内涵的部分集合而已。相信不久的将来﹐会由C++ 编译器来提供ANSI标准的RTTI﹐但何时会订出这标准呢﹖ 没人晓得吧﹗ &lt;/div&gt;
&lt;div&gt;&lt;br&gt;&lt;font color="#ff0000"&gt;程序员自己提供的RTTI&lt;/font&gt; &lt;br&gt;  通常程序员自己可提供简单的RTTI﹐例如提供类的名称或识别(TypeID)。最常见的方法是﹕为类体系定义些虚函数如Type_na() 及Isa() 函数等。请先看个例子﹕ &lt;br&gt; class Figure  { }; &lt;br&gt; class Rectangle : public Figure   { }; &lt;br&gt; class Square : public Rectangle &lt;br&gt;        {    int data; &lt;br&gt;            public: &lt;br&gt;              Square() { data=88; } &lt;br&gt;              void Display()  { cout &amp;lt;&amp;lt; data &amp;lt;&amp;lt; endl; } &lt;br&gt;          }; &lt;br&gt; void main() &lt;br&gt;       {   Figure *f = new Rectangle(); &lt;br&gt;            Square *s = (Square *)f; &lt;br&gt;            s -&amp;gt; Display(); &lt;br&gt;       } &lt;br&gt;这时s 指向Rectangle 之对象﹐而s-&amp;gt;Display()呼叫Square::Display() ﹐将找不到data值。若在执行时能利用RTTI来检查之﹐就可发出错误讯息。于是﹐自行加入RTTI功能 &lt;br&gt;﹕ &lt;br&gt;  class Figure &lt;br&gt;      {  public: &lt;br&gt;             virtual char* Type_na() &lt;br&gt;                           {  return &amp;quot;Figure&amp;quot;;  } &lt;br&gt;              virtual int Isa(char* cna) &lt;br&gt;                {  return !strcmp(cna, &amp;quot;Figure&amp;quot;)? 1:0;  } &lt;br&gt;      }; &lt;br&gt; class Rectangle:public Figure &lt;br&gt;     {   public: &lt;br&gt;              virtual char* Type_na() &lt;br&gt;                     {  return &amp;quot;Rectangle&amp;quot;;  } &lt;br&gt;              virtual int Isa(char* cna) &lt;br&gt;                 {  return !strcmp(cna, &amp;quot;Rectangle&amp;quot;)? &lt;br&gt;                           1 : Figure::Isa(cna); &lt;br&gt;                 } &lt;br&gt;        static Rectangle* Dynamic_cast(Figure* fg) &lt;br&gt;                 {  return fg -&amp;gt; Isa(Type_na())? &lt;br&gt;                           (Rectangle*)fg : 0; &lt;br&gt;                 } &lt;br&gt;       }; &lt;br&gt;  class Square:public Rectangle &lt;br&gt;          {    int data; &lt;br&gt;       public: &lt;br&gt;           Square() { data=88; } &lt;br&gt;            virtual char* Type_na() &lt;br&gt;                      {  return &amp;quot;Square&amp;quot;;  } &lt;br&gt;            virtual int Isa(char* cna) &lt;br&gt;                {  return !strcmp(cna, &amp;quot;Rectangle&amp;quot;)? &lt;br&gt;                           1 : Rectangle::Isa(cna); &lt;br&gt;                 } &lt;br&gt;        static Square* Dynamic_cast(Figure *fg) &lt;br&gt;                {  return fg-&amp;gt;Isa(Type_na())? &lt;br&gt;                           (Square*)fg : 0; &lt;br&gt;                 } &lt;br&gt;         void Display()  {  cout &amp;lt;&amp;lt; &amp;quot;888&amp;quot; &amp;lt;&amp;lt; endl;  } &lt;br&gt;     }; &lt;br&gt;虚函数Type_na() 提供类名称之RTTI﹐而Isa() 则提供继承之RTTI﹐用来支持「动态转类型」函数──Dynamic_cast()。例如﹕ &lt;br&gt;       Figure *f  =  new Rectangle(); &lt;br&gt;       cout &amp;lt;&amp;lt; f -&amp;gt; Isa(&amp;quot;Square&amp;quot;) &amp;lt;&amp;lt; endl; &lt;br&gt;       cout &amp;lt;&amp;lt; f -&amp;gt; Isa(&amp;quot;Figure&amp;quot;) &amp;lt;&amp;lt; endl; &lt;br&gt;这些指令可显示出﹕f 所指向之对象并非Square之对象﹐但是Figure之对象（含子孙对象）。再如﹕ &lt;br&gt;       Figure *f;  Square *s; &lt;br&gt;       f  =  new Rectangle(); &lt;br&gt;       s  =  Square  ==  Dynamic_cast(f); &lt;br&gt;       if(!s) &lt;br&gt;           cout &amp;lt;&amp;lt; &amp;quot;dynamic_cast error!!&amp;quot; &amp;lt;&amp;lt; endl; &lt;br&gt;此时﹐依RTTI来判断出这转类型是不对的。 &lt;br&gt;类库提供RTTI &lt;br&gt;  由类库提供RTTI是最常见的﹐例如Visual C++的MFC 类库内有个CRuntimeClass 类﹐ 其内含简单的RTTI。请看个程序﹕ &lt;br&gt;        class Figure:public CObject &lt;br&gt;           { &lt;br&gt;               DECLARE_DYNAMIC(Figure); &lt;br&gt;           }; &lt;br&gt;    class Rectangle : public Figure &lt;br&gt;           { &lt;br&gt;              DECLARE_DYNAMIC(Rectangle); &lt;br&gt;           }; &lt;br&gt;    class Square : public Rectangle &lt;br&gt;        { &lt;br&gt;           DECLARE_DYNAMIC(Square); &lt;br&gt;           int data; &lt;br&gt;         public: &lt;br&gt;           void Display()  {  cout &amp;lt;&amp;lt; data &amp;lt;&amp;lt; endl;  } &lt;br&gt;           Square()    {  data=88;  } &lt;br&gt;         }; &lt;br&gt;    IMPLEMENT_DYNAMIC(Figure, CObject); &lt;br&gt;    IMPLEMENT_DYNAMIC(Rectangle, Figure); &lt;br&gt;    IMPLEMENT_DYNAMIC(Square, Rectangle); &lt;br&gt;Visual C++程序依赖这些宏(Macor) 来支持RTTI。现在就看看如何使用CRuntimeClass类吧﹗如下﹕ &lt;br&gt;          CRuntimeClass *r; &lt;br&gt;          Figure *f  =  new Rectangle(); &lt;br&gt;          r = f -&amp;gt; GetRuntimeClass(); &lt;br&gt;          cout &amp;lt;&amp;lt; r -&amp;gt; m_psClassName &amp;lt;&amp;lt; endl; &lt;br&gt;     这就在执行时期得到类的名称。Visual C++的类库仅提供些较简单的RTTI──类名称、