<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="http://feeds.qzone.qq.com/rss.xsl" version="1.0"?>
<rss version="2.0" xmlns:qz="http://qzone.qq.com">
<channel>
<title><![CDATA[阿磊]]></title>
<description><![CDATA[谦谦君子 温润如玉]]></description>
<link>http://83692951.qzone.qq.com</link>
<lastBuildDate>Mon, 30 Nov 2009 02:36:39 GMT</lastBuildDate>
<generator>Qzone</generator>
<language>zh-cn</language>
<copyright>Copyright (C), 2005-2008, Tencent Tech. Co., Ltd.</copyright>
<pubDate>Fri, 27 Nov 2009 01:53:59 GMT</pubDate>

<item>
<title><![CDATA[PCWorld 2010版杀毒软件排名（权威认证）]]></title>
<link>http://83692951.qzone.qq.com/blog/1259286839</link>
<description><![CDATA[         <br>PCWorld 2010版杀毒软件排名 <br>      今天，来自特洛伊木马、隐藏漏洞及蠕虫的巨大威胁已经使得杀毒软件成为一种必需。但是，这并不意味着你必须为具备你可能不想或不需要的功能的安全组套件付费。<br>单机杀毒软件重点是拦截恶意软件，它很少具备其他的功能。例如，你一般不会找到(或者支付)家长控制，系统设置，防火墙等其他功能选项。你完全可以免费配置自己的应用程序套件，甚至你还可以使用系统自带的杀毒软件和Windows内置防火墙。<br><div style="text-align:center;"><wbr /><a href="http://news.csdn.net/a//uploads/2009/11/26/20091126-151848-pic1.jpg" target="_blank"><img style="border:0;" src="http://news.csdn.net/a//uploads/2009/11/26/20091126-151848-pic1.jpg" /></a><wbr /></div>不过，首先你需要知道这些安全程序的具体性能。为了找到答案，PCWorld网站测试了来自美国、欧洲和日本等国家的11款杀毒软件。在知名独立防毒实验室AV-Test.org的协助下，PCWorld测试了这些产品对已知和新式恶意软件的检测率。PCWorld还测试了这些杀毒软件的扫描速度，查杀性能，以及误报率。具体测试结果排名如下：　<br><div style="text-align:center;"><wbr /><a href="http://news.csdn.net/a//uploads/2009/11/26/20091126-151911-pic1.jpg" target="_blank"><img style="border:0;" src="http://news.csdn.net/a//uploads/2009/11/26/20091126-151911-pic1.jpg" /></a><wbr /></div><div style="text-align:center;"><wbr /><a href="http://news.csdn.net/a//uploads/2009/11/26/20091126-151926-pic1.jpg" target="_blank"><img style="border:0;" src="http://news.csdn.net/a//uploads/2009/11/26/20091126-151926-pic1.jpg" /></a><wbr /></div>1. G-Data Antivirus 2010<br>2. Symantec Norton Antivirus 2010(诺顿)<br>3. Kaspersky Lab Anti-Virus 2010(卡巴斯基)<br>4. BitDefender Antivirus 2010<br>5. Panda Antivirus Pro 2010(熊猫卫士)<br>6. F-Secure Anti-Virus 2010<br>7. Avira AntiVir Premium(小红伞)<br>8. Trend Micro AntiVirus Plus AntiSpyware 2010(趋势科技)<br>9. Eset Nod32 Antivirus 4<br>10. McAfee Antivirus Plus 2010<br>11. Alwil Avast! 4.8 Professional Edition<br>在界定每款杀毒软件捍卫PC安全性能的同时，PCWorld还深入地探讨了每款杀毒软件的用户界面及其扫描方式。<br>G Data AntiVirus 2010排名PCWorld杀毒软件测试的首位。无论是在基于签名的传统测试中，还是在没有完整签名情况下检测新式恶意软件的主动防御测试中，G Data AntiVirus 2010的表现都是最好的。<br>然而，虽然G Data AntiVirus 2010的用户界面非常简洁，但它的界面比其他杀毒软件还是比较难以理解。因此，G Data AntiVirus 2010可能最适合于专业用户使用。<br>排名第二的是赛门铁克的Norton Anti-Virus 2010。Norton Anti-Virus 2010非常易于普通用户使用。虽然它在主动防御方面不及G Data，但它在恶意软件拦截和移除表现良好。<br>Norton Anti-Virus 2010额外提供了一些比较实用的工具，例如可以帮助用户确定下载源是否可信及安装是否安全的工具。虽然它仅仅是落后于PCWorld最为好评的G Data AntiVirus 2010，但诺顿还是非常适合对安全要求不是太高的电脑用户使用。<br>PCWorld认为杀毒性能(或效力)-凌驾于其他一切之上。毕竟，如果无法拦截恶意软件，再美观的杀毒软件也会不值一文。根据测试，PCWorld发现几乎所有的杀毒软件都具备完全检测已签名恶意软件的能力。当面对超过650,000个特洛伊木马和间谍软件等其他病毒样本时，70%的杀毒软件病毒检测率超过99%，而且没有一款杀毒软件的病毒检测率低于94%。 <!--v:3.2--> ]]></description>
<category><![CDATA[技术]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1259286839#comment</comments>
<qz:effect>134218241</qz:effect>
<pubDate>Fri, 27 Nov 2009 01:53:59 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1259286839</guid>
</item>

<item>
<title><![CDATA[做人做事是一门学问]]></title>
<link>http://83692951.qzone.qq.com/blog/1256000078</link>
<description><![CDATA[<span style="font-size:32px;font-family:'楷体_GB2312';line-height:1.8em;"><span style="font-weight:bold"><wbr />一个人不管有多聪明，多能干，背景条件有多好，如果不懂得如何去做人、做事，那么他最终的结局肯定是失败。 <br>　　做人做事是一门艺术，更是一门学问。很多人之所以一辈子都碌碌无为，那是因为他活了一辈子都没有弄明白该怎样去做人做事。 <br>　　每一个人生活在现实社会中，都渴望着成功，而且很多有志之士为了心中的梦想，付出了很多，然而得到的却很少，这个问题不能不引起人们的深思：你不能说他们不够努力，不够勤劳，可为什么偏偏落得个一事无成的结局呢？这值得我们每一个人去认真思考。 <br>　　从表面上看，做人做事似乎很简单，有谁不会呢？其实不然，比如说你当一名教师，你的主观愿望是当好教师，但事实上却不受学生欢迎；你去做生意，你的主观愿望是赚大钱，可偏偏就赔了本。抛开这些表层现象，去发掘问题的症结，你就会发现做人做事的确是一门很难掌握的学问。 <br>　　可以这么说，做人做事是一门涉及现实生活中各个方面的学问，单从任何一个方面入手研究，都不可能窥其全貌。要掌握这门学问，抓住其本质，就必须对现实生活加以提炼总结，得出一些具有普遍意义的规律来，人们才能有章可循，而不至于迷然无绪。读懂一个字诀，受用你一生！ <br><br>　　一、社会交往字诀——教你建功立业 <br><br>（一）“谦”字诀 <br><br>　　处世唯“谦”字了得，若一味狂妄自负、骄傲自大，只会失去处世的根本，落得个孤苦伶仃、千夫所指的骂名下场。 <br><br>1、不可目中无人 <br><br>2、得意不要忘形 <br><br>3、有本事不必自夸 <br><br>4、请教不择人 <br><br>（二）“淡”字诀 <br><br>　　为人处世，交朋待友，对势利纷华，似乎不必太过于苛求，当以“淡”字当头。看淡些，看开些，人生也就豁然开朗，有滋有味了。 <br>　　正如“平平淡淡才是真”。 <br><br>1、君子之交淡如水 <br><br>2、淡看人生，善待生命 <br><br>3、淡泊明志，莫为名利遮望眼 <br><br>4、减少心欲，满足心灵 <br><br>（三）“俭”字诀 <br><br>　　不懂得“俭”字的人，不知道如何成功，任何成功的事业都在于点滴的积累；不懂得“俭”字的人，只会丧失成功，过分的骄奢多败人品质。 <br>    “俭以养德”，为人做事之良训。 <br><br>1、从节省生活费开始 <br><br>2、“穷大方”不可取 <br><br>3、谨防变态的节俭：吝啬 <br><br>4、欲路勿染，俭以养德 <br><br>（四）“自”字诀 <br><br>　　做一个有个性的人，给自己一点自信！成功的道路靠自己闯，美好的前途来自于自强自立，不屈服于任何权威，用自我的努力找到属于你的自尊。 <br>　　男儿立世，自己拍板！ <br><br>1、自强自立，与成功有约 <br><br>2、独品人生百态 <br><br>3、用自我来挑战权威 <br><br>4、自信——任你东南西北风 <br><br>（五）“礼”字诀 <br><br>　　生在礼仪之邦，做一个彬彬有礼之人。有礼之人会做人，有人缘，多朋友。有礼之人会做事，注重形象，有教养，不树敌，成功路上事事顺。 <br><br>1、以礼待人 <br><br>2、彬彬有礼，礼多人不怪 <br><br>3、注重礼仪着装，给人良好印象 <br><br>（六）“正”字诀 <br><br>　　做一个正直的人，做一个人格健全完善的人，受人崇敬。做一个自私的人，做欺心的事，疾贤防能，与成功无缘。 <br><br>1、己所不欲，勿施于人 <br><br>2、嫉妒乃方正之人之大忌 <br><br>3、不做欺心事，本身是一种愉悦 <br><br>二、形象塑造字诀——教你品格高雅 <br><br>（七）“志”字诀 <br><br>　　给自己一根足够长的杠杆，希望转动地球。 <br>　　给自己的人生立个志愿，树个目标，树个偶像，脚踏实地，成功的意识需要培养，先立志，再与成功约会。 <br><br>1、度德量力，以志立身 <br><br>2、先立志，有志就有希望 <br><br>3、培养成功意识：立志为王 <br><br>4、树立偶像，改变自己 <br><br>（八）“时”字诀 <br><br>做人要惜时，做事要守时。塑造自己的形象，现代人离不开时间观念。合理安排自己的时间，有效利用自己的时间，守时、惜时、不拖延。 <br><br>1、一秒值万金 <br><br>2、别漠视业余时间 <br><br>3、盗窃他人时间，等于谋财害命 <br><br>4、按重要性办事，更能有效利用时间 <br><br>（九）“勤”字诀 <br><br>　　多一些努力，便多一些成功的机会。无数事实证明：成功的最短途径是勤奋。不要光耍嘴皮子，不要好逸恶劳，勤字当头，苍天不负有心人，天道酬勤！ <br><br>1、成功的最短途径：勤奋 <br><br>2、多一些努力，多一些机会 <br><br>3、勤于行动，胜于勤说 <br><br>（十）“实”字诀 <br><br>　　踏踏实实做人，实实在在办事。任何一个双手插在口袋里的人，都爬不上成功的梯子。给人留下一个实在的形象，给自己的成功增添一份夯实的基础，从实际出发，对自己负责。 <br><br>1、敬业，实干家的成功保障 <br><br>2、把每一份工作都做好 <br><br>3、双手插在口袋里的人，爬不上成功的梯子 <br><br>（十一）“专”字诀 <br><br>　　有专才有恒，有恒才有我。 <br>　　你生活在一个知识大爆炸的时代，如果你是一个天才，不专心就成了你的不幸；如果你资质平凡，请不要悲观，只要你下定决心一辈子做好一件事，你就能成功。年轻人，千万别给人留下一个朝三暮四的形象。 <br><br>1、把所有的鸡蛋放入一个篮子 <br><br>2、多才多艺，莫如练就“独门暗器” <br><br>3、专一，让劣势变成优势 <br><br>（十二）“慎”字诀 <br><br>　　人生漫长，又短暂，关键的就几步。人性丛林，职场事业，利益多多、诱惑多多。老成不怕多，凡事应多三思，不怕一万，就怕万一。一旦伸错手，入错行，做错事，于名誉，于事业，于形象皆有不救之危。慎”之！ <br><br>1、千万别入错行 <br><br>2、想好了你再“跳” <br><br>3、不要草率行事 <br><br><br><br>三、自我提升字诀——教你拯救命运 <br><br>（十三）“硬”字诀 <br><br>　　做人难，做事难，面对千难万阻，要提升自我，不来点“硬”的怎么行？如果事有勉强，应该敢于说“不”；如果是正当利益，则应当仁不让；甚至，有时还得来点霸王硬上弓，要有“脸皮厚”的时候，也要有“头皮硬”的时候。 <br><br>1、拒绝是一门艺术 <br><br>2、该我的，就不要客气 <br><br>3、怒发冲冠之功 <br><br>4、厚脸皮做人，硬头皮做事 <br><br>（十四）“小”字诀 <br><br>　　一家海鲜连锁餐厅的老板很可能当初是水产市场练滩儿的，而一家皮鞋连锁店的老板当初可能是擦鞋的。欲做大事，赚大钱，必先做小事，赚小钱，放下架子，舍得小利。从细微处入手，先扫一屋，再扫天下！ <br><br>1、一屋不扫，何以扫天下 <br><br>2、先做小事，赚小钱 <br><br>3、一枚钉子改变一个人的一生 <br><br><br><br>（十五）“锐”字诀 <br><br>　　小小麻雀，飞飞跳跳、争分夺秒，不停地寻觅食物。人生亦如此，面对残酷竞争，惟有锐意进取，做一个好先锋，把下一个进球当目标，敢于冒险，敢于闯荡，守株待兔的事情毕竟很渺茫。 <br><br>1、不以现有成就为满足 <br><br>2、锐意追求，绝不退缩 <br><br>3、锐气不可抛，成功是迟早 <br><br>（十六）“创”字诀 <br><br>　　提升自我，就要有胆有识去超越自我。何谓超越？超越就是吃螃蟹，就是创新。同时创新就意味着冒险，所谓富贵险中求。想人家想不到的，做别人不敢做的，敢为天下先，在于思维的转换。 <br><br>1、敢为天下先 <br><br>2、打破规则的创意 <br><br>3、人弃我取也能创奇迹 <br><br>4、逆向思维的攻守之道 <br><br>（十七）“通”字诀 <br><br>　　穷则思变，变则通。识时务者为俊杰，通机变者为英豪。通往成功的道路不是一条，又何必在一棵树上吊死呢？抓住成功的关键，东方不亮西方亮，不管它是黑猫白猫，重要的是它能否逮“耗子”。 <br><br>1、巧妙地以变应变 <br><br>2、条条大道通罗马 <br><br>3、成功在于通，有通才有赢 <br><br>（十八）“言”字诀 <br><br>　　把赞扬送给别人，就像把食物施舍给饥饿的乞丐一样。古往今来，不知有多少人，凭着三寸不烂之舌，改变了自己平凡的命运。说话幽默，找共同语言……一个“言”字，一生受用。 <br><br>1、投其所好找话题 <br><br>2、恭维是最好的“润滑剂” <br><br>3、成功人生，幽默机智 <br><br>4、“流行语”为你添姿着色 <br><br><br><br><br><br><br><br><br><br>四、人际互动字诀——教你赢得朋友 <br><br>（十九）“宽”字诀 <br><br>　　人际互动，应着眼于未来，不念旧恶。原谅别人，是对待自己的最好方式——为你的仇敌而怒火中烧，烧伤的是你自己。做人做事，心胸不可太狭隘。海纳百川，靠一棵宽容的心！ <br>　　1、宽恕你的敌人 <br>　　2、宽容做人，宽容成事 <br>　　3、乐于忘记，不念旧恶 <br><br>（二十）“和”字诀 <br><br>　　在人海中，如果我们不想孤立，那么就学会如何与人相处吧！林子大了，什么鸟都有，不要求你喜欢所有的人，但同时世上也没有什么最牛的人。 <br>　　和为贵嘛，就要互相留台阶，大家给面子。 <br>　　1、为他人着想，为自己铺路 <br>　　2、你给别人留面子，别人给你做好事 <br>　　3、夫妻之道，亦和亦智 <br><br>（二十一）“信”字诀 <br><br>有多少人信任你，你就拥有多少次成功的机会，“信”是什么东西？信是一种人格的力量，是超越金钱的友情，是了解、是欣赏、是覆水，具有不可逆转性。所以，言必行，行必果，能帮的忙则帮，但不可轻易许诺！ <br>　　1、能帮则帮，不轻易许诺 <br>　　2、言而有信，做人讲原则 <br>　　3、做事先做人，做人先取信 <br>　　4、信誉基石，生死友情 <br><br>（二十二）“帮”字诀 <br><br>　　“好风凭借力，送我上青天”。人际交往，互利互惠。帮助别人，就是在为自己的人情信用卡储蓄，特别是在人患难之际施于援手，救落难英雄于困顿。真心助人，其回报不言而喻。 <br>　　1、助人发财，自己沾光 <br>　　2、好风凭借力，借梯能登天 <br>　　3、掌握时机，拉人一把 <br><br>（二十三）“敬”字诀 <br><br>　　人要面子树要皮。人存在于社会上，要扮演各种各样角色，特别是在互相的交往中，需要一定的尊严来支撑，这是人性的弱点。明白了这点，才能体会到“敬”字的必要性。 <br>    1、为尊者讳，为上司讳 <br>　　2、在失意者面前不谈你的得意 <br>　　3、尊敬对方的“闪光点” <br><br>（二十四）“交”字诀 <br><br>　　人情冷暖、世态炎凉，平常朋友平常过。交朋接友，不可急功近利，友情投资，宜走长线，拜拜冷庙，烧烧冷灶，平时多烧香，哪怕是只言片语的问候，亦是交友之道。 <br>　　1、闲时多烧香，急时有人帮 <br>　　2、友情投资，宜走长线 <br>　　3、拜冷庙，烧冷灶，交落难英雄 <br><br>　　五、解困渡厄字诀——教你轻松快乐 <br><br>（二十五）“坚”字诀 <br><br>面对挫折与困难，铭记丘吉尔的名言：“永远，永远，永远不要放弃！”其实世界上并没有什么幸运的事，就是有，也是坚持的结果。为了最后的胜利，应以坚毅不拔之志，面对种种暂时之屈辱，执着追求，不到黄河心不死！ <br>　　1、厚积薄发，耐得寂寞 <br>　　2、谁笑到最后，谁笑得最甜 <br>　　3、执着追求，永不放弃 <br>　　4、不到黄河心不死 <br><br><br><br>（二十六）“谋”字诀 <br><br>　　做人有困惑，做事有困境，面对“山重水复”之关卡，光有坚强的毅志不行，硬闯也不行。解决难题靠的是脑袋，脑袋产生思考，让思考发威，在出人意料之处轻松解决问题。 <br>　　1、巧妇能为无米之炊 <br>　　2、从“山重水复”到“柳暗花明” <br>　　3、思考的威力 <br><br>（二十七）“屈”字诀 <br><br>要摆脱人与事的困境，就难免要求人，求人就难免要低三下四，但着眼于未来的成功，即使像蟑螂一样的生活也应在所不惜，风水毕竟轮流转。放下架子，该屈就屈，能屈能伸，以屈为伸方为英雄！ <br>　　1、像蟑螂一样生活 <br>　　2、放下身段，前方是大道 <br>　　3、你敬我一尺，我敬你一丈 <br>　　4、低人一级“屈”不死人 <br><br>（二十八）“静”字诀 <br><br>“不在沉默中爆发，就在沉默中灭亡！”凡遇大事需静气，平心静气是一种境界，一种气度，一种修养。冷静之中的决定往往是摆脱困境的最佳方案，同时冷静也是一种智慧，以静待变，乱中取胜！ <br>    1、把冷板凳坐成经理椅 <br>　　2、心宁智生，智生事成 <br>　　3、沉着冷静心自怡 <br>　　4、沉得住气方为人杰 <br><br><br><br>（二十九）“乐”字诀 <br><br>　　世上没有绝对幸福的人，只有不肯快乐的心。人生苦短，与其事事张弓拔弩，不如“幽它一默”。记住，成功是从微笑开始的，人生不如意事常八九，乐观点，自己营造快乐，学会轻松解决难题。 <br>　　1、成功从微笑开始 <br>　　2、学会营造快乐 <br>　　3、学会轻松愉快地解决难题 <br>　　4、世上没有绝对幸福的人，只有不肯快乐的心 <br><br>（三十）“靠”字诀 <br><br>人生不等不靠，没错，天上不会掉馅饼，守株待兔饿死人，但一点不靠也不行，亲戚朋友、同学、老乡，这是一种“人力资源”，谁人没个三灾六难，能靠则靠，靠不上创造条件也要靠！ <br>　　1、让朋友成为你的靠山 <br>　　2、出门落难靠老乡 <br>　　3、亲戚亲戚，越走越亲 <br>　　4、恰同学少年，该靠靠一把 <br><br><br><br>　　六、不败人生字诀——教你人生辉煌 <br><br>（三十一）“愚”字诀 <br><br>　　学学猫头鹰，睁一只眼，闭一只眼。你说我糊涂，其实我不傻！只是世事多变幻，创业难，败家快，人说水至清则无鱼，人至察则无徒。其实是，明哲保身，大智者往往大愚，聪明者多，能过“愚”字关鲜矣！ <br>　　1、糊涂人聪明一世 <br>　　2、不要以为自己比别人聪明 <br>　　3、处事不要太认真 <br>　　4、谁是英雄？ <br><br>（三十二）“忍”字诀 <br><br>真的英雄，何必气短，善始善终，方为不败！忍能保身，忍能成事，忍是大智，大勇，更是大福！忍是厚，忍是黑，忍小人，忍豪强，忍天下难忍之事，不做性情中人，成常人难成之事。 <br>　　1、忍是大智大勇大福 <br>　　2、不做性情中人 <br>　　3、不败人生，忍者无敌 <br><br><br><br>（三十三）“退”字诀 <br><br>　　久历江湖，练达人情之人都守一个“退”字。退是一种谋略，退是一种交换，更是一种维系生存的手段。哲人说的好，“不要把痰吐在井里，哪天你口渴的时侯，也要来井边喝水的。” <br>    1、用心计较般般错，退步思量事事顺 <br>　　2、拒绝妥协，就是拒绝成功 <br>　　3、惹不起，躲得起 <br><br>（三十四）“圆”字诀 <br><br>方圆做人，八面玲珑；圆满做事，事事顺心。人心叵测，凡事最好留一手，有闲时，可研究一下“模糊哲学”，人生这套马车，如若安上方方正正的轮子，你没听说过，我也没听说过，寸步难行嘛！ <br>　　1、方圆做人，圆满做事 <br>　　2、做老二，不要做老大 <br>　　3、人情练达即文章，处世圆通慎言语 <br><br>（三十五）“危”字诀 <br><br>　　“豪华尽出成功后，逸乐安知与祸双？”历史教训如此，平头百姓亦如此。居家过日，工作职场等都逃不过一个“危”字，人无远虑，必有近忧。 <br>　　1、远虑在先，近处无危 <br>　　2、郭子仪屏退侍女免祸患 <br>　　3、上山下乡当农民——范蠡富贵终身 <br><br>（三十六）“装”字诀 <br><br>　　人生在世一台戏，你方唱罢我上场，不管你会不会演，就看你会不会装。充英雄容易，扮弱者难。俗话说得好，枪打出头鸟，不怕贼偷就怕贼惦记着，当你还不具备实力时，请把你过剩的才华藏起来！ <br>　　1、故意示弱有好处 <br>　　2、用“拟态”和“保护色” <br>　　3、成功需要诈死与佯败</span><wbr /></span><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[心情]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1256000078#comment</comments>
<qz:effect>142606848</qz:effect>
<pubDate>Tue, 20 Oct 2009 00:54:38 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1256000078</guid>
</item>

<item>
<title><![CDATA[八大排序算法总结]]></title>
<link>http://83692951.qzone.qq.com/blog/1255999722</link>
<description><![CDATA[<br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />八大排序算法总结 收藏 此文于2009-10-19被推荐到CSDN首页<br>如何被推荐？<br>插入排序<br>1.直接插入排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：将数组分为无序区和有序区两个区，然后不断将无序区的第一个元素按大小顺序插入到有序区中去，最终将所有无序区元素都移动到有序区完成排序。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：设立哨兵，作为临时存储和判断数组边界之用。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void InsertSort(Node L[],int length)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int i,j;//分别为有序区和无序区指针</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />for(i=1;i&lt;length;i++)//逐步扩大有序区</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />j=i+1;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />if(L[j]&lt;L<span style="font-style:italic"><wbr />)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L[0]=L[j];//存储待排序元素</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />While(L[0]&lt;L<span style="font-style:italic"><wbr />)//查找在有序区中的插入位置，同时移动元素</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L<span style="font-style:italic"><wbr />=L<span style="font-style:italic"><wbr />;//移动</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />i--;//查找</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L<span style="font-style:italic"><wbr />=L[0];//将元素插入</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />i=j-1;//还原有序区指针</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />2.希尔排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：又称增量缩小排序。先将序列按增量划分为元素个数相同的若干组，使用直接插入排序法进行排序，然后不断缩小增量直至为1，最后使用直接插入排序完成排序。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：增量的选择以及排序最终以1为增量进行排序结束。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void shellSort(Node L[],int d)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />While(d&gt;=1)//直到增量缩小为1</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Shell(L,d);</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />d=d/2;//缩小增量</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void Shell(Node L[],int d)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int i,j;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(i=d+1;i&lt;length;i++)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />if(L<span style="font-style:italic"><wbr />&lt;L<span style="font-style:italic"><wbr />)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L[0]=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />j=i-d;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />While(j&gt;0&amp;&amp;L[j]&gt;L[0])</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L[j+d]=L[j];//移动</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />j=j-d;//查找</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L[j+d]=L[0];</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />交换排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />1.冒泡排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：将序列划分为无序和有序区，不断通过交换较大元素至无序区尾完成排序。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：设计交换判断条件，提前结束以排好序的序列循环。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void BubbleSort(Node L[])</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int i ,j;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Bool ischanged;//设计跳出条件</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(j=n;j&lt;0;j--)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />ischanged =false;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(i=0;i&lt;j;i++)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />If(L<span style="font-style:italic"><wbr />&gt;L<span style="font-style:italic"><wbr />)//如果发现较重元素就向后移动</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int temp=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L<span style="font-style:italic"><wbr />=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L<span style="font-style:italic"><wbr />=temp;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Ischanged =true;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />If(!ischanged)//若没有移动则说明序列已经有序，直接跳出</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Break;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />2.快速排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：不断寻找一个序列的中点，然后对中点左右的序列递归的进行排序，直至全部序列排序完成，使用了分治的思想。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：递归、分治</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr /></span><wbr /></span><wbr /> <br><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />选择排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />1.直接选择排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：将序列划分为无序和有序区，寻找无序区中的最小值和无序区的首元素交换，有序区扩大一个，循环最终完成全部排序。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void SelectSort(Node L[])</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int i,j,k;//分别为有序区，无序区，无序区最小元素指针</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(i=0;i&lt;length;i++)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />k=i;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(j=i+1;j&lt;length;j++)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />If(L[j]&lt;L[k])</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />k=j;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />If(k!=i)//若发现最小元素，则移动到有序区</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int temp=L[k];</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L[k]=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L<span style="font-style:italic"><wbr />=L[temp];</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr /> </span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />2.堆排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：利用大根堆或小根堆思想，首先建立堆，然后将堆首与堆尾交换，堆尾之后为有序区。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：建堆、交换、调整堆</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void HeapSort(Node L[])</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />BuildingHeap(L);//建堆（大根堆）</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(int i=n;i&gt;0;i--)//交换</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int temp=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L<span style="font-style:italic"><wbr />=L[0];</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />L[0]=temp;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Heapify(L,0,i);//调整堆</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr /></span><wbr /></span><wbr /> <br><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void BuildingHeap(Node L[])</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{ For(i=length/2 -1;i&gt;0;i--)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Heapify(L,i,length);</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />归并排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：将原序列划分为有序的两个序列，然后利用归并算法进行合并，合并之后即为有序序列。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：归并、分治</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void MergeSort(Node L[],int m,int n)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int k;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />If(m&lt;n)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />K=(m+n)/2;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />MergeSort(L,m,k);</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />MergeSort(L,k+1,n);</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Merge(L,m,k,n);</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr /></span><wbr /></span><wbr /> <br><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />基数排序</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />原理：将数字按位数划分出n个关键字，每次针对一个关键字进行排序，然后针对排序后的序列进行下一个关键字的排序，循环至所有关键字都使用过则排序完成。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />要点：对关键字的选取，元素分配收集。</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />实现：</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Void RadixSort(Node L[],length,maxradix)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int m,n,k,lsp;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />k=1;m=1;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Int temp[10][length-1];</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Empty(temp); //清空临时空间</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />While(k&lt;maxradix) //遍历所有关键字</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />For(int i=0;i&lt;length;i++) //分配过程</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />{ </span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />If(L<span style="font-style:italic"><wbr />&lt;m)</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Temp[0][n]=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Else</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Lsp=(L<span style="font-style:italic"><wbr />/m)%10; //确定关键字</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Temp[lsp][n]=L<span style="font-style:italic"><wbr />;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />n++;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />CollectElement(L,Temp); //收集</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />n=0;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />m=m*10;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />k++;</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />}</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr /></span><wbr /></span><wbr /> <br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />本文来自CSDN博客，转载请标明出处：</span><wbr /></span><wbr /><a href="http://blog.csdn.net/yexinghai/archive/2009/10/10/4649923.aspx" target="_blank"><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />http://blog.csdn.net/yexinghai/archive/2009/10/10/4649923.aspx</span><wbr /></span><wbr /></a><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[技术]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1255999722#comment</comments>
<qz:effect>134218240</qz:effect>
<pubDate>Tue, 20 Oct 2009 00:48:42 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1255999722</guid>
</item>

<item>
<title><![CDATA[Windows启动过程详解 from csdn]]></title>
<link>http://83692951.qzone.qq.com/blog/1255840786</link>
<description><![CDATA[<br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />Windows启动过程详解 </span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />       </span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />      我们每天都在和Windows打交道，很多人可能每天都要面对多次Windows的启动过程，可是您知道在Windows的启动过程背后，隐藏着什么秘密吗？在这一系列过程中都用到了哪些重要的系统文件？系统的启动分为几个步骤？在这些步骤中计算机中发生了什么事情？这些就是本文试图告诉您的。<br>本文的适用范围 <br>随着技术的发展，我们能够见到的计算机硬件种类越来越多。以计算机上最重要的组件CPU来说，目前就有很多选择。当然，这里的选择并不是说AMD或者Intel这种产品品牌，而是指其内部的体系结构。目前常见的CPU体系结构主要基于复杂指令集（Complex Instruction Set Computing，CISC）或者精简指令集（Reduced Instruction Set Computing，RISC），我们常用的Intel的Pentium、Celeron系列以及AMD的Athlon、Sempron系列都是基于复杂指令集的，而这些基于复杂指令集的CPU还有32位和64位的寄存器数据带宽区别。关于这些指令集以及寄存器数据带宽之间的区别等内容比较繁杂，而且不是本文的重点，感兴趣的朋友可以自己在网上搜索相关内容。因为CPU种类的不同，在不同CPU的系统中运行的Windows的启动过程也有一些小的不同。本文将会以目前来说最普遍的，在x86架构的系统上安装的32位Windows XP Professional为例向您介绍。<br>基本上，操作系统的引导过程是从计算机通电自检完成之后开始进行的，而这一过程又可以细分为预引导、引导、载入内核、初始化内核，以及登录这五个阶段。<br>在继续阅读之前，首先请注意图1，这是Windows XP的操作系统结构，其中包括了一些在后台工作的组件以及经常和我们打交道的程序。在了解Windows XP的启动过程之前，对系统结构有一个初步概念是很重要的。<br> <br>预引导阶段 <br>当我们打开计算机电源后，预引导过程就开始运行了。在这个过程中，计算机硬件首先要完成通电自检（Power-On Self Test，POST），这一步主要会对计算机中安装的处理器、内存等硬件进行检测，如果一切正常，则会继续下面的过程。<br>如果您的计算机BIOS（固化在计算机主板上芯片中的一些程序）是支持即插即用的（基本上，现阶段能够买到的计算机和硬件都是支持这一标准的），而且所有硬件设备都已经被自动识别和配置，接下来计算机将会定位引导设备（例如第一块硬盘，设备的引导顺序可以在计算机的BIOS设置中修改），然后从引导设备中读取并运行主引导记录（Master Boot Record，MBR）。至此，预引导阶段成功完成。<br>引导阶段 <br>引导阶段又可以分为：初始化引导载入程序、操作系统选择、硬件检测、硬件配置文件选择这四个步骤。在这一过程中需要使用的文件包括：Ntldr、Boot.ini、Ntdetect.com、Ntoskrnl.exe、Ntbootdd.sys、Bootsect.dos（非必须）。<br>初始化引导载入程序 <br>在这一阶段，首先出场的是ntldr，该程序会将处理器由实模式（Real Mode）切换为32位平坦内存模式（32-bit Flat Memory Mode）。不使用实模式的主要原因是，在实模式下，内存中的前640 KB是为MS-DOS保留的，而剩余内存则会被当作扩展内存使用，这样Windows XP将无法使用全部的物理内存。而32位平坦内存模式下就好多了，Windows XP自身将能使用计算机上安装的所有内存（其实最多也只能用2 GB，这是32位操作系统的设计缺陷。关于大内存的问题因为和本文的内容关系不大，因此这里不表，日后有机会再单独撰文介绍）。<br>接下来ntldr会寻找系统自带的一个微型的文件系统驱动。大家都知道，DOS和Windows 9x操作系统是无法读写NTFS文件系统的分区的，那么Windows XP的安装程序为什么可以读写NTFS分区？其实这就是微型文件系统驱动的功劳了。只有在载入了这个驱动之后，ntldr才能找到您硬盘上被格式化为NTFS或者FAT/FAT32文件系统的分区。如果这个驱动损坏了，就算您的硬盘上已经有分区，ntldr也认不出来的。<br>读取了文件系统驱动，并成功找到硬盘上的分区后，引导载入程序的初始化过程就已经完成了，随后我们将会进行到下一步。<br>操作系统选择 <br>这一步并非必须的，只有在您计算机中安装了多个Windows操作系统的时候才会出现。不过无论您的计算机中安装了几个Windows，计算机启动的过程中，这一步都会按照设计运行一遍，只有在确实安装了多个系统的时候，系统才会显示一个列表，让您选择想要引导的系统。但如果您只有一个系统，那么引导程序在判断完之后会直接进入到下一阶段。<br>如果您已经安装了多个Windows操作系统（泛指Windows 2000/XP/2003这类较新的系统，不包括Windows 9x系统），那么所有的记录都会被保存在系统盘根目录下一个名为boot.ini的文件中。ntldr程序在完成了初始化工作之后就会从硬盘上读取boot.ini文件，并根据其中的内容判断计算机上安装了几个Windows，它们分别安装在第几块硬盘的第几个分区上。如果只安装了一个，那么就直接跳过这一步。但如果安装了多个，那么ntldr就会根据文件中的记录显示一个操作系统选择列表，并默认持续30秒。只要您做出选择，ntldr就会自动开始装载被选择的系统。如果您没有选择，那么30秒后，ntldr会开始载入默认的操作系统。至此操作系统选择这一步已经成功完成。<br>小知识：系统盘（System Volume）和引导盘（Boot Volume）有什么区别？<br>这是两个很容易被人搞混的概念，因为根据微软对这两个名词的定义，很容易令人产生误解。根据微软的定义，系统盘是指保存了用于引导Windows的文件（根据前面的介绍，我们已经清楚，这些文件是指ntldr、boot.ini等）的硬盘分区/卷；而引导盘是指保存了Windows系统文件的硬盘分区/卷。如果只有一个操作系统的话，我们通常会将其安装在第一个物理硬盘的第一个主分区（通常被识别为C盘）上，那么系统盘和引导盘属于同一个分区。但是，如果您将您的Windows安装到了其他分区中，例如D盘中，那么系统盘仍然是您的C盘（因为尽管Windows被安装到了其他盘，但是引导系统所用的文件还是会保存在C盘的根目录下），但您的引导盘将会变成是D盘。很奇怪的规定，保存了引导系统所需文件的分区被叫做“系统盘”，反而保存了操作系统文件的分区被叫做“引导盘”，正好颠倒了。不过微软就是这样规定的。<br>硬件检测 <br>这一过程中主要需要用到Ntdetect.com和Ntldr。当我们在前面的操作系统选择阶段选择了想要载入的Windows系统之后，Ntdetect.com首先要将当前计算机中安装的所有硬件信息收集起来，并列成一个表，接着将该表交给Ntldr（这个表的信息稍后会被用来创建注册表中有关硬件的键）。这里需要被收集信息的硬件类型包括：总线/适配器类型、显卡、通讯端口、串口、浮点运算器（CPU）、可移动存储器、键盘、指示装置（鼠标）。至此，硬件检测操作已经成功完成。<br>配置文件选择 <br>这一步也不是必须的。只有在计算机（常用于笔记本电脑）中创建了多个硬件配置文件的时候才需要处理这一步。<br>小知识：什么是硬件配置文件？为什么要用它？<br>这个功能比较适合笔记本电脑用户。如果您有一台笔记本电脑，主要在办公室和家里使用，在办公室的时候您可能会使用网卡将其接入公司的局域网，公司使用了DHCP服务器为客户端指派IP地址；但是回到家之后，没有了DHCP服务器，启动系统的时候系统将会用很长时间寻找那个不存在的DHCP服务器，这将延长系统的启动时间。在这种情况下就可以分别在办公室和家里使用不同的硬件配置文件了，我们可以通过硬件配置文件决定在某个配置文件中使用哪些硬件，不使用哪些硬件。例如前面列举的例子，我们可以为笔记本电脑在家里和办公室分别创建独立的配置文件，而家庭用的配置文件中会将网卡禁用。这样，回家后使用家用的配置文件，系统启动的时候会直接禁用网卡，也就避免了寻找不存在的DHCP服务器延长系统启动时间。<br>如果Ntldr检测到系统中创建了多个硬件配置文件，那么它就会在这时候将所有可用的配置文件列表显示出来，供用户选择。这里其实和操作系统的选择类似，不管系统中有没有创建多个配置文件，Ntldr都会进行这一步操作，不过只有在确实检测到多个硬件配置文件的时候才会显示文件列表。<br>载入内核阶段 <br>在这一阶段，Ntldr会载入Windows XP的内核文件：Ntoskrnl.exe，但这里仅仅是载入，内核此时还不会被初始化。随后被载入的是硬件抽象层（hal.dll）。<br>硬件抽象层其实是内存中运行的一个程序，这个程序在Windows XP内核和物理硬件之间起到了桥梁的作用。正常情况下，操作系统和应用程序无法直接与物理硬件打交道，只有Windows内核和少量内核模式的系统服务可以直接与硬件交互。而其他大部分系统服务以及应用程序，如果想要和硬件交互，就必须透过硬件抽象层进行。<br>小知识：为什么要使用硬件抽象层<br>硬件抽象层的使用主要有两个原因：1，忽略无效甚至错误的硬件调用。如果没有硬件抽象层，那么硬件上发生的所有调用甚至错误都将会反馈给操作系统，这可能会导致系统不稳定。而硬件抽象层就像工作在物理硬件和操作系统内核之间的一个过滤器，可以将认为会对操作系统产生危害的调用和错误全部过滤掉，这样直接提高了系统的稳定性；2，多平台之间的转换翻译。这个原因可以列举一个形象的例子，假设每个物理硬件都使用不同的语言，而每个操作系统组件或者应用程序则使用了同样的语言，那么不同物理硬件和系统之间的交流将会是混乱而且很没有效率的。如果有了硬件抽象层，等于给软硬件之间安排了一位翻译，这位翻译懂所有硬件的语言，并会将硬件说的话用系统或者软件能够理解的语言原意转达给操作系统和软件。通过这个机制，操作系统对硬件的支持可以得到极大的提高。<br>硬件抽象层被载入后，接下来要被内核载入的是HKEY_LOCAL_MACHINE\System注册表键。Ntldr会根据载入的Select键的内容判断接下来需要载入哪个Control Set注册表键（图2），而这些键会决定随后系统将载入哪些设备驱动或者启动哪些服务。这些注册表键的内容被载入后，系统将进入初始化内核阶段，这时候ntldr会将系统的控制权交给操作系统内核。<br> <br>初始化内核阶段 <br>当进入到这一阶段的时候，计算机屏幕上就会显示Windows XP的标志了，同时还会显示一条滚动的进度条，这个进度条可能会滚动若干圈（图3）。从这一步开始我们才能从屏幕上队系统的启动有一个直观的印象。在这一阶段中主要会完成这四项任务：创建Hardware注册表键、对Control Set注册表键进行复制、载入和初始化设备驱动，以及启动服务。<br> <br>我们每天都在和Windows打交道，很多人可能每天都要面对多次Windows的启动过程，可是您知道在Windows的启动过程背后，隐藏着什么秘密吗？在这一系列过程中都用到了哪些重要的系统文件？系统的启动分为几个步骤？在这些步骤中计算机中发生了什么事情？这些就是本文试图告诉您的。<br>本文的适用范围 <br>随着技术的发展，我们能够见到的计算机硬件种类越来越多。以计算机上最重要的组件CPU来说，目前就有很多选择。当然，这里的选择并不是说AMD或者Intel这种产品品牌，而是指其内部的体系结构。目前常见的CPU体系结构主要基于复杂指令集（Complex Instruction Set Computing，CISC）或者精简指令集（Reduced Instruction Set Computing，RISC），我们常用的Intel的Pentium、Celeron系列以及AMD的Athlon、Sempron系列都是基于复杂指令集的，而这些基于复杂指令集的CPU还有32位和64位的寄存器数据带宽区别。关于这些指令集以及寄存器数据带宽之间的区别等内容比较繁杂，而且不是本文的重点，感兴趣的朋友可以自己在网上搜索相关内容。因为CPU种类的不同，在不同CPU的系统中运行的Windows的启动过程也有一些小的不同。本文将会以目前来说最普遍的，在x86架构的系统上安装的32位Windows XP Professional为例向您介绍。<br>基本上，操作系统的引导过程是从计算机通电自检完成之后开始进行的，而这一过程又可以细分为预引导、引导、载入内核、初始化内核，以及登录这五个阶段。<br>在继续阅读之前，首先请注意图1，这是Windows XP的操作系统结构，其中包括了一些在后台工作的组件以及经常和我们打交道的程序。在了解Windows XP的启动过程之前，对系统结构有一个初步概念是很重要的。<br> <br>预引导阶段 <br>当我们打开计算机电源后，预引导过程就开始运行了。在这个过程中，计算机硬件首先要完成通电自检（Power-On Self Test，POST），这一步主要会对计算机中安装的处理器、内存等硬件进行检测，如果一切正常，则会继续下面的过程。<br>如果您的计算机BIOS（固化在计算机主板上芯片中的一些程序）是支持即插即用的（基本上，现阶段能够买到的计算机和硬件都是支持这一标准的），而且所有硬件设备都已经被自动识别和配置，接下来计算机将会定位引导设备（例如第一块硬盘，设备的引导顺序可以在计算机的BIOS设置中修改），然后从引导设备中读取并运行主引导记录（Master Boot Record，MBR）。至此，预引导阶段成功完成。<br>引导阶段 <br>引导阶段又可以分为：初始化引导载入程序、操作系统选择、硬件检测、硬件配置文件选择这四个步骤。在这一过程中需要使用的文件包括：Ntldr、Boot.ini、Ntdetect.com、Ntoskrnl.exe、Ntbootdd.sys、Bootsect.dos（非必须）。<br>初始化引导载入程序 <br>在这一阶段，首先出场的是ntldr，该程序会将处理器由实模式（Real Mode）切换为32位平坦内存模式（32-bit Flat Memory Mode）。不使用实模式的主要原因是，在实模式下，内存中的前640 KB是为MS-DOS保留的，而剩余内存则会被当作扩展内存使用，这样Windows XP将无法使用全部的物理内存。而32位平坦内存模式下就好多了，Windows XP自身将能使用计算机上安装的所有内存（其实最多也只能用2 GB，这是32位操作系统的设计缺陷。关于大内存的问题因为和本文的内容关系不大，因此这里不表，日后有机会再单独撰文介绍）。<br>接下来ntldr会寻找系统自带的一个微型的文件系统驱动。大家都知道，DOS和Windows 9x操作系统是无法读写NTFS文件系统的分区的，那么Windows XP的安装程序为什么可以读写NTFS分区？其实这就是微型文件系统驱动的功劳了。只有在载入了这个驱动之后，ntldr才能找到您硬盘上被格式化为NTFS或者FAT/FAT32文件系统的分区。如果这个驱动损坏了，就算您的硬盘上已经有分区，ntldr也认不出来的。<br>读取了文件系统驱动，并成功找到硬盘上的分区后，引导载入程序的初始化过程就已经完成了，随后我们将会进行到下一步。<br>操作系统选择 <br>这一步并非必须的，只有在您计算机中安装了多个Windows操作系统的时候才会出现。不过无论您的计算机中安装了几个Windows，计算机启动的过程中，这一步都会按照设计运行一遍，只有在确实安装了多个系统的时候，系统才会显示一个列表，让您选择想要引导的系统。但如果您只有一个系统，那么引导程序在判断完之后会直接进入到下一阶段。<br>如果您已经安装了多个Windows操作系统（泛指Windows 2000/XP/2003这类较新的系统，不包括Windows 9x系统），那么所有的记录都会被保存在系统盘根目录下一个名为boot.ini的文件中。ntldr程序在完成了初始化工作之后就会从硬盘上读取boot.ini文件，并根据其中的内容判断计算机上安装了几个Windows，它们分别安装在第几块硬盘的第几个分区上。如果只安装了一个，那么就直接跳过这一步。但如果安装了多个，那么ntldr就会根据文件中的记录显示一个操作系统选择列表，并默认持续30秒。只要您做出选择，ntldr就会自动开始装载被选择的系统。如果您没有选择，那么30秒后，ntldr会开始载入默认的操作系统。至此操作系统选择这一步已经成功完成。<br>小知识：系统盘（System Volume）和引导盘（Boot Volume）有什么区别？<br>这是两个很容易被人搞混的概念，因为根据微软对这两个名词的定义，很容易令人产生误解。根据微软的定义，系统盘是指保存了用于引导Windows的文件（根据前面的介绍，我们已经清楚，这些文件是指ntldr、boot.ini等）的硬盘分区/卷；而引导盘是指保存了Windows系统文件的硬盘分区/卷。如果只有一个操作系统的话，我们通常会将其安装在第一个物理硬盘的第一个主分区（通常被识别为C盘）上，那么系统盘和引导盘属于同一个分区。但是，如果您将您的Windows安装到了其他分区中，例如D盘中，那么系统盘仍然是您的C盘（因为尽管Windows被安装到了其他盘，但是引导系统所用的文件还是会保存在C盘的根目录下），但您的引导盘将会变成是D盘。很奇怪的规定，保存了引导系统所需文件的分区被叫做“系统盘”，反而保存了操作系统文件的分区被叫做“引导盘”，正好颠倒了。不过微软就是这样规定的。<br>硬件检测 <br>这一过程中主要需要用到Ntdetect.com和Ntldr。当我们在前面的操作系统选择阶段选择了想要载入的Windows系统之后，Ntdetect.com首先要将当前计算机中安装的所有硬件信息收集起来，并列成一个表，接着将该表交给Ntldr（这个表的信息稍后会被用来创建注册表中有关硬件的键）。这里需要被收集信息的硬件类型包括：总线/适配器类型、显卡、通讯端口、串口、浮点运算器（CPU）、可移动存储器、键盘、指示装置（鼠标）。至此，硬件检测操作已经成功完成。<br>配置文件选择 <br>这一步也不是必须的。只有在计算机（常用于笔记本电脑）中创建了多个硬件配置文件的时候才需要处理这一步。<br>小知识：什么是硬件配置文件？为什么要用它？<br>这个功能比较适合笔记本电脑用户。如果您有一台笔记本电脑，主要在办公室和家里使用，在办公室的时候您可能会使用网卡将其接入公司的局域网，公司使用了DHCP服务器为客户端指派IP地址；但是回到家之后，没有了DHCP服务器，启动系统的时候系统将会用很长时间寻找那个不存在的DHCP服务器，这将延长系统的启动时间。在这种情况下就可以分别在办公室和家里使用不同的硬件配置文件了，我们可以通过硬件配置文件决定在某个配置文件中使用哪些硬件，不使用哪些硬件。例如前面列举的例子，我们可以为笔记本电脑在家里和办公室分别创建独立的配置文件，而家庭用的配置文件中会将网卡禁用。这样，回家后使用家用的配置文件，系统启动的时候会直接禁用网卡，也就避免了寻找不存在的DHCP服务器延长系统启动时间。<br>如果Ntldr检测到系统中创建了多个硬件配置文件，那么它就会在这时候将所有可用的配置文件列表显示出来，供用户选择。这里其实和操作系统的选择类似，不管系统中有没有创建多个配置文件，Ntldr都会进行这一步操作，不过只有在确实检测到多个硬件配置文件的时候才会显示文件列表。<br>载入内核阶段 <br>在这一阶段，Ntldr会载入Windows XP的内核文件：Ntoskrnl.exe，但这里仅仅是载入，内核此时还不会被初始化。随后被载入的是硬件抽象层（hal.dll）。<br>硬件抽象层其实是内存中运行的一个程序，这个程序在Windows XP内核和物理硬件之间起到了桥梁的作用。正常情况下，操作系统和应用程序无法直接与物理硬件打交道，只有Windows内核和少量内核模式的系统服务可以直接与硬件交互。而其他大部分系统服务以及应用程序，如果想要和硬件交互，就必须透过硬件抽象层进行。<br>小知识：为什么要使用硬件抽象层<br>硬件抽象层的使用主要有两个原因：1，忽略无效甚至错误的硬件调用。如果没有硬件抽象层，那么硬件上发生的所有调用甚至错误都将会反馈给操作系统，这可能会导致系统不稳定。而硬件抽象层就像工作在物理硬件和操作系统内核之间的一个过滤器，可以将认为会对操作系统产生危害的调用和错误全部过滤掉，这样直接提高了系统的稳定性；2，多平台之间的转换翻译。这个原因可以列举一个形象的例子，假设每个物理硬件都使用不同的语言，而每个操作系统组件或者应用程序则使用了同样的语言，那么不同物理硬件和系统之间的交流将会是混乱而且很没有效率的。如果有了硬件抽象层，等于给软硬件之间安排了一位翻译，这位翻译懂所有硬件的语言，并会将硬件说的话用系统或者软件能够理解的语言原意转达给操作系统和软件。通过这个机制，操作系统对硬件的支持可以得到极大的提高。<br>硬件抽象层被载入后，接下来要被内核载入的是HKEY_LOCAL_MACHINE\System注册表键。Ntldr会根据载入的Select键的内容判断接下来需要载入哪个Control Set注册表键（图2），而这些键会决定随后系统将载入哪些设备驱动或者启动哪些服务。这些注册表键的内容被载入后，系统将进入初始化内核阶段，这时候ntldr会将系统的控制权交给操作系统内核。<br> <br>初始化内核阶段 <br>当进入到这一阶段的时候，计算机屏幕上就会显示Windows XP的标志了，同时还会显示一条滚动的进度条，这个进度条可能会滚动若干圈（图3）。从这一步开始我们才能从屏幕上队系统的启动有一个直观的印象。在这一阶段中主要会完成这四项任务：创建Hardware注册表键、对Control Set注册表键进行复制、载入和初始化设备驱动，以及启动服务。<br> <br>创建Hardware注册表键 <br>首先要在注册表中创建Hardware键，Windows内核会使用在前面的硬件检测阶段收集到的硬件信息来创建HKEY_LOCAL_MACHINE\Hardware键，也就是说，注册表中该键的内容并不是固定的，而是会根据当前系统中的硬件配置情况动态更新。<br>对Control Set注册表键进行复制 <br>如果Hardware注册表键创建成功，那么系统内核将会对Control Set键的内容创建一个备份。这个备份将会被用在系统的高级启动菜单中的“最后一次正确配置”选项。例如，如果我们安装了一个新的显卡驱动，重启动系统之后Hardware注册表键还没有创建成功系统就已经崩溃了，这时候如果选择“最后一次正确配置”选项，系统将会自动使用上一次的Control Set注册表键的备份内容重新生成Hardware键，这样就可以撤销掉之前因为安装了新的显卡驱动对系统设置的更改。<br>载入和初始化设备驱动 <br>在这一阶段里，操作系统内核首先会初始化之前在载入内核阶段载入的底层设备驱动，然后内核会在注册表的HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services键下查找所有Start键值为“1”的设备驱动（图4）。这些设备驱动将会在载入之后立刻进行初始化，如果在这一过程中发生了任何错误，系统内核将会自动根据设备驱动的“ErrorControl”键的数值进行处理。“ErrorControl”键的键值共有四种，分别具有如下含义：<br>0，忽略，继续引导，不显示错误信息。<br>1，正常，继续引导，显示错误信息。<br>2，恢复，停止引导，使用“最后一次正确配置”选项重启动系统。如果依然出错则会忽略该错误。<br>3，严重，停止引导，使用“最后一次正确配置”选项重启动系统。如果依然出错则会停止引导，并显示一条错误信息。<br> <br>启动服务 <br>系统内核成功载入，并且成功初始化所有底层设备驱动后，会话管理器会开始启动高层子系统和服务，然后启动Win32子系统。Win32子系统的作用是控制所有输入/输出设备以及访问显示设备。当所有这些操作都完成后，Windows的图形界面就可以显示出来了，同时我们也将可以使用键盘以及其他I/O设备。<br>接下来会话管理器会启动Winlogon进程，至此，初始化内核阶段已经成功完成，这时候用户就可以开始登录了。<br>登录阶段 <br>在这一阶段，由会话管理器启动的winlogon.exe进程将会启动本地安全性授权（Local Security Authority，lsass.exe）子系统。到这一步之后，屏幕上将会显示Windows XP的欢迎界面（图5）或者登录界面，这时候您已经可以顺利进行登录了。不过与此同时，系统的启动还没有彻底完成，后台可能仍然在加载一些非关键的设备驱动。<br> <br>随后系统会再次扫描HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services注册表键（还记得第一次扫描这里是在启动进行到那一步的时候吗？），并寻找所有Start键的数值是“2”或者更大数字的服务。这些服务就是非关键服务，系统直到用户成功登录之后才开始加载这些服务。<br>小知识：为什么Windows XP的启动速度要比Windows 2000快<br>目前所有Windows操作系统中，可能Windows 2000的启动速度是最慢的，这并不是因为计算机硬件的性能不够，而是因为Windows 2000的设计“先天不足”。为了弥补这一不足，微软在开发Windows XP的时候想出了一个新方法，那就是，所有不重要的设备驱动和服务都将在用户登录系统之后才加载和运行。也就是说，在系统启动过程中，加载和运行的程序全部都是运行系统所必需的，这样才能用最短的时间显示出登录界面，供用户登录。而用户登录后系同才开始加载非关键组件。可以说，Windows XP启动速度的加快实际上是一种“投机取巧”的作法，不过这种作法确实相当有效。然而这种设计也带来了一些问题，例如有些朋友反映，为什么自己的系统已经成功登录了，可是非要过好几分钟之后桌面上才会显示出任务栏以及桌面图标等内容。其实这就是因为在等待的这几分钟里，系统正在忙于处理那些不重要的服务和组件。如果需要处理的内容太多，或者计算机的硬件配置不够强大，就有可能产生这种现象。<br>小知识：如何控制非关键服务的启动顺序<br>您已经知道了，非关键服务是在用户成功登录之后才加载的，那么我们能否人为控制这些服务加载的顺序？这其实是很简单的。服务的启动顺序也是靠各自Start注册表键的数值以及每个服务之间的依存关系决定的，假设服务A的运行必须依靠服务B，那么在服务B正常启动之前，服务A都无法成功启动。假设服务C的Start键数值是3，而服务D的Start键数值是6，那么服务C将会优先于服务D启动（数值越小优先级越高）。<br>到这里，Windows XP的启动过程就算全部完成了</span><wbr /></span><wbr /><br><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />本文来自CSDN博客，转载请标明出处：</span><wbr /></span><wbr /><a href="http://blog.csdn.net/tian_7/archive/2008/12/10/3487489.aspx" target="_blank"><span style="color:#009966;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />http://blog.csdn.net/tian_7/archive/2008/12/10/3487489.aspx</span><wbr /></span><wbr /></a><wbr /><br><wbr /><a href="http://b23.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdc5e4ca11da5f56e5eabea40e90f544118dddd5045200cd7e91549d47c10d9d12d7b60e422ee61bbe34edf304027a369ba9632c4809fa4dee41ceb2c9ca052f3dfddcffa51&amp;a=24&amp;b=23" target="_blank"><img style="width:600px;height:338px;border:0;" src="http://b23.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdc5e4ca11da5f56e5eabea40e90f544118dddd5045200cd7e91549d47c10d9d12d7b60e422ee61bbe34edf304027a369ba9632c4809fa4dee41ceb2c9ca052f3dfddcffa51&amp;a=24&amp;b=23" /></a><wbr /><br><wbr /><a href="http://b23.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdc7e5c60ab0f9dbbc930b7dd5a2d1676965ab6fba61a85dccdda1e5ef04b0c717d52f3850b2cef6be6b8f9c2defac00a8d9e91b988be2fcf1c49f8742c4499bb741dc5b16e&amp;a=24&amp;b=23" target="_blank"><img style="width:233px;height:600px;border:0;" src="http://b23.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdc7e5c60ab0f9dbbc930b7dd5a2d1676965ab6fba61a85dccdda1e5ef04b0c717d52f3850b2cef6be6b8f9c2defac00a8d9e91b988be2fcf1c49f8742c4499bb741dc5b16e&amp;a=24&amp;b=23" /></a><wbr /><br><br><wbr /><a href="http://b24.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdcb74154f4ed1b95c87612a2101ae711188a55eaffa4754bfda5bbc2f6fe76675882ecef40c37bd24db47bf2acf898b52a340b3edd7091c9bd83ee8a713507093f205fe6aa&amp;a=23&amp;b=24" target="_blank"><img style="width:480px;height:359px;border:0;" src="http://b24.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdcb74154f4ed1b95c87612a2101ae711188a55eaffa4754bfda5bbc2f6fe76675882ecef40c37bd24db47bf2acf898b52a340b3edd7091c9bd83ee8a713507093f205fe6aa&amp;a=23&amp;b=24" /></a><wbr /><br><wbr /><a href="http://b25.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdc8007d781babec7e640a72c88b1247b481bbab6f8910735768bb8b23446bafd757f32707c05ed4951db8f4f3695a69cd8b5cecc7295e8c8000fc25f7258dce02b2a7eef57&amp;a=25&amp;b=25" target="_blank"><img style="width:480px;height:360px;border:0;" src="http://b25.photo.store.qq.com/http_imgload.cgi?/rurl4_b=9d6deb9cabfed22f9a1dd9108bff1fdc8007d781babec7e640a72c88b1247b481bbab6f8910735768bb8b23446bafd757f32707c05ed4951db8f4f3695a69cd8b5cecc7295e8c8000fc25f7258dce02b2a7eef57&amp;a=25&amp;b=25" /></a><wbr /><br><br> <br> <!--v:3.2--> ]]></description>
<category><![CDATA[技术]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1255840786#comment</comments>
<qz:effect>134218241</qz:effect>
<pubDate>Sun, 18 Oct 2009 04:39:46 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1255840786</guid>
</item>

<item>
<title><![CDATA[一些有用的话-----事物不应该只看一面]]></title>
<link>http://83692951.qzone.qq.com/blog/1255486561</link>
<description><![CDATA[<span style="color:#cc3333;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />感激伤害你的人,因为他磨练了你的心志； <br><br>感激欺骗你的人,因为他增进了你的见识； <br><br>感激遗弃你的人,因为他教导了你应自立； <br><br>感激绊倒你的人,因为他强化了你的能力； <br><br>感激斥责你的人,因为他助长了你的智慧； <br><br>感激藐视你的人,因为他觉醒了你的自尊； <br><br>一 条 路 <br><br>只有一条路不能选择----那是放弃的路； <br><br>只有一条路不能拒绝----那是成长的路。 <br><br>改 变 <br><br>我不能改变天气，但我可改变心情。 <br><br>我不能改变容貌，但我可展现微笑， <br><br>我不能样样胜利，但我可事事尽心； <br><br>我不能预知明天，但我可善用今日； <br><br>我不能掌握生命的长度，但我可拓展生命的宽度。 <br><br>我不能改变社会，但我可改变身边的人； <br><br>成功从改变自己开始…… <br><br>你不能改变世界 <br><br>但你可以改变自己 <br><br>你不能改变过去 <br><br>但你可以改变现在 <br><br>你不能改变道路 <br><br>但你可以改变方向 <br><br>你不能改变事实 <br><br>但你可以改变态度 <br><br>你不能改变天气 <br><br>但你可以改变心情 <br><br>世界因你改变 <br><br>世界因你而精彩 <br><br>改变不能改变的 <br><br>接受不能接受 <br><br>忘记应当忘记的 <br><br>记住必须记住的 <br><br>工作信条 <br><br>本职的事情，认真去做； <br><br>复杂的事情，细心去做； <br><br>不懂的事情，学着去做； <br><br>麻烦的事情，耐心去做； <br><br>今天的事情，马上去做； <br><br>明天的事情，准备去做； <br><br>别人的事情，帮忙去做； <br><br>自己的事情，抽空去做； <br><br>现代生活十点 <br><br>一、嘴巴甜一点 <br><br>二、脑筋活一点 <br><br>三、行动快一点 <br><br>四、做事多一点 <br><br>五、效率高一点 <br><br>六、理由少一点 <br><br>七、胆量大一点 <br><br>八、脾气小一点 <br><br>九、说话轻一点 <br><br>十、微笑露一点 <br></span><wbr /></span><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[心情]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1255486561#comment</comments>
<qz:effect>142606848</qz:effect>
<pubDate>Wed, 14 Oct 2009 02:16:01 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1255486561</guid>
</item>

<item>
<title><![CDATA[不找借口找方法——成功者都有的基本素质]]></title>
<link>http://83692951.qzone.qq.com/blog/1255486424</link>
<description><![CDATA[<span style="color:#006633;font-size:24px;line-height:1.8em;"><span style="font-weight:bold"><wbr />不找借口找方法——成功者都有的基本素质 <br>作者：周加富 <br><br>执行力问题已经成为现代企业普遍关注的一个焦点。再好的制度、再好的决策、再好的思路、再伟大的创想如果离开了执行力，一切都没有了意义。 <br><br>离开微软之前，比尔-盖茨曾经对媒体记者说：“在未来的１０年里，微软所面临的挑战就是执行力。”可见，在盖茨的眼中，执行力决定着微软的兴衰成败。 <br><br>确实是这样的。从创业的第一天开始，盖茨就认为，制定正确的战略，拥有伟大的理想固然重要，但更重要的是战略的执行和理想的实施。 <br><br>所以，当盖茨有了一个创业的想法后，而且他确信自己的创意非常棒，就毅然从哈佛大学离开了。他要执行自己的理想，他要实施自己的战略，他要寻找事业成功的方法。 <br><br>毫无疑问，盖茨永远是一个积极主动的人。 <br><br>积极主动的人都是不断做事的人。他真的去做，直到完成为止。而被动的人都是不做事的人，他会找借口拖延，直到最后他证明这件事“不应该做”、“没有能力去做”或“已经来不及了”为止。 <br><br>这里还有一个铁的规律：所有的成功创业者，都是些积极主动的人；所有能够从公司低层一步步爬上高管位置的人，也都是些积极主动的人。在这个世界上，消极被动，总是寻找各种借口的人是没有出头之日的。 <br><br>你想像盖茨一样去成功吗？ <br><br>即使你不想创业，难道不想从盖茨身上学到些成功的法则，以指导自己的职场成长吗？ <br><br>不管怎么说，凡是找借口而从来不采取行动的人，一定是一个失败的人；而凡是找方法并能付诸行动的人，一定是一个成功的人，因为他做遭遇的失败只是暂时的。 <br><br>在日常工作中，你千万不要说任何类似借口的东西。当你想找借口的时候，就已经偏离了自己的成功之路，拐到弯路上去了。 <br><br>每个工作日早晨，在上班之前或上班的路上，你一定要对自己说一遍下面的话：“我是一个不需要借口的人。我对自己的言行负责，我要付诸行动，我知道工作意味着什么，我的方向很明确。我行为正直、自己做决定并且总是尽自己最大的努力。我不抱怨自己的工作环境，努力克服困难，不去想过去而是继续去实现自己的梦想。作为一个没有任何借口的人，我对自己的才能充满信心。” <br><br>不为自己浪费的时间找寻借口，要为节省时间寻求方法采取行动。 <br><br>请相信我，不管你的目标多么伟大，只要坚持不懈地寻找达成目标的方法，你总有一天会成功的。 <br><br>下面是我的一些建议，希望能够成为下一个盖茨的你，一定要牢记在心： <br><br>1、让你的行动井井有条 <br><br>你最好为你每一天和每一周的行动制订个计划，否则就只有按照不时放在你桌上的东西去分配你的时间。 <br><br>也就是说，你完全由别人的行动来决定你办事的优先与轻重次序。 <br><br>这样你将会发觉自己犯了一个严重错误——每天只是在应付问题。 <br><br>2、依安排行事 <br><br>为了更好地实施你的计划，完善你的行动，建议你每天保持两种工作表，而且最好在同一张纸上。这样一目了然，也便于比较。 <br><br>在纸的一边或在你的记事本上列出某几段特定时间要做的事情，如开会、约会等。在纸的另一边列出你“待做”的事项——把你计划要在一天完成的每一件事情都列出来。然后再审视一番，排定优先顺序。 <br><br>在最重要的事项前标上特别记号。 <br><br>因此，你要排出一、二段特定的时间来办理。如果时间允许，再按优先顺序尽量做完其他工作。不要事无巨细地平均支配时间，同时你要留有足够的时间来弹性地处理突发事项，否则你会因小失大，为完不成主要工作而泄气。 <br><br>3、分阶段行事 <br><br>当你发觉自己在拖延一项重要的工作时，你可以尽量把它分成许多小而易于立即去做的工作，而不要强迫自己一下子完成整个工作，但要做好你表中所列的许多“阶段工作”中的一项。 <br><br>4、将行动充斥你的时间 <br><br>你可以在随身的约会记事本内页夹五六张小卡片。这种做法很有用。每当你想到了一个好主意，或要开列一张表，或看到一些你要抄录下来的东西，就可以使用所携带的卡片。 <br><br>不要认为这种零碎的时间只能用来例行公事或办些不大重要的杂事。 <br><br>最优先的工作也可以在这少许的时间来做。如果你的时间因为那些效率低的人的影响而浪费掉了，请记着：这还是你自己的过失，不是别人的过失。 <br><br>5、今天是行动唯一的时间 <br><br>最重要的是，良好地管理自己时间的员工应该认识到一点，今天是我们惟一能够运用的时间，一定要合理支配。过去已经是一去不复返，未来只是意念中的事。世界上每一件事情的完成，都是由于某一个人或某些人认识到了一点，只有今天是行动的唯一时间。 <br><br>有一位哲学家说过： <br><br>昨天是一张过期作废的支票。 <br><br>明天是一张尚未兑现的期票。 <br><br>今天是可以流通的现金。 <br><br>如果你真的打算为自己争取比尔-盖茨那样的成就，就请合理地利用自己有限的时间，并且在有限的时间内采取对你最有效果的行动。 <br></span><wbr /></span><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[心情]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1255486424#comment</comments>
<qz:effect>142606848</qz:effect>
<pubDate>Wed, 14 Oct 2009 02:13:44 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1255486424</guid>
</item>

<item>
<title><![CDATA[十大理由决定Windows 7成败]]></title>
<link>http://83692951.qzone.qq.com/blog/1255350188</link>
<description><![CDATA[<br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">十大理由决定Windows 7成败</span><wbr /></span><wbr /><a href="http://cnc.imgcache.qq.com/qzone/qzfl/editor/assets/blank.htm#" target="_blank"></a><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">Windows系统安全问题一直是用户对微软推出每一个新版本最关心的问题，特别是自从互联网高速的发展以来。有效保障安全性是任何操作系统至关重要的因素，防止恶意软件，保护网络环境，并确保数据的安全应用。但是，可靠的安全性如今对于微软显得特别的重要，可以说是重新恢复Windows系统在用户中信任度。假使Windows 7新系统没有在安全性方面提供多大保障，微软将面临系统向前发展的重大难题。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">基于这样一种情况，微软本月将准备推出的Windows 7操作系统受到广泛关注。业内很多专家都认为，Windows 7将是微软历史上最好的Windows产品，它将提供比之前任何版本更多的价值。甚至最近有报道说，这是一个优良的运营系统，相比较其前身：Windows XP和Windows Vista系统，不仅是在系统性能和功能方面有突出的特点，甚至在多种因素上对用户选择也起决定性作用。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">最突出的因素之一是安全性方面，一直被称为微软眼中钉，如今安全性的成败可能直接影响Windows 7市场销售。而且对于之前Vista系统，如果它超过该系统的安全性能，Windows 7可能是赢家。如果不是，它将可能是一个失败者。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">由此可以说，安全性决定着Windows 7操作系统的成败，以及消费者和IT管理员如何在新操作系统上作出选择。众多原因中总结出十大因素如下：</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">1.企业依赖于安全</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">对于企业来讲，可以说没有什么部署操作系统时未能提供安全保证更加无奈。早在之前的Windows Vista系统中表现极为明显，使许多公司在Service Pack 1版本发布前就开始停止使用该操作系统。作为新一代的Windows 7系统再也承担不起安全方面的任何质疑。微软更是期待在经济衰退导致许多企业缩减IT预算之际，Windows 7帮助客户实现创新，在业务运营中节约成本。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">2.用户对于安全顾虑</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">除了产品强大功能本身，微软还需要担心消费者对于新一代操作系统的看法。如果Windows 7在安全性方面不足够完善，存在不安全或易受病毒和恶意软件攻击的漏洞，从而使用户会失去数据，这样的话新系统用户是不会接受的。但微软方面坚信，更多的用户会比以往任何时候都能体会Windows 7在安全性方面表现出来的成果。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">3.市场占有率受威胁</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">如果Windows 7是不安全的，对于微软可以想象其操作系统在市场上的垄断地位，以及市场的份额都会呈现下滑趋势。如果微软在Windows 7的营销过程中没有消除Vista带来的这种不良影响，那么那些有意向购买的Windows 7系统的用户，将有选择的采用另外一种不同的操作系统。这就可能意味着Linux或者苹果MAC系统将获得市场占有率方面的提升。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">4.微软权利的丧失</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">对于软件行业的巨头，微软以操作系统在IT领域有着绝对的领导地位。如果新一代Windows 7存在安全隐患，那么给微软在计算机行业的统治力有所削弱。当Windows XP处于市场的鼎盛时期，像戴尔和惠普这样的国际IT公司，不得不和微软进行合作来推广自己的产品。Windows 7能否将这个权利延续，安全性决定着一切。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">5.受到对手的质疑</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">Windows 7系统的安全性是否真正达到预期的效果至今还是饱受质疑，如果存在安全隐患，苹果Mac OS X系统将是最大的收益者。同时从苹果I'm a Mac，I'm a PC广告的成功可以看到，从侧面突出了Windows系统存在的安全问题，特别是涉及到恶意软件和病毒攻击时表现明显。可见，Windows 7安全性将决定微软的市场能否最大化。通过对苹果的了解，如果Windows 7有不安全的漏洞，那么基于开放源码的Mac OS X系统将乘虚而入。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">6.安全领域关注少</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">在过去几年里，微软一直在努力重建其在安全领域的地位。之前很长一段时间，微软更多注重操作系统的华丽桌面以及多样的功能应用，忽略了安全性方面的保证。而随着Windows 7发布在即，微软也明确表示，它希望Windows提供更安全和更好的数据保护，确保网络运行的安全。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">7.安全吸引黑客</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">对于系统安全性而言，恶意黑客只要认识到Windows 7是不安全的系统，他们就会立即采取攻击，同时发布大量恶意软件进行攻击，对用户数据构成安全威胁造成破坏性的攻击。这些问题的出现，只会加剧微软和Windows 7在操作系统领域的负面效应，微软绝不会想看到这些情况的出现。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">8.Windows 7安全决定市场</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">正如微软即将推出的Windows 7系统，该公司希望每个用户都能够从新认识这款操作系统，不希望用户使用Windows 7而带上更多关于Vista的一些阴影。换句话说，如果与Windows Vista中，Windows ME或Windows 2000的比较，Windows 7是不安全的，那么微软在操作系统市场将失去说服力，会对微软日后系统的持续发展带来麻烦。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">9.候补的Win 8系统</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">由于Windows 7系统已经在7月底就提供给了OEM厂商，微软把重心转移到了Windows 8客户端和服务器之上，而两个操作系统并非都能达到用户的期望，微软Windows 8功能改进，使得新系统可以强化系统安全，阻止黑客和病毒对系统内核的攻击。同时，微软将需要找到一种方法以获得Windows Vista和Windows 7在用户中认可，Windows 8系统很可能会成为这个认可的保障。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">10.Chrome系统威胁</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">微软一直与谷歌在很多领域处于竞争关系，从文字处理到搜索引擎，微软与谷歌在系统领域也逐渐出现激烈的竞争状态。如果新一代Windows 7系统在安全方面存在问题，谷歌新的Chrome操作系统和强大的安全功能会成为Windows替代品。而最终将给谷歌Chrome系统更加开放市场环境。</span><wbr /></span><wbr /><br><span style="font-weight:bold"><wbr /><span style="font-size:24px;line-height:1.8em;">所以说，安全性是微软Windows系统最主要的问题，Windows 7的成本也取决于安全是否完善。</span><wbr /></span><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[技术]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1255350188#comment</comments>
<qz:effect>134218240</qz:effect>
<pubDate>Mon, 12 Oct 2009 12:23:08 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1255350188</guid>
</item>

<item>
<title><![CDATA[腾讯马化腾：一个技术实用主义者的成长]]></title>
<link>http://83692951.qzone.qq.com/blog/1255349955</link>
<description><![CDATA[<a href="http://tag.csdn.net/腾讯/" target="_blank"><wbr /><a href="http://tougao.csdn.net/tagimg/1014.gif" target="_blank"><img style="border:0;" src="http://tougao.csdn.net/tagimg/1014.gif" /></a><wbr /></a><wbr />腾讯马化腾：一个技术实用主义者的成长<span style="color:#333333;line-height:1.8em;"><br>   --&gt;</span><wbr />来源：中国企业家<br>沉重宏大的政治更迭与社会思潮与1971年出生的马化腾相隔甚远。青少年的他曾沉迷于观测天象，但深圳火热的市场经济氛围最终将他拉回地面成为一个商人。<br>在拜访腾讯公司创始人、董事局主席马化腾之前，我们准备了两组提纲。 <br><br>第一组问题形而上，贯穿着对建国60年的时代精神的总结和宏观梳理，另一组则是形而下，由各种琐细，乃至八卦的小问题混合而成。采访之前，我们把前一组提纲抛给了马化腾。果然，我们的采访提纲难住了马化腾，你的问题很难答，我真没想那么多。虚的东西我不会讲。这是马化腾式的答案，于是，我们拿出了第二套采访提纲。<br>不过小马哥与过去接受采访时惜言如金的风格已稍有不同。我们面前的马化腾虽然比两年前要胖了一些，人却更加精神和开朗，聊到兴头上，旁人甚至难以打断他的话头。2009年8月后，腾讯股价一路冲破110港元大关，腾讯公司以超过2000亿港元的市值成为香港联交所的科技股龙头。更多的人开始感兴趣，是什么样的原因造就了马化腾和他的腾讯公司?<br>马化腾自己也解答不了，不过他告诉我们，他是一个理想主义与实用主义的结合体。<br>1971年出生的马化腾在海南出生、深圳长大。那些沉重宏大的政治更迭与社会思潮与他相隔甚远，他甚至是一个有些自闭的人，我自己认为我是书呆子，他的朋友们一度认为他会很难找到女朋友(他后来的女朋友也是他现在的老婆，正是通过QQ聊天认识的)，至于商业，他说，做生意，什么倒买倒卖，一点兴趣都没有。然而他同时又是一个对挣钱并不排斥的实用主义者，这个技术有人看上了，那我就顺理成章去做。在大学毕业之前，他编出一套程序，结果以5万元的高价卖给了黎明网络公司。<br>在风光旖旎的海南，童年与少年时期的马化腾最大的兴趣就是与漫天的星星交流。初三高一期间，在哀求父母为自己购买第一个天文望远镜未果后，他在自己的日记中记载，如果不给我买的话，可能扼杀了一个天文学家。结果后来偷看了他日记的父母让他如愿以偿，尽管那一部望远镜相当于他父母两个月的工资。<br>是深圳，真正赋予了马化腾日后在商业上获得成功的基因，初中二年级迁徙到深圳的马化腾很快就见识了一个完全不同于海南的天地，当他开始对蛇口的那块写着时间就是金钱，效率就是生命的横幅变得习以为常，对国贸大厦三天一层的速度、深交所门前拖着麻袋认购股票的人群见怪不怪时，他成为了一个实用主义者。马化腾的天文理想并未实现，在得知学习天文的出路大多是做地理老师后，他在大学的申请表上改填了计算机专业，并因此获得了更大的快乐，做一件事情能够用自己的编程技术，能够做出一个产品去卖，或者是能够帮到别人，能够提高效率等等，这些对我来说更有意义。<br>深圳或许扼杀了一位天文科学家马化腾，却培育出后来创造了市值2000亿港元的企业家马化腾。<br>天文仍然是马化腾的爱好，多年以后，腾讯公司董事会决定送给他一件礼物，思来想去，他们送了一台天文望远镜模型，很具深圳特色的是，这是一架山寨版的模型。<br>他并不认同外界将他的商业基因归于潮汕人的血统，他说这有些牵强，他并没有出生在潮州，马化腾的父亲马陈术曾任深圳市盐田港集团有限公司副总经理，母亲也是会计出身，马化腾承认父母给了他很多创业的帮助，不过他们并不是商人。如果一定要论他作为商人的血统与基因，马化腾觉得倒不如归因于广东人的务实。<br>在采访的最后，我们抛出了一个问题，如果现在要你写一本关于你自己和腾讯的回忆录，你会用一个什么样的场面作为开头?这个问题让他思考了一阵。<br>在马化腾费心搜索回忆录开场白的时候，我们还是先看看马化腾是如何回顾他和他成长的那个年代吧。<br><br><br>2002年，刚毕业不久的马化腾，脸上还带着稚气　从书呆子到团队催化剂<br>我父母从来没想到我会做生意，搞商业，一直以为我是书呆子，我自己也这么想。通常意义上那种生意我肯定是很怕，而且不喜欢，除非是说我喜欢这个技术，又有人看上了，那我就顺理成章去做，需要有外界的推动，否则的话要我去不顾一切地往这个方向去追求，我不是(那种人)，做生意，什么倒买倒卖，一点兴趣都没有。<br>我原来是准备走天文方面的路。经常想很多自然科学的东西，研究什么特异功能。1986年的时候观测哈雷彗星回归，我用学校的器材拍一些彗星的照片，我是当时深圳中学第一个找到(哈雷彗星)，还去写观测报告，得了一些奖，获得几十块钱的奖励。还得到了参加观测比赛的机会。后来因为当时要考高中了，到海南的观测我没有去成。<br>考大学的时候，我问老师天文系毕业后的职业，当时只有南京大学有天文系，我了解到基本上那时候去天文台的少，很多都是去当地理老师。当时就觉得，别搞不好变成去当地理老师，后来又刚好开始接触到计算机，就觉得这个也挺有兴趣，那时候就考到深圳大学计算机系。<br>我第一次接触电脑是在中学，是苹果。真正喜欢电脑是从大一、大二开始。因为当时机房紧张，如果我要在硬盘存一些数据，或者不让别人用那台好机器，我就会写一些分区让机器锁定，别人就打不开这个机器(笑)。<br>在大学里面我也不是核心，我们班当时有几个人技术都挺强，所以我们几个互相切磋学习，互相激励，大家都是平等的。而且我对课余活动也不是很积极，我只是研究技术。我会找到比较互补的一些伙伴做成一些事情，很多想法是大家你一句我一句，互相头脑风暴，越谈越兴奋。我看问题比较中立，可能不会说在某一方面特别强，因为总有在某个方面比我强的人，所以我也尊重他的意见，但我可能在产品应该往哪个地方去做这个方面想法会多一点，我会很快想到而且会跟他讲我这个想法是怎么来的，可以迅速地发散到有用处的地方，一下子把别人的兴趣也挑起来了，我经常会起到这样一个催化剂的作用。<br>深圳+技术基因<br>我是初二才到深圳中学。那时候刚好是国贸大厦在建，所谓的深圳速度，三天一层楼，就在我们家附近，我们看着它(建)起来。深圳确实是改革开放先驱。华为、中兴这两个全国最大的通讯设备制造企业都出现在深圳，这是跟深圳这边地理因素有关系，因为它靠近香港，国外的元器件进口比较容易，所以大家都是在深圳从做贸易起来的。所以我们看到深圳在通信方面的人才储备比较多，腾讯后来起来的时候也是以通信为主，包括我第一份工作也是做寻呼。<br>我父亲在深圳的盐田港工作，他对我的影响可能有，但我很难讲出来具体的一些东西。我们创业那么多年，他最开始的帮助很大，做账之类的事基本上是他帮着去做，最开始风险投资进来，IDG VC管财务的跑到我家里跟我父母来直接去对账，做尽职调查都跑到我家里去，因为我爸会计出身，我妈也是会计，当时账是他们帮忙管的。我们都是很老实，很诚恳做事，不会做欺诈这样一些事。甚至到后来遇到比较好的发展机遇的时候，父亲也是不断提醒，说要注意风险，要避免发展过快带来资金或者对外合作中会产生的问题。所以我们即使发展比较快，一直还是抱着一种比较谨慎的心态往往出事都是在你最顺的时候去发生的，这个是经常铭记在心的。<br>那个时候大学里还比较少见到商业明星，反而是请什么严星(气功大师)演讲，练功。我快毕业的时候，老师会接很多外面的项目做开发，然后带毕业生做毕业设计，这应该算跟商业挂钩了，我觉得很有意思，因为这毕竟在帮企业做项目，自己学的技术会有用途。所以当时我真的是非常渴望有这样的机会。<br>我大学毕业时接触了两个系统，一个是证券交易系统，一个是寻呼系统。我的毕业设计是股票行情分析系统，那套软件后来5万块钱卖给黎明网络了。我很早就知道股票，当时深交所开始之前就在我们家附近排队，全国各地都是一麻袋一麻袋的身份证运过来。那时候我没有参与，是后来父母买卖股票的时候参与一下。第一次买股票是毕业后两三年，当时是买了10万块的深发展，后来涨了几倍，我没有抛，到现在还留着，反正没有太大必要去动它。我不是专门去花很多时间去想这个股票怎么样，真的没有，外面说我懂得资本运作，其实真的没有想这么多。<br>应该说我开公司之前也没有什么对商业上的理解，虽然做过一些项目，有些别的收入，但是主要还不是从做商业的角度去看，而是以技术的角度去看。觉得做一件事情能够用自己的编程技术，能够做出一个产品去卖，或者是能够帮到别人，能够提高效率等等，这些对我们来说更有意义。<br>接触互联网<br>1995年底，我开始接触互联网，最早在润迅是用长途电话线拨到香港去接入互联网，当时用的还是Mosaic的浏览器，还不是Netscape。当时我做惠多(CFido，是通过电话线路连接的BBS网络，网络之间互相通过点对点的方式转送信件)BBS站台，一条电话线只能一个人上，当时深圳的惠多网有四根线缆已经是超豪华版，国内第一豪华，但互联网是一条线路多人可以同时访问，哇，这个太好了，一下子好多人可以同时访问这个站台，当时我觉得很有意思。<br>当时我就觉得这个是机会，但是也意味着惠多网已经快完蛋了，因为已经跟不上形势了，所以老的惠多人还是心里有点伤感，尤其原来是一个小圈子，就这么几十个人，到后面互联网的站台一多，变得几百人就没什么意思了。<br>但后来我发现这个力量是不可改变的，互联网一下子迅速膨胀。再后来基本上惠多网的那个站台我也就不太理了，1998年我才关掉。<br>那个时候我开始学互联网能带来什么，因为当时在做寻呼，第一个想法就是把网络寻呼这个概念引进来，通过互联网来寻呼，把内部的系统接起来，当时以为这可以给寻呼业带来一点高科技色彩，能够延缓(寻呼衰落)，因为当时压力很大了。其实手机一开始出来，短信一普及，我就知道寻呼机肯定是完蛋的，就变成夕阳产业了。我1998年底离开寻呼业，走的时候大家还抱幻想说寻呼可能还有机会，真正所有人绝望，全部退出资产应该是2000年。<br>我们出来做第一个项目，是向各个寻呼台卖我们的网络寻呼系统，那时接触到即时通信，当时叫网络寻呼机，而QQ是我们给各个寻呼台开发那套系统的一个附属功能。<br>我们能够走到现在这一步其实更大因素还是很幸运。我们所处的信息产业、特别是互联网这一行现在来看能够跟国际接近同一个起跑线，我们也意识到整个互联网需要跟中国的国情做磨合，在中国做信息产业要更关注对社会的影响，不能够像过去公司还小的时候，只是看一个产品，或者靠一个影响力，或者是为了收入这样单纯的去想，要想得更全面才能适应整个中国的发展。<br>最后，到了谜底揭晓的时刻，让我们来看看马化腾自己拟下的自传开头：<br>1999年2月10号晚，11号凌晨，QQ发布。我们看着自己的产品如何受用户喜爱，口口相传，逐渐逐渐增长，那几个晚上都是盯着这些东西。当时过了两天就有人来狂注册，一次放了5000个号码，我说不可能啊!一看，原来是有人利用我们的漏洞来黑我们的系统，于是赶紧去清掉这些号码。<br>这些正代表着未来腾讯所有互联网产品运营和开发的模式，当时很短的一个月的时间就基本上定型了，包括我们怎么应对处理事务的方法，怎么按用户反馈去调整，所有这些思想都贯穿于腾讯的发展，从始至今 <!--v:3.2--> ]]></description>
<category><![CDATA[技术]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1255349955#comment</comments>
<qz:effect>134218241</qz:effect>
<pubDate>Mon, 12 Oct 2009 12:19:15 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1255349955</guid>
</item>

<item>
<title><![CDATA[Asp.net精通之路]]></title>
<link>http://83692951.qzone.qq.com/blog/1254969278</link>
<description><![CDATA[<span style="color:#006666;font-size:24px;font-family:'tao';line-height:1.8em;"><span style="font-weight:bold"><wbr />asp.net入门容易，精通的话要走好长的路。下面是我转载博客园的文章，或许对你有帮助。<br><br></span><wbr /></span><wbr /><span style="color:#006666;font-size:24px;font-family:'tao';line-height:1.8em;"><span style="font-weight:bold"><wbr />如果你已经有较多的面向对象开发经验，跳过以下这两步： <br>　　第一步　掌握一门.NET面向对象语言，C#或VB.NET 我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET。 ASP.NET是一个全面向对象的技术，不懂OO，那绝对学不下去! <br>　　第二步　对.NET Framework类库有一定的了解 可以通过开发Windows Form应用程序来学习.NET Framework。ASP.NET是建构在.NET Framework之上的技术，你对.NET Framework了解得越深，学习ASP.NET就越快。 举个例子：下面简单列出几个对掌握ASP.NET非常重要的概念： 对象的内存模型，委托，事件，多线程，程序集和应用程序域，安全模型 .NET Framework当然还有许多其它的东西，但不理解与把握清楚上述这些东西，是很难真正把握ASP.NET的。 出于急迫的心情与现实的考虑，不少人没有扎实的面向对象基础就想直接学习ASP.NET，其结果只能是欲速则不达。 在具备了OO基础之后，以下是具体的学习ASP.NET技术步骤。 <br>　　第一步：学习HTML与CSS <br>　　这并不需要去学一大堆的诸如Dreamweaver，Firework之类的各种网页设计工具，关键是理解HTML网页嵌套的block结构与CSS的box模型。许多ASP.NET控件最后都必须转化为HTML。而且，div+CSS是当前主流的网页布局模型。 学习这部分时，关键在于理解概念，而不需要将精力花在美化页面的许多技巧上，那是网站美工的工作，不是程序员的工作。 <br>　　第二步：学习JavaScript <br>　　JavaScript不是Java，它主要运行于浏览器端。可以完成许多工作，功能也很强大：比如它将客户端网页中的HTML元素看成一棵树，可以编写代码访问并修改树节点，动态生成新的HTML代码，从而达到动态修改网页显示特性的目的。 <br>　　JavaScript在目前的网站开发中用得很多，非常重要。 <br>　　另外，它也是目前非常流行的AJAX技术的基础。 <br>　　第三步：学习计算机网络原理 <br>　　找一本大学&lt;计算机网络&gt;教材，重点看看它的有关互联网的部分，了解一些域名解析和HTTP协议等知识。这是进行互联网开发的理论基础。 <br>　　第四步：学习ASP.NET表示层技术，会设计Web页面 <br>　　需要结合先前打好的面向对象技术的基础，至少掌握以下内容： <br>　　(1) 各种Web控件的使用方法， <br>　　(2) 理解信息在网页中的传送方式，比如Cookie，ViewState，Session等的使用。 <br>　　(3) ASP.NET应用程序与网页的生命周期，以及相关对象(比如httpcontext，response，request)的用途。 <br>　　(4) ASP.NET实现事件驱动的内幕 <br>　　(5) 自定义用户控件 <br>　　再次强调一下，没有OO基础，很难掌握上述技术，就只能被这些东东牵着鼻子走了，会很被动。 <br>　　第五步　掌握数据库技术 <br>　　具体地说，要学习以下内容： <br>　　(1) 学会使用SQL　Server 2005：不要求精通它的各种工具与管理配置技术，但至少知道如何连接，如何建表，如何创建存储过程 <br>　　(2) 学习ADO.NET，掌握使用代码人工访问数据库(别用VS2005的向导)的方法 <br>　　(3) 学习数据绑定控件的使用 <br>　　第六步　理解多层架构 <br>　　这时，先前在OO学习阶段涉及到的程序集与应用程序域等就派上用场了，现在，网站架构大多采用多层架构：表示层、业务逻辑层、数据存取层以及数据库本身。 <br>　　可以先上网找一此多层架构的资料看，再找一个现成的比较复杂的开源ASP.NET项目分析一下其架构就差不多了。基本上都是一个套路，到处应用。 <br>　　有的朋友问：学习架构是不是必须学习设计模式。 <br>　　我的看法是：不必!当然，你如果学习过设计模式，那当然更好。但在实际开发中，如果只想着机械地套用某种模式，反而起不到好的结果。我的观点：在学习设计模式时要多思多悟，其思想就会渐渐地融入你的大脑，在真实的设计实践中，忘掉所有的写在书上的模式，一切从实际出发，相信你的直觉，只要达到设计要求的方案就是可行的方案，事实上，你这样做了之后，回过头来再看，会发现你的设计往往暗合设计模式的理论。 <br>　　第七步　学习XML与Web Service <br>　　先了解XML的基础知识，找本讲XML的书看一下就差不多了，然后，再学习Web Service。Web Service其实可类比为远程方法调用(以XML格式表达的调用信息)。 <br>　　学 到了这里，如果你还有兴趣，不妨再去看看SOA，不过SOA的资料都是理论与概念，看起来比较郁闷，而且离实际开发可能比较远。所以，这是可选项。 <br>　　第八步　学习AJAX <br>　　学习AJAX的主要目的是创建具有更丰富特性的Web表示层，而经过前面七步的学习，到此再学习AJAX已水到渠成，所有的基础都已具备，不会有太大的问题了。 <br>　　在基础未具备的前提下直接学AJAX，就象“浮沙之上筑高台”，所以，将AJAX的学习次序安排在这里。 <br>　　第九步　学习RIA技术 <br>　　RIA：Rich internet application，可看成是将C/S与B/S优点合二为一的尝试。就具体技术来说，主要指微软的Silverlight(WPF_E)，毕竟前头一路行来都是微软路线。 <br><br></span><wbr /></span><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[技术]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1254969278#comment</comments>
<qz:effect>134218240</qz:effect>
<pubDate>Thu, 08 Oct 2009 02:34:38 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1254969278</guid>
</item>

<item>
<title><![CDATA[耶鲁校长：“新中国没有一所真正的大学”]]></title>
<link>http://83692951.qzone.qq.com/blog/1253964205</link>
<description><![CDATA[<span style="color:#0099cc;font-size:24px;line-height:1.8em;">耶鲁校长：“中国没有一所真正的大学”</span><wbr /><br><br><span style="color:#0099cc;font-size:24px;line-height:1.8em;"></span><wbr /><br><span style="color:#0099cc;font-size:24px;line-height:1.8em;"></span><wbr /><br><span style="color:#0099cc;font-size:24px;line-height:1.8em;"></span><wbr /><br><span style="color:#0099cc;font-size:24px;line-height:1.8em;">曾任耶鲁大学校长的小贝诺&amp;#8226;施密德特，日前在耶鲁大学学报上公开撰文批判中国大学，引起了美国教育界人士对中国大学的激烈争论。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />  <span style="font-weight:bold"><wbr />    对中国大学近年来久盛不衰的“做大做强”之风， 施密德特说：“他们以为社会对出类拔萃的要求只是多：课程多，老师多，学生多，校舍多”。“他们的学者退休的意义就是告别糊口的讲台，极少数人对自己的专业还有兴趣，除非有利可图。他们没有属于自己真正意义上的事业。”“而校长的退休，与官员的退休完全一样，他们必须在退休前利用自己权势为子女谋好出路。”“新中国没有一个教育家，而民国时期的教育家灿若星海。”      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    对于通过中共政府或下属机构“排名”、让中国知名大学跻身“世界百强”的做法，施密德特引用基尔克加德的话说，它们在做“自己屋子里的君主”。“他们把经济上的成功当成教育的成功，他们竟然引以为骄傲，这是人类文明史最大的笑话。”      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    中国大学近来连续发生师生“血拼”事件，施密德特认为这是大学教育的失败，因为“大学教育解放了人的个性，培养了人的独立精神，它也同时增强了人的集体主义精神，使人更乐意与他人合作，更易于与他人心息相通”，“这种精神应该贯穿于学生之间，师生之间”。“他们计划学术，更是把教研者当鞋匠。难怪他们喜欢自诩为园丁。我们尊重名副其实的园丁，却鄙视一个没有自由思想独立精神的教师。”      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    中国大学日益严重的“官本位”体制，施密德特也深感担忧，他痛心地说：“宙斯已被赶出天国，权力主宰一切”。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    “文科的计划学术，更是权力对于思考的祸害，这已经将中国学者全部利诱成犬儒，他们只能内部恶斗。缺乏批评世道的道德勇气。孔孟之乡竟然充斥着一批不敢有理想的学者。令人失望。”施密德特为此嘲笑中国大学“失去了重点，失去了方向，失去了一贯保持的传统”，“课程价值流失，效率低，浪费大”。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    他嘲笑说“很多人还以为自己真的在搞教育，他们参加一些我们会议，我们基本是出于礼貌，他们不获礼遇。”      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    由于当前经融危机引发的一系列困难，导致大学生就业难。施密德特对此说，“作为教育要为社会服务的最早倡议者，我要说，我们千万不能忘记大学的学院教育不是为了求职，而是为了生活”。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    他说大学应该“坚持青年必须用文明人的好奇心去接受知识，根本无需回答它是否对公共事业有用，是否切合实际，是否具备社会价值等”，反之大学教育就会偏离“对知识的忠诚”。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    对中国大学的考试作弊、论文抄袭、科研造假等学术腐败，施密德特提出了另一种观察问题的眼光，他说“经验告诉我们，如果政权是腐败的，那么政府部门、社会机构同样会骇人听闻的腐败”。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    他还说“中国这一代教育者不值得尊重，尤其是一些知名的教授。”      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    施密德特认为中国大学不存在真正的学术自由，他说中国大学“对政治的适应，对某些人利益的迎合，损害了大学对智力和真理的追求”。      <span style="font-weight:bold"><wbr /><span style="font-weight:bold"><wbr />    他提出“大学似乎是孕育自由思想并能最终自由表达思想的最糟糕同时又是最理想的场所”，因此，大学“必须充满历史感”，“必须尊重进化的思想”，“同时，它倾向于把智慧，甚至特别的真理当作一种过程及一种倾向，而不当作供奉于密室、与现实正在发生的难题完全隔绝的一种实体”。他说“一些民办教育，基本是靠人头计算利润的企业。”</span><wbr /> <!--v:3.2--> ]]></description>
<category><![CDATA[心情]]></category>
<author><![CDATA[83692951@qq.com(阿磊)]]></author>
<comments>http://83692951.qzone.qq.com/blog/1253964205#comment</comments>
<qz:effect>134218240</qz:effect>
<pubDate>Sat, 26 Sep 2009 11:23:25 GMT</pubDate>
<guid>http://83692951.qzone.qq.com/blog/1253964205</guid>
</item>

</channel>
</rss>

