大杂烩

今天一位十几年没见的朋友请我们去吃饭,吃完在他公司闲聊时无意中说起他一个朋友的父亲得了癌症,被医生宣布只能回家等死了,有人送来了一个偏方,家人就是:死马只当活马医,试着吃起了这个方子,没想到吃了几贴就有了起色,就接着吃下去,现在已经是复查也查不出病症状了!于是这个朋友把这个方子拿来给了自己的亲戚吃,最近也有了起色!当下就跟他要了这个方子,因为十一年前父亲就是被癌症折磨而死,想起那时如果能有这个方子的话,说不定父亲也能活到现在了,只有经历过失亲之疼的人才会明白这个中滋味!不管这个方子是否真的有用,我把它放到我的空间上,如果有哪个朋友看到了可以转下来,说不定哪天能帮到人!上网查了查这几味药也真的是抗癌的药,平时没事也可以吃,有清热解毒之功效.     药方:红枣大的八粒,小的十粒(共十八粒)  
       铁树一叶
       半枝莲一两
       白花蛇舌草二两
    服法:四味药为一剂可煎两次  第一次用水量大约十五碗煎两个小时,第二次约十碗水煎两小时,然后将药汤倒起日夜当茶饮服
    说明:
    一 该药主治各种癌症.根据服法结果,已经治愈了肠癌,肝癌,子宫癌,胃癌等,除乳癌效果差点外,其他癌症都有良好效果,特别是肠癌,只服四到六小时就起异常效果.
    二 平时每月煎一次服用,因该药药性对脏腑之热素及生痔疮,热咳等症,服后都有确实生效且能彻底治愈
三 注意说明:半枝莲,清凉无毒,是排污草药,服后不能饮用开水,恐其冲淡药效,如果癌症三花(就是表面能看见烂的),可将刚生长的新鲜草药捣烂取其汁,将渣敷于患处,其汁用水热烧当茶喝,此药不分男女老少,服用三至四个月,方能彻底全愈,服用后大小便有浓血排出,这反映毒物,清除后即止,可免惊疑。
四 此方是一个犯人在执行死刑前三天供出来的,因恐死后失传,到目前为止,治愈者无数,是救人一大积德!
希望复印转发邻居亲友多作善事

附注:此方与六十六年十月二十五日中国时报第七版登刊之内容相同



宠辱不惊,闲看庭前花开花落;去留无意,漫随天边云卷云舒……



  1. 扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他专业的人更能写出高质量的软件。程序.人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。
  2. 丰富的想象力。不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法。丰富的想象力是建立在丰富的知识的基础上,除计算机以外,多涉猎其他的学科,比如天文、物理、数学等等。另外,多看科幻电影也是一个很好的途径。
  3. 最简单的是最好的。这也许是所有科学都遵循的一条准则,如此复杂的质能互换原理在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc2。简单的方法更容易被人理解,更容易实现,也更容易维护。遇到问题时要优先考虑最简单的方案,只有简单方案不能满足要求时再考虑复杂的方案。
  4. 不钻牛角尖。当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。当我遇到难题的时候会去玩游戏,而且是那种极暴力的打斗类游戏,当负责游戏的那部分大脑细胞极度亢奋的时候,负责编程的那部分大脑细胞就得到了充分的休息。当重新开始工作的时候,我会发现那些难题现在竟然可以迎刃而解。
  5. 对答案的渴求。人类自然科学的发展史就是一个渴求得到答案的过程,即使只能知道答案的一小部分也值得我们去付出。只要你坚定信念,一定要找到问题的答案,你才会付出精力去探索,即使最后没有得到答案,在过程中你也会学到很多东西。
  6. 多与别人交流。三人行必有我师,也许在一次和别人不经意的谈话中,就可以迸出灵感的火花。多上上网,看看别人对同一问题的看法,会给你很大的启发。
  7. 良好的编程风格。注意养成良好的习惯,代码的缩进编排,变量的命名规则要始终保持一致。大家都知道如何排除代码中错误,却往往忽视了对注释的排错。注释是程序的一个重要组成部分,它可以使你的代码更容易理解,而如果代码已经清楚地表达了你的思想,就不必再加注释了,如果注释和代码不一致,那就更加糟糕。
  8. 韧性和毅力。这也许是"高手"和一般程序员最大的区别。A good programming is 99% sweat and 1% coffee。高手们并不是天才,他们是在无数个日日夜夜中磨练出来的。成功能给我们带来无比的喜悦,但过程却是无比的枯燥乏味。你不妨做个测试,找个10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。编程好习惯.假如你和我一样是一只正在学习编程的菜鸟,那么下面的十个好习惯与你共勉之。
  1、设计规划。现在是模块化程序设计的天下,应用程序要实现的目标是金字塔尖,进行程序设计规划的意义就在于:对构成金字塔的基础模块进行划分,规划得越详细,模块分工越明确,越容易明白下一步该做什么。这好比搭积木的游戏,你可以把你的积木块组合成各种形状,但首先要熟悉每个积木块的功能。
  2、有备无患。实战之前,先找一些样例程序仔细研究,最起码明白怎么开头,怎么结尾,别打无准备之仗。
  3、葵花宝典。做一份所用程序语言的精简列表,包括基本数据类型、各类运算符说明、基本语句结构、常用关键词(保留字)、常用函数(控件)说明等。
  4、自由独立。为你的应用程序建立一个单独的目录,这样既方便应用程序文件的管理,而且如果你要给程序搬"家",卷起"铺盖"就可以走人了。
  5、见名知意。程序再小,用的变量也不会少,变量起名应当"见名知意",这是老规矩,好处是显而易见的。推荐使用"匈牙利命名法",它会使你的起名工作变得轻而易举,而且相当专业。
  6、对称之美。编程也讲究对称之美,如果程序里用到A循环嵌套B判断,B判断又包含C循环之类
  的结构,记着使用缩进法,让aenddo对齐ado,bendif对齐bif……诸如此类,依次缩进,总之对称就等于美观加易读。(在易里这条就没用了)
  7、多加注解。对程序中自定义的变量、函数、子程序加以功能性的注释说明,别嫌麻烦。如果三五个月之后,连自己写的东西都看不明白了,那才麻烦大了。
  8、环境保护。如果应用程序需要修改系统设置,记着执行程序前先保存设置,结束后要恢复设置,千万别污染环境。
  9、拿来主义。一个人的力量是有限的,大家的力量是无限的,平时多看看书,有好的经验、巧的方法、用得上的段子不妨拿来。
  10、忍者无敌。当你认为程序代码写得"百分百"正确,而程序编译执行却百分百有毛病,你基本属于晕菜的时候,千万要忍,歇口气,重头来,别放弃!相信最终的胜利是属于你的!
  在这里还得提醒一下,自己的程序自己写,有些人真的懒的没话说啊,动不动就“哪位大哥大姐请帮我写这样一个程序”如果你是真心想学编程的话,那这有什么意思呢,又不是你自己写的程序,没什么可高兴的,还有些人自己还想也没想就要别人写个程序,如果真有自己解决不了的问题,去论坛搜索一下自己想要的内容或是发个贴问一下倒还正常,我想一般知道如何解决你这问题的人都会帮你,必竟论坛里的热心人还是有很多,要是问题有难度论坛里的高手都解决不了,那就去网上搜一下,相同的例子我想应该可以找到(要学会搜索,网上资源很多啊)我想你做到了“多用心、勤动脑,重基础”这几点(大强老师的名言)再加上足够的时间,那恭喜你你一定会小有所成的!,最后希望某些懒人看到这几句话自己想想吧,愿你学有所成。
 
 写程序10大习惯和如何提高编程能力
                                       
                                               
1.
扎实的基础。数据结构、离散数学、编译原理,这些是所有计算机科学的基础,如果不掌握他们,很难写出高水平的程序。据我的观察,学计算机专业的人比学其他
专业的人更能写出高质量的软件。程序人人都会写,但当你发现写到一定程度很难再提高的时候,就应该想想是不是要回过头来学学这些最基本的理论。不要一开始
就去学OOP,即使你再精通OOP,遇到一些基本算法的时候可能也会束手无策。 0 s7 y0 C7 P  v& k& T( L3
f/ [
 
 2.
丰富的想象力。不要拘泥于固定的思维方式,遇到问题的时候要多想几种解决问题的方案,试试别人从没想过的方法。丰富的想象力是建立在丰富的知识的基础上,
除计算机以外,多涉猎其他的学科,比如天文、物理、数学等等。另外,多看科幻电影也是一个很好的途径。 2 S; g) [8 E& W3
C2 U2 ]- t
  3.
最简单的是最好的。这也许是所有科学都遵循的一条准则,如此复杂的质能互换原理在爱因斯坦眼里不过是一个简单得不能再简单的公式:E=mc2。简单的方法
更容易被人理解,更容易实现,也更容易维护。遇到问题时要优先考虑最简单的方案,只有简单方案不能满足要求时再考虑复杂的方案。 6 p0 `* |6
o+ U5 s* w- p
( o, p; U3 L' x
  4.
不钻牛角尖。当你遇到障碍的时候,不妨暂时远离电脑,看看窗外的风景,听听轻音乐,和朋友聊聊天。当我遇到难题的时候会去玩游戏,而且是那种极暴力的打斗
类游戏,当负责游戏的那部分大脑细胞极度亢奋的时候,负责编程的那部分大脑细胞就得到了充分的休息。当重新开始工作的时候,我会发现那些难题现在竟然可以
迎刃而解。
  5. 对答案的渴求。人类自然科学的发展史就是一个渴求得到答案的过程,即使只能知道答案的一小部分也值得我们去付出。只要你坚定信念,一定要找到问题的答案,你才会付出精力去探索,即使最后没有得到答案,在过程中你也会学到很多东西。
  6. 多与别人交流。三人行必有我师,也许在一次和别人不经意的谈话中,就可以迸出灵感的火花。多上上网,看看别人对同一问题的看法,会给你很大的启发。
  _. c2 c$ q7 n* w; F( u) c# U
 
 7.
良好的编程风格。注意养成良好的习惯,代码的缩进编排,变量的命名规则要始终保持一致。大家都知道如何排除代码中错误,却往往忽视了对注释的排错。注释是
程序的一个重要组成部分,它可以使你的代码更容易理解,而如果代码已经清楚地表达了你的思想,就不必再加注释了,如果注释和代码不一致,那就更加糟糕。
7 d' p" G# a- i- Y
  8. 韧性和毅力。这也许是"高手"和一般程序员最大的区别。A good
programming is 99% sweat and 1%
coffee。高手们并不是天才,他们是在无数个日日夜夜中磨练出来的。成功能给我们带来无比的喜悦,但过程却是无比的枯燥乏味。你不妨做个测试,找个
10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。
                    编程好习惯
假如你和我一样是一只正在学习编程的菜鸟,那么下面的十个好习惯与你共勉之。


1、设计规划。现在是模块化程序设计的天下,应用程序要实现的目标是金字塔尖,进行程序设计规划的意义就在于:对构成金字塔的基础模块进行划分,规划得越
详细,模块分工越明确,越容易明白下一步该做什么。这好比搭积木的游戏,你可以把你的积木块组合成各种形状,但首先要熟悉每个积木块的功能。
    2、有备无患。实战之前,先找一些样例程序仔细研究,最起码明白怎么开头,怎么结尾,别打无准备之仗。
    3、葵花宝典。做一份所用程序语言的精简列表,包括基本数据类型、各类运算符说明、基本语句结构、常用关键词(保留字)、常用函数(控件)说明等。
    4、自由独立。为你的应用程序建立一个单独的目录,这样既方便应用程序文件的管理,而且如果你要给程序搬"家",卷起"铺盖"就可以走人了。 0 }, `/ o5 y1 M# b) u
    5、见名知意。程序再小,用的变量也不会少,变量起名应当"见名知意",这是老规矩,好处是显而易见的。推荐使用"匈牙利命名法",它会使你的起名工作变得轻而易举,而且相当专业。


6、对称之美。编程也讲究对称之美,如果程序里用到A循环嵌套B判断,B判断又包含C循环之类的结构,记着使用缩进法,让a



用C语言编写一个程序,能够将程序自身显示出来。(程序越短越好)
即: 由源程序编译连接生成可执行文件,在源程序已删除的情况下,运行可执行文件,能将源程序的内容显示出来。
如: 源程序aaa.c,编译连接生成aaa.exe,然后删除源程序aaa.c,再运行aaa.exe,则在屏幕上显示源程序aaa.c的全部内容,一模一样,包括回车、换行等。
注: 要求在没有源程序的情况下,运行可执行文件,能够显示原来源程序的内容。因为没有源程序,可执行文件就无法再读取源程序,另外也不需可执行文件来删除源程序。
(不能使用文件操作来读取源程序)

试题2)
有一10*10格的棋盘,有的格子有障碍不能通行,有的可以通行,用一个两维数组来表示这个棋盘,值为1表示可以通行,为0表示不可以通行。
请编程找出从左上角到右下角的通行线路(编程语言不限)。

试题3)
学校A的一年级有若干个班,每个班有人数不等的学生,每个学生有不同的姓名;学校B也 是如此。现在学校A与学校B合并,其一年级的对应相同的班进行合并。
用链表来描述一年级的若干个班,每个班的人数不等的学生也用链表来描述,按姓名的字母升序排 列,请用C语言编写一个函数,实现学校的合并。
要求:该函数输入两个学校的链表,返回新学校的链表

说明:
试题1)要求编写出完整的程序,这里有一个例程可供参考,但是还不完善,显示内容和源程序还 不一模一样,可以在这个基础上做完成。
例程:
main(){char*s= "main(){char*s=\ "%s\ ";printf(s,s);} ";printf(s,s);}
试题二说明解决方法,给出程序说明。
试题3)要定义链表的数据结构,并编写出程序

 

 

1、俗话说:好马不吃回头草;可俗话又说:浪子回头金不换!
2、俗话说:兔子不吃窝边草;可俗话又说:近水楼台先得月!
3、俗话说:宰相肚里能撑船;可俗话又说:有仇不报非君子!
4、俗话说:男子汉大丈夫,宁死不屈;可俗话又说:男子汉大丈夫,能屈能伸!
5、俗话说:打狗还得看主人;可俗话又说:杀鸡给猴看!
6、俗话说:知无不言,言无不尽;可俗话又说:交浅勿言深,沉默是金!
7、俗话说:车到山前必有路;可俗话又说:不撞南墙不回头!
8、俗话说:人不犯我,我不犯人;可俗话又说:先下手为强,后下手遭殃!
9、俗话说:礼轻情谊重;可俗话又说:礼多人不怪!
10、俗话说:人多力量大;可俗话又说:人多嘴杂!
11、俗话说:买卖不成仁义在;可俗话又说:亲兄弟,明算帐!
12、俗话说:一个好汉三个帮;可俗话又说:靠人不如靠己!
13、俗话说:人往高处走;可俗话又说:爬得高,摔得重!
14、俗话说:一口唾沫一个钉;可俗话又说:人嘴两张皮,咋说咋有理!
15、俗话说:知识要有产权;俗话又说:不分享心里不安!
16、俗话说:亡羊补牢,未为迟也;可俗话又说:亡羊补牢,为时已晚!
17、俗话说:瘦死的骆驼比马大;可俗话又说:拔了毛的凤凰不如鸡! 
18、俗话说:宁可玉碎,不能瓦全;可俗话又说:留得青山在,不怕没柴烧!   
19、俗话说:人不可貌相,海水不可斗量;可俗话又说:人靠衣裳马靠鞍!   
20、俗话说:浪子回头金不换;可俗话又说:狗改不了吃屎!
21、俗话说:苦海无边,回头是岸;可俗话又说:开弓没有回头箭!
22、俗话说:退一步海阔天空;可俗话又说:狭路相逢勇者胜!   
23、俗话说:三百六十行,行行出状元;可俗话又说:万般皆下品,唯有读书高!
24、俗话说:书到用时方恨少;可俗话又说:百无一用是书生!   
25、俗话说:金钱不是万能的;可俗话又说:有钱能使鬼推磨!    
26、俗话说:天无绝人之路;可俗话又说:天网恢恢,疏而不漏!
27、俗话说:出淤泥而不染;可俗话又说:近朱者赤,近墨者黑!    
28、俗话说:捉贼捉赃,捉奸捉双;可俗话又说:欲加之罪,何患无辞!   
29、俗话说:贫贱不能移!可俗话又说:人贫志短,马瘦毛长!   
30、俗话说:青取之于蓝而胜于蓝;可俗话又说:姜还是老的辣!
31、俗话说:后生可畏;可俗话又说:嘴上无毛、办事不牢!
32、俗话说:有缘千里来相会;可俗话又说:不是冤家不聚头!
33、俗话说:在天愿作比翼鸟,在地愿为连理枝;可俗话又说:夫妻本是同林鸟,大难来时各自飞!
34、俗话说:得饶人处且饶人;可俗话又说:纵虎归山,后患无穷!
35、俗话说:善有善报,恶有恶报;话又说:人善被人欺,马善被人骑!
36、俗话说:一分耕耘、一分收获;可俗话又说:人无横财不富、马无夜草不肥!
37、俗话说:小心驶得万年船;可俗话又说:撑死胆大的,饿死胆小的!
38、俗话说:量小非君子;可俗话又说:无毒不丈夫!
39、俗话说:一寸光阴一寸金;可俗话又说:寸金难买寸光阴!   
40、俗话说:日久见人心;可俗话又说:人心隔肚皮!
41、俗话说:光阴似箭;可俗话又说:度日如年!
42、俗话说:己所不欲,勿施于人;可俗话又说:顺我者昌,逆我者亡!
43、俗话说:邪不压正;可俗话又说:道高一尺,魔高一丈!
44、俗话说:小不忍则乱大谋;可俗话又说:不蒸馒头蒸(争)口气!
45、俗话说:人人为我,我为人人;可俗话又说:人不为己,天诛地灭!
46、俗话说:不怕人不敬,就怕己不正;可俗话又说:众口烁金,积毁销骨!   
47、俗话说:三个臭皮匠,胜过诸葛亮;可俗话又说:一个和尚挑水喝,两个和尚抬水喝,三个和尚没水喝! 
48、俗话说:不入虎穴,焉得虎子;可俗话又说:老虎屁股摸不得!   
49、俗话说:百事孝为先;可俗话又说:忠孝不能两全!
50、俗话说:人无远虑,必有近忧;可俗话又说:今朝有酒今朝醉!
51、俗话说:家事国事天下事,事事关心;可俗话又说:老婆孩子热炕头! 
52、俗话说:人定胜天;可俗话又说:天意难违!
53、俗话说:愚公移山;可俗话又说:胳膊拧不过大腿! 
54、俗话说:哪里跌倒哪里爬起;可俗话又说:一失足成千古恨!
55、俗话说:路不平有人铲,事不平有人管;可俗话又说:自家扫取门前雪,莫管他人屋上霜!    
56、俗话说:滴水之恩当涌泉相报!可俗话又说:过河拆桥、卸磨杀驴、兔死狗烹、鸟尽弓藏!
57、俗话说:双喜临门;可俗话又说:福无双进,祸不单行!   
58、俗话说:人挪活,树挪死;可俗话又说:滚石不生苔,转业不生财! 
59、俗话说:嫁鸡随鸡,嫁狗随狗;可俗话又说:男怕选错行,女怕嫁错郎! 
60、俗话说:明人不做暗事;可俗话又说:兵不厌诈!

50家著名公司笔试题

46家中外知名企业面试题目

微软
  智力题
  1.烧一根不均匀的绳子,从头烧到尾总共需要1个小时,问如何用烧绳子的方法来确定
半小时的时间呢?
  2.10个海盗抢到了100颗宝石,每一颗都一样大小且价值连城。他们决定这么分:
  (1)抽签决定自己的号码(1~10);
  (2)首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,按照
他的方案进行分配,否则将被扔进大海喂鲨鱼;
  (3)如果1号死后,再由2号提出分配方案,然后剩下的4个人进行表决,当且仅当超过
半数的人同意时,按照他的方案进行分配,否则将被扔入大海喂鲨鱼;
  (4)依此类推……
  条件:每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。
  问题:第一个海盗提出怎样的分配方案才能使自己的收益最大化?
  3.为什么下水道的盖子是圆的?
  4.中国有多少辆汽车?
  5.你让工人为你工作7天,回报是一根金条,这根金条平分成相连的7段,你必须在每
天结束的时候给他们一段金条。如果只允许你两次把金条弄断,你如何给你的工人付费?
  6.有一辆火车以每小时15公里的速度离开北京直奔广州,同时另一辆火车以每小时20
公里的速度从广州开往北京。如果有一只鸟,以30公里每小时的速度和两辆火车同时启动,
从北京出发,碰到另一辆车后就向相反的方向返回去飞,就这样依次在两辆火车之间来回地
飞,直到两辆火相遇,这只鸟一共飞行了多远?

      7.你有两个罐子以及50个红色弹球和50个蓝色弹球,随机选出一个罐子,随机选出一
个弹球放入罐子,怎样给出红色弹球最大的选中机会?在你的计划里,得到红球的几率是多
少?
  8.想像你站在镜子前,请问,为什么镜子中的影像可以左右颠倒,却不能上下颠倒呢

  9.如果你有无穷多的水,一个3公升的提捅,一个5公升的提捅,两只提捅形状上下都
不均匀,问你如何才能准确称出4公升的水?
  10.你有一桶果冻,其中有黄色、绿色、红色三种,闭上眼睛抓取同种颜色的两个。抓
取多少次就可以确定你肯定有两个同一颜色的果冻?
  11.连续整数之和为1000的共有几组?
  12.从同一地点出发的相同型号的飞机,可是每架飞机装满油只能绕地球飞半周,飞机
之间可以加油,加完油的飞机必须回到起点。问至少要多少架次,才能满足有一架绕地球一
周。 

  

  参考答案:
  1.两边一起烧。
  2.96,0,1,0,1,0,1,0,1,0。
  3.因为口是圆的。
  4.很多。
  5.分1,2,4。
  6.6/7北京到广州的距离。
  7.100%。
  8.平面镜成像原理(或者是“眼睛是左右长的”)。
  9.3先装满,倒在5里,再把3装满,倒进5里。把5里的水倒掉,把3里剩下的水倒进5里
,再把3装满,倒进5里,ok!
  10.一次。
  11.首先1000为一个解。连续数的平均值设为x,1000必须是x的整数倍。假如连续数的
个数为偶数个,x就不是整数了。x的2倍只能是5,25,
125才行。因为平均值为12.5,要连续80个达不到。125/262.5是可以的。即62,63
,61,64,等等。连续数的个数为奇数时,平均值为整数。1000为平均值的奇数倍。
10002×2×2×5×5×5;x可以为2,4,8,40,200
排除后剩下40和200是可以的。所以答案为平均值为62.5,40,200,1000的4组整数。
  12.答案是5架次。一般的解法可以分为如下两个部分:
  (1)直线飞行
  一架飞机载满油飞行距离为1,n架飞机最远能飞多远?在不是兜圈没有迎头接应的情况
,这问题就是n架飞机能飞多远?存在的极值问题是不要重复飞行,比如两架飞机同时给一
架飞机加油且同时飞回来即可认为是重复,或者换句话说,离出发点越远,在飞的飞机就越
少,这个极值条?
窍匀坏模蛭猲架飞机带的油是一定的,如重复,则浪费的油就越多。比如最后肯定是只
有一架飞机全程飞行,注意“全程”这两个字,也就是不要重复的极值条件。如果是两架飞
机的话,肯定是一架给另一架加满油,并使剩下的油刚好能回去,就说第二架飞机带的油耗
在3倍于从出发?
郊佑偷穆烦躺希腥芊苫谌艽挠秃脑?倍于从出发到其加油的路程上,所以n架飞
机最远能飞行的距离为s1+1/3+…+1/(2n+1)这个级数是发散的,所以理论上只要
飞机足够多最终可以使一架飞机飞到无穷远,当然实际上不可能一架飞机在飞行1/(2n+1)
时间内同时给n&#
61485;1个飞机加油。
  (2)可以迎头接应加油
  一架飞机载满油飞行距离为1/2,最少几架飞机能飞行距离1?也是根据不要重复飞行的
极值条件,得出最远处肯定是只有一架飞机飞行,这样得出由1/2处对称两边1/4肯定是一架
飞机飞行,用上面的公式即可知道一边至少需要两架飞机支持,(1/3+1/5)/2>1/4(左边
除以2是一架飞机
飞行距离为1/2),但是有一点点剩余,所以想像为一个滑轮(中间一个飞机是个绳子,两
边两架飞机是个棒)的话5摹K源鸢肝骄滴?2.5,40,200,1000的4组整数。 

       


  逻辑推理题
  1.此题源于1981年柏林的德国逻辑思考学院,98%的测验者无法解答此题。
  有五间房屋排成一列;所有房屋的外表颜色都不一样;所有的屋主来自不同的国家;所
有的屋主都养不同的宠物;喝不同的饮料;抽不同的香烟。
  (1)英国人住在红色房屋里;(2)瑞典人养了一只狗;(3)丹麦人喝茶;(4)绿色
的房子在白色的房子的左边;(5)绿色房屋的屋主喝咖啡;(6)吸 Pall
Mall香烟的屋主养鸟;(7)黄色屋主吸Dunhill香烟;(8)位于最中间的屋主喝牛奶;(
9)挪威人住在第一间房屋里;(10)吸Blend香烟的人住在养猫人家的隔壁;(11)养马的
屋主在吸Dunhill香烟的人家的隔壁;(12)吸Blue
Master香烟的屋主喝啤酒;(13)德国人吸Prince香烟;(14)挪威人住在蓝色房子隔壁;
(15)只喝开水的人住在吸Blend香烟的人的隔壁
  问:谁养鱼?
   提示:首先确定
  房子颜色:红、黄、绿、白、蓝 Color 1 2 3 4 5
  国籍:英、瑞、丹、挪、德=> Nationality 1 2 3 4 5
  饮料:茶、咖、奶、酒、水=> Drink 1 2 3 4 5
  烟:PM、DH、BM、PR、混=> Tobacco 1 2 3 4 5
  宠物:狗、鸟、马、猫、鱼=> Pet 1 2 3 4 5
  然后有:
  (9)=>N1=挪威
  (14)=>C2=蓝
  (4)=>如C3=绿,C4=白,则(8)和(5)矛盾,所以C4=绿,C5=白
  剩下红黄只能为C1,C3
  (1)=>C3=红,N3=英国,C1=黄
  (8)=>D3=牛奶
  (5)=>D4=咖啡
  (7)=>T1=DH
  (11)=>P2=马
  那么:
  挪威 ? 英国 ? ?
  黄 蓝 红 绿 白
  ? ? 牛奶 咖啡 ?
  DH ? ? ? ?
  ? 马 ? ? ?
  (12)=>啤酒只能为D2或D5,BM只能为T2或T5=>D1=矿泉水
  (3)=>茶只能为D2或D5,丹麦只能为N2或N5
  (15)=>T2=混合烟=>BM=T5,
  所以剩下啤酒=D5,茶=T2=>丹麦=D2
  然后:
  挪威 丹麦 英国 ? ?
  黄 蓝 红 绿 白
  矿泉水 茶 牛奶 咖啡 啤酒
  DH 混合烟 ? ? BM
  ? 马 ? ? ?
  (13)=>德国=N4,PR=T4
  所以,瑞典=N5,PM=T3
  (2)=>狗=P5
  (6)=>鸟=P3
  (10)=>猫=P1
  得到:
  挪威 丹麦 英国 德国 瑞典
  黄 蓝 红 绿 白
  矿泉水 茶 牛奶 咖啡 啤酒
  DH 混合烟 PM PR BM
  猫 马 鸟 ? 狗
  所以,最后剩下的鱼只能由德国人养了。


  2.
  . . .
  . . .
  . . .
  
  请仅用一笔画四根直线,将上图9个点全部连接。
  

      3.对一批编号为1~100全部开关朝上(开)的灯进行以下操作:
  凡是1的倍数反方向拨一次开关;2的倍数反方向又拨一次开关;3的倍数反方向又拨一
次开关……
  问:最后为关熄状态的灯的编号。
  微软招聘总经理助理的三道面试题
  1.某手机厂家由于设计失误,有可能造成电池寿命比原来设计的寿命短一半(不是冲
放电时间),解决方案就是更换电池或给50元购买该厂家新手机的折换券。请给所有已购买
的用户写信告诉解决方案。
  2.一高层领导在参观某博物馆时,向博物馆馆员小王要了一块明代的城砖作为纪念,
按国家规定,任何人不得将博物馆收藏品变为私有。博物馆馆长需要如何写信给这位领导,
将城砖取回?
  3.王小姐由于工作失误,将2万元的笔记本电脑以1.2万元错卖给李先生,王小姐的经
理应该怎么写信给李先生将钱要回?
  
 
  英文面试题目
  1. Algorithms
  * What’s the difference between a linked list and an array?
  * Implement an algorithm to sort a linked list. Why did you pick the method
you did?
  * Implement an algorithm to sort an array. Why did you pick the method you
did?
  * Implement strstr() (or some other string library function).
  * Reverse a string. Optimize for speed. Optimize for space.
  * Count the number of set bits in a number. Now optimize for speed. Now
optimize for size.
  * How would you find a cycle in a linked list?
  * Give me an algorithm to shuffle a deck of cards, given that the cards are
stored in an array of ints.
  * Write a function that takes in a string parameter and checks to see
whether or not it is an integer, and if it is then return the int城砖作为纪念,
按国家规定,任何人不得将博物馆收藏品变为私有。博物馆馆长需要如何写信给这位领导,
将城砖取回?
  3.王小姐由于工作失误,将2万元的笔记本电脑以1.2万元错卖给李先生,王小姐的经
理应该怎么写信给李先生将钱要回?
  
 
  英文面试题目
  1. Algorithms
  * What’s the difference between a linked list and an array?
  * Implement an algorithm to sort a linked list. Why did you pick the method
you did?
  * Implement an algorithm to sort an array. Why did you pick the method you
did?
  * Implement strstr() (or some other string library function).
  * Reverse a string. Optimize for speed. Optimize for space.
  * Count the number of set bits in a number. Now optimize for speed. Now
optimize for size.
  * How would you find a cycle in a linked list?
  * Give me an algorithm to shuffle a deck of cards, given that the cards are
stored in an array of ints.
  * Write a function that takes in a string parameter and checks to see
whether or not it is an integer, and if it is then return the integer value.
  * Write a function to print all of the permutations of a string.
  * Implement malloc.
  * Write a function to print the Fibonacci numbers.
  * Write a function to copy two strings, A and B. The last few bytes of
string A overlap the first few bytes of string B.
  * How would you print out the data in a binary tree, level by level,
starting at the top?
  2. Applications
  * How can computer technology be integrated in an elevator system for a
hundred story office building? How do you optimize for availability? How would
variation of traffic over a typical work week or floor or time of day affect
this?
  * How would you redesign an ATM?
  * Suppose we wanted to run a microwave oven from the computer. What kind of
software would you write to do this?
  * How would you design a coffee-machine for an automobile.
  3. Thinkers
  * How are M&Ms made?
  * If you had to learn a new computer language, how would you go about doing
it?
  * If MS told you we were willing to invest million in a start up of your
choice, what business would you start? Why?
  * If you could gather all of the computer manufacturers in the world
together into one room and then tell them one thing that they would be compelled
to do,what would it be?
  * Explain a scenario for testing a salt shaker.
  * If you are going to receive an award in 5 years, what is it for and who is
the audience?
  * How would you explain how to use Microsoft Excel to your grandma?
  * Why is it that when you turn on the hot water in any hotel, for example,
the hot water comes pouring out almost instantaneously?
  微软亚洲技术支持中心面试题目
  1.进程和线程的差别。
  2.Heap与stack的差别。
  3.Windows下的内存是如何管理的?
  4.介绍.Net和.Net的安全性。
  5.客户端如何访问.Net组件实现Web Service?
  6.C/C++编译器中虚表是如何完成的?
  7.谈谈COM的线程模型。然后讨论进程内/外组件的差别。
  8.谈谈IA32下的分页机制。
  9.给两个变量,如何找出一个带环单链表中是什么地方出现环的?
  10.在IA32中一共有多少种办法从用户态跳到内核态?
  11.如果只想让程序有一个实例运行,不能运行两个。像winamp一样,只能开一个窗口
,怎样实现?
  12.如何截取键盘的响应,让所有的‘a’变成‘b’?
  13.Apartment在COM中有什么用?为什么要引入?
  14.存储过程是什么?有什么用?有什么优点?
  15.Template有什么特点?什么时候用?
  16.谈谈Windows DNA结构的特点和优点。
  

  微软研究院笔试题目
  1.#include
  #include
  class CBuffer
  {
   char * m_pBuffer;
   int m_size;
  publc:
   CBuffer()
   {
   m_pBuffer=NULL;
   }
   ~CBuffer()
   {
   Free();
   }
   void Allocte(int size)
   {
   m_size=size;
   cBuffer buffer1;
   buffer1.SaveString(“Microsoft”);
   printf(buffer1.GetBuffer());
   }
  }
  找出Allocate, SaveString, main的错误。
  2.打印“Welcome MSR Asia”
  #include
  #include
  char * GetName (void)
  {
   //To return “MSR Asia” String
   char name[]=“MSR Asia”;
   return name;
  }
  void main(int argc, char* argv[])
  {
   char name[32];
   //Fill in zeros into name
   for(int i=0;i<=32;i++)
   {
   name[1]=‘{post.content}‘;
   }
   //copy “Welcome” to name
   name=“Welcome”;
   //Append a blank char
   name[8]=”;
   //Append string to name
   strcat(name,GetName());
   //print out
   printf(name);
  }
  找出程序中的错误。
  3.#include
  class A
  {
  public:
   void FuncA()
   {
   printf(“FuncA called/n”);
   }
   virtual void FuncB()
   {
   printf(“FuncB called/n”);
   }
  };
  class B: public A
  {
  public:
   void FuncA()
   {
   A::FuncA();
   printf(“FuncAB called/n”);
   }
   virtual void FuncB()
   {
   printf(“FuncBB called/n”);
   }
  };
  void main(void)
  {
   B b;
   A *pa;
   pa=&b;
   A *pa2=new A;
   b.FuncA();
   b.FuncB();
   pa->FuncA();
   pa->FuncB();
   pa2->FuncA();
   pa2->FuncB();
   delete pa2;
  }
  What is the output of the above program?
  4.#include
  #include
  int FindSubString(char* pch)
  {
   int count=0;
   char* p1=pch;
   while(*p1!=‘{post.content}’)
   {
   if(*p1==p1[1]-1)
   {
   p1++;
   count++;
   }
   else
   {
   break;
   }
   }
   int count2=count;
   while(*p1!=‘{post.content}’)
   {
   if(*p1!==p1[1]+1)
   {
   p1++;
   count2--;
   }
   else
   {
   break;
   }
   if(count2==0)
   return count;
   return 0;
  }
  void ModifyString(char* pText)
  {
   char* p1=pText;
   char* p2=p1;
   while(*p1!=‘{post.content}’)
   {
   int count=FindSubString(p1);
   if(count>0)
   {
   *p2++=*p1;
   sprintf(p2, “%I”, count);
   while(*p2!= ‘{post.content}’)
   {
   p2++;
   }
   p1+=count+count+1;
   }
   else
   {
   *p2++=*p1++;
   }
   }
  }
  void main(void)
  {
   char text[32]=“XYBCDCBABABA”;
   ModifyString(text);
   printf(text);
  }
  In the main() function, after ModifyString(text) is called, what’s the
value of ‘text’?
  
 
  微创笔试题目(微创,微软在中国的合资公司)
  1.上海的苏州河由于遭受多年的工业污染,一直是条臭水沟。上海市政府下了很大决
心清理苏州河,你觉得需要几年能让河水变清?你的依据是什么?
  2.找出字符串A中包含的字符可以进行的所有不同组合。例如:abccd中,ab,ac,bc
,cc,abd等都是可能的组合。(请用C/C++编程,不允许上机操作)
  3.请估算月球的体积。
  4.经常去的技术网站,请举例。
  5.对软件开发过程的理解。
  6.上海有多少外籍和港澳台人士?你的依据是什么?(不得引用政府和调研机构数据

  7.字符串A是由n个小写英文字母(a ~ z)构成的,定义为char A[n]。你能用更少的
空间表示这个字符串吗?请写出从char A[n]到你的新的储存格式的转换函数。(请用
C/C++编程,不允许上机操作)
  8.哈希表和数组的定义,区别,优缺点。
  9.用递归实现菲波列数列。
  10.用dhtml写页面。
  11.一楼到十楼的每层电梯门口都放着一颗钻石,钻石大小不一。你乘坐电梯从一楼到
十楼,每层楼电梯门都会打开一次,只能拿一次钻石,问怎样才能拿到最大的一颗?
    12.U2合唱团在17分钟内得赶到演唱会场,途中必需跨过一座桥,四个人从桥的同一端出发
,你得帮助他们到达另一端,天色很暗,而他们只有一只手电筒。一次同时最多可以有两人
一起过桥,而过桥的时候必须持有手电筒,所以就得有人把手电筒带来带去,来回桥两端。
ono需花1分钟过桥,Edge需花2分钟过桥,Adam需花5分钟过桥,Larry需花10分钟过桥。他们要如 何在17分钟内过桥呢?(有个同济的学生写文章说他当时在微软面试时就是碰到了这道题,
最短只能做出在19分钟内过桥,微软的人对他讲这样的结果已经是不错的了!)
  13.烧一根不均匀的绳要用一个小时,如何用它来判断半个小时?(参考答案:两边一
起烧)
  14.为什么下水道的盖子是圆的?(从复旦大学一位计算机系教授那里听来的答案:因
为如果是方的、长方的或椭圆的,那无聊之徒拎起来它就可以直接扔进地下道啦!但圆形的
盖子嘛,就可以避免这种情况了)
  15.有7克、2克砝码各一个,天平一只,如何只用这些物品三次将140克的盐分成50、
90克各一份?
  

  Intel笔试面试题目
  智力题
  1.每天中午从法国塞纳河畔的勒阿佛有一艘轮船驶往美国纽约,在同一时刻纽约也有
一艘轮船驶往勒阿佛。已知横渡一次的时间是7天7夜,轮船匀速航行,在同一航线,轮船近
距离可见。
  请问今天中午从勒阿佛开出的船会遇到几艘从纽约来的船?
  2.巴拿赫病故于1945年8月31日。他的出生年份恰好是他在世时某年年龄的平方,问:
他是哪年出生的?
  答案:
  设他在世时某年年龄为x,则x的平方<1945,且x为自然数。其出生年份x的平方
xx (x1),他在世年龄1945x(x1)。1945的
平方根& #61501;44.1,则x应为44或略小于此的数。而x44时,x(x1)&
#61501;44×431892,算得其在世年龄为1945189253;又
x43时,x(x1)43×421806,得其在世年龄为
19451806139;若x再取小,其在世年龄越大,显然不妥。故x&
#61501;44,即他出生于1892年,终年53岁。
  3.
   (图形描述:一个各边相等的十字图案)
  上图中各边相等,要求:用最少的分割,拼成一个正方形。
  笔试题目
  1.设计一个重采样系统,说明如何anti-alias。
  2.y1(n)x(2n),y2(n)x(n/2),问:
  如果y1为周期函数,那么x是否为周期函数?
  如果x为周期函数,那么y1是否为周期函数?
  如果y2为周期函数,那么x是否为周期函数?
  如果x为周期函数,那么y2是否为周期函数?
  3.如果模拟信号的带宽为5kHz,要用8k的采样率,怎么办。
  4.某个程序在一个嵌入式系统(200M的CPU,50M的SDRAM)中已经最优化了,换到另一
个系统(300M的CPU,50M的SDRAM)中运行,还需要优化吗?
  5.x^4+a*x^3+x^2+c*x+d最少需要做几次乘法。
  6.三个float:a,b,c
  问值:
  (a+b)+c(b+a)+c
  (a+b)+c(a+c)+b此的数。而x44时,x(x1)&
#61501;44×431892,算得其在世年龄为1945189253;又
x43时,x(x1)43×421806,得其在世年龄为
19451806139;若x再取小,其在世年龄越大,显然不妥。故x&
#61501;44,即他出生于1892年,终年53岁。
  3.
   (图形描述:一个各边相等的十字图案)
  上图中各边相等,要求:用最少的分割,拼成一个正方形。
  笔试题目
  1.设计一个重采样系统,说明如何anti-alias。
  2.y1(n)x(2n),y2(n)x(n/2),问:
  如果y1为周期函数,那么x是否为周期函数?
  如果x为周期函数,那么y1是否为周期函数?
  如果y2为周期函数,那么x是否为周期函数?
  如果x为周期函数,那么y2是否为周期函数?
  3.如果模拟信号的带宽为5kHz,要用8k的采样率,怎么办。
  4.某个程序在一个嵌入式系统(200M的CPU,50M的SDRAM)中已经最优化了,换到另一
个系统(300M的CPU,50M的SDRAM)中运行,还需要优化吗?
  5.x^4+a*x^3+x^2+c*x+d最少需要做几次乘法。
  6.三个float:a,b,c
  问值:
  (a+b)+c(b+a)+c
  (a+b)+c(a+c)+b
  7.把一个链表反向填空。
  8.下面哪种排序法对12354最快? 。
  A. quick sort
  B. buble sort
  C. merge sort
  9.哪种结构平均来讲获取一个值最快? 。
  A. binary tree
  B. hash table
  C. stack
  10.
  #include “stdafx.h”
  #include
  struct bit
  { int a:3;
   int b:2;
   int c:3;
  };
  int main(int argc, char* argv[])
  { bit s;
   char *c = (char*)&s;
   *c = 0x99;
   cout << s.a <   return 0;
  }
  Output:?
   return pd;
  }
  main()
  {
   char string[40]= “Hello World!”;
   char *pstr=string;
   printf(“%s”, pstr);
   printf(“%s”, reverse(pstr));
  }
  



  实验室笔试题
  1.写出下列信号的奈亏斯特频率
  (1)f(t)1cos(2000pait)sin(4000pait)
  (2)f(t)sin(4000pait)/pait
  (3)f(t)(sin(4000pait)的平方)/pait
  2.有两个线程
  void producer()
  {
   while(1)
  (1)I1
  (2)T14*I
  (3)T2address(A)4
  (4)T3T2[T1]
  (5)T4address(B)4
  (6)T54*I
  (7)T6T4[T5]
  (8)T7T3*T5
  (9)sumsum+T6
  (10)II+1
  (11)IF I<20 GOTO (2)
  
  面试题目
  1.下面这段代码不符合Pipeline要求,请你改动一下
   if(a>b)
   i0;
   else
   i1;
  2.对于运行在ring3上的这个指令,请你指出CPU和操作系统分别参与了哪部分操作?
  mov eax, [0x12345678]
  3.如果有一个芯片,只是裸机,如何写它的操作系统?最难的部分在哪儿?如何解决

  4.如何写一个主板的BIOS?
  5.没有操作系统来给你完成它的一些初始化工作,如何写出PCI的driver?
  Intel 2004北京笔试题
  问答题
  1.你觉得C程序中为什么会有main(),有没有想过exit,return,或什么都不做也可以
让程序正常终止?
  2.TOTAL个人围一圈,从1开始数到N,谁数到N出圈,下一个人继续从1开始数,返回最
后一个出局的人。
  #define TOTAL 15;
   int xxxx(int N)
  {
   int ring[TOTAL] = {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, 1} //全是1
   int nextstart = 0, counter=0;
   for (i =1; i   counter = 0;
   while(counter    if (_______________)
   ( ;)
   else
   (____________;)
   }
   ring[nextstart]=0
   }
   return nextstart +1;
  }
  3.列举Intel四种架构
  4.概率题
  (1)x, y为随机变量,联合概率密度f(x,y)  intig(0,1)*
dx*intig(0,x)*k*dy,k为常数,求k? E(xy) ?
  注:intig(a,b)为a到b的定积分。
  (2)A,B为随机事件,以下哪个正确 。
  A.P(A U B)*p(AB) < P(A)P(B)
  B.P(A U B)*p(AB) > P(A)P(B)
  C.P(A U B)*p(AB) < P(A) + P(B)
  D.P(A U B)*p(AB) > P(A) + P(B)
  5.信道带宽200kHz,信噪比10dB,求信道波特率?
  6.以下代码运行结果是 。
  int main()
  {
   int a,b,c,abc = 0;
   a=b=c=40;
   if(c)
   {
   int abc;
   abc = a*b+c;
   }
   printf(“%d,%d”, abc, c);
   return 0;
  }
  7.给出了从纽约出发和到达洛杉机的各种航班信息,写出找到一条从纽约到洛杉机的
最短距离的航班组合的代码。
  8.从计算机图形上截取某个物体边缘的若干个坐标,求这个物体的面积,并判断是方
形还是圆形,说明原因。
  9.离散卷机与DFT的区别与关系。快速求出不满足2^N长度的离散傅立叶变换的方法有
哪些?如何用fft求N*M点的离散卷机?
  10.给出fir和iir的优缺点。
  11.如何计算线性标量量化器的量化噪声?需要哪些假设?
  



  IBM
  IBM笔试题目
  字母矩阵题目(15分钟)
  给你一个矩阵:
   (一) (二) (三) (四) (五)
  1 a b c d e
  2 b c a e d
  3 c b e a d
  4 c e d b a
  5 e d a c b
  回答以下问题。
  (1)将第一行和第四行交换后,第一行第四个字母下面的左边的下面的右边的字母是

  ①a ②b ③c ④d ⑤e
  (2)将所有出现在d左边的字母从矩阵中删掉。将所有出现在a左边的c字母从矩阵中删
掉。如果矩阵中剩下的字母的种类的数目大于3,答案为原矩阵中左上方至右下方对角线上
出现两次的字母。如果矩阵中剩下的字母的种类的数目小于或者等于3,答案为原矩阵中右
上至左下对角线上
出现4次的字母是 。
  ①a ②b ③c ④d ⑤e
  (3)将所有的a用4替换,所有的d用2替换,哪一列的总和 最大
  ①第1列 ②第2列 ③第3列 ④第4列 ⑤第五列
  (4)从左上角的字母开始,顺时针沿矩阵外围,第4次出现的字母是 。
  ①a ②b ③c ④d ⑤e
  (5)沿第5列从上到下,接着沿第3列从下到上,接着沿第4列从上到下,接着沿第1列
从下到上,接着沿第2列从上到下,第1个出现5次的字母是 。
  ①a ②b ③c ④d ⑤e
  (6)从左上角的字母开始,顺时针沿矩阵外围,第4次出现的字母是以下哪个 。
  ①a ②b ③c ④d ⑤e
  智力题
  1.有50家人家,每家一条狗。有一天警察通知,50条狗当中有病狗,行为和正常狗不
一样。每人只能通过观察别人家的狗来判断自己家的狗是否生病,而不能看自己家的狗,如
果判断出自己家的狗病了,就必须当天一枪打死自己家的狗。结果,第一天没有枪声,第二
天没有枪声,第?
炜家徽笄瓜欤剩阂还菜懒思柑豕罚?
  2.已知两个数字为1~30之间的数字,甲知道两数之和,乙知道两数之积,甲问乙:“
你知道是哪两个数吗?”乙说:“不知道”。乙问甲:“你知道是哪两个数吗?”甲说:“
也不知道”。于是,乙说:“那我知道了”,随后甲也说:“那我也知道了”,这两个数是
什么?
  3.一个经理有三个女儿,三个女儿的年龄加起来等于13,三个女儿的年龄乘起来等于
经理自己的年龄。有一个下属已知道经理的年龄,但仍不能确定经理的三个女儿的年龄,这
时经理说只有一个女儿的头发是黑的,然后这个下属就知道了经理的三个女儿的年龄。请问
三个女儿的年龄?   
  
 
  社会招聘笔试题
  1.一个粗细均匀的长直管子,两端开口,里面有4个白球和4个黑球,球的直径、两端
开口的直径等于管子的内径,现在白球和黑球的排列是wwwwbbbb,要求不取出任何一个球,
使得排列变为bbwwwwbb。
  2.一只蜗牛从井底爬到井口,每天白天蜗牛要睡觉,晚上才出来活动,一个晚上蜗牛
可以向上爬3尺,但是白天睡觉的时候会往下滑2尺,井深10尺,问蜗牛几天可以爬出来?
  3.在一个平面上画1999条直线最多能将这一平面划分成多少个部分?
  4.在太平洋的一个小岛上生活着土人,他们不愿意被外人打扰,一天,一个探险家到
了岛上,被土人抓住,土人的祭司告诉他,你临死前还可以有一个机会留下一句话,如果这
句话是真的,你将被烧死,是假的,你将被五马分尸,可怜的探险家如何才能活下来?
  5.怎样种四棵树使得任意两棵树的距离相等。
  6.27个小运动员在参加完比赛后,口渴难耐,去小店买饮料,饮料店搞促销,凭三个
空瓶可以再换一瓶,他们最少买多少瓶饮料才能保证一人一瓶?
  7.有一座山,山上有座庙,只有一条路可以从山上的庙到山脚,每周一早上8点,有一
个聪明的小和尚去山下化缘,周二早上8点从山脚回山上的庙里,小和尚的上下山的速度是
任意的,在每个往返中,他总是能在周一和周二的同一钟点到达山路上的同一点。例如,有
一次他发现星期?
坏?点30和星期二的8点30他都到了山路靠山脚的3/4的地方,问这是为什么?
  8.有两根不均匀分布的香,每根香烧完的时间是一个小时,你能用什么方法来确定一
段15分钟的时间?
  英文面试题目
  1. Describe your greatest achievement in the past 4-5 years?
  2. What are your short & long term career objectives? What do you think is
the most ideal job for you?
  3. Why do you want to join IBM? What do you think you can contribute to IBM?
  


  宝洁公司(P&G)面试题目
  宝洁公司招聘题号称由高级人力资源专家设计,无论您如实或编造回答,都能反应您某
一方面的能力。核心部分的题目如下:
  Please provide concise examples that will help us better understand your
capabilities.
  1. Describe an instance where you set your sights on a high/demanding goal
and saw it through completion.
  2. Summarize a situation where you took the initiative to get others going
on an important task or issue, and played a leading role to achieve the results
you wanted.
  3. Describe a situation where you had to seek out relevant information,
define key issues, and decide on which steps to take to get the desired results.
  4. Describe an instance where you made effective use of facts to secure the
agreement of others.
  5. Give an examples of how you worked effectively with people to accomplish
an important result.
  6. Describe a creative/innovative idea that you produced which led to a
significant contribution to the success of an activity or project.
  7. Provide an example of how you assessed a situation and achieved good
results by focusing on the most important priorities.
  8. Provide and example of how you acquired technical skills and converted
them to practical application
  解答范例:
  1. Demnding Goal: To design a musical and dramatic show to celebrate the
centennial Anniversary of Tianjin University.
  The person who reach this goal: Chairman of Tianjin University Student Union
What I learned from this observation: It is not necessary for a true leader to
be an expert in such or such field of his career. But he must possessthe
charismatic and the capacity to drive different people, who have diverging
opinions, or even conflicting interests, to proceed togother to the
sameorganizational goal.
  2. The activity I initiated: To organize a group to sing English anthems on
Charistmas Eve, visit all domitories in university and send christmas gifts on
behalf of our English Association The desired result: To broaden the students’
horizons about Western culture.
  My leading role: Combine the representatitives’ suggestions with my idea
and draw the decision on:
  * What songs to play?
  * Who could attend the choir?
  * Which spots we performed on?
  The result: Many students said that they felt the warmness we sent to them
and they hoped we would hold such activities next Charistmas.
  3. Background: I organized the first activity after the establishment of the
Management School English Association.
  The desired result: To help the freshmen and the sophomores with their
English while publicizing our group.
  Key issue:
  * What aspect of the students’ English abilitinjin University Student Union
What I learned from this observation: It is not necessary for a true leader to
be an expert in such or such field of his career. But he must possessthe
charismatic and the capacity to drive different people, who have diverging
opinions, or even conflicting interests, to proceed togother to the
sameorganizational goal.
  2. The activity I initiated: To organize a group to sing English anthems on
Charistmas Eve, visit all domitories in university and send christmas gifts on
behalf of our English Association The desired result: To broaden the students’
horizons about Western culture.
  My leading role: Combine the representatitives’ suggestions with my idea
and draw the decision on:
  * What songs to play?
  * Who could attend the choir?
  * Which spots we performed on?
  The result: Many students said that they felt the warmness we sent to them
and they hoped we would hold such activities next Charistmas.
  3. Background: I organized the first activity after the establishment of the
Management School English Association.
  The desired result: To help the freshmen and the sophomores with their
English while publicizing our group.
  Key issue:
  * What aspect of the students’ English abilities needed refining? Relevant
Information:
  * What kind of entertainment was popular among students and also offered
chances for them to learn English most effectively?
  * Which foreign teacher was suitable for this position?
  * When was our member free?
  * Whch place was convenient for most attendances?
  Rehearsal: I worked together with those who were in charge of the lights,
sounds and scenes to create the perfect artistic effect.
  On stage: I reminded my fellows with gestures and eye expressions. Also, we
coped with an emergency coherently.
  The result: Our military team won the second prize in this competition.
  6. Activity: To hold the Perspective Entrepreneur Contest.
  The innovative idea I produced: To simulat a board meeting of a company, in
which our candidates debated the feasibility of selling modern fitness equipment
according to the market information they collected.
  The result: The contest was hold based on my proposal.
  7. Background: On one morning when our promotion month first began, I found
that the inventories in some department stores were not adequate.
  My assessment of the situation: The four promoting stomores with their
English while publicizing our group.
  Key issue:
  * What aspect of the students’ English abilities needed refining? Relevant
Information:
  * What kind of entertainment was popular among students and also offered
chances for them to learn English most effectively?
  * Which foreign teacher was suitable for this position?
  * When was our member free?
  * Whch place was convenient for most attendances?
objective and effective information.
  
  飞利浦笔试试题
  1.用逻辑门和cmos电路实现ab+cd。
  2.用一个二选一mux和一个inv实现异或。
  3.给了reg的setup和hold时间,求中间组合逻辑的delay范围。
  4.如何解决亚稳态。
  5.用Verilog/VHDL写一个fifo控制器。
  6.用Verilog/VDDL检测stream中的特定字符串。
  


  阿尔卡特(中国)的面试题目
  全部用C语言完成:
  1.自己定义数据结构,写出程序:在一个单向链表中,往I位置插入一个节点。
  2.自己定义数据结构,写出程序:二叉树的前序遍历。
  3.不允许使用系统时间,写出一个随机数生成函数。
  Google
  这次是连环游戏,每一题的答案将在下一题中用到。
  1、{first 10-digit prime found in consecutive digits e}.com.
  e中出现的连续的第一个10个数字组成的质数。
  2、7427466391.com
  Congratulations,Youve made it to level 2. Go to www.Linux.org and enter
Bobsyouruncle as the login and the answer to this equation as the password.
  f(1)=7182818284
  f(2)=8182845904
  f(3)=8747135266
  f(4)=7427466391
  f(5)=__________
  update:提示:f(1)到f(4)是e中连续的10个数字满足总和等于49的前4个,f(5)当然是
让你搜索第5个咯,编个小程序吧。
  答案:5966290435
  3、www.Linux.org
  4、www.google.com/labjobs/
  via:
  Google recruits eggheads with mystery billboard
  Mysterious Billboard May Be Google Recruitment Ad
  Myserious billboard
  Google is behind mystery geek trap
  写一句俳句来描述搜索流量季节性预测的可能方法。
  用三种颜色为一个二十面体涂颜色,每面都要覆盖,你能够用多少种不同的涂法?你将
选择哪三种颜色?
  这是一个我们故意留给你你空白,请填充一些你喜欢的东西。
  



  戴尔
  I.Choose one question and write down the trouble shooting steps in English (
4-5 steps )
    1.Customer report his computer cannot start after sudden power lost. How
will you trouble shoot and find out the cause of the failure.
    2.One computer was used normally last day, but today, the user cannot
connect to internet via dial-up networking.
    3.Customer complain the system send out great noise. What’s the detail
action to identify the faulty part?
    4.My computer was suddenly disconnected from LAN, how to trouble shoot?
    5.My computer was hung up. After reboot, only one cursor blinked on the
upper-left corner. How to fix this problem.
  II. Reading and translation:
    Passage 1.
    Customer called in and reported the battery weren’t charging, System
LED indicator was in yellow.
    1.Suggested customer remove the battery from the battery bay by sliding
the latch at the bottom of Notebook. Checked the battery power level by pressing
the check button on the battery. It indicated no power.
    Different kinds of computers use different methods, or protocols, to
communicate with each other. Macintosh computers use the AppleTalk protocol.
Macintosh as well as PCs can use TCP/IP to share information on the Internet.
Some PCs
require a Network Operatomer provide the DSN number from the fail battery.
CN-05H980-69502-21U-01GB.
    
    Informed customer that we would send a replaced battery to her.
    Passage 2.
    Customer bought a Notebook 20 day ago, then discovered that when she
adjusted the Brightness of the LCD, the LCD would turn to very dim. She must
reboot the Notebook few times before the LCD might display normally.
    1.Suggested her try gently apply pressure above the keyboard near the
LEDS and power button.
    2.Suggested her swivel the LCD back and forth and lightly tap the
plastic back of LCD.
    3.Suggested her gently apply pressure on the bezel surrounding the
screen. the problem persisted, after these testing.
    4.Requested customer to update BIOS and alter the LCD Brightness control
setting in the BIOS. After checking BIOS the problem persisted.
    I told customer we would have engineer onsite replace the LCD Panel.
    Computer communications
    Different kinds of computers use different methods, or protocols, to
communicate with each other. Macintosh computers use the AppleTalk protocol.
Macintosh as well as PCs can use TCP/IP to share information on the Internet.
Some PCs
require a Network Operating System (NOS) to communicate. For example, Novell
Netware is a popular NOS with PC users.
  
  意法半导体软件试题
  A Test for The C Programming Language
  I. History
  1. C was originally designed for and implemented on the (what) operating
system on the DEC PDP-11, by (who) .
  2. The most recently approved ANSI/ISO C standard was issued in (when) , and
single line comments notation “//” is or isn’t a feature of C89.
  II. Syntax and Semantics
  1. In a runtime C program, auto variables are stored in , static variables
are stored in , and function parameters are stored in .
  a. stack b. heap c. neither stack nor heap
  2. The statement “extern int x;” is a , and the keyword extern is used
during .
  a. variable declaration b. variable definition
  c. compilation time d. runtime
  3. There is a complicated declaration: void ( * signal (int, void (*)(int))
) (int);
  If a statement “typedef void (*p) (int);” is given, please rewrite this
complicated declaration.
  4. The following code is a segment of C program.
  ..........
  void func(int *p)
  {...........}
  ..........
  main()
  {
   int num=0;
   .........
   func(&num);
   ........
  }
  ..........
  Here, the function argument “&num” is passed .
  a. by value b. by reference
  III. Practice
  Create a tree, which has h (h>0) layers, and its each node has w (w>0)
sub-nodes.
  Please complete the following incomplete solution.
  #include
  #include
  struct tree{
   char info;
   p_sub; //link to sub-nodes
  };
  // allocate memory and initiate
  void dnode ( struct tree* tmp )
  {
   = malloc( sizeof (struct tree) );
   = 0x41;
   = NULL;
  }
  struct tree *dtree (struct tree* subtree, int height, int width)
  {
   int i;
   if ( !subtree ) //if necessary, allocte memory for subtree
   denode(subtree);
   if ( height == 1 )
   return subtree;
   else if ( height == 2 ) {
   struct tree *root = NULL;
   root = dtree (root, h, w) ; // h and w are integers get from input
   .........
  }
  


  Sony笔试题
  1.完成下列程序
  *
  *.*.
  *..*..*..
  *...*...*...*...
  *....*....*....*....*....
  *.....*.....*.....*.....*.....*.....
  *......*......*......*......*......*......*......
  *.......*.......*.......*.......*.......*.......*.......*.......
  #include
  #define N 8
  int main()
  {
   int i;
   int j;
   int k;
   ---------------------------------------------------------
   | |
   | |
   | |
   ---------------------------------------------------------
   return 0;
  }
  2.完成程序,实现对数组的降序排序
  #include
  void sort( );
  int main()
  {
   int array[]={45,56,76,234,1,34,23,2,3}; //数字任//意给出
   sort( );
   return 0;
  }
  void sort( )
  {

  }
  3.费波那其数列,1,1,2,3,5……编写程序求第十项。可以用递归,也可以用其他
方法,但要说明你选择的理由。
  #include
  int Pheponatch(int);
  int main()
  {
   printf("The 10th is %d",Pheponatch(10));
   return 0;
  }
  int Pheponatch(int N)
  {
  --------------------------------
  | |
  | |
  --------------------------------
  }
  4.下列程序运行时会崩溃,请找出错误并改正,并且说明原因。
  #include
  #include
  typedef struct{
   TNode* left;
   TNode* right;
   int value;
  } TNode;
  TNode* root=NULL;
  void append(int N);
  int main()
  {
   append(63);
   append(45);
   append(32);
   append(77);
   append(96);
   append(21);
   append(17); // Again, 数字任意给出
  }
  void append(int N)
  {
   TNode* NewNode=(TNode *)malloc(sizeof(TNode));
   NewNode->value=N;
  
   if(root==NULL)
   {
   root=NewNode;
   return;
   }
   else
   {
   TNode* temp;
   temp=root;
   while((N>=temp.value && temp.left!=NULL) || (Nright!=NULL
  ))
   {
   while(N>=temp.value && temp.left!=NULL)
   temp=temp.left;
   while(N   temp=temp.right;
   }
   if(N>=temp.value)
   temp.left=NewNode;
   else
   temp.right=NewNode;
   return;
   }
  }
  
  


  华为笔试题
  1.请你分别画出OSI的七层网络结构图和TCP/IP的五层结构图。
  2.请你详细地解释一下IP协议的定义,在哪个层上面?主要有什么作用?TCP与UDP呢

  3.请问交换机和路由器各自的实现原理是什么?分别在哪个层次上面实现的?
  4.请问C++的类和C里面的struct有什么区别?
  5.请讲一讲析构函数和虚函数的用法和作用。
  6.全局变量和局部变量有什么区别?是怎么实现的?操作系统和编译器是怎么知道的

  7.8086是多少位的系统?在数据总线上是怎么实现的?
  
  联想笔试题
  1.设计函数 int atoi(char *s)。
  2.int i=(j=4,k=8,l=16,m=32); printf(“%d”, i); 输出是多少?
  3.解释局部变量、全局变量和静态变量的含义。
  4.解释堆和栈的区别。
  5.论述含参数的宏与函数的优缺点。
  普天C++笔试题
  1.实现双向链表删除一个节点P,在节点P后插入一个节点,写出这两个函数。
  2.写一个函数,将其中的/t都转换成4个空格。
  3.Windows程序的入口是哪里?写出Windows消息机制的流程。
  4.如何定义和实现一个类的成员函数为回调函数?
  5.C++里面是不是所有的动作都是main()引起的?如果不是,请举例。
  6.C++里面如何声明const void f(void)函数为C程序中的库函数?
  7.下列哪两个是等同的
  int b;
  A const int* a = &b;
  B const* int a = &b;
  C const int* const a = &b;
  D int const* const a = &b;
  8.内联函数在编译时是否做参数类型检查?
  void g(base & b){
   b.play;
  }
  void main(){
   son s;
   g(s);
   return;
  }
  
  大唐电信
  DTT笔试题
  考试时间一小时,第一部分是填空和选择:
  1.数列6,10,18,32,“?”,问“?”是几?
  2.某人出70买进一个x,80卖出,90买回,100卖出,这桩买卖怎么样?
  3.月球绕地球一圈,至少要多少时间?
  4.7个人用7小时挖了7米的沟,以同样的速度在50小时挖50米的沟要多少人?
  5.鱼头长9,鱼尾等于鱼头加半个鱼身,鱼身等于鱼头加鱼尾,问鱼全长多少?
  6.一个小姐买了一块手表,回家发现手表比她家的表慢了两分钟,晚上看新闻的时候
又发现她家的表比新闻里的时间慢了两分钟,则 。
  A 手表和新闻里的时间一样
  B 手表比新闻里的时间慢
  C 手表比新闻里的时间快
  7.王先生看到一则招聘启事,发现两个公司除了以下条件不同外,其他条件都相同
  A 半年年薪50万,每半年涨5万
  B 一年年薪100万,每一年涨20万
  王先生想去一家待遇比较优厚的公司,他会去哪家?
  10.问哪个袋子里有金子?
  A袋子上的标签是这样写的:B袋子上的话是对的,金子在A袋子。
  B袋子上的标签是这样写的:A袋子上的话是错的,金子在A袋子里。
  11.3个人住酒店30块钱,经理找回5块钱,服务生从中藏了2块钱,找给每人1块钱,3
×(101)+2=29,问这是怎么回事?
  12.三篇写作,均为书信形式。
  (1)一片中文的祝贺信,祝贺某男当了某公司xx
  (2)两篇英文的,一是说有事不能应邀,派别人去;另一篇是讨债的,7天不给钱就走
人(主要考business letter格式)。
  大唐面试试题
  1.什么是中断?中断发生时CPU做什么工作?
  2.CPU在上电后,进入操作系统的main()之前必须做什么工作?
  3.简述ISO OSI的物理层Layer1,链路层Layer2,网络层Layer3的任务。
  4.有线电话和无线电话有何区别?无线电话特别需要注意的是什么?
  5.软件开发五个主要step是什么?
  6.你在开发软件的时候,这5个step分别占用的时间百分比是多少?
  7.makefile文件的作用是什么?
  8.UNIX显示文件夹中,文件名的命令是什么?能使文件内容显示在屏幕的命令是什么

  9.(选做)手机用户在从一个基站漫游到另一个基站的过程中,都会发生什么?
  网通笔试题
  选择题(每题5分,只有一个正确答案)
  1.中国1号信令协议属于 的协议。
  A ccs B cas C ip D atm
  2.isdnpri协议全称是 。
  A 综合业务模拟网基速协议
  B 综合业务模拟网模拟协议
  C 综合业务数字网基率协议
  D 综合业务数字网基次协议
  3.路由协议中, 协议是用距离作为向量的。
  A ospf B bgp C is-is D rip
  4.中国智能网中,ssp与scp间最上层的ss7协议是 。
  A incs B is41b C is41c D inap
  5.dtmf全称是 。
  A 双音多频 B多音双频 C多音三频 D三音多频
  6.计算机的基本组成部分中,不包含下面设备的是 。
  A cpu B输入设备 C存储器 D接口
  7.脉冲编码调制的简称是 。
  A pcm B pam C (delta)M D atm
  8.普通电话线接口专业称呼是 。
  A rj11 B rj45 C rs232 D bnc
  9.现有的公共数据网都采用 。
  A电路交换技术 B报文交换技术
  C语音插空 D分组交换
  10.ss7协议中的制止市忙消息简写为 。
  A stb B slb C sub D spb
  2.isdnpri协议全称是 。
  A 综合业务模拟网基速协议
  B 综合业务模拟网模拟协议
  C 综合业务数字网基率协议
  D 综合业务数字网基次协议
  3.路由协议中, 协议是用距离作为向量的。
  A ospf B bgp C is-is D rip
  4.中国智能网中,ssp与scp间最上层的ss7协议是 。
  A incs B is41b C is41c D inap
  5.dtmf全称是 。
  A 双音多频 B多音双频 C多音三频 D三音多频
  6.计算机的基本组成部分中,不包含下面设备的是 。
  A cpu B输入设备 C存储器 D接口
  7.脉冲编码调制的简称是 。
  A pcm B pam C (delta)M D atm
  8.普通电话线接口专业称呼是 。
  A rj11 B rj45 C rs232 D bnc
  9.现有的公共数据网都采用 。
  A电路交换技术 B报文交换技术
  C语音插空 D分组交换
  10.ss7协议中的制止市忙消息简写为 。
  A stb B slb C sub D spb
  简答题(每题10分)
  1.简述普通电话与IP电话的区别。
  2.简述随路信令与公路信令的根本区别。
  3.说明掩码的主要作用。
  4.ss7协议中,有三大要素决定其具体定位,哪三大要素?
  5.描述ss7的基本通话过程。
  6.简述通信网的组成结构。
  7.面向连接与面向非连接各有何利弊?
  8.写出爱尔兰的基本计算公式。
  9.数据网主要有哪些设备?
  10.中国一号协议是如何在被叫号码中插入主叫号码的?
  
  东信笔试题目
  笔试:30分钟。
  1.压控振荡器的英文缩写。
  2.动态随机存储器的英文缩写。
  3.选择电阻时要考虑什么?
  4.单片机上电后没有运转,首先要检查什么?
  5.计算机的基本组成部分及其各自的作用。
  6.怎样用D触发器、与或非门组成二分频电路?
  
  
  机械类笔试试题
  1. Briefly describe what is blanking(cutting), forming, coining and
embossing in stamping process.
  2. What is metal clading?
  3. What is the purpose of adding glass fiber to thermoplastic material?
  4. In contrast with metal and thermoplastic material,which has a higher
coefficient of thermal expansion(CTE).
  5. The most suitable material for a integral hinge design (typical plastic
thickness=0.25 to 0.5mm at hinge)
  6. Can a bending load makes both compressive and tensile stress in a member?
  7. What is the design criteria used in plastics catch/snap?
  8. What is FEA?
  9. Why is natural frequency important in vibration analysis?
  10. What is the deflection equation of a cantilever beam fixed at one edge?
  EE笔试试题
  1. Name 3 Vehicle Buses.
  2. Name 2 possible sources of Electromagnetic interference on Electronics
Circuit ASM.
  3. Wavelength for 12MHz frequency signal is____
  4. Name 2 important considerations for car radio performan -ce related to
audio signal processing under multipath condition?
  5. What is the typical FM receiver RF signal strength to achieve 30dB S/N
  机械类笔试试题
  1. Briefly describe what is blanking(cutting), forming, coining and
embossing in stamping process.
  2. What is metal clading?
  3. What is the purpose of adding glass fiber to thermoplastic material?
  4. In contrast with metal and thermoplastic material,which has a higher
coefficient of thermal expansion(CTE).
  5. The most suitable material for a integral hinge design (typical plastic
thickness=0.25 to 0.5mm at hinge)
  6. Can a bending load makes both compressive and tensile stress in a member?
  7. What is the design criteria used in plastics catch/snap?
  8. What is FEA?
  9. Why is natural frequency important in vibration analysis?
  10. What is the deflection equation of a cantilever beam fixed at one edge?
  EE笔试试题
  1. Name 3 Vehicle Buses.
  2. Name 2 possible sources of Electromagnetic interference on Electronics
Circuit ASM.
  3. Wavelength for 12MHz frequency signal is____
  4. Name 2 important considerations for car radio performan -ce related to
audio signal processing under multipath condition?
  5. What is the typical FM receiver RF signal strength to achieve 30dB S/N
for car radio?
  6. When a radio is tuned to 98.1 MHz & with a LO of 108.8 MHz, what is the
image frequency?
  7. For a system with a matched impedance, what is the Reflection Coefficient
and SWR?
  8. Which property of the output capacitor is the primary cause of Low Drop
Out(LDO) regulator loop instability?
  (1)Equivalent series resistance(ESR)
  (2)Effective series inductance(ESL)
  (3)Capacitance value
  (4)Dielectric material
  9. The switching regulator is capable of:
  (1)Higher power conversion efficiency
  (2)Providing an output voltage that is higher than the input
  (3)Generating an output boltage oppsite in polarity to the input
  (4)All of the above
  10. A linear regulator op Vin(max) = 10v, Vout(min) = 4.8v, Iout(max) =
2.5mA, Iq(max) = 2
  3. Wavelength for 12MHz frequency signal is____
  4. Name 2 important considerations for car radio performan -ce related to
audio signal processing under multipath condition?
  5. What is the typical FM receiver RF signal strength to achieve 30dB S/N
for car radio?
  6. When a radio is tuned to 98.1 MHz & with a LO of 108.8 MHz, what is the
image frequency?
  7. For a system with a matched impedance, what is the Reflection Coefficient
and SWR?
  8. Which property of the output capacitor is the primary cause of Low Drop
Out(LDO) regulator loop instability?
  (1)Equivalent series resistance(ESR)
  (2)Effective series inductance(ESL)
  (3)Capacitance value
  (4)Dielectric material
  9. The switching regulator is capable of:
  (1)Higher power conversion efficiency
  (2)Providing an output voltage that is higher than the input
  (3)Generating an output boltage oppsite in polarity to the input
  (4)All of the above
  10. A linear regulator op Vin(max) = 10v, Vout(min) = 4.8v, Iout(max) =
2.5mA, Iq(max) = 2.5mA, Ta(max) = 8.5摄氏度,The regulator is available in 3
packages.Each package has the following thermal characteristics:
  Package Rja(摄氏度/W) Rjc(摄氏度/W)
  SO14 125 30
  D1P8 100 52
  Choose the most suitable package to handle the power dissipation requirement
without a heat sink and why.
  软件笔试题
  1. How do you code an infinite loop in C?
  2. Volatile:
  (1)What does the keyword volatile mean? Give an example
  (2)Can a parameter be both const and volatile? Give an example
  (3)Can a pointer be volatile? Give an example

 
 
 
 
 
 
 
 
insmod aa/ncfm_pcnet32.ko 
 
ifconfig eth0 192.168.55.117
 
 
soft lockup - CPU#0 stuck for 30s!
 
 
BUG: scheduling while atomic: sshd229/0x00010201/4979
 
 
fengmushu
看似发送死锁了, 被nmi的死锁检测查出来了
 
 
 
 
 
 
 
 
 
为工作原因,我现在gmail邮箱里加入了很多linux新闻组。如有名的Linux 内核开发中文邮件列表
[email protected]
http://zh-kernel.org/mailman/listinfo/linux-kernel
Linux 内核开发中文社区: http://zh-kernel.org

还有arm-linux 邮件组
Linux-arm-toolchain mailing list
[email protected]
http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-toolchain

 

 

 

 

 

依托沈阳自动化所建立的中国科学院机器人学重点实验室成立于198?年,是我国在机器人领域最早建立的部门重点实验室。18年来,实验室在机器人学基础理论与方法研究方面与国际先进水平同步发展,并在机器人学应用基础研究、机器人技术前沿探索和示范应用等方面取得一批有重要影响的科研成果,研究开发的水下机器人、工业机器人及机器人化装备、军用机器人以及反恐防暴机器人等已实际应用,对我国机器人技术的发展起到了牵引和带动作用,为国家重大工程、重大装备开发和产业化发展提供技术支撑和技术源头,充分显示出实验室具有解决国家重大科技问题的能力。


经常在网上看到一些求兼职的工程师们,并不是那些在校的大学生,而是有几年工作经验的工程师,他们有抱负,有理想,有年轻的狂妄和激情。在工作之余依然再想做点什么,做一些自己的东西,实现自己的想法。他们有能力但是缺乏这样的平台。这样的人可以为自己的目标工作到深夜,甚至天明……我在往这个方向走,把自己的本质工作做好,想做一些自己的东西,再大的困难也阻止不了前进的脚步。本人在武汉,嵌入式软\硬件方向,寻找志同道合的朋友! (我的邮件 [email protected] )
 
把你的联系方式留一下啊,我的MSN:[email protected]
 
本人也是,也缺乏硬件平台,本人在常州,有意者 [email protected]
 
 
我也有同感,我是湖北的在深圳几年
我的联系方法
[email protected]     QQ183902850
 
 
是啊是啊,我也有这种想法,可我们搞开发的接触面太窄了,很难有这种机会。我在无锡,做硬件开发有4年工作经验了。开发、LAYOUT都可以。 [email protected]
 
 
我在深圳一家美資企業(主做防盜器之類)打工將近7年了,對軟件硬件都有相當了解,發現打工不是辦法,現正在開發一套家用防盜監控系統,但一兩個人的力量不太夠啊,開發速度和功能都不太可能跟一些專門公司的開發部比啊,請人要資金付不起的,如有對視頻監控處理方面的高手我們談談看能不能合作. humor@china005,net
 
 
我想很多人有这个想法,苦于势单力薄,资源有限,埋没了很多好的想法,以前我也深有体会,我认为平台可以互助,大家资源互补,出道早一点的可以帮帮小弟们。大家多交流,我的MSN: [email protected]
 
 
我在深圳一家美资企业(主产防盗器)打工近7年了,对硬件和软件都有一定的经验,发现打工没有出路,现正在开发一套家用防盗控制系统,现正在写手机及短信遥控方面的软件,安防系统必须要有视频监控,觉得力量单薄,请人又付不起钱啊!如有视频监控处理方面的高手我们谈谈看能不能合作做出点东西来. [email protected]
 
 
 
我也有同样的遭遇>>>>>>>缺少平台就很难做事!!甚至于不能!!
我在深圳
[email protected]
 
 
可提供小平台(协助设计/生产/销售)所需资金不大于100万.
如果有较成熟的想法可以联系讨论下
[email protected]
 
我也有這個想法,本人是湖北的,在東莞差不多從業8年了,現在也在搞開發(現在主要從事LED的開發和PC、網絡的維護),想自己創業,可是不知道能做什么......我的msn:[email protected]
 
 
 
我也在电子方面工作也有一两年工作经验了,在深圳一家小家电电路板工厂做开发工程的,对软硬件都有一些经验了,有一些低端便宜的单片机开发一些控制功能的PCB控制板,有志同道合的朋友一起交流啊,有一些项目我也可以帮着做啊,我人在深圳龙岗坂田,我的EMIL: [email protected]
 
是啊,我也是这样想的.出来深圳八年了,工作单位也换了不少,日子过得却不怎么好.我主要是消费电子的软硬件开发.MSN: [email protected]
 
 
 
本人工作经验15年,软件(VHDL.,C,汇编,) 对ARM,MIPS,FPGA,CPLD很熟悉,硬件都可以!
[email protected]
 
 
 
我也有同感,在深圳南山,软硬件都做,软件为主(C、汇编),主要接触的单片机有MSP430、51、义隆、PIC、矽泰。希望有志同道合的人加我一份
 
 
 
嗯,一直想做点自己的事情。本人目前在做机顶盒软件。
熟悉ARM,LINUX,UCOS。使用过ARM9200+Linux做过项目。
有空大家多交流一下!!!
MSN:[email protected]
 
 
 
我也有这种想法,在电子行业三年,嵌入式/硬件工程师,哈尔滨市,邮箱:[email protected]:3328965844。
 
 
想法挺好的,我建了一个QQ群:3044378

给大家一个一起讨论的平台,希望大家踊跃参与

加入群,请注明:电工社区
 
用C语言编写一个程序,能够将程序自身显示出来。(程序越短越好)
即: 由源程序编译连接生成可执行文件,在源程序已删除的情况下,运行可执行文件,能将源程序的内容显示出来。
如: 源程序aaa.c,编译连接生成aaa.exe,然后删除源程序aaa.c,再运行aaa.exe,则在屏幕上显示源程序aaa.c的全部内容,一模一样,包括回车、换行等。
注: 要求在没有源程序的情况下,运行可执行文件,能够显示原来源程序的内容。因为没有源程序,可执行文件就无法再读取源程序,另外也不需可执行文件来删除源程序。
(不能使用文件操作来读取源程序)

试题2)
有一10*10格的棋盘,有的格子有障碍不能通行,有的可以通行,用一个两维数组来表示这个棋盘,值为1表示可以通行,为0表示不可以通行。
请编程找出从左上角到右下角的通行线路(编程语言不限)。

试题3)
学校A的一年级有若干个班,每个班有人数不等的学生,每个学生有不同的姓名;学校B也 是如此。现在学校A与学校B合并,其一年级的对应相同的班进行合并。
用链表来描述一年级的若干个班,每个班的人数不等的学生也用链表来描述,按姓名的字母升序排 列,请用C语言编写一个函数,实现学校的合并。
要求:该函数输入两个学校的链表,返回新学校的链表

说明:
试题1)要求编写出完整的程序,这里有一个例程可供参考,但是还不完善,显示内容和源程序还 不一模一样,可以在这个基础上做完成。
例程:
main(){char*s= "main(){char*s=\ "%s\ ";printf(s,s);} ";printf(s,s);}
试题二说明解决方法,给出程序说明。
试题3)要定义链表的数据结构,并编写出程序
 
 
    在应聘的过程中,总会遇到一些难缠的问题,令人一时不知如何招架。当然这些问题并没有标准答案,个人以为,胜出的关键,是事先对应聘单位需要什么样的人有所了解,既“投其所好”,又诚信而本色地展示自我。以下的这些问题,如果面试前能有所考虑,也许能助你取得更佳表现:

1、对你来说工作中最重要的是什么?

2、为什么愿意为本公司工作?

3、你认为公司为什么要聘用你?

4、如果我们聘用你,你会待多久?

5、在你看来,我们会为你的职业生涯规划一个怎样的环境?

6、你的长处是什么?

7、什么是你最大的弱点?

友情提示:不妨借自我批评来自我表扬。

8、你如何评价你的前任老板?

9、你的业余时间喜欢做什么?

10、你觉得5年后你会是什么样?

11、你对薪水的期望是多少?

12、如果……的话,你怎么办?

友情提示:面对这类情景模拟、角色扮演的问题,宜多提供几套解决方案,以体现思维的敏捷与多元。

13、你对什么职位感兴趣?

14、你先介绍一个自己。

友情提示:宜把回答控制在5分钟以内,并能有实例说明问题。

15、你对我们公司有什么想法?

友情提示:这可体现你对公司前景的关注,切忌回答:“都很好,没什么想法。”
 
 
 
 
面试要 避免十三种常规 错误
http://news.QQ.com   2009年10月28日13:00   新闻晚报

  记者 沙情奕

  晚报讯昨日下午,“2009东方讲坛·职业生涯系列讲座暨职业介绍推介活动”在上海电机学院明德堂举行,上海职业介绍虹口分中心职业指导员周琴主讲《避免面试中常犯的十三种错误》,传授了求职面试中的技巧。

  周琴认为,在面试前,要避免错误主要有五处:一是自我评价不正确。在面试前一定要对自己有一个正确的评价和了解,知道自己最擅长什么、拥有什么样的技巧;二是对企业和岗位的信息了解不深入;三是没有针对性地修改和充实简历;四是着装准备不妥当;五是物品准备不全面,如忘带会计上岗证等各种证书。

  在面试中,要避免错误主要有五处:一是让人陪同来面试,会使面试官觉得缺乏独立性;二是生活细节不注意,如不敲门、不打招呼就闯进来,坐姿不端正或在面试时左顾右盼等;三是过于拘谨而表现不足;四是表现过分做作或与面试官套近乎;五是回答问题不恰当,包括回答问题太随意,自我介绍没重点等。

  在面试后,要避免错误主要有三处:一是忽略感谢信,也许它可以改变求职者的职场命运,但不要超过200字;二是急于询问面试结果;三是面试之后不总结,在面试的过程中发生了什么,面试官问了些什么,求职者可和父母在家里再现一遍,可能发现问题的所在。求职者也可到所在区县的职业介绍中心,让职业指导员帮忙分析面试中的问题。

 

 

回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、工作经验,这些在简历上都有。其实,企业最希望知道的是求职者能否胜任工作,包括:最强的技能、最深入研究的知识领域、个性中最积极的部分、做过的最成功的事,主要的成就等,这些都可以和学习无关,也可以和学习有关,但要突出积极的个性和做事的能力,说得合情合理企业才会相信。企业很重视一个人的礼貌,求职者要尊重考官,在回答每个问题之后都说一句“谢谢”,企业喜欢有礼貌的求职者。
2、你觉得你个性上最大的优点是什么?
回答提示:沉着冷静、条理清楚、立场坚定、顽强向上、乐于助人和关心他人、适应能力和幽默感、乐观和友爱。我在北大青鸟经过一到两年的培训及项目实战,加上实习工作,使我适合这份工作。
3、说说你最大的缺点?
回答提示:这个问题企业问的概率很大,通常不希望听到直接回答的缺点是什么等,如果求职者说自己小心眼、爱忌妒人、非常懒、脾气大、工作效率低,企业肯定不会录用你。绝对不要自作聪明地回答“我最大的缺点是过于追求完美”,有的人以为这样回答会显得自己比较出色,但事实上,他已经岌岌可危了。企业喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分,企业喜欢聪明的求职者。
4、你对加班的看法?
回答提示:实际上好多公司问这个问题,并不证明一定要加班,只是想测试你是否愿意为公司奉献。
回答样本:如果是工作需要我会义不容辞加班,我现在单身,没有任何家庭负担,可以全身心的投入工作。但同时,我也会提高工作效率,减少不必要的加班。
5、你对薪资的要求?
回答提示:如果你对薪酬的要求太低,那显然贬低自己的能力;如果你对薪酬的要求太高,那又会显得你分量过重,公司受用不起。一些雇主通常都事先对求聘的职位定下开支预算,因而他们第一次提出的价钱往往是他们所能给予的最高价钱,他们问你只不过想证实一下这笔钱是否足以引起你对该工作的兴趣。
回答样本一:我对工资没有硬性要求,我相信贵公司在处理我的问题上会友善合理。我注重的是找对工作机会,所以只要条件公平,我则不会计较太多。
回答样本二:我受过系统的软件编程的训练,不需要进行大量的培训,而且我本人也对编程特别感兴趣。因此,我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。
回答样本三:如果你必须自己说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。最好给出一个具体的数字,这样表明你已经对当今的人才市场作了调查,知道像自己这样学历的雇员有什么样的价值。
6、在五年的时间内,你的职业规划?
回答提示:这是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被问到,比较多的答案是“管理者”。但是近几年来,许多公司都已经建立了专门的技术途径。这些工作地位往往被称作“顾问”、“参议技师”或“高级软件工程师”等等。当然,说出其他一些你感兴趣的职位也是可以的,比如产品销售部经理,生产部经理等一些与你的专业有相关背景的工作。要知道,考官总是喜欢有进取心的应聘者,此时如果说“不知道”,或许就会使你丧失一个好机会。最普通的回答应该是“我准备在技术领域有所作为”或“我希望能按照公司的管理思路发展”。
7、你朋友对你的评价?
回答提示: 想从侧面了解一下你的性格及与人相处的问题。
回答样本一:我的朋友都说我是一个可以信赖的人。因为,我一旦答应别人的事情,就一定会做到。如果我做不到,我就不会轻易许诺。
回答样本二:我觉的我是一个比较随和的人,与不同的人都可以友好相处。在我与人相处时,我总是能站在别人的角度考虑问题。
8、你还有什么问题要问吗?
回答提示:企业的这个问题看上去可有可无,其实很关键,企业不喜欢说“没问题”的人,因为其很注重员工的个性和创新能力。企业不喜欢求职者问个人福利之类的问题,如果有人这样问:贵公司对新入公司的员工有没有什么培训项目,我可以参加吗?或者说贵公司的晋升机制是什么样的?企业将很欢迎,因为体现出你对学习的热情和对公司的忠诚度以及你的上进心。
9、如果通过这次面试我们单位录用了你,但工作一段时间却发现你根本不适合这个职位,你怎么办?
回答提示:一段时间发现工作不适合我,有两种情况:①如果你确实热爱这个职业,那你就要不断学习,虚心向领导和同事学习业务知识和处事经验,了解这个职业的精神内涵和职业要求,力争减少差距;②你觉得这个职业可有可无,那还是趁早换个职业,去发现适合你的,你热爱的职业,那样你的发展前途也会大点,对单位和个人都有好处。
10、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?
回答提示:①.原则上我会尊重和服从领导的工作安排,同时私底下找机会以请教的口吻,婉转地表达自己的想法,看看领导是否能改变想法。②如果领导没有采纳我的建议,我也同样会按领导的要求认真地去完成这项工作。③.还有一种情况,假如领导要求的方式违背原则,我会坚决提出反对意见,如领导仍固执己见,我会毫不犹豫地再向上级领导反映。
11、如果你的工作出现失误,给本公司造成经济损失,你认为该怎么办?
回答提示:①我本意是为公司努力工作,如果造成经济损失,我认为首要的问题是想方设法去弥补或挽回经济损失。如果我无能力负责,希望单位帮助解决。②分清责任,各负其责,如果是我的责任,我甘愿受罚;如果是一个我负责的团队中别人的失误,也不能幸灾乐祸,作为一个团队,需要互相提携共同完成工作,安慰同事并且帮助同事查找原因总结经验。③总结经验教训,一个人的一生不可能不犯
错误,重要的是能从自己的或者是别人的错误中吸取经验教训,并在今后的工作中避免发生同类的错误。检讨自己的工作方法、分析问题的深度和力度是否不够,以致出现了本可以避免错误
12、如果你做的一项工作受到上级领导的表扬,但你主管领导却说是他做的,你该怎样?
回答提示:我首先不会找那位上级领导说明这件事,我会主动找我的主管领导来沟通,因为沟通是解决人际关系的最好办法,但结果会有两种:①我的主管领导认识到自己的错误,我想我会视具体情况决定是否原谅他。②他更加变本加厉的来威胁我,那我会毫不犹豫地找我的上级领导反映此事,因为他这样做会造成负面影响,对今后的工作不利。
13、谈谈你对跳槽的看法?
回答提示:①正常的“跳槽”能促进人才合理流动,应该支持。②频繁的跳槽对单位和个人双方都不利,应该反对。
14、工作中你难以和同事、上司相处,你该怎么办?
答提示:①我会服从领导的指挥,配合同事的工作。②我会从自身找原因,仔细分析是不是自己工作做得不好让领导不满意,同事看不惯。还要看看是不是为人处世方面做得不好,如果是这样的话我会努力改正。③如果我找不到原因,我会找机会跟他们沟通,请他们指出我的不足,有问题就及时改正。④作为优秀的员工,应该时刻以大局为重,即使在一段时间内,领导和同事对我不理解,我也会做好本职工作,虚心向他们学习,我相信,他们会看见我在努力,总有一天会对我微笑的。
15、假设你在某单位工作,成绩比较突出,得到领导的肯定。但同时你发现同事们越来越孤立你,你怎么看这个问题?你准备怎么办?
回答提示:①成绩比较突出,得到领导的肯定是件好事情,以后更加努力。②检讨一下自己是不是对工作的热心度超过同事间交往的热心了,加强同事间的交往及共同的兴趣爱好。③工作中,切勿伤害别人的自尊心④不再领导前拨弄是非。
16、你最近是否参加了培训课程?谈谈培训课程的内容。是公司资助还是自费参加?
回答提示:自费参加,就是北大青鸟的培训课程(可以多谈谈自己学的技术)。
17、你对于我们公司了解多少?
回答提示:在去公司面试前上网查一下该公司主营业务。如回答:贵公司有意改变策略,加强与国外大厂的OEM合作,自有品牌的部分则透过海外经销商。
18、请说出你选择这份工作的动机?
回答提示:这是想知道面试者对这份工作的热忱及理解度,并筛选因一时兴起而来应试的人,如果是无经验者,可以强调“就算职种不同,也希望有机会发挥之前的经验”。
19、你最擅长的技术方向是什么?
回答提示:说和你要应聘的职位相关的课程,表现一下自己的热诚没有什么坏处。
20、你能为我们公司带来什么呢?
回答提示:①假如你可以的话,试着告诉他们你可以减低他们的费用——“我已经接受过北大青鸟近两年专业的培训,立刻就可以上岗工作”。② 企业很想知道未来的员工能为企业做什么,求职者应再次重复自己的优势,然后说:“就我的能力,我可以做一个优秀的员工在组织中发挥能力,给组织带来高效率和更多的收益”。企业喜欢求职者就申请的职位表明自己的能力,比如申请营销之类的职位,可以说:“我可以开发大量的新客户,同时,对老客户做更全面周到的服务,开发老客户的新需求和消费。”等等。
21、最能概括你自己的三个词是什么?
回答提示:我经常用的三个词是:适应能力强,有责任心和做事有始终,结合具体例子向主考官解释,
22、你的业余爱好是什么?
回答提示:找一些富于团体合作精神的,这里有一个真实的故事:有人被否决掉,因为他的爱好是深海潜水。主考官说:因为这是一项单人活动,我不敢肯定他能否适应团体工作。
23、作为被面试者给我打一下分?
回答提示:试着列出四个优点和一个非常非常非常小的缺点(可以抱怨一下设施,没有明确责任人的缺点是不会有人介意的)。
24、你怎么理解你应聘的职位?
回答提示:把岗位职责和任务及工作态度阐述一下。
25、喜欢这份工作的哪一点?
回答提示:相信其实大家心中一定都有答案了吧!每个人的价值观不同,自然评断的标准也会不同,但是,在回答面试官这个问题时可不能太直接就把自己心理的话说出来,尤其是薪资方面的问题,不过一些无伤大雅的回答是不错的考虑,如交通方便,工作性质及内容颇能符合自己的兴趣等等都是不错的答案,不过如果这时自己能仔细思考出这份工作的与众不同之处,相信在面试上会大大加分。
26、为什么要离职?
回答提示:①回答这个问题时一定要小心,就算在前一个工作受到再大的委屈,对公司有多少的怨言,都千万不要表现出来,尤其要避免对公司本身主管的批评,避免面试官的负面情绪及印象。建议此时最好的回答方式是将问题归咎在自己身上,例如觉得工作没有学习发展的空间,自己想在面试工作的相关产业中多加学习,或是前一份工作与自己的生涯规划不合等等,回答的答案最好是积极正面的。②我希望能获得一份更好的工作,如果机会来临,我会抓住。我觉得目前的工作,已经达到顶峰,即没有升迁机会。
27、说说你对行业、技术发展趋势的看法?
回答提示:企业对这个问题很感兴趣,只有有备而来的求职者能够过关。求职者可以直接在网上查找对你所申请的行业部门的信息,只有深入了解才能产生独特的见解。企业认为最聪明的求职者是对所
面试的公司预先了解很多,包括公司各个部门,发展情况,在面试回答问题的时候可以提到所了解的情况,企业欢迎进入企业的人是“知己”,而不是“盲人”。
28、对工作的期望与目标何在?
回答提示:这是面试者用来评断求职者是否对自己有一定程度的期望、对这份工作是否了解的问题。对于工作有确实学习目标的人通常学习较快,对于新工作自然较容易进入状况,这时建议你,最好针对工作的性质找出一个确实的答案,如业务员的工作可以这样回答:“我的目标是能成为一个超级业务员,将公司的产品广泛的推销出去,达到最好的业绩成效;为了达到这个目标,我一定会努力学习,而我相信以我认真负责的态度,一定可以达到这个目标。”其他类的工作也可以比照这个方式来回答,只要在目标方面稍微修改一下就可以了。
29、说你的家庭?
回答提示:企业面试时询问家庭问题不是非要知道求职者家庭的情况,探究隐私,企业不喜欢探究个人隐私,而是要了解家庭背景对求职者的塑造和影响。企业希望听到的重点也在于家庭对求职者的积极影响。企业最喜欢听到的是:我很爱我的家庭,我的家庭一向很和睦,虽然我的父亲和母亲都是普通人,但是从小,我就看到我父亲起早贪黑,每天工作特别勤劳,他的行动无形中培养了我认真负责的态度和勤劳的精神。我母亲为人善良,对人热情,特别乐于助人,所以在单位人缘很好,她的一言一行也一直在教导我做人的道理。企业相信,和睦的家庭关系对一个人的成长有潜移默化的影响。
30、就你申请的这个职位,你认为你还欠缺什么?
回答提示:企业喜欢问求职者弱点,但精明的求职者一般不直接回答。他们希望看到这样的求职者:继续重复自己的优势,然后说:“对于这个职位和我的能力来说,我相信自己是可以胜任的,只是缺乏经验,这个问题我想我可以进入公司以后以最短的时间来解决,我的学习能力很强,我相信可以很快融入公司的企业文化,进入工作状态。”企业喜欢能够巧妙地躲过难题的求职者。
31、你欣赏哪种性格的人?回答提示:诚实、不死板而且容易相处的人、有“实际行动”的人。
32、你通常如何处理别人的批评?
回答提示:①沈默是金,不必说什么,否则情况更糟,不过我会接受建设性的批评。②我会等大家冷静下来再讨论。
33、怎样对待自己的失败?
回答提示:我们大家生来都不是十全十美的,我相信我有第二个机会改正我的错误
34、什么会让你有成就感?
回答提示:为贵公司竭力效劳,尽我所能,完成一个项目。
35、眼下你生活中最重要的是什么?
回答提示:对我来说,能在这个领域找到工作是最重要的,能在贵公司任职对我说最重要。
36、你为什么愿意到我们公司来工作?
回答提示:对于这个问题,你要格外小心,如果你已经对该单位作了研究,你可以回答一些详细的原因,像“公司本身的高技术开发环境很吸引我。”、“我同公司出生在同样的时代,我希望能够进入一家与我共同成长的公司。”、“你们公司一直都稳定发展,在近几年来在市场上很有竞争力。”、“我认为贵公司能够给我提供一个与众不同的发展道路。”这都显示出你已经做了一些调查,也说明你对自己的未来有了较为具体的远景规划。
37、你和别人发生过争执吗?你是怎样解决的?
回答提示:这是面试中最险恶的问题,其实是考官布下的一个陷阱,千万不要说任何人的过错,应知成功解决矛盾是一个协作团体中成员所必备的能力。假如你工作在一个服务行业,这个问题简直成了最重要的一个环节。你是否能获得这份工作,将取决于这个问题的回答。考官希望看到你是成熟且乐于奉献的。他们通过这个问题了解你的成熟度和处世能力。在没有外界干涉的情况下,通过妥协的方式来解决才是正确答案。
38、问题:你做过的哪件事最令自己感到骄傲?
回答提示:这是考官给你的一个机会,让你展示自己把握命运的能力。这会体现你潜在的领导能力以及你被提升的可能性。假如你应聘于一个服务性质的单位,你很可能会被邀请去午餐。记住:你的前途取决于你的知识、你的社交能力和综合表现。
39、新到一个部门,一天一个客户来找你解决问题,你努力想让他满意,可是始终达不到群众得满意,他投诉你们部门工作效率低,你这个时候怎么作?
回答提示:(1)首先,我会保持冷静。作为一名工作人员,在工作中遇到
各种各样的问题是正常的,关键是如何认识它,积极应对,妥善处理。 (2)其次,我会反思一下客户不满意的原因。一是看是否是自己在解决问题上的确有考虑的不周到的地方,二是看是否是客户不太了解相关的服务规定而提出超出规定的要求,三是看是否是客户了解相关的规定,但是提出的要求不合理。 (3)再次,根据原因采取相对的对策。如果是自己确有不周到的地方,按照服务规定作出合理的安排,并向客户作出解释;如果是客户不太了解政策规定而造成的误解,我会向他作出进一步的解释,消除他的误会;如果是客户提出的要求不符合政策规定,我会明确地向他指出。 (4)再次,我会把整个事情的处理情况向领导作出说明,希望得到他的理解和支持。(5)我不会因为客户投诉了我而丧失工作的热情和积极性,而会一如既往地牢记为客户服务的宗旨,争取早日做一名领导信任、公司放心、客户满意的职员。
40、对这项工作,你有哪些可预见的困难?
回答提示:①不宜直接说出具体的困难,否则可能令对方怀疑应聘者不行。②可以尝试迂回战术,说出应聘者对困难所持有的态度——工作中出现一些困难是正常的,也是难免的,但是只要有坚忍不拔的毅力、良好的合作精神以及事前周密而充分的准备,任何困难都是可以克服。
分析:一般问这个问题,面试者的希望就比较大了,因为已经在谈工作细节,但常规思路中的回答,又被面试官“骗”了。当面试官询问这个问题的时候,有两个目的。第一,看看应聘者是不是在行,说出的困难是不是在这个职位中一般都不可避免的问题。第二,是想看一下应聘者解决困难的手法对不对,及公司能否提供这样的资源。而不是想了解应聘者对困难的态度。
41、如果我录用你,你将怎样开展工作?
回答提示: ①如果应聘者对于应聘的职位缺乏足够的了解,最好不要直接说出自己开展工作的具体办法。②可以尝试采用迂回战术来回答,如“首先听取领导的指示和要求,然后就有关情况进行了解和熟悉,接下来制定一份近期的工作计划并报领导批准,最后根据计划开展工作。”。
分析:这个问题的主要目的也是了解应聘者的工作能力和计划性、条理性,而且重点想要知道细节。如果向思路中所讲的迂回战术,面试官会认为回避问题,如果引导了几次仍然是回避的话,此人绝对不会录用了。
42、你希望与什么样的上级共事?
回答提示:①通过应聘者对上级的“希望”可以判断出应聘者对自我要求的意识,这既上一个陷阱,又是一次机会。②最好回避对上级具体的希望,多谈对自己的要求。③如“做为刚步入社会的新人,我应该多要求自己尽快熟悉环境、适应环境,而不应该对环境提出什么要求,只要能发挥我的专长就可以了。
分析:这个问题比较好的回答是,希望我的上级能够在工作中对我多指导,对我工作中的错误能够立即指出。总之,从上级指导这个方面谈,不会有大的纰漏。
43、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?
回答提示:①.原则上我会尊重和服从领导的工作安排;同时私底下找机会以请教的口吻,婉转地表达自己的想法,看看领导是否能改变想法。②如果领导没有采纳我的建议,我也同样会按领导的要求认真地去完成这项工作。③.还有一种情况,假如领导要求的方式违背原则,我会坚决提出反对意见,如领导仍固执己见,我会毫不犹豫地再向上级领导反映。
44、与上级意见不一是,你将怎么办?
回答提示:①一般可以这样回答“我会给上级以必要的解释和提醒,在这种情况下,我会服从上级的意见。”②如果面试你的是总经理,而你所应聘的职位另有一位经理,且这位经理当时不在场,可以这样回答:“对于非原则性问题,我会服从上级的意见,对于涉及公司利益的重大问题,我希望能向更高层领导反映。”
分析:这个问题的标准答案是思路①,如果用②的回答,必死无疑。你没有摸清楚改公司的内部情况,先想打小报告,这样的人没有人敢要。
45、你工作经验欠缺,如何能胜任这项工作?
常规思路:①如果招聘单位对应届毕业生的应聘者提出这个问题,说明招聘公司并不真正在乎“经验”,关键看应聘者怎样回答。②对这个问题的回答最好要体现出应聘者的诚恳、机智、果敢及敬业。③如“作为应届毕业生,在工作经验方面的确会有所欠缺,因此在读书期间我一直利用各种机会在这个行业里做兼职。我也发现,实际工作远比书本知识丰富、复杂。但我有较强的责任心、适应能力和学习能力,而且比较勤奋,所以在兼职中均能圆满完成各项工作,从中获取的经验也令我受益非浅。请贵公司放心,学校所学及兼职的工作经验使我一定能胜任这个职位。”点评:这个问题思路中的答案尚可,突出自己的吃苦能力和适应性以及学习能力(不是学习成绩)为好。
46、您在前一家公司的离职原因是什么?
回答提示:①最重要的是:应聘者要使找招聘单位相信,应聘者在过往的单位的“离职原因”在此家招聘单位里不存在。②避免把“离职原因”说得太详细、太具体。③不能掺杂主观的负面感受,如“太辛苦”、“人际关系复杂”、“管理太混乱”、“公司不重视人才”、“公司排斥我们某某的员工”等。④但也不能躲闪、回避,如“想换换环境”、“个人原因”等。⑤不能涉及自己负面的人格特征,如不诚实、懒惰、缺乏责任感、不随和等。⑥尽量使解释的理由为应聘者个人形象添彩。⑦相关例子:如“我离职是因为这家公司倒闭;我在公司工作了三年多,有较深的感情;从去年始,由于市场形势突变,公司的局面急转直下;到眼下这一步我觉得很遗憾,但还要面对显示,重新寻找能发挥我能力的舞台。”同一个面试问题并非只有一个答案,而同一个答案并不是在任何面试场合都有效,关键在应聘者掌握了规律后,对面试的具体情况进行把握,有意识地揣摩面试官提出问题的心理背景,然后投其所好。
分析:除非是薪资太低,或者是最初的工作,否则不要用薪资作为理由。“求发展”也被考官听得太多,离职理由要根据每个人的真实离职理由来设计,但是在回答时一定要表现得真诚。实在想不出来的时候,家在外地可以说是因为家中有事,须请假几个月,公司又不可能准假,所以辞职,这个答案一般面试官还能接受。
47、你工作经验欠缺,如何能胜任这项工作?
回答提示:①如果招聘单位对应届毕业生的应聘者提出这个问题,说明招聘公司并不真正在乎“经验”,关键看应聘者怎样回答。②对这个问题的回答最好要体现出应聘者的诚恳、机智、果敢及敬业。③如“作为应届毕业生,在工作经验方面的确会有所欠缺,因此在读书期间我一直利用各种机会在这个行业里做兼职。我也发现,实际工作远比书本知识丰富、复杂。但我有较强的责任心、适应能力和学习能力,而且比较勤奋,所以在兼职中均能圆满完成各项工作,从中获取的经验也令我受益非浅。请贵公司放心,学校所学及兼职的工作经验使我一定能胜任这个职位。”
分析:这个问题思路中的答案尚可。突出自己的吃苦能力和适应性以及学习能力(不是学习成绩)为好。
48、为了做好你工作份外之事,你该怎样获得他人的支持和帮助?
回答提示:每个公司都在不断变化发展的过程中,你当然希望你的员工也是这样。你希望得到那些希望并欢迎变化的人,因为这些人明白,为了公司的发展,变化是公司日常生活中重要组成部分。这样的员工往往很容易适应公司的变化,并会对变化做出积极的响应。
49、果你在这次面试中没有被录用,你怎么打算?
回答提示:现在的社会是一个竞争的社会,从这次面试中也可看出这一点,有竞争就必然有优劣,有成功必定就会有失败。往往成功的背后有许多的困难和挫折,如果这次失败了也仅仅是一次而已,只有经过经验经历的积累才能塑造出一个完全的成功者。我会从以下几个方面来正确看待这次失败:①要敢于面对,面对这次失败不气馁,接受已经失去了这次机会就不会回头这个现实,从心理意志和精神上体现出对这次失败的抵抗力。要有自信,相信自己经历了这次之后经过努力一定能行,能够超越自我。②善于反思,对于这次面试经验要认真总结,思考剖析,能够从自身的角度找差距。正确对待自己,实事求是地评价自己,辩证的看待自己的长短得失,做一个明白人。③走出阴影,要克服这一次失败带给自己的心理压力,时刻牢记自己弱点,防患于未然,加强学习,提高自身素质。④认真工作,回到原单位岗位上后,要实实在在、踏踏实实地工作,三十六行、行行出状元,争取在本岗位上做出一定的成绩。⑤再接再厉,成为国家公务员一直是我的梦想,以后如果有机会我仍然后再次参加竞争。
50、假如你晚上要去送一个出国的同学去机场,可单位临时有事非你办不可,你怎么办?
回答提示:我觉得工作是第一位的,但朋友间的情谊也是不能偏废的,这个问题我觉得要按照当时具体的情况来决定。
①如果我的朋友晚上9点中的飞机,而我的加班八点就能够完成的话,那就最理想了,干完工作去机场,皆大欢喜。②如果说工作不是很紧急,加班仅仅是为了明天上班的时候能把报告交到办公室,那完全可以跟领导打声招呼,先去机场然后回来加班,晚点睡就是了。③如果工作很紧急,两者不可能兼顾的情况下,我觉得可以由两种选择。(1)如果不是全单位都加班的话,是不是可以要其他同事来代替以下工作,自己去机场,哪怕就是代替你离开的那一会儿。(2)如果连这一点都做不到的话,那只好忠义不能两全了,打电话给朋友解释一下,相信他会理解,毕竟工作做完了就完了,朋友还是可以再见面的。
51、谈谈你过去做过的成功案例?
回答提示:举一个你最有把握的例子,把来龙去脉说清楚,而不要说了很多却没有重点。切忌夸大其词,把别人的功劳到说成自己的,很多主管为了确保要用的人是最适合的,会打电话向你的前一个主管征询对你的看法及意见,所以如果说谎,是很容易穿梆的。

 

面试过程中,面试官会向应聘者发问,而应聘者的回答将成为面试官考虑是否接受他的重要依据。对应聘者而言,了解这些问题背后的“猫腻”至关重要。本文对面试中经常出现的一些典型问题进行了整理,并给出相应的回答思路和参考答案。读者无需过分关注分析的细节,关键是要从这些分析中“悟”出面试的规律及回答问题的思维方式,达到“活学活用”。
问题一:“请你自我介绍一下” 
思路: 1、这是面试的必考题目。 2、介绍内容要与个人简历相一致。 3、表述方式上尽量口语化。 4、要切中要害,不谈无关、无用的内容。 5、条理要清晰,层次要分明。6、事先最好以文字的形式写好背熟。 
问题二:“谈谈你的家庭情况” 
思路:1、 况对于了解应聘者的性格、观念、心态等有一定的作用,这是招聘单位问
该问题的主要原因。 2、 简单地罗列家庭人口。 3、 宜强调温馨和睦的家庭氛围。 4、 宜强调父母对自己教育的重视。 5、 宜强调各位家庭成员的良好状况。 6、 宜强调家庭成员对自己工作的支持。 7、 宜强调自己对家庭的责任感。 
问题三:“你有什么业余爱好?” 
思路: 1、 业余爱好能在一定程度上反映应聘者的性格、观念、心态,这是招聘单位问该问题的主要原因。 2、 最好不要说自己没有业余爱好。 3、 不要说自己有那些庸俗的、令人感觉不好的爱好。 4、 最好不要说自己仅限于读书、听音乐、上网,否则可能令面试官怀疑应聘者性格孤僻。 5、 最好能有一些户外的业余爱好来“点缀”你的形象。 
问题四:“你最崇拜谁?” 
思路: 1、 最崇拜的人能在一定程度上反映应聘者的性格、观念、心态,这是面试官问该问题的主要原因。 2、 不宜说自己谁都不崇拜。 3、 不宜说崇拜自己。 4、 不宜说崇拜一个虚幻的、或是不知名的人。 5、 不宜说崇拜一个明显具有负面形象的人。 6、 所崇拜的人人最好与自己所应聘的工作能“搭”上关系。 7、 最好说出自己所崇拜的人的哪些品质、哪些思想感染着自己、鼓舞着自己。 
问题五:“你的座右铭是什么?” 
思路: 1、座右铭能在一定程度上反映应聘者的性格、观念、心态,这是面试官问这个问题的主要原因。 2、不宜说那些医引起不好联想的座右铭。 3、不宜说那些太抽象的座右铭。 4、不宜说太长的座右铭。 5、座右铭最好能反映出自己某种优秀品质。 6、 参考答案——“只为成功找方法,不为失败找借口” 
问题六:“谈谈你的缺点” 
思路: 1、 不宜说自己没缺点。 2、 不宜把那些明显的优点说成缺点。 3、 不宜说出严重影响所应聘工作的缺点。 4、 不宜说出令人不放心、不舒服的缺点。 5、 可以说出一些对于所应聘工作“无关紧要”的缺点,甚至是一些表面上看是缺点,从工作的角度看却是优点的缺点。 
问题七:“谈一谈你的一次失败经历” 
思路: 1、 不宜说自己没有失败的经历。 2、 不宜把那些明显的成功说成是失败。 3、 不宜说出严重影响所应聘工作的失败经历, 4、 所谈经历的结果应是失败的。 5、 宜说明失败之前自己曾信心白倍、尽心尽力。 6、 说明仅仅是由于外在客观原因导致失败。 7、 失败后自己很快振作起来,以更加饱满的热情面对以后的工作。 
问题八:“你为什么选择我们公司?” 
思路: 1、 面试官试图从中了解你
求职的动机、愿望以及对此项工作的态度。 2、 建议从行业、企业和岗位这三个角度来回答。 3、 参考答案——“我十分看好贵公司所在的行业,我认为贵公司十分重视人才,而且这项工作很适合我,相信自己一定能做好。”  
问题九:“对这项工作,你有哪些可预见的困难?” 
思路: 1、 不宜直接说出具体的困难,否则可能令对方怀疑应聘者不行。 2、 可以尝试迂回战术,说出应聘者对困难所持有的态度——“工作中出现一些困难是正常的,也是难免的,但是只要有坚忍不拔的毅力、良好的合作精神以及事前周密而充分的准备,任何困难都是可以克服的。”  


 

问题十:“如果我录用你,你将怎样开展工作” 
思路: 1、 如果应聘者对于应聘的职位缺乏足够的了解,最好不要直接说出自己开展工作的具体办法, 2、 可以尝试采用迂回战术来回答,如“首先听取领导的指示和要求,然后就有关情况进行了解和熟悉,接下来制定一份近期的工作计划并报领导批准,最后根据计划开展工作。” 
问题十一:“与上级意见不一是,你将怎么办?” 
思路: 1、 一般可以这样回答“我会给上级以必要的解释和提醒,在这种情况下,我会服从上级的意见。” 2、 如果面试你的是总经理,而你所应聘的职位另有一位经理,且这位经理当时不在场,可以这样回答:“对于非原则性问题,我会服从上级的意见,对于涉及公司利益的重大问题,我希望能向更高层领导反映。” 
问题十二:“我们为什么要录用你?” 
思路: 1、 应聘者最好站在招聘单位的角度来回答。 2、 招聘单位一般会录用这样的应聘者:基本符合条件、对这份工作感兴趣、有足够的信心。 3、 如“我符合贵公司的招聘条件,凭我目前掌握的技能、高度的责任感和良好的适应能力及学习能力 ,完全能胜任这份工作。我十分希望能为贵 公司服务,如果贵公司给我这个机会,我一定能成为贵公司的栋梁!” 
问题十三:“你能为我们做什么?” 
思路: 1、 基本原则上“投其所好”。 2、 回答这个问题前应聘者最好能“先发制人”,了解招聘单位期待这个职位所能发挥的作用。 3、 应聘者可以根据自己的了解,结合自己在专业领域的优势来回答这个问题。 
问题十四:“你是应届毕业生,缺乏经验,如何能胜任这项工作?” 
思路: 1、 如果招聘单位对应届毕业生的应聘者提出这个问题,说明招聘单位并不真正在乎“经验”,关键看应聘者怎样回答。 2、 对这个问题的回答最好要体现出应聘者的诚恳、机智、果敢及敬业。 3、 如“作为应届毕业生,在工作经验方面的确会有所欠缺,因此在读书期间我一直利用各种机会在这个行业里做兼职。我也发现,实际工作远比书本知识丰富、复杂。但我有较强的责任心、适应能力和学习能力,而且比较勤奋,所以在兼职中均能圆满完成各项工作,从中获取的经验也令我受益非浅。请贵公司放心,学校所学及兼职的工作经验使我一定能胜任这个职位。” 
问题十五:“你希望与什么样的上级共事?” 
思路: 1、 通过应聘者对上级的“希望”可以判断出应聘者对自我要求的意识,这既上一个陷阱,又上一次机会。 2、 最好回避对上级具体的希望,多谈对自己的要求。 3、 如“做为刚步入社会新人,我应该多要求自己尽快熟悉环境、适应环境,而不应该对环境提出什么要求,只要能发挥我的专长就可以了。”

 

 

求职面试时该问的几个问题
2010-3-13 16:11:54 来源:网络 浏览:1121 【字号
   汇众河北动漫学院(原石家庄动漫学院)为了帮助更多的动漫学习者能够快速方便的找到自己理想的工作,特意从网络以及各个合作企业中搜集整理并刊登了大量的公司招聘岗位以及对您就业有帮助的信息!如果你足够优秀,如果你还在为动漫努力着,奋斗着。这些信息希望能够帮到你,这些信息同样希望能够让中国的动漫事业越来越好! 大家好 我是动漫学院招聘就业信息板块责任编辑七天 如果您对本站所提供的招聘信息有什么异议请您跟我联系。欢迎您对本站提出您宝贵的意见和建议。 七天的QQ: 251739058 七天的邮箱 [email protected]
    在求职 面试 过程中, 面试 官往往会问求职者有什么问题要问。以前大家都是问薪酬,后来流行问发展机会,或者干脆有些人就放弃了问问题的机会。这些,其实,都很不妥!

  学会问 面试 官问题,很有可能会决定你是否会被录用!一个好的求职者,应该是一个不仅会回答问题的人,更是一个会问问题的人!

  根据我个人的认识,我觉得,在接受面试过程中,求职者至少要问以下三个问题:

  1、“公司当前面临的机遇和困难是什么?”

  这个问题看起来似乎有点空洞,面试官也可能不会告诉你什么具体的信息,但你至少可以从中捕捉到点东西,有助于你判断这个企业是否真的适合你。

  而且,通过问这样的问题,让面试官知道,你来公司面试,是确实在考虑长远发展问题,而不是单看眼前利益,这无疑会为你增加一些印象分。

  2、“这个岗位为什么会存在空缺?”

  通过询问这个问题,来判断公司是在发展的过程中需要补充人选,还是因为人员离职导致了岗位空缺,这也可以帮助你来对该公司做出正确的评判。如果是因为原有的任职者离职,那么,其离职的原因是什么呢?上司原因?待遇原因?机制问题?等等,都要去进行考虑。如果是原来的任职者调整岗位或者是晋升了,那当然没什么问题,这可以帮助你了解一下未来的发展机会。

  3、“我的准上司是个怎样的人?”

  数据表明,员工往往是因为公司而来,又因为上司而走,在很大程度上,与上司的关系已经成为员工的主要导火索。所以,在决定加入某企业之前,一定要了解一下你的准上司,了解她的个人情况(年龄、婚姻状况、子女情况、大致的工作经历等)、了解她的工作风格,等等,避免遇到一个很“混蛋”的上司,否则,你可能也会因为她而很快离职

 
 
 
  面试考官通常会问到的问题~
  同行别笑话,相信各位也不会是全程都是可以套用STAR原则的行为测试吧:)
  ◎请您介绍一下自己(别复述简历、突出亮点、3分钟为宜)
  ◎您从何渠道、怎样了解我公司、XX行业?
  ◎您应聘辞职位的动机?
  ◎上一次离职的原因?
  ◎您认为一名作为XX人员最需要具备的三项素质是什么?(如销售人员,可以说沟通能力、人际关系、自我激励三项,没有标准答案,只要你逐项展开后能自圆其说就好)
  ◎请详述您利用XX素质(如自我激励)取得成功的例子(或之前XX岗位解决XX类问题的例子,如应对难缠客户)?(STAR原则,包含:背景、当时面临的问题/要达成的目标、采取的行动、最后的结果,一定要答出实事、可以预先构思)。
  ◎您有没有问题想要了解?
——————————————————————————————————
来自:远播网人力资源频道(http://hr.114study.com/)
 
 
求职时应注意好自己的仪表是否端正,个人简历、身份证、毕业证这三样需带齐,最需要注意的问题就是去公司应聘时需问好公司的地址,争取一次就能找到。给别人留个好印象。
面试的时候穿的整洁点,表现的自信点,展现真实的自我 

从理论上讲,面试可以测评应试者任何素质,但由于人员甄选方法都有其长处和短处,扬长避短综合运用,则事半功倍,否则就很可能事倍功半。因此,在人员甄选实践中,我们并不是以面试去测评一个人的所有素质,而是有选择地用面试去测评它最能测评的内容。 

面试测评的主要内容如下: 

1、仪表风度 这是指应试者的体型、外貌、气色、衣着举止、精神状态等。像国家公务员、教师、公关人员、企业经理人员等职位,对仪表风度的要求较高。研究表明,仪表端庄、衣着整洁、举止文明的人,一般做事有规律、注意自我约束、责任心强。 

2、专业知识 了解应试者掌握专业知识的深度和广度,其专业知识更新是否符合所要录用职位的要求,作为对专业知识笔试补充。面试对专业知识的考察更具灵活性和深度。所提问题也更接近空缺岗位对专业知识的需求。 

3、工作实践经验 一般根据查阅应试者的个人简历或求职登记表,作些相关的提问。查询应试者有关背景及过去工作的情况,以补充、证实其所具有的实践经验,通过工作经历与实践经验的了解,还可以考察应试者的责任感、主动性、思维力、口头表达能力及遇事的理智状况等。 

4、口头表达能力 面试中应试者是否能够将自己的思想、观点、意见或建议顺畅地用语言表达出来。考察的具体内容包括:表达的逻辑性、准确性、感染力、音质、音色、音量、音调等。 

5、综合分析能力 面试中,应试者是否能对主考官所提出的问题,通过分析抓住本质,并且说理透彻、分析全面、条理清晰。 

6、反应能力与应变能力 主要看应试者对主考官所得的问题理解是否准确,回答的迅速性、准确性等。对于突发问题的反应是否机智敏捷、回答恰当。对于意外事情的处理是否得当、妥当等。 

7、人际交往能力 在面试中,通过询问应试者经常参与哪些社团活动,喜欢同哪种类型的人打交道,在各种社交场合所扮演的角色,可以了解应试者的人际交往倾向和与人相处的技巧。 

8、自我控制能力与情绪稳定性 自我控制能力对于国家公务员及许多其他类型的工作人员(如企业的管理人员)显得尤为重要。一方面,在遇到上级批评指责、工作有压力或是个人利益受到冲击时,能够克制、容忍、理智地对待,不致因情绪波动而影响工作;另一方面工作要有耐心和韧劲。 

9、工作态度 一是了解应试者对过去学习、工作的态度;二是了解其对现报考职位的态度。在过去学习或工作中态度不认真,做什么、做好做坏者无所谓的人,在新的工作岗位也很难说能勤勤恳恳、认真负责。 

10、上进心、进取心 上进心、进取心强烈的人,一般都确立有事业上的奋斗目标,并为之而积极努力。表现在努力把现有工作做好,且不安于现状,工作中常有创新。上进心不强的人,一般都是安于现状,无所事事,不求有功,但求无过,对什么事都不热心。 

11、求职动机 了解应试者为何希望来本单位工作,对哪类工作最感兴趣,在工作中追求什么,判断本单位所能提供的职位或工作条件等能否满足其工作要求和期望。 

12、业余兴趣与爱好 应试者休闲时爱从事哪些运动,喜欢阅读哪些书籍,喜欢什么样的电视节目,有什么样的嗜好等,可以了解一个人的兴趣与爱好,这对录用后的工作安排常有好处。 

13、面试时主考官还会向应试者介绍本单位及拟聘职位的情况与要求,讨论有关工薪、福利等应试者关心的问题,以及回答应试者可能问到的其他一些问题等 


求职的时候,首先要明白所要应聘的职位,你是否真的能够胜任,别到别人问时是一问三不知,那样可能连起码的机会都丧失,而且换言之,就算那个公司录用,你也会工作的很不快乐,因为你在这个职位上获得不了任何的满足感。工作是一个长期做的东西,如果你天天活在应付公事上,而痛苦的活着,那就没多少意义
用最简单的一句话来总结这个问题就是
“在求职的时候找份能让自己满足,让自己快乐的职位,”
附带一句:本人信奉 “穷”并快乐着 
呵呵 

 
 
面试时候人因为在乎才会紧张,你心里想着:此处不留爷,自有留爷处
战术上要藐视对手,战略上要重视对手
事前的准备还是必不可少,面试官和你差不多,你会打败他的
越放松越能表现出最好的状态
熟悉的问题要详细地回答,越流利越好
不会的问题,先重复一遍问题,或者让对方解释得更清楚一点,要得到哪部分的答案,这时你要拼命去阻止语言,回答要肯定,但是想办法用简单的语言把问题引到你熟悉的地方去!
祝你成功 
 
 
 
 
 
 
在应聘的过程中,总会遇到一些难缠的问题,令人一时不知如何招架。当然这些问题并没有标准答案,个人以为,胜出的关键,是事先对应聘单位需要什么样的人有所了解,既“投其所好”,又诚信而本色地展示自我。以下的这些问题,如果面试前能有所考虑,也许能助你取得更佳表现: 
1、对你来说工作中最重要的是什么? 
2、为什么愿意为本公司工作? 
3、你认为公司为什么要聘用你? 
4、如果我们聘用你,你会待多久? 
5、在你看来,我们会为你的职业生涯规划一个怎样的环境? 
6、你的长处是什么? 
7、什么是你最大的弱点?友情提示:不妨借自我批评来自我表扬。 
8、你如何评价你的前任老板? 
9、你的业余时间喜欢做什么? 
10、你觉得5年后你会是什么样? 
11、你对薪水的期望是多少? 
12、如果……的话,你怎么办?友情提示:面对这类情景模拟、角色扮演的问题,宜多提供几套解决方案,以体现思维的敏捷与多元。 
13、你对什么职位感兴趣? 
14、你先介绍一个自己。友情提示:宜把回答控制在5分钟以内,并能有实例说明问题。 
15、你对我们公司有什么想法?友情提示:这可体现你对公司前景的关注,切忌回答:“都很好,没什么想法。” 
当然,答案是灵活的(也有提示),我目的是想找到一个比较有代表性答案,也给大家以后作为参考. 
有15个题,请一一回答,高分悬赏100分,给大家评论的最佳答案,也许还会追加分的.
 
 
 
楼下那么多朋友使用我的答案 看来我的不错哦 

1:团队精神 
2:来之前对同类公司做了调查比较,认为咱们公司更有核心竞争力,技术方面更有发展,我看中的是公司的前景,因为只有公司发展才有个人的发展所以我愿意来咱们公司。 
3:因为经验(因为我好学、因为我勤奋、因为我所应聘的岗位与我所学的知识吻合,需要一个施展的平台) 
4:我会把在公司工作当作是自己的事业去经营,您想我会呆多久? 
5:能体现自己价值的环境。 
6:勤奋,待人诚恳热情,能很快进入工作角色。 
7:年轻没有经验,有时做事稍欠思考。 
8:有魄力,头脑冷静,非常精明(全挑好的说没错的,不知道原因的是猪) 
9:陪家人、上网、看书、运动 
10:会是咱们公司(你所应聘的部门)主管。 
11:我只想能在经济上独立,不再依靠父母。服从公司的薪金制度。我始终相信获得高薪是一个很享受的过程。 
12:(提示不错,看你反应) 
13:目前来说只对我应聘的职位最感兴趣。 
14:(按提示做,不用教吧) 
15:从公司发展的角度回答。 

我也是从第一次应聘一路走来,现在担任公司的人事经理为公司挑选人才,而我们公司的老板非常喜欢睿智的人,
所以如果我是你的面试官以上问题你如是回答的话我想你可以来我们公司上班的。也可能这样的回答在别的主考官那有不同的认识,
比如圆滑,世故等等……所以,从某种程度上来说,面试回答问题是一门艺术,有一定的运气,要分析对方的年龄性别职位等等。希望对你有所帮助。
 

1、对你来说工作中最重要的是什么?

2、为什么愿意为本公司工作?

3、你认为公司为什么要聘用你?

4、如果我们聘用你,你会待多久?

5、在你看来,我们会为你的职业生涯规划一个怎样的环境?

6、你的长处是什么?

7、什么是你最大的弱点?

友情提示:不妨借自我批评来自我表扬。

8、你如何评价你的前任老板?

 

 

 

时,有些话题是不应该谈了,谈了可能会影响求职成功,下面泉州人 才市场工作人员为我们罗列了18个忌谈话题,在求职前可以过目一下。

  1.政治话题。

  2.宗教话题。

  3.先前雇主产权性机密资料。不仅不该露,还会让面试官认为你这个人不值得信任。

  4.最近离婚“惊悚”细节。即使一切属实,提到这个话题则会显示你这个人不够谨慎。

  5.心爱明星球队或运动员。你最喜欢可能是面试官最讨厌,即使官凭这一点就反对你很不合理性,可是也无可厚非。

  6.子女或孙子女甚至到自吹自擂地步。即使官桌上摆着自己家庭照,你袋里塞满成叠小孩照片颇不符合面试场合。

  7.内心性别或种族偏见。你或许以为面试官与你志同道合因而大书特书,其实这样不啻是自掘坟墓,职场里不容许性别和种族歧视存在。

  8.你如何地厌恶数学、科学或其他特别学科,虽然表面上看来似乎与此职位无关。(公司主管阶级也许正巧期望员工擅长数理。)

  9.丝毫无益于前途个人憎恶。举例来说,你提到如果你不幸天生一头红发,你绝对会把它染成另外一种颜色,而你也许会发现公司总裁碰巧就生了一头火焰般红发。当然,守时就是很安全话题,譬如说你这人十分准时,对老爱迟到人感到很头痛。

  10.为面试官取得某物或某种特殊商品提议。举例来说,“我能为你买到批发价”或许是事实,或换了个场景会表现出你待人热忱,可是在面试则格格不入,而且会显得你在贿赂面试官。

  11.谈到你刚搬离之某地区天气或交通,或任何风土人物,你把它们批评得体无完肤。(你也许碰巧批评到面试官家乡,而面试官又正巧深感怀乡之情。)

  12.抱怨面试官让你久等,或你填写工作申请表或接受打字测验房间热得会烤死人。你想表现给面试官是你积极面,一味抱怨则适得其反。

  13.漫无焦点闲扯淡。你回答完问题或作完一段评论,就此打住,等待下文。话点到为止,喋喋不休徒然无益。

  14.将赞美得天花乱坠。即使你诚心佩服其人,在这种情况下,你赞美可能遭到误解。当然,你可以这麽说:“与您面晤是一种愉悦,谢谢您。”

  15.负面肢体语言。千万不可坐没坐相,掇弄头发或修指甲,或偷偷脱下鞋子。

  16.老提大人物名号以自抬身价。举例说,你前任老板是个室内设计师,你曾协助她装潢某位名人宅邸,名人排场和派头并不值得你大书特书。假使你真与某些社交名流为友,留心别造成你在吹嘘自己印象。

  17.透露力有未逮之处。举例说,由于家累,你无法同意下午五点以后留下来加班,你没有必要主动自暴其短。这条策略当然也有例外,如果雇主明言员工必须同意偶尔留下来加班,而且这是该职位先决条件,你就一定得实话实说。请记住:某些状况临场会有变化,要自行斟酌;万一到时候公司对你提出某种特殊要求,说不定你状况已有改变。

  18.谈话偶尔会陷于沈默,为了化解冷场情况,你脑中浮现念头,不可随意脱而出。务必叁思而后言

 

 

多线程的优点

  • 无需跨进程边界;
  • 程序逻辑和控制方式简单;
  • 所有线程可以直接共享内存和变量等;
  • 线程方式消耗的总资源比进程方式好;

多线程缺点:

  • 每个线程与主程序共用地址空间,受限于2GB地址空间;
  • 线程之间的同步和加锁控制比较麻烦;
  • 一个线程的崩溃可能影响到整个程序的稳定性;
  • 到达一定的线程数程度后,即使再增加CPU也无法提高性能,例如Windows Server 2003,大约是1500个左右的线程数就快到极限了(线程堆栈设定为1M),如果设定线程堆栈为2M,还达不到1500个线程总数;
  • 线程能够提高的总性能有限,而且线程多了之后,线程本身的调度也是一个麻烦事儿,需要消耗较多的CPU

多进程优点:

  • 每个进程互相独立,不影响主程序的稳定性,子进程崩溃没关系;
  • 通过增加CPU,就可以容易扩充性能;
  • 可以尽量减少线程加锁/解锁的影响,极大提高性能,就算是线程运行的模块算法效率低也没关系;
  • 每个子进程都有2GB地址空间和相关资源,总体能够达到的性能上限非常大

多进程缺点:

  • 逻辑控制复杂,需要和主程序交互;
  • 需要跨进程边界,如果有大数据量传送,就不太好,适合小数据量传送、密集运算
  • 多进程调度开销比较大;

最好是多进程和多线程结合,即根据实际的需要,每个CPU开启一个子进程,这个子进程开启多线程可以为若干同类型的数据进行处理。当然你也可以利用多线程+多CPU+轮询方式来解决问题……

方法和手段是多样的,关键是自己看起来实现方便有能够满足要求,代价也合适。

 
 
 
 
 
 
 
2011-08-31

jincm

发件人: jincm13
发送时间: 2011-08-30  23:08:04
收件人: jincm
抄送:
主题: jl 1293865903
ipv6
英语简历
kdump
git
l i n u x 启 动 过 程 综 述 :
http://wenku.baidu.com/view/cd34f8126c175f0e7cd137b9.html
 
Good morning, my name is张轩铭, You can call me Louis if you like.It is really a great honor to have this for the English race ,I like many  sth .For example:I like play football, basketball ,I like ride bicycle. I am 10 years old, reside in Jing’fan district. I am clever, energetic and confident.  I feel that my strongest asset is I like learn.I feel happy when I Finished my homework . I have some interest, singing drawing。 I think   I am able to  under great pressure singing and drawing.
That’s me. It is my great pleasure to have a chance to present myself to you.Thank you!
 
 
 
 
内核版本号: 2.6.23
当PC按下电源,CPU加电后,自动从0xFFFF0处开始执行代码,这个地址位于BIOS中。接着BIOS开始一系列系统检测,并在内存物理地址0处初始化中断向量,供Linux内核启动过程中进行调用。此后,它将启动设备的第一个扇区(磁盘引导扇区,512Bytes)读入内存绝对地址0x7C00 处,并跳到这个地方开始执行(arch/i386/boot/header.s)。
注意,现在程序现在运行在16位实模式下,使用64k的段。 segment(段地址) : offset(偏移)构成了逻辑地址,段地址乘以 16 再加上 偏移 ,就得到 linear address(线性地址)。header.s(arch/i386/boot/header.s)中包含了大量的.h(头文件)。
 
18 #include
  19 #include
  20 #include
  21 #include
  22 #include
  23 #include
  24 #include "boot.h"
这些头文件包含了许多重要的宏和声明,在Linux 内核的其他程序中,都会用到。
  .section ".header", "a"
                  .globl  hdr
  hdr:
上面开始了header.s的最重要的部分,hdr数据段存储了Linux kernel启动过程所需的信息数据,它的结构struct boot_params定义在 include/asm-i386/bootparam.h中。struct boot_params非常重要,它包含了其他的一些struct,并不是很复杂。下面开始了header.s程序,开始了header.s的真正的执行。
  .section ".inittext", "ax"
  start_of_setup:
它首先初始化 Disk Controller(磁盘控制器),是通过 int 0x13进行的。然后设置寄存器,Zero the bss(初始化数据段),接着 call main(调用 main)跳转到:arch/i386/boot/main.c的main()函数开始执行。(终于见到我们的可亲可爱的C了,不过别高兴太早喔:~)
下面我们看看main()都做了什么(注:linux kernel 中有太多main函数,程序并不是总是从main开始执行)
              copy_boot_params();              复制 boot header 到 "zeropage"
              validate_cpu();                   确保支持当前运行的CPU
            set_bios_mode();                告诉BIOS什么CPU我们将要去运行
            detect_memory();                检测Memory
            keyboard_set_repeat();        设置键盘 repeat rate (Why ?)
            set_video();                        设置 Video mode
            query_mca();                        获得 MCA 信息
            query_voyager();                  Voyager ?
            query_ist();                            获得  Query Intel SpeedStep (IST) 信息
              query_apm_bios();                获得APM 信息
              query_edd();                          获得EDD信息
              go_to_protected_mode();    最后一件事,也是最重要的一件事,进入保护模式
上面只是函数调用的大致顺序,并不是真正的程序,通过这些函数我们可以一目了然地看到内核的执行过程(还是C好啊,不像汇编,得一行一行地看),当然你要了解更多的细节,可以追踪到每一个函数中去。它通过上方面的检测,不断地填充struct boot_params结构,记住,struct boot_params 是很重要的喔。其他函数我们就不研究了,单看最后一个, go_to_protected_mode(),究竟在哪儿?  arch/i386/boot/pm.c
void go_to_protected_mode(void)
依次调用了如下函数:
              realmode_switch_hook();        Hook before leaving realmode
              move_kernel_around();          把 Kernel/setup 移到 它们最终的地方 
            enable_a20()                      开启 a20 门
              reset_coprocessor();              重置 coprocessor(协处理器)
            mask_all_interrupts();            Mask(屏蔽所有中断)
            setup_idt();                          开始转入保护模式……
              setup_gdt();
              protected_mode_jump(boot_params.hdr.code32_start,  (u32)&boot_params + (ds() << 4));
    protected_mode_jump ,传入了boot_params->hdr ->code32_start作为第一个参数, 该参数在header.s
中(arch/i386/boot/header.s) 设置如下 :
 
code32_start:                                                    # here loaders can put a different
                                                                              # start address for 32-bit code.
#ifndef __BIG_KERNEL__
                              .long    0x1000                  #    0x1000 = default for zImage
#else
                              .long    0x100000              # 0x100000 = default for big kernel
#endif
显然是跳转到 0x1000或0x100000处继续执行。
第二个参数,就是 boot_params的线性地址,注意,现在仍是实地址模式,线性地址为段地址乘16加上偏移。

(啊,天哪,又到 汇编里去了,AT&T汇编),在arch/i386/boot/pmjump.S中,
.globl  protected_mode_jump
              .type    protected_mode_jump, @function

              .code16
终于找到了,arch/i386/boot/pmjump.S并不大,只有54行。我们看看它做了什么:
            xorl      %ebx, %ebx                          # Flag to indicate this is a boot
              movl      %edx, %esi                          # 传递过来的boot_params地址,转移到 ESI寄存器
              movl      %eax, 2f                              # Patch ljmpl instruction 要跳转的地址 放到 2f 处 
........
1:   
            movw      $__BOOT_DS, %cx       

              movl      %cr0, %edx
              orb        $1, %dl      # Protected mode (PE) bit  设置CR0的PE位,进入保护模式!!
              movl      %edx, %cr0
很简单嘛 :~)
  # Jump to the 32-bit entrypoint      进入32位程序段

              .byte    0x66, 0xea                          # ljmpl opcode  跳转指令码 (为什么不用汇编呢?不太清楚)
2:          .long    0                                            # offset                偏移地址   
              .word    __BOOT_CS                            # segment      段      类似于 ljmp segment : offset;

              .size    protected_mode_jump, .-protected_mode_jump
现在我们到哪儿了呢,想必大家都迷住了吧。我找了半天,终于找到了: arch/i386/boot/compressed/head.s
  **********    head.S      contains the 32-bit startup code.
NOTE!!! Startup happens at absolute address 0x00001000, which is also where
  * the page directory will exist. The startup code will be overwritten by
  * the page directory.
必定是跳转到这里了,Startup 被加载到绝对地址 0x00001000处。head.s的作用想必大家已经猜到了吧。既然在compressed文件夹中,肯定是和压缩有关的啦。对!

.text

#include
#include
#include
#include

.section ".text.head","ax",@progbits
              .globl startup_32                      定义了startup_32函数,从这儿开始执行

startup_32:                                              程序开始……
接下来,startup_32要检测是不是被加载到预定的位置了呢,怎么检查呢,这里用了一个技巧:
            leal (0x1e4+4)(%esi), %esp                还记得 ESI中存的是boot_params的地址吗?这条指令就是把                                                                          栈指针指向boot_params的一个成员,而这个成员                                                                                          u32 scratch就是专为程序检查是否被加载到预定位置设置的作                                                                          为栈使用的
                                                     
              call 1f                                                当 call时,一条指令的指针要入栈,就是保存到 scratch中了
1:          popl %ebp                                          把指令指针放到 EBP中,EBP存的是当前的位置
              subl $1b, %ebp                1b指的是指令在程序段中的偏移,两者之差,就是程序被加载的address了


* %ebp contains the address we are loaded at by the boot loader and %ebx
  * contains the address where we should move the kernel image temporarily
  * for safe in-place decompression.
  * 现在 EBP中含有我们被加载的地址,而 EBX 中含有我们应该暂时把内核 image移动到的安全位置的地址

接着,就开始复制并移动内核,接着跳到移动后的地址开始执行,并为解压过程设置栈(stack)
 
* Do the decompression, and jump to the new kernel..
*开始解压缩,然后跳到新的内核开始执行
              movl output_len(%ebx), %eax                    #将参数依次入栈
              pushl %eax
              pushl %ebp          # output address
              movl input_len(%ebx), %eax
              pushl %eax          # input_len
              leal input_data(%ebx), %eax
              pushl %eax          # input_data
              leal _end(%ebx), %eax
              pushl %eax          # end of the image as third argument
              pushl %esi          # real mode pointer as second arg
              call decompress_kernel
              addl $20, %esp            恢复 栈
              popl %ecx
如果需要,还要再移动内核,然后:
  * Jump to the decompressed kernel.

              xorl %ebx,%ebx
              jmp *%ebp                    EBP 中有解压后新内核的地址

    先说下内核的的解压缩。
    内核解压缩的  decompress_kernel  在arch/i386/boot/compressed/misc.c中定义,
asmlinkage void decompress_kernel(void *rmode, unsigned long end,
                                              uch *input_data, unsigned long input_len, uch *output)
{
……
……
              putstr(" Uncompressing Linux... ");         很高兴啊,Uncompressing Linux...
              gunzip();                                          是专门解压内核的gzip,它涉及到同目录下的relocs.c文件,
                                                                        还有 lib/inflate.c(主要的解压例程)
              putstr(" Ok, booting the kernel.\n");        很熟悉吧,Ok,booting the kernel.
              return;
}

好了,继续下去,现在Linux应该是跳转到新的解压缩后的位置开始执行了吧(跳来跳去真辛苦啊)
到哪儿了呢? 还是汇编~:(        arch/i386/kernel/head.s           head.s文件,578L(行代码,不小啊,不过这算是最后一个啦,坚持哈) 
head.s 虽然大,但很有条理:
      重新设置段
      把BSS段设置为0
      把 boot_params的参数重新COPY到安全的地方
      Initialize page tables 初始化页表
      为SMP设置页表(如果有的话)
  * Enable paging 
              movl $swapper_pg_dir-__PAGE_OFFSET,%eax
              movl %eax,%cr3                  # set the page table pointer..设置页指针
              movl %cr0,%eax
              orl $0x80000000,%eax
              movl %eax,%cr0              # ..and set paging (PG) bit  启动分页
              ljmp $__BOOT_CS,$1f        # Clear prefetch and normalize %eip 设置EIP
1:
              lss stack_start,%esp          #Set up the stack pointer    设置 栈 指针

              pushl $0                            #Initialize eflags.    把EFLAGES设置为0
              popfl

    检测 CPU 类型
    setup_idt    设置 IDT表
    include arch/i386/xen/xen-head.S
…………

360(Line)               jmp start_kernel                跳转到      init/main.c
现在,终于熬过了 AT&T汇编 ,是不是很有成就感呢,下面的start_kernel要是也讲习懂了,Linux内核的其他部分,就不在话下了,加油啊,我现在水平还不够,只能列出start_kernel源码,大家一同分析
513 asmlinkage void __init start_kernel(void)
........

至此,内核正常启动起来了。太高兴了,现在还没有研究到  start_kernel 内部,再接再厉!!
 
 
 
写这篇东西的目的是对于这些天看bootloader和kernel启动的一点总结。写Linux启动的文章很多,但是写Header.S是怎么被执行到的不多,这也造成了我花了很多时间来寻找为什么入口不在0x7c00。现在终于弄明白了。
arch/x86/boot/Header.S是Kernel启动的第一段代码,它使用AT&T的汇编格式编写,和标准的Intel汇编格式有很大的区别。具体对于AT&T汇编的解释可以参照 Linux  汇编语言开发指南。在MBR的介绍的时候,曾经说过0x7c00是最简单的MBR的开始代码,并且MBR会把Kernel的Header.S加载进入这个地址并且把执行权交给kernel。但是这是在很久以前的事情了,随着越来越复杂的Bootloader, 例如Grub, 介入和Linux Kernel放弃直接从软驱启动Header.S的代码也进行了改变。
首先我们来看一下Header.S是怎么组织的。Header.S是在Setup.ld的指引下进行编译链接在内存中。第一个512字节的内容是为了兼容软驱时代而存在的。它正好被放在一个磁盘扇区之内。当其作为入口代码被执行的时候会在屏幕上打印出错代码“Direct booting from floppy is no longer supported. Please use a boot loader program instead. Remove disk and press any key to reboot . . .”。512字节中还包含一部分的kernel的属性,称之为hdr(Header)。这些属性也是为了兼容性而保留的。# Kernel attributes; used by setup. This is part 1 of the# header, from the old boot sector..section ".header", "a".globl hdrhdr:setup_sects: .byte 0 /* Filled in by build.c 告诉bootloader应该加载多少扇区作为kernel的初步启动代码*/root_flags: .word ROOT_RDONLYsyssize: .long 0 /* Filled in by build.c 告诉bootloader应该加载多少个16字节的数据作为保护模式的代码*/ram_size: .word 0 /* Obsolete */vid_mode: .word SVGA_MODEroot_dev: .word 0 /* Filled in by build.c */boot_flag: .word 0xAA55 /*这是boot Sector的签名,bootloader应该检查这个字以检查启动代码是否合法*/真正的kernel入口从第二个512字节开始,当今的bootloader把控制权交到这个入口。入口就是一个jmp。作用是跳转到start_of_setup之后的63个字节是Header字段们。具体的定义可以参见Documentation/x86/boot.txtstart_of_setup的主要目的就是设置堆栈,初始化BSS,最终将控制权交给main.c中的main().下面是Kernel在内存中的分布情况,基本可以解释Header.S的内容
大杂烩_第1张图片
此后的过程,网上介绍的都很多,我就不重复了。
年纪大了,离开技术也很长时间了,想要完全捡起来是比较累的。还好有很多大神都写了很多文章,让我受益匪浅
 
本文详细分析了Linux桌面操作系统的启动过程,涉及到BIOS系统、LILO 和GRUB引导装载程序,以及bootsect、setup、vmlinux等映像文件,并结合引导、启动原理和具体的代码实现机制由浅入深地进行了分析。
   
初学者刚接触
Linux桌面系统会感觉系统启动速度较慢,那么,为什么它的启动速度慢呢?本文就桌面系统的引导和启动过程展开分析,以期对初学者熟悉Linux有所帮助。

一、Linux系统的引导过程


    简单地说,系统的引导和启动过程就是计算机加电以后所要发生的事情, 比如,加电自检、引导程序的拷贝和执行、内核的拷贝和执行及用户程序的执行等。这个过程就是常说的bootstrap,我们把这些归纳为5个过程, 下面来逐一分析。
   1
BIOS执行阶段

    现代计算机系统的存储机制是“挥发”性的,一旦关机断电, 存储在内存中的信息。连同操作系统本身的映射就丢失了。所以,必须把操作系统(内核) 的映像存储在某些不“挥发” 的介质中,使得开机加电时由一个不“挥发”介质加载操作系统,并转入运行的过程。这就是引导,也称自举。这些不“挥发” 介质通常是指硬盘或软盘, 也可以是EPROM 或F1ash存储器,还可以是网络中别的节点。要想在开机时从不“挥发” 介质装入操作系统的映像,系统就要CPU在开机时能执行一段程序,这段程序本身必须存储在作为系统内存一部分的EPROM 或Flash等存储器中, 而且它们知道怎样才能从不“挥发” 介质装入操作系统的映像。事实上,各种CPU 被设计成一个加电后就从某个特殊的地址开始执行指令,所以这些不挥发存储器就被安置在这个位置上。比如在i386CPU系统中,计算机在加电的那一刻,RAM 芯片中所包含的是随机数据,还没有操作系统,在此刻有一个特殊硬件电路在加电时会在C P U 的一个引脚上产生一个RESET
逻辑值,硬件电路设置RESET逻辑值以后,代码寄存器CS的内容为0xffff,而指令寄存器的内容为0。也就是说,CPU要从线性地址0xffff0开始处取第一条指令。硬件电路再把这个物理地址映射到RAM 芯片中,BIOS就存放在这里,这时候处理器就开始执行BIOS代码了。我们都知道BIOS中包含了几个中断驱动的低级程序,可以使用它们来初始化一些硬件设备,但它们是在实模式下工作的。其中实模式地址是由一个seg段和一个off偏移量组成的,相应的物理地址可以使用“seg*16 off” 来计算。

接下来BIOS要做的就是执行一系列的测试,看看到底系统中有什么设备,以及这些设备是否正常工作。在执行这个过程时,会显示一些如BIOS系统的版本号等信息。当检测到可用的设备后就进行一些初始化工作,比如初始化PCI设备以避免I RQ线与I/O端口的冲突,最后显示系统中安装的所有PCI设备的一个列表。

在早期的计算机系统中, 类似于BIOS功能的程序非常小,并且不同时期这段程序的设计也不相同。在PC发展早期, 由于当时存储芯片大小的限制,使得该段程序的目的和功能都很单一 再说,如此小的一段程序很难依靠自身的力量把庞大的操作系统的映像从磁盘里读进来。于足,人们又提出了引导扇区的概念,使得存储在引导扇区中的程序来协助BIOS完成操作系统的引导工作。但是,引导扇区的大小也不过5l2个字节, 能够容纳的信息和代码也很有限,所以说,操作系统的引导代码是一个循序渐进的过程,它分布在不同的角落。当BlOS根据设置将相应的启动设备的第一个扇区的内容拷贝到RAM 中时, 这些内容被放在物理地址0x0O007c00开始的地方。此后,系统就开始跳到这个地址,并开始执行相应的代码。

    2 .Boot Loader阶段

如此小的引导记录要完成这么大的任务,压力是不小的,所以引导扇区的程序及辅助程序必须很简练,它们都采用汇编语言编写,这些源代码都存放在arch/ 下具体CPU名下的boot目录中,如bootsect.S、setup.S和video.S。其中bootsect.S是Linux引导扇区的源代码。这样,经过编译、汇编和连接以后,形成了3个组成部分,即引导扇区的映像bootsect、辅助程序setup及内核映像本身(通常是vmlinux,有时也用uImage)。严格地说,bootsect和setup并不是内核的一部分。

引导装载程序就是由BIOS来把操作系统的内核映像装入到RAM 中所调用的一个程序。这里我们选择用硬盘启动来说明引导装载程序的执行过程。说起硬盘,大家都知道它是由许许多多的扇区和柱面组成,其中把第一个扇区称为主引导记录(Master Boot Record,MBR),在该扇区中包含了分区信息和一个小程序,这个小程序用来装载被启动的操作系统所在分区的第一个扇区。说到这里我们就要注意,这一段Windows系统和Linux系统是有区别的:Windows
系统使用分区表中所包含的一个active标志来标识这个分区,当然这个分区也可以使用FDISK之类的程序进行设置,但有一个条件就是只有那些内核映像存放在活动分区的操作系统才可以启动。Linux系统的处理方法要更灵活些,它使用GRUB或是LILO程序把这个包含在MBR 中的不完善引导装载程序给替掉。装入程序在启动过程中被执行时,用户可以选择装入哪个操作系统。但LILO和GRUB的工作原理又不尽相同,关于它们的详细介绍可以查阅相关资料。LILO 引导装入程序被分为两部分,MBR 或分区引导扇区包括一个小的引导装入程序,由BIOS把这个小程序装入从地址0xO0007c00开始的RAM 中,这个小程序又把自己移到地址0x0009a000, 然后建立实模式栈。接着把LILO 的第二部分装入到从地址0x0009b000开始的RAM 中, 第二部分又读取可用操作系统的映射表,并给用户一个提示符号。这个时候用户可以从中选择一个操作系统进行启动,引导装入程序就可以把相应分区的引导扇区拷贝到RAM 中并执行,或者是直接把内核映像拷贝到RAM 中。在拷贝内核的过程中,首先是把内核映像所集成的引导装入程序拷贝到地址0xO009000,然后把setup()代码拷贝到地址0x00090200,最后把内核映像的其余部分拷贝到地址0x00010000或0x00100000
, 最终系统执行跳到setup()代码上。

    3 .Setup函数执行阶段
Setup() 是汇编语言函数代码,它在内核的编译链接过程中被放到内核的引导装入程序之后,也就是内核映像文件的偏移量0x200地址处,实际物理地址0x00090200开始的RAM 中。因为内核不依赖于BIOS, 虽然BIOS已经初始化了大部分硬件设备,但Linux系统还要以自己的方式重新初始化设备,以增加可移植性和健壮性。还要注意的是,内核是工作在保护模式下的。总的来说,setup()函数的作用就是初始化计算机中的硬件设备,并为内核程序的执行建立环境。比如,检查系统中可用的RAM 数量、设置键盘重复延时速率、显卡等其他设备的检查,以及初始化和切换实模式到保护模式等。最后,系统执行跳到
startup_ 32汇编函数上。

二、Linux系统的启动过程


当内核映像被装载到RAM芯片后,就开始执行内核的代码,这意味着引导完成,开始进入Linux系统的启动过程。
    1 . Startup_32函数的执行阶段
在系统的启动过程中有两个startup_320()
函数,即位于arch/i386/boot/compressed/head.S文件中实现的。就是在setup()函数结束以后,该函数就被移动到物理地址0X00100000或0x00001000处,这取决于内核映像是被装到RAM 的高位还是底位。因为内核映像文件在编译连接时所产生的大小不同, 如zImage和bzImage大小相差很大,在装载解压时所使用的缓冲区也不同,所以他们所处的物理地址是不同的。不过解压后的映像最终都处在物理地址0x00100000开始的位置。然后跳转到这个地址处执行解压后的映像中的另一个startup_32()函数,这个函数为第一个Linux进程(进程0)建立执行环境,该函数初始化段寄存器、为进程0建立内核态堆栈等一系列活动。最后识别处理器模式,并跳转到start_kernel()函数。将Linux内核的映像装入内存,并且setup()函数做了一些必要的准备,就该startup_32函数开始干活了。CPU通过一条长程转移指令转到映像代码段开头的入口startup_32处,对于SMP结构的系统来说,这个时候运行的只是其中的一个处理器,就是所谓的主CPU。其他的次CPU 处于停机状态, 等待主CPU 的启动。次CPU在受到启动进入内核时,同样也要从startup_32开始执行,所以从startup_32开始的代码是公共的。但有些操作仅由主CPU
来执行,另一些操作由次CPU执行, 这并不意味着主CPU 和次CPU 并发地执行这段程序。实际上,主CPU 是开路先锋,首先执行这段程序,完成以后逐个启动次CPU执行,并且等待其完成。所以,在同一时间系统中最多只有一个处理器在执行这段程序。不管是主CPU还是次CPU,进入startup_32时都运行在保护模式下的段式寻址方式,等到第二个startup_32函数执行到最后时, 就开始执行start_kernel函数。

    2 . Start_kernel函数执行阶段
到了这个阶段才是真正的内核初始化阶段,几乎内核每个部分的初始化工作都是由这个函数来完成,如页表的初始化、系统日期和时间的初始化等。从某种意义上说,函数Start_kernel就好像一般可执行程序中的主函数
main(),系统在进入这个函数之前已经进行了一些最底限度的初始化,为这个函数的执行建立起了一个环境,创造了必要的条件。当然,这个函数还要继续进行内核的初始化,甚至可以说内核的初始化在这里才真正开始,但它是较高层次的初始化。这个函数的代码在init/main.C中,从现在开始初始化流程不与CPU 类型和系统启动;方式相关了。此时系统运行在CPU的特权级,也就是我们常说的内

核模式下。start_ kernel函数主要完成一些数据结构的初始化,主要包括
如下:
printk(linux_banner) 输出
Linux
版本信息;
Setup_arch()(arch/i386/kernel/traps.C) 执行与体系结构相关的设置,如内存分析分配内
核页表, 处理启动命令行等;
Trap_init() 设置各种人口地址,如异常事件处理程序入口, 系统调用人口,
IniLIRQ() 初始化
IRQ 中断处理机制;

Sched_init() 设置并启动第一个进程ini_task0 l
Softirq_init() 对软中断子系统进行初始化;
Time_initO 读取实时时间,重新设置时钟中断irq0的中断服务程序入口等;
Console__init() 初始化控制台和显示器;

Init_modules() 初始化
kernel__m odule l
Kmem_cache_init0 对内存的slab分配机制初始化{
Mem_init() 虚拟内存计算以及初始化;
Kmem_cache_size_jnit()
初始化slab分配器中的内部cashe和全局cashel
Fork_init() 定义了系统的最大进程数目。此外,还有一些对其他支持的初始化。
随后,进入reset—init0函数调用kernel__thread()函数为进程1创建init内核线程,这个内核线程又会创建其他的内核线程程序,并执行/sbin/init程序。此后start_kernel进入一个空闲等待循环(cpu_idle()), 使用系统初始化后CPU 的空闲时间片,init内核线程首先要锁定内核,然后调用do_basic_setup()来初始化外部设备及加载驱动程序。在do_basic_setup()函数调用完之后,init()函数会释放初始化函数所用的内存,并且打开/dev/console设备重新定向控制台,使用系统调用
execve来执行用户态程序/sbin/init。

到目前为止,Linux内核的初始化工作完成,此时系统中已经存在5个运行实体:init线程、kflushd核心线程、kupdate核心线程、kswapd核心线程和keventd核心线程。本身所在的执行体其实就是一个线程,不过是由手工创建的。它在创建了init0线程以后就进入cpu_idle循环, 不会在进程列表中出现。如果使用pstree命令,则不能列出该线程。
最后,init程序会根据inittab文件中的设置信息启动相应的用户程序。当init得到控制并启动mingetty显示登录界面及提示后,系统启动完成。


三、小结


从加电自检开始, 引导过程要经历数十个回合来拷贝执行,使用不同的引导装载程序所使角的流程也不同。当把内核映像拷贝到RAM中展开后, 内核开始掌管主权,开始了自己的 “事业”。内核线程init()的任务仍然还是初始化,当然是进一步的、更高层次上的初始化。
事实上,从引导结束、CPU转入内核映像开始,一共有三个阶段的初始化:第一阶段是从进入startup_32()开始, 到进入start_kernel()或start_ secondary()。这个阶段主要是对CPU 自身的初始化,主CPU和次CPU 都要经历这种初始化,但是主CPU要多一些贡献。第二阶段是从进入start_kernel()开始,到进入cpu_idle()。这个阶段主要是对系统的宝贵资源的初始化, 仅由主CPU进行。第三阶段是init()的执行,这是对系统接近用户层的初始化, 这个时候表面上看已经没:有主CPU和次CPU

之分,但谁执行init()取决于竞争调度的结果。事实上,由于主CPU预先留了一手, 实际上还是由它来执行
 
 
 
 
 
 
 
 
第一部分:内核的引导(核内引导)

  Red Hat9.0可以使用lilo或grub等引导程序开始引导Linux系统,当引导程序成功完成引导任务后,Linux从它们手中接管了CPU的控制权,然后CPU就开始执行Linux的核心映象代码,开始了Linux启动过程。这里使用了几个汇编程序来引导Linux,这一步泛及到Linux源代码树中的“arch/i386/boot”下的这几个文件:bootsect.S、setup.S、video.S等。

  其中bootsect.S是生成引导扇区的汇编源码,它完成加载动作后直接跳转到setup.S的程序入口。setup.S的主要功能就是将系统参数(包括内存、磁盘等,由BIOS返回)拷贝到特别内存中,以便以后这些参数被保护模式下的代码来读取。此外,setup.S还将video.S中的代码包含进来,检测和设置显示器和显示模式。最后,setup.S将系统转换到保护模式,并跳转到 0x100000。

  那么0x100000这个内存地址中存放的是什么代码?而这些代码又是从何而来的呢?

  0x100000这个内存地址存放的是解压后的内核,因为Red Hat提供的内核包含了众多驱动和功能而显得比较大,所以在内核编译中使用了“makebzImage”方式,从而生成压缩过的内核,在RedHat中内核常常被命名为vmlinuz,在Linux的最初引导过程中,是通过"arch/i386/boot/compressed/"中的head.S利用misc.c中定义的decompress_kernel()函数,将内核vmlinuz解压到0x100000的。

  当CPU跳到0x100000时,将执行"arch/i386/kernel/head.S"中的startup_32,它也是vmlinux的入口,然后就跳转到start_kernel()中去了。start_kernel()是"init/main.c"中的定义的函数,start_kernel()中调用了一系列初始化函数,以完成kernel本身的设置。start_kernel()函数中,做了大量的工作来建立基本的Linux核心环境。如果顺利执行完start_kernel(),则基本的Linux核心环境已经建立起来了。

  在start_kernel()的最后,通过调用init()函数,系统创建第一个核心线程,启动了init过程。而核心线程init()主要是来进行一些外设初始化的工作的,包括调用do_basic_setup()完成外设及其驱动程序的加载和初始化。并完成文件系统初始化和root文件系统的安装。

  当do_basic_setup()函数返回init(),init()又打开了/dev/console设备,重定向三个标准的输入输出文件stdin、stdout和stderr到控制台,最后,搜索文件系统中的init程序(或者由init=命令行参数指定的程序),并使用 execve()系统调用加载执行init程序。到此init()函数结束,内核的引导部分也到此结束了,

 
 

1.   概述
    对于软件版本管理工具,酷讯决定摒弃CVS而转向Git了。
    为什么要选择Git? 你真正学会使用Git时, 你就会觉得这个问题的回答是非常自然的。然而当真正需要用文字来回答时,却觉得文字好像不是那么够用。 咳,该则么回答呢?
    其实,关键的问题不在于如何回答这个问题。 问题的关键是公司已经决定使用它了。那么,我们的程序员们! 请开动你们的浏览器,请拿出你的搜索引擎工具,去自己发掘答案吧。在这里,我只能给你们一个最朦胧的感觉。
    Git和 CVS、SVN不同,是一个分布式的源代码管理工具。Linux内核的代码就是用Git管理的。它很强,也很快。它给我们带来的直接好处有:
1.       傻瓜都会的初始化,git init, git commit -a, 就完了。对于随便写两行代码就要放到代码管理工具里的人来说,再合适不过。也可以拿git做备份系统,或者同步两台机器的文档,都很方便。
2.         绝大部分操作在本地完成,不用和集中的代码管理服务器交互,终于可以随时随地大胆地check in代码了。 只有最终完成的版本才需要向一个中心的集中的代码管理服务器提交。
3.         每次提交都会对所有代码创建一个唯一的commit id。不像CVS那样都是对单个文件分别进行版本的更改。所以你可以一次性将某次提交前的所有代码check出来,而不用考虑到底提交过那些文件。(其实SVN也可以做到这点)
4.         branch管理容易多了,无论是建立新的branch,还是在branch之间切换都一条命令完成,不需要建立多余的目录。
5.         branch之间merge时,不仅代码会merge在一起,check in历史也会保留,这点非常重要。
6.         … 太多了
    当然,Git也会带给我们一些困难,首先,你想要使用好git,就要真正明白它的原理,理解它的观念,对以那些CVS的熟手来说,改变你已经固有的纯集中式源代码管理的观念尤为重要,同时也会让你觉得有些困难。在使用git的初期,你可能会觉得有些困难,但等你逐渐明白它时,你绝对会喜欢上它。这是一定的,就像我问你“喜欢一个温吞如水、毫无感觉的主妇,还是喜欢一个奔放如火,让你爱的痴狂恨的牙痒的情人”一样毋庸置疑。
    下面,就让我们进入学习Git之旅…
    请记住,这只是一个非常简单而且初级的教程, 想要成为git的专家,需要各位同事不断的自己深入挖掘。
2.   Git基础命令

2.1   创建Git库—git-init
    你们曾经创建过CVS的库么?应该很少有人操作过吧?因为很多人都是从CVS库里checkout代码。同样,在合作开发中,如果你不是一个代码模块的发起者,也不会使用到这个命令,更多的是使用git-clone(见2.7节)。但是,如果你想个人开发一个小模块,并暂时用代码管理工具管理起来(其实我就常这么做,至少很多个人开发过程都可以保留下来,以便备份和恢复),创建一个 Git库是很容易和方便的。
对于酷讯来说,当一个代码的Git库创建后,会添加代码文件到库里,并将这个库放到公司一个专门用来进行代码管理的服务器上,使大家可以在以后clone(不明白?没关系,继续往后看就明白了)它。对于个人来说,你可以随便将这个库放到哪里,只要你能访问的到就行。

    创建一个Git库是很容易和方便的,只要用命令 git-init 就可以了。在Git1.4之前(包括git1.4)的版本,这个命令是git-init。
a)         $ mkdir dir
b)        $ cd dir
c)         $ git-init
    这样,一个空的版本库就创建好了,并在当前目录中创建一个叫 .git 的子目录。以后,所以的文件变化信息都会保存到这个目录下,而不像CVS那样,会在每个目录和子目录下都创建一个讨厌的CVS目录。
在.git目录下有一个config文件, 需要我们添加一下个人信息后才能使用。否则我们不能对其中添加和修改任何文件。
    原始的config文件是这样的,
[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
我们需要加入
[user]
        name = xxx
        emai= [email protected]
    现在已经创建好了一个 git 版本库,但是它是空的,还不能做任何事情,下一步就是怎么向版本库中添加文件了。如果希望忽略某些文件,需要在git库根目录下添加. gitignore文件。
2.2   一条重要的命令 -- git-update-index
    在介绍如何向git库中添加文件前,不得不先介绍git-update-index命令。这条命令可能会使很多熟悉CVS的用户疑惑,一般来说,我们向一个源代码管理库提交代码的更改,都会抽象为以下的动作:更改文件;向源码管理系统标识变化;提交。比如从一个CVS库里删除一个文件,需要先删除文件,然后cvs delete; 最后cvs commit。
因此, git-update-index就是向源码管理系统标识文件变化的一个抽象操作。说的简要一些,git-update-index命令就是通知git库有文件的状态发生了变化(新添、修改、删除等待)。这条命令在早期的git版本中是非常常用的。在新的git版本(1.5版本及以后)已经被其它命令包装起来,并且不推荐使用了。
    git-update-index最常用的方式有以下两种,更多功能请man git-update-index。
 方法一:git-update-index --add 文件名列表。 如果文件存在,则这条命令是向git库标识该文件发生过变化(无论是否该文件确实被修改过),如果文件不存在,则这条命令是向git库表示需要加入一个新文件。
 方法二: git-update-index --force-remove 文件名列表。 这表示向git库表示哟啊从库中删除文件。无论该文件是否已经被删除,这条命令仅仅是通知git库要从库中删除这些文件。这些文件都不会受影响。
    因此,git-update-index仅仅是向git库起到一个通知和标识的作用,并不会操作具体的文件。
2.3   向git库中添加或删除文件 – git-add、git-rm
    其实,说使用git-add命令向git库里添加文件是不对的, 或者说至少是不全面的。git-add 命令的本质是命令"git-update-index --add” 的一个包装。因此,git-add除了可以添加文件,还可以标识文件修改。在调用了git-add后,才可以做commit操作。git-rm 也是一样, 它是git-update-index --force-remove的一个包装。
    对于git-add来说, 如果在一个目录下调用了git-add * ,则默认是递归将子目录中所有文件都add到git库中。对于git-rm来说,也是一样。 这点和CVS有较大区别。
    此外,我们还可以通过命令git-ls-files来查看当前的git库中有那些文件。

2.4   查看版本库状态—git-status
    通过该命令,我们可以查看版本库的状态。可以得知那些文件发生了变化,那些文件还没有添加到git库中等等。 建议每次commit前都要通过该命令确认库状态。以避免误操作。
    其总,最常见的误操作是, 修改了一个文件, 没有调用git-add通知git库该文件已经发生了变化就直接调用commit操作,从而导致该文件并没有真正的提交。如果这时如果开发者以为已经提交了该文件,就继续修改甚至删除这个文件,那么修改的内容就没有通过版本管理起来。如果每次在提交前,使用git-status查看一下,就可以发现这种错误。因此,如果调用了git-status命令,一定要格外注意那些提示为 “Changed but not updated:”的文件。这些文件都是与上次commit相比发生了变化,但是却没有通过git-add标识的文件。
2.5   向版本库提交变化 – git-commit
    直接调用git-commit命令,会提示填写注释。也可以通过如下方式在命令行就填写提交注释:git-commit -m "Initial commit of gittutor reposistory"。 注意,和CVS不同,git的提交注释必须不能为空。否则就会提交失败。
    git-commit还有一个 –a的参数,可以将那些没有通过git-add标识的变化一并强行提交,但是不建议使用这种方式。
    每一次提交,git就会为全局代码建立一个唯一的commit标识代码,用户可以通过git-revert命令恢复到任意一次提交时的代码。 这比CVS不同文件有不同的版本呢号管理可方便多了。(和SVN类似)
    如果提交前,想看看具体那些文件发生变化,可以通过git-diff来查看, 不过这个命令的输出并不友好。因此建议用别的工具来实现该功能。在提交后,还可以通过git-log命令来查看提交记录。
2.6   分支管理 – git-branch
    我们迎来了git最强大,也是比CVS、SVN强大的多的功能 — 分支管理。
    大概每个程序员都会经常遇到这样的情况:
1.       需要立刻放下手头的工作,去修改曾经一个版本的bug并上线,然后再继续当的工作。
2.       本想向中心库commit一个重要修改,但是由于需要经常备份代码,最终不得不频繁的向中心库commit。从而导致大量无用的commit信息被保留在中心库中。
3.       将一次修改提交同事进行code review, 但是由于同事code review比较慢, 得到反馈时,自己的代码已经发生了变化,从而倒是合并异常困难
    这些场景,如果用CVS或者SVN来解决,虽说不一定解决不了,但过程之繁琐,之复杂,肯定另所有人都有生不如死的感觉吧!究其关键,就是CVS或者SNV的branch管理太复杂,基本不具可用性。
    在 git 版本库中创建分支的成本几乎为零,所以,不必吝啬多创建几个分支。当第一次执行git-init时,系统就会创建一个名为”master”的分支。而其它分支则通过手工创建。下面列举一些常见的分支策略,这些策略相信会对你的日常开发带来很大的便利。
 1.创建一个属于自己的个人工作分支,以避免对主分支 master 造成太多的干扰,也方便与他人交流协作。
 2.当进行高风险的工作时,创建一个试验性的分支,扔掉一个烂摊子总比收拾一个烂摊子好得多。
 3.合并别人的工作的时候,最好是创建一个临时的分支用来合并,合并完成后在“fatch”到自己的分支(合并和fatch后面有讲述,不明白就继续往下看好了)
2.6.1 查看分支 – git-branch
    调用git-branch可以查看程序中已经存在的分支和当前分支
2.6.2 创建分支 – git-branch 分支名
    要创建一个分支,可以使用如下方法:
1.       git-branch 分支名称
2.       git-checout –b 分支名
    使用第一种方法,虽然创建了分支,但是不会将当前工作分支切换到新创建的分支上,因此,还需要命令”git-checkout 分支名” 来切换, 而第二种方法不但创建了分支,还将当前工作分支切换到了该分支上。
    另外,需要注意,分支名称是有可能出现重名的情况的, 比如说,我在master分支下创建了a和b两个分支,然后切换到b分支,在b分支下又创建了a和c分支。 这种操作是可以进行的。 此时的a分支和master下的a分支实际上是两个不同的分支。因此,在实际使用时,不建议这样的操作,这样会带来命名上的疑惑。
2.6.3 删除分支 – git-branch –D
    git-branch –D 分支名可以删除分支,但是需要小心,删除后,发生在该分支的所有变化都无法恢复。
2.6.4 切换分支 – git-checkout 分支名
    如果分支已经存在, 可以通过 git-checkout 分支名 来切换工作分支到该分支名
2.6.5 查看分支历史 –git-show-branch
    调用该命令可以查看分支历史变化情况。 如:
* [dev1] d2
! [master] m2
--
* [dev1] d2
* [dev1^] d1
* [dev1~2] d1
*+ [master] m2
    在上述例子中, “--”之上的两行表示有两个分支dev1和master,且dev分支上最后一次提交的日志是“d2”,master分支上最后一次提交的日志是”m2”。 “--”之下的几行表示了分支演化的历史,其中 dev1表示发生在dev分支上的最后一次提交,dev^表示发生在dev分支上的倒数第二次提交。dev1~2表示发生在dev分支上的倒数第三次提交。
2.6.6 合并分支 – git-merge
    git-merge的用法为:git-merge “some memo” 合并的目标分支 合并的来源分支。如:
    git-merge master dev1~2
    如果合并有冲突,git会由提示,当前,git-merge已经很少用了, 用git-pull来替代了。
    用法为:git-pull 合并的目标分支 合并的来源分支。 如git-pull . dev1^

2.7   远程获取一个git库 git-clone
    在2.1节提到过,如果你不是一个代码模块的发起者,也不会使用到git-init命令,而是更多的是使用git-clone。通过这个命令,你可以从远端完整获取一个git库,并可以通过一些命令和远端的git交互。
    基于git的代码管理的组织结构,往往形成一个树状结构,开发者一般从某个代码模块的管理者的git库通过git-clone取得开发环境,在本地迭代开发后,再提交给该模块的管理者,该模块的管理者检查这些提交并将代码合并到自己的库中,并向更高一级的代码管理者提交自己的模块代码。
    对于酷讯来说,公司会有一个中心的git库, 大家在开发时,都是从中心库git-clone获取最新代码。
git-clone的使用方法如下: git-clone [ssh://]username@ipaddr:path。 其中, “ssh://”可选,也有别的获取方式,如rsync。 Path是远端git的根路径,也叫repository。
    通过git-clone获取远端git库后,.git/config中的开发者信息不会被一起clone过来。仍然需要为.git/config文件添加开发者信息。此外,开发者还需要自己添加. gitignore文件
   另外,通过git-clone获取的远端git库,只包含了远端git库的当前工作分支。如果想获取其它分支信息,需要使用”git-branch –r” 来查看, 如果需要将远程的其它分支代码也获取过来,可以使用命令” git checkout -b 本地分支名远程分支名”,其中,远程分支名为git-branch –r所列出的分支名, 一般是诸如“origin/分支名”的样子。如果本地分支名已经存在,则不需要“-b”参数。

2.8   从远程获取一个git分支 – git-pull
    与git-clone不同, git-pull可以从任意一个git库获取某个分支的内容。用法如下:
    git-pull
username@ipaddr : 远端repository名 远端分支名:本地分支名。这条命令将从远端git库的远端分支名获取到本地git库的一个本地分支中。其中,如果不写本地分支名,则默认pull到本地当前分支。
需要注意的是,git-pull也可以用来合并分支。 和git-merge的作用相同。 因此,如果你的本地分支已经有内容,则git-pull会合并这些文件,如果有冲突会报警。

2.9   将本地分支内容提交到远端分支 – git-push
    git-push和git-pull正好想反,是将本地某个分支的内容提交到远端某个分支上。用法:
git-push
username@ipaddr : 远端repository名 本地分支名:远端分支名。这条命令将本地git库的一个本地分支push到远端git库的远端分支名中。

    需要格外注意的是,git-push好像不会自动合并文件。这点我的试验表明是这样,但我不能确认是否是我用错了。因此,如果git-push时,发生了冲突,就会被后push的文件内容强行覆盖,而且没有什么提示。 这在合作开发时是很危险的事情。
2.10     库的逆转与恢复 – git-reset
    库的逆转与恢复除了用来进行一些废弃的研发代码的重置外,还有一个重要的作用。比如我们从远程clone了一个代码库,在本地开发后,准备提交回远程。但是本地代码库在开发时,有功能性的commit,也有出于备份目的的commit等等。总之,commit的日志中有大量无用log,我们并不想把这些 log在提交回远程时也提交到库中。 因此,就要用到git-reset。
    Git-reset的概念比较复杂。它的命令形式:git-reset [--mixed | --soft | --hard] []
命令的选项:
--mixed
    这个是默认的选项。 如git-reset [--mixed] dev1^(dev1^的定义可以参见2.6.5)。它的作用仅是重置分支状态到dev1^, 但是却不改变任何工作文件的内容。即,从dev1^到dev1的所有文件变化都保留了,但是dev1^到dev1之间的所有commit日志都被清除了,而且,发生变化的文件内容也没有通过git-add标识,如果您要重新commit,还需要对变化的文件做一次git-add。这样,commit后,就得到了一份非常干净的提交记录。
--soft
    相当于做了git-reset –mixed,后,又对变化的文件做了git-add。如果用了该选项, 就可以直接commit了。
--hard
    这个命令就会导致所有信息的回退, 包括文件内容。 一般只有在重置废弃代码时,才用它。 执行后,文件内容也无法恢复回来了。

2.11     更多的操作
    之前的10节只简要介绍了git的基本命令,更多的细节可以去linux下man git的文档。此外

 

 

 

 

介绍

Git --- The stupid content tracker, 傻瓜内容跟踪器。Linus 是这样给我们介绍 Git 的。

Git 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。

实际上内核开发团队决定开始开发和使用 Git 来作为内核开发的版本控制系统的时候,世界开源社群的反对声音不少,最大的理由是 Git 太艰涩难懂,从 Git 的内部工作机制来说,的确是这样。但是随着开发的深入,Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。现在,越来越多的著名项目采用 Git 来管理项目开发,例如:wine, U-boot 等,详情看 http://www.kernel.org/git

作为开源自由原教旨主义项目,Git 没有对版本库的浏览和修改做任何的权限限制。它只适用于 Linux / Unix 平台,没有 Windows 版本,目前也没有这样的开发计划。

本文将以 Git 官方文档 Tutorialcore-tutorialEveryday GIT 作为蓝本翻译整理,但是暂时去掉了对 Git 内部工作机制的阐述,力求简明扼要,并加入了作者使用 Git 的过程中的一些心得体会,注意事项,以及更多的例子。建议你最好通过你所使用的 Unix / Linux 发行版的安装包来安装 Git, 你可以在线浏览本文 ,也可以通过下面的命令来得到本文最新的版本库,并且通过后面的学习用 Git 作为工具参加到本文的创作中来。

$ git-clone http://www.bitsun.com/git/gittutorcn.git

创建一个版本库:git-init-db

创建一个 Git 版本库是很容易的,只要用命令 git-init-db 就可以了。现在我们来为本文的写作创建一个版本库:

$ mkdir gittutorcn$ cd gittutorcn$ git-init-db

git 将会作出以下的回应

defaulting to local storage area

这样,一个空的版本库就创建好了,并在当前目录中创建一个叫 .git 的子目录。你可以用 ls -a 查看一下,并请注意其中的三项内容:

  • 一个叫 HEAD 的文件,我们现在来查看一下它的内容:

    $ cat .git/HEAD

    现在 HEAD 的内容应该是这样:

    ref: refs/heads/master

    我们可以看到,HEAD 文件中的内容其实只是包含了一个索引信息,并且,这个索引将总是指向你的项目中的当前开发分支。

  • 一个叫 objects 的子目录,它包含了你的项目中的所有对象,我们不必直接地了解到这些对象内容,我们应该关心是存放在这些对象中的项目的数据。

    Note
    关于 git 对象的分类,以及 git 对象数据库的说明,请参看 [Discussion]
  • 一个叫 refs 的子目录,它用来保存指向对象的索引。

具体地说,子目录 refs 包含着两个子目录叫 headstags,就像他们的名字所表达的意味一样:他们存放了不同的开发分支的的索引, 或者是你用来标定版本的标签的索引。

请注意:master 是默认的分支,这也是为什么 .git/HEAD 创建的时候就指向 master 的原因,尽管目前它其实并不存在。 git 将假设你会在 master 上开始并展开你以后的工作,除非你自己创建你自己的分支。

另外,这只是一个约定俗成的习惯而已,实际上你可以将你的工作分支叫任何名字,而不必在版本库中一定要有一个叫 master 的分支,尽管很多 git 工具都认为 master 分支是存在的。

现在已经创建好了一个 git 版本库,但是它是空的,还不能做任何事情,下一步就是怎么向版本库植入数据了。

植入内容跟踪信息:git-add

为了简明起见,我们创建两个文件作为练习:

$ echo "Hello world" > hello$ echo "Silly example" > example

我们再用 git-add 命令将这两个文件加入到版本库文件索引当中:

$ git-add hello example

git-add 实际上是个脚本命令,它是对 git 内核命令 git-update-index 的调用。因此上面的命令和下面的命令其实是等价的:

$ git-update-index --add hello example

如果你要将某个文件从 git 的目录跟踪系统中清除出去,同样可以用 git-update-index 命令。例如:

$ git-update-index --force-remove foo.c
Note
git-add 可以将某个目录下的所有内容全都纳入内容跟踪之下,例如: git-add ./path/to/your/wanted 。但是在这样做之前,应该注意先将一些我们不希望跟踪的文件清理掉,例如,gcc 编译出来的 *.o 文件,vim 的交换文件 .*.swp 之类。

应该建立一个清晰的概念就是,git-addgit-update-index 只是刷新了 git 的跟踪信息,hello 和 example 这两个文件中的内容并没有提交到 git 的内容跟踪范畴之内。

提交内容到版本库:git-commit

既然我们刷新了 Git 的跟踪信息,现在我们看看版本库的状态:

$ git-status

我们能看到 git 的状态提示:

## Initial commit### Updated but not checked in:#   (will commit)##       new file: example#       new file: hello#

提示信息告诉我们版本库中加入了两个新的文件,并且 git 提示我们提交这些文件,我们可以通过 git-commit 命令来提交:

$ git-commit -m "Initial commit of gittutor reposistory"

查看当前的工作:git-diff

git-diff 命令将比较当前的工作目录和版本库数据库中的差异。现在我们编辑一些文件来体验一下 git 的跟踪功能。

$ echo "It's a new day for git" >> hello

我们再来比较一下,当前的工作目录和版本库中的数据的差别。

$ git-diff

差异将以典型的 patch 方式表示出来:

diff --git a/hello b/helloindex a5c1966..bd9212c 100644--- a/hello+++ b/hello@@ -1 +1,2 @@ Hello, world+It's a new day for git

此时,我们可以再次使用组合命令 git-update-indexgit-commit 将我们的工作提交到版本库中。

$ git-update-index hello$ git-commit -m "new day for git"

实际上,如果要提交的文件都是已经纳入 git 版本库的文件,那么不必为这些文件都应用 git-update-index 命令之后再进行提交,下面的命令更简捷并且和上面的命令是等价的。

$ git-commit -a -m "new day for git"

管理分支:git-branch

直至现在为止,我们的项目版本库一直都是只有一个分支 master。在 git 版本库中创建分支的成本几乎为零,所以,不必吝啬多创建几个分支。下面列举一些常见的分支策略,仅供大家参考:

  • 创建一个属于自己的个人工作分支,以避免对主分支 master 造成太多的干扰,也方便与他人交流协作。

  • 当进行高风险的工作时,创建一个试验性的分支,扔掉一个烂摊子总比收拾一个烂摊子好得多。

  • 合并别人的工作的时候,最好是创建一个临时的分支,关于如何用临时分支合并别人的工作的技巧,将会在后面讲述。

创建分支

下面的命令将创建我自己的工作分支,名叫 robin,并且将以后的工作转移到这个分支上开展。

$ git-branch robin$ git-checkout robin

删除分支

要删除版本库中的某个分支,使用 git-branch -D 命令就可以了,例如:

$ git-branch -D branch-name

查看项目的发展变化和比较差异

这一节介绍几个查看项目的版本库的发展变化以及比较差异的很有用的命令:

git-show-branch

git-diff

git-whatchanged


 

我们现在为 robin, master 两个分支都增加一些内容。

$ git-checkout robin$ echo "Work, work, workd" >> hello$ git-commit -m "Some workd" -i hello
$ git-checkout master$ echo "Play, play, play" >> hello$ echo "Lots of fun" >> example$ git-commit -m "Some fun" -i hello example

git-show-branch 命令可以使我们看到版本库中每个分支的世系发展状态,并且可以看到每次提交的内容是否已进入每个分支。

$ git-show-branch 

这个命令让我们看到版本库的发展记录。

* [master] Some fun ! [robin] some work--*  [master] Some fun + [robin] some work*+ [master^] a new day for git

譬如我们要查看世系标号为 master^robin 的版本的差异情况,我们可以使用这样的命令:

$ git-diff master^ robin

我们可以看到这两个版本的差异:

diff --git a/hello b/helloindex 263414f..cc44c73 100644--- a/hello+++ b/hello@@ -1,2 +1,3 @@ Hello World It's a new day for git+Work, work, work
Note
关于 GIT 版本世系编号的定义,请参看 git-rev-parse

我们现在再用 git-whatchanged 命令来看看 master 分支是怎么发展的。

$ git-checkout master$ git-whatchanged 
diff-tree 1d2fa05... (from 3ecebc0...)Author: Vortune.Robin Date:   Tue Mar 21 02:24:31 2006 +0800    Some fun:100644 100644 f24c74a... 7f8b141... M  example:100644 100644 263414f... 06fa6a2... M  hellodiff-tree 3ecebc0... (from 895f09a...)Author: Vortune.Robin Date:   Tue Mar 21 02:17:23 2006 +0800    a new day for git:100644 100644 557db03... 263414f... M  hello

从上面的内容中我们可以看到,在 robin 分支中的日志为 "Some work" 的内容, 并没有在 master 分支中出现。

合并两个分支:git-merge

既然我们为项目创建了不同的分支,那么我们就要经常地将自己或者是别人在一个分支上的工作合并到其他的分支上去。现在我们看看怎么将 robin 分支上的工作合并到 master 分支中。现在转移我们当前的工作分支到 master,并且将 robin 分支上的工作合并进来。

$ git-checkout master$ git-merge "Merge work in robin" HEAD robin
合并两个分支,还有一个更简便的方式,下面的命令和上面的命令是等价的。
$ git-checkout master$ git-pull . robin

但是,此时 git 会出现合并冲突提示:

Trying really trivial in-index merge...fatal: Merge requires file-level mergingNope.Merging HEAD with d2659fcf690ec693c04c82b03202fc5530d50960Merging:1d2fa05b13b63e39f621d8ee911817df0662d9b7 Some fund2659fcf690ec693c04c82b03202fc5530d50960 some workfound 1 common ancestor(s):3ecebc0cb4894a33208dfa7c7c6fc8b5f9da0eda a new day for gitAuto-merging helloCONFLICT (content): Merge conflict in helloAutomatic merge failed; fix up by hand

git 的提示指出,在合并作用于文件 hello 的 'Some fun' 和 'some work' 这两个对象时有冲突,具体通俗点说,就是在 master, robin 这两个分支中的 hello 文件的某些相同的行中的内容不一样。我们需要手动解决这些冲突,现在先让我们看看现在的 hello 文件中的内容。

$ cat hello

此时的 hello 文件应是这样的,用过其他的版本控制系统的朋友应该很容易看出这个典型的冲突表示格式:

Hello WorldIt's a new day for git<<<<<<< HEAD/helloPlay, play, play=======Work, work, work>>>>>>> d2659fcf690ec693c04c82b03202fc5530d50960/hello

我们用编辑器将 hello 文件改为:

Hello WorldIt's a new day for gitPlay, play, playWork, work, work

现在可以将手动解决了冲突的文件提交了。

$ git-commit -i hello

以上是典型的两路合并(2-way merge)算法,绝大多数情况下已经够用。但是还有更复杂的三路合并和多内容树合并的情况。详情可参看: git-read-treegit-merge 等文档。

逆转与恢复:git-reset

项目跟踪工具的一个重要任务之一,就是使我们能够随时逆转(Undo)和恢复(Redo)某一阶段的工作。

git-reset 命令就是为这样的任务准备的。它将当前的工作分支的 定位到以前提交的任何版本中,它有三个重置的算法选项。

命令形式:

git-reset [--mixed | --soft | --hard] []

命令的选项:

--mixed
仅是重置索引的位置,而不改变你的工作树中的任何东西(即,文件中的所有变化都会被保留,也不标记他们为待提交状态),并且提示什么内容还没有被更新了。这个是默认的选项。
--soft
既不触动索引的位置,也不改变工作树中的任何内容,我们只是要求这些内容成为一份好的内容(之后才成为真正的提交内容)。这个选项使你可以将已经提交的东西重新逆转至“已更新但未提交(Updated but not Check in)”的状态。就像已经执行过 git-update-index 命令,但是还没有执行 git-commit 命令一样。
--hard
将工作树中的内容和头索引都切换至指定的版本位置中,也就是说自 之后的所有的跟踪内容和工作树中的内容都会全部丢失。因此,这个选项要慎用,除非你已经非常确定你的确不想再看到那些东西了。

一个重要技巧--逆转提交与恢复

可能有人会问,--soft 选项既不重置头索引的位置,也不改变工作树中的内容,那么它有什么用呢?现在我们介绍一个 --soft 选项的使用技巧。下面我们用例子来说明:

$ git-checkout master$ git-checkout -b softreset$ git-show-branch

这里我们创建了一个 master 的拷贝分支 softreset,现在我们可以看到两个分支是在同一起跑线上的。

! [master] Merge branch 'robin' ! [robin] some work  * [softreset] Merge branch 'robin'---- - [master] Merge branch 'robin'+ * [master^] Some fun++* [robin] some work

我们为 文件增加一些内容并提交。

$ echo "Botch, botch, botch" >> hello$ git-commit -a -m "some botch"$ git-show-branch

我们可以看到此时 softresetmaster 推进了一个版本 "some botch" 。

! [master] Merge branch 'robin' ! [robin] some work  * [softreset] some botch---  * [softreset] some botch- - [master] Merge branch 'robin'+ * [master^] Some fun++* [robin] some work

现在让我们来考虑这样的一种情况,假如我们现在对刚刚提交的内容不满意,那么我们再编辑项目的内容,再提交的话,那么 "some botch" 的内容就会留在版本库中了。我们当然不希望将有明显问题的内容留在版本库中,这个时候 --soft 选项就很有用了。为了深入了解 --soft 的机制,我们看看现在 softreset 分支的头和 ORIG_HEAD 保存的索引。

$ cat .git/refs/heads/softreset .git/ORIG_HEAD

结果如下:

5e7cf906233e052bdca8c598cad2cb5478f9540a7bbd1370e2c667d955b6f6652bf8274efdc1fbd3

现在用 --soft 选项逆转刚才提交的内容:

git-reset --soft HEAD^

现在让我们再看看 .git/ORIG_HEAD 的中保存了什么?

$ cat .git/ORIG_HEAD

结果如下:

5e7cf906233e052bdca8c598cad2cb5478f9540a

看!现在的 .git/ORIG_HEAD 等于逆转前的 .git/refs/heads/softreset 。也就是说,git-reset --soft HEAD^ 命令逆转了刚才提交的版本进度,但是它将那次提交的对象的索引拷贝到了 .git/ORIG_HEAD 中。

我们再编辑 hello 文件成为下面的内容:

Hello WorldIt's a new day for gitPlay, play, playWork, work, workNice, nice, nice

我们甚至可以比较一下现在的工作树中的内容和被取消了的那次提交的内容有什么差异:

$ git-diff ORIG_HEAD

结果如下:

diff --git a/hello b/helloindex f978676..dd02c32 100644--- a/hello+++ b/hello@@ -2,4 +2,4 @@ Hello World It's a new day for git Play, play, play Work, work, work-Botch, botch, botch+Nice, nice, nice

接着,我们可以恢复刚才被取消了的那次提交了。

$ git-commit -a -c ORIG_HEAD

注意,这个命令会打开默认的文本编辑器以编辑原来提交的版本日志信息,我们改为 "nice work" 。大家可以自行用 git-show-branch 命令来查看一下现在的分支状态。并且我们还可以不断地重复上述的步骤,一直修改到你对这个版本进度满意为止。

git-reset 命令还有很多的用途和技巧,请参考 git-reset ,以及 Everyday GIT with 20 commands or So

提取版本库中的数据

这是个很有用的小技巧,如果你对你现在的工作目录下的东西已经不耐烦了,随时可以取出你提交过的东西覆盖掉当前的文件,譬如:

$ git-checkout -f foo.c

标定版本

在 git 中,有两种类型的标签,“轻标签”和“署名标签”。

技术上说,一个“轻标签”和一个分支没有任何区别,只不过我们将它放在了 .git/refs/tags/ 目录,而不是 heads 目录。因此,打一个“轻标签”再简单不过了。

$ git-tag my-first-tag

“署名标签”是一个真正的 git 对象,它不但包含指向你想标记的状态的指针,还有一个标记名和信息,可选的 PGP 签名。你可以通过 -a 或者是 -s 选项来创建“署名标签”。

$ git-tag -s 

合并外部工作

通常的情况下,合并其他的人的工作的情况会比合并自己的分支的情况要多,这在 git 中是非常容易的事情,和你运行 git-merge 命令没有什么区别。事实上,远程合并的无非就是“抓取(fetch)一个远程的版本库中的工作到一个临时的标签中”,然后再使用 git-merge 命令。

可以通过下面的命令来抓取远程版本库:

$ git-fetch 

根据不同的远程版本库所使用的通讯协议的路径来替代上面的 remoted-repository 就可以了。

Rsync

rsync://remote.machine/patch/to/repo.git/

SSH

remote.machine:/path/to/repo.git
or
ssh://remote.machine/patch/to/repo.git/

这是可以上传和下载的双向传输协议,当然,你要有通过 ssh 协议登录远程机器的权限。它可以找出两端的机器提交过的对象集之中相互缺少了那些对象,从而得到需要传输的最小对象集。这是最高效地交换两个版本库之间的对象的方式(在 git 兼容的所有传输协议当中)。

下面是个取得 SSH 远程版本库的命令例子:

$ git-fetch [email protected]:/path/to/gittutorcn.git  (1)(1) 这里 robin 是登录的用户名,192.168.1.168 是保存着主版本库的机器的 IP 地址。
Local directory

/path/to/repo.git/

本地目录的情况和 SSH 情况是一样的。

git Native

git://remote.machine/path/to/repo.git/

git 自然协议是设计来用于匿名下载的,它的工作方式类似于 SSH 协议的交换方式。

HTTP(S)

http://remote.machine/path/to/repo.git/

到这里可能有些朋友已经想到,实际上,我们可以通过 Rsync, SSH 之类的双向传输方式来建立类似 CVS,SVN 这样的中心版本库模式的开发组织形式。

通过电子邮件交换工作

读过上一节之后,有的朋友可能要问,如果版本库是通过单向的下载协议发布的,如 HTTP,我们就无法将工作上传到公共的版本库中。别人也不能访问我的机器来抓取我的工作,那怎么办呢?

不必担心,我们还有 email !别忘了 git 本来就是为了管理 Linux 的内核开发而设计的。所以,它非常适合像 Linux Kernel 这样的开发组织形式高度分散,严重依赖 email 来进行交流的项目。

下面模拟你参加到《Git 中文教程》的编写工作中来,看看我们可以怎么通过 email 进行工作交流。你可以通过下面的命令下载这个项目的版本库。

$ git-clone http://www.bitsun.com/git/gittutorcn.git
之后,你会在当前目录下得到一个叫 gittutorcn 的目录,这就是你的项目的工作目录了。默认地,它会有两个分支: masterorigin,你可以直接在 master 下展开工作,也可以创建你自己的工作分支,但是千万不要修改 origin 分支,切记!因为它是公共版本库的镜像,如果你修改了它,那么就不能生成正确的对公共版本库的 patch 文件了。
Note
如果你的确修改过 origin 分支的内容,那么在生成 patch 文件之前,请用 git-reset --hard 命令将它逆转到最原始的,没经过任何修改的状态。

你可以直接在 master 下开展工作,也可以创建你自己的工作分支。当你对项目做了一定的工作,并提交到库中。我们用 git-show-branch 命令先看下库的状态。

* [master] your buddy's contribution ! [origin] degining of git-format-patch example--*  [master] your buddy's contribution*+ [origin] degining of git-format-patch example

上面就假设你已经提交了一个叫 "your buddy's contribution" 的工作。现在我们来看看怎么通过 email 来交流工作了。

$ git-fetch origin    (1)$ git-rebase origin    (2)$ git-format-patch origin     (3)(1)更新 origin 分支,防止 origin 分支不是最新的公共版本,产生错误的补丁文件;(2)将你在 master 上提交的工作迁移到新的源版本库的状态的基础上;(3)生成补丁文件;

上面的几个命令,会在当前目录下生成一个大概名为 0001-your-buddy-s-contribution.txt 补丁文件, 建议你用文本工具查看一下这个文件的具体形式,然后将这个文件以附件的形式发送到项目维护者的邮箱: [email protected]

当项目的维护者收到你的邮件后,只需要用 git-am 命令,就可以将你的工作合并到项目中来。

$ git-checkout -b buddy-incomming$ git-am /path/to/0001-your-buddy-s-contribution.txt

用 Git 协同工作

假设 Alice 在一部机器上自己的个人目录中创建了一个项目 /home/alice/project, Bob 想在同一部机器自己的个人目录中为这个项目做点什么。

Bob 首先这样开始:

$ git-clone /home/alice/project myrepo

这样就创建了一个保存着 Alice 的版本库的镜像的新目录 "myrepo"。这个镜像保存着原始项目的起点和它的发展历程。

接着 Bob 对项目做了些更改并提交了这些更改:

(编辑一些文件)$ git-commit -a (如果需要的话再重复这个步骤)

当他搞定之后,他告诉 Alice 将他的东西从 /home/bob/myrepo 中引入,她只需要这样:

$ cd /home/alice/project$ git pull /home/bob/myrepo

这样就将 Bob 的版本库中的 "master" 分支的变化引入了。 Alice 也可以通过在 pull 命令的后面加入参数的方式来引入其他的分支。

在导入了 Bob 的工作之后,用 "git-whatchanged" 命令可以查看有什么信的提交对象。如果这段时间里以来,Alice 也对项目做过自己的修改,当 Bob 的修改被合并进来的时候,那么她需要手动修复所有的合并冲突。

谨慎的 Alice 在导入 Bob 的工作之前,希望先检查一下。那么她可以先将 Bob 的工作导入到一个新创建的临时分支中,以方便研究 Bob 的工作:

$ git fetch /home/bob/myrepo master:bob-incoming

这个命令将 Bob 的 master 分支的导入到名为 bob-incoming 的分支中(不同于 git-pull 命令,git-fetch 命令只是取得 Bob 的开发工作的拷贝,而不是合并经来)。接着:

$ git whatchanged -p master..bob-incoming

这会列出 Bob 自取得 Alice 的 master 分支之后开始工作的所有变化。检查过这些工作,并做过必须的调整之后, Alice 就可以将变化导入到她的 master 分支中:

$ git-checkout master$git-pull . bob-incoming

最后的命令就是将 "bob-incoming" 分支的东西导入到 Alice 自己的版本库中的,稍后,Bob 就可以通过下面的命令同步 Alice 的最新变化。

$ git-pull

注意不需为这个命令加入 Alice 的版本库的路径,因为当 Bob 克隆 Alice 的版本库的时候, git 已经将这个路径保存到 .git/remote/origin 文件中,它将会是所以的导入操作的默认路径。

Bob 可能已经注意到他并没有在他的版本库中创建过分支(但是分支已经存在了):

$ git branch* master  origin

"origin" 分支,它是运行 "git-clone" 的时候自动创建的,他是 Alice 的 master 分支的原始镜像, Bob 应该永远不要向这个分支提交任何东西。

如果 Bob 以后决定在另外一部主机上开展工作,那么他仍然需要通过 SSH 协议从新克隆和导入( Alice 的版本库):

$ git-clone alice.org:/home/alice/project/ myrepo

我们可以使用 git 自然协议,或者是 rsync, http 等协议的任何一种,详情请参考 git-pull

Git 同样可以建立类似 CVS 那样的开发模式,也就是所有开发者都向中心版本库提交工作的方式,详情参考 git_pushgit for CVS users

为版本库打包

在前面,我们已经看到在 .git/objects/??/ 目录中保存着我们创建的每一个 git 对象。这样的方式对于自动和安全地创建对象很有效,但是对于网络传输则不方便。 git 对象一旦创建了,就不能被改变,但有一个方法可以优化对象的存储,就是将他们“打包到一起”。

$ git repack

上面的命令让你做到这点,如果你一直是做着我们的例子过来的,你现在大约会在 .git/objects/??/ 目录下积累了17个对象。 git-repack 会告诉你有几个对象被打包了,并且将他们保存在 .git/objects/pack 目录当中。

Note
你将会看到两个文件,pack-*.pack and pack-*.idx.git/objects/pack 目录。他们的关系是很密切的,如果你手动将他们拷贝到别的版本库中的话,你要决定将他们一起拷贝。前者是保存着所有被打包的数据的文件,后者是随机访问的索引。

如果你是个偏执狂,就运行一下 git-verity-pack 命令来检查一下有缺陷的包吧,不过,其实你无须太多担心,我们的程序非常出色 ;-).

一旦你已经对那些对象打包了,那么那些已经被打过包的原始的对象,就没有必要保留了。

$ git prune-packed

会帮你清楚他们。

如果你好奇的话,你可以在执行 git-prune-repacked 命令之前和之后,都运行一下 find .git/objects -type f,这样你就能看到有多少没有打包的对象,以及节省了多少磁盘空间。

Note
git pull git-pull 对于 HTTP 传输来说,一个打包过的版本库会将一定数量的相关联的对象放进一个有关联性的打包中。如果你设想多次从 HTTP 公共版本库中导入数据,你也许要频繁地 reapck & prune,要么就干脆从不这样做。

如果你此时再次运行 git-repack,它就会说 "Nothing to pack"。要是你继续开发,并且积累了一定数量的变迁,再运行 git-repack 将会创建一个新的包,它会包含你自上次对库打包以来创建的对象。我们建议你尽快在初始化提交之后打包一下你的版本库(除非你现在的项目是个涂鸦式的草稿项目),并且在项目经历过一段很活跃的时期时,再运行 git-repack 一下。

当一个版本库通过 git-pushgit-pull 命令来同步源版本库中打包过的对像的时候,通常保存到目标版本库中的是解包了的对象,除非你使用的是 rsync(远程同步协议)协议的传输方式。正是这种容许你在两头的版本库中有不同的打包策略的方式,他意味着你也许在过一段时间之后,需要在两头的版本库中都重新打包一下。

将工作捆绑到一起

通过 git 的分支功能,你可以非常容易地做到好像在同一时间进行许多“相关-或-无关”的工作一样。

我们已经通过前面的 "fun and work" 使用两个分支的例子,看到分支是怎么工作的。这样的思想在多于两个的分支的时候也是一样的,比方说,你现在在 master 的头,并有些新的代码在 master 中,另外还有两个互不相关的补丁分别在 "commit-fix" 和 "diff-fix" 两个分支中。

$ git show-branch! [commit-fix] Fix commit message normalization. ! [diff-fix] Fix rename detection.  * [master] Release candidate #1--- +  [diff-fix] Fix rename detection. +  [diff-fix~1] Better common substring algorithm.+   [commit-fix] Fix commit message normalization.  * [master] Release candidate #1++* [diff-fix~2] Pretty-print messages.

两个补丁我们都测试好了,到这里,你想将他们俩合并起来,于是你可以先合并 diff-fix ,然后再合并 commit-fix,像这样:

$ git merge 'Merge fix in diff-fix' master diff-fix$ git merge 'Merge fix in commit-fix' master commit-fix

结果如下:

$ git show-branch! [commit-fix] Fix commit message normalization. ! [diff-fix] Fix rename detection.  * [master] Merge fix in commit-fix---  - [master] Merge fix in commit-fix+ * [commit-fix] Fix commit message normalization.  - [master~1] Merge fix in diff-fix +* [diff-fix] Fix rename detection. +* [diff-fix~1] Better common substring algorithm.  * [master~2] Release candidate #1++* [master~3] Pretty-print messages.

然而,当你确信你手头上的确是一堆互不相关的项目变化时,就没有任何理由将这堆东西一个个地合并(假如他们的先后顺序很重要,那么他们就不应该被定以为无关的变化),你可以一次性将那两个分支合并到当前的分支中,首先我们将我们刚刚做过的事情逆转一下,我们需要通过将 master 分支重置到 master~2 位置的方法来将它逆转到合并那两个分支之前的状态。

$ git reset --hard master~2

你可以用 git-show-branch 来确认一下的确是回到了两次 git-merge 的状态了。现在你可以用一行命令将那两个分支导入的方式来替代两次运行(也就是所谓的 炮制章鱼 -- making an Octopusgit-merge

$ git pull . commit-fix diff-fix$ git show-branch! [commit-fix] Fix commit message normalization. ! [diff-fix] Fix rename detection.  * [master] Octopus merge of branches 'diff-fix' and 'commit-fix'---  - [master] Octopus merge of branches 'diff-fix' and 'commit-fix'+ * [commit-fix] Fix commit message normalization. +* [diff-fix] Fix rename detection. +* [diff-fix~1] Better common substring algorithm.  * [master~1] Release candidate #1++* [master~2] Pretty-print messages.

注意那些不适合制作章鱼的场合,尽管你可以那样做。一只“章鱼”往往可以使项目的提交历史更具可读性,前提是你在同一时间导入的两份以上的变更是互不关联的。然而,如果你在合并任何分支的过程中出现合并冲突,并且需要手工解决的话,那意味着这些分支当中有相互干涉的开发工作在进行,那么你就应该将这个两个冲突先合并,并且记录下你是如何解决这个冲突,以及你首先处理他们的理由。(译者按:处理完冲突之后,你就可以放心制作“章鱼”了)否则的话将会造成项目的发展历史很难跟踪。

管理版本库

版本库的管理员可以用下面的工具来建立和维护版本库。

  • git-daemon(1) 容许匿名下载版本库。

  • git-shell(1) 面向中心版本库模式的用户的类似 受限的 shell 的命令。

update hook howto 一个很好的管理中心版本库的例子。

例子

在 /pub/scm 上运行 git 守护进程
$ grep git /etc/inet.confgit     stream  tcp     nowait  nobody \  /usr/bin/git-daemon git-daemon --inetd --syslog --export-all /pub/scm

这个配置行应该在配置文件中用一行来写完。

仅给开发者 push/pull 的访问权限。
$ grep git /etc/passwd (1)alice:x:1000:1000::/home/alice:/usr/bin/git-shellbob:x:1001:1001::/home/bob:/usr/bin/git-shellcindy:x:1002:1002::/home/cindy:/usr/bin/git-shelldavid:x:1003:1003::/home/david:/usr/bin/git-shell$ grep git /etc/shells (2)/usr/bin/git-shell (1) 将用户的登录 shell 设定为 /usr/bin/git-shell,它除了运行 "git-push" 和 "git-pull" 不能做任何事。这样用户就可以通过 ssh 来访问机器。(2) 许多的发行版需要在 /etc/shells 配置文件中列明要用什么 shell 来作为登录 shell。
CVS - 模式的公共库。
$ grep git /etc/group (1)git:x:9418:alice,bob,cindy,david$ cd /home/devo.git$ ls -l (2)  lrwxrwxrwx   1 david git    17 Dec  4 22:40 HEAD -> refs/heads/master  drwxrwsr-x   2 david git  4096 Dec  4 22:40 branches  -rw-rw-r--   1 david git    84 Dec  4 22:40 config  -rw-rw-r--   1 david git    58 Dec  4 22:40 description  drwxrwsr-x   2 david git  4096 Dec  4 22:40 hooks  -rw-rw-r--   1 david git 37504 Dec  4 22:40 index  drwxrwsr-x   2 david git  4096 Dec  4 22:40 info  drwxrwsr-x   4 david git  4096 Dec  4 22:40 objects  drwxrwsr-x   4 david git  4096 Nov  7 14:58 refs  drwxrwsr-x   2 david git  4096 Dec  4 22:40 remotes$ ls -l hooks/update (3)  -r-xr-xr-x   1 david git  3536 Dec  4 22:40 update$ cat info/allowed-users (4)refs/heads/master       alice\|cindyrefs/heads/doc-update   bobrefs/tags/v[0-9]*       david(1) 将所有的开发人员都作为 git 组的成员。(2) 并且给予他们公共版本库的写权限。(3) 用一个在 Documentation/howto/ 中的 Carl 写的例子来实现版本库的分支控制策略。(4) Alice 和 Cindy 可以提交入 master 分支,只有 Bob 能提交入 doc-update 分支,David 则是发行经理只有他能创建并且 push 版本标签。
支持默协议传输的 HTTP 服务器。
dev$ git update-server-info (1)dev$ ftp [email protected] (2)ftp> cp -r .git /home/user/myproject.git(1) 保证 info/refs 和 object/info/packs 是最新的。(2) 上传到你的 HTTP 服务器主机。

项目开发的模式推介

尽管 git 是一个正式项目发布系统,它却可以方便地将你的项目建立在松散的开发人员组织形式上。 Linux 内核的开发,就是按这样的模式进行的。在 Randy Dunlap 的著作中("Merge to Mainline" 第17页)就有很好的介绍(http://tinyurl.com/a2jdg)。

需要强调的是正真的非常规的开发组织形式, git 这种组织形式,意味着对于工作流程的约束,没有任何强迫性的原则。你不必从唯一一个远程版本库中导入(工作目录)。

项目领导人(project lead)的工作推介

  1. 在你自己的本地机器上准备好主版本库。你的所有工作都在这里完成。

  2. 准备一个能让大家访问的公共版本库。

    如果其他人是通过默协议的方式(http)来导入版本库的,那么你有必要保持这个 默协议的友好性git-init-db 之后,复制自标准模板库的 $GIT_DIR/hooks/post-update 将包含一个对 git-update-server-info 的调用,但是 post-update 默认是不能唤起它自身的。通过 chmod +x post-update 命令使能它。这样让 git-update-server-info 保证那些必要的文件是最新的。

  3. 将你的主版本库推入公共版本库。

  4. git-repack 公共版本库。这将建立一个包含初始化提交对象集的打包作为项目的起始线,可能的话,执行一下 git-prune,要是你的公共库是通过 pull 操作来从你打包过的版本库中导入的。

  5. 在你的主版本库中开展工作,这些工作可能是你自己的最项目的编辑,可能是你由 email 收到的一个补丁,也可能是你从这个项目的“子系统负责人” 的公共库中导入的工作等等。

    你可以在任何你喜欢的时候重新打包你的这个私人的版本库。

  6. 将项目的进度推入公共库中,并给大家公布一下。

  7. 尽管一段时间以后,"git-repack" 公共库。并回到第5步继续工作。

项目的子系统负责人(subsystem maintainer)也有自己的公共库,工作流程大致如下:

  1. 准被一个你自己的工作目录,它通过 git-clone 克隆自项目领导人的公共库。原始的克隆地址(URL)将被保存在 .git/remotes/origin 中。

  2. 准备一个可以给大家访问的公共库,就像项目领导人所做的那样。

  3. 复制项目领导人的公共库中的打包文件到你的公共库中,除非你的公共库和项目领导人的公共库是在同一部主机上。以后你就可以通过 objects/info/alternates 文件的指向来浏览它所指向的版本库了。

  4. 将你的主版本库推入你的公共版本库,并运行 git-repack,如果你的公共库是通过的公共库是通过 pull 来导入的数据的话,再执行一下 git-prune
  5. 在你的主版本库中开展工作。这些工作可能包括你自己的编辑,来自 email 的补丁,从项目领导人,“下一级子项目负责人”的公共库哪里导入的工作等等。

    你可以在任何时候重新打包你的私人版本库。

  6. 将你的变更推入公共库中,并且请“项目领导人”和“下级子系统负责人”导入这些变更。

  7. 每隔一段时间之后,git-repack 公共库。回到第 5 步继续工作。

“一般开发人员”无须自己的公共库,大致的工作方式是:

  1. 准备你的工作库,它应该用 git-clone 克隆自“项目领导人”的公共库(如果你只是开发子项目,那么就克隆“子项目负责人”的)。克隆的源地址(URL)会被保存到 .git/remotes/origin 中。

  2. 在你的个人版本库中的 master 分支中开展工作。

  3. 每隔一段时间,向上游的版本库运行一下 git-fetch origin 。这样只会做 git-pull 一半的操作,即只克隆不合并。公共版本库的新的头就会被保存到 .git/refs/heads/origins

  4. git-cherry origin 命令,看一下你有什么补丁被接纳了。并用 git-rebase origin 命令将你以往的变更迁移到最新的上游版本库的状态中。(关于 git-rebase 命令,请参考 git-rebase

  5. git-format-patch origin 生成 email 形式的补丁并发给上游的维护者。回到第二步接着工作
 
 

GIT和SVN之间的五个基本区别

本文是从 5 Fundamental differences between GIT & SVN 这篇文章翻译而来。

如果你在读这篇文章,说明你跟大多数开发者一样对GIT感兴趣,如果你还没有机会来试一试GIT,我想现在你就要了解它了。

GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等。如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征。所以,这篇文章的主要目的就是通过介绍GIT能做什么、它和SVN在深层次上究竟有什么不同来帮助你认识它。

那好,这就开始吧…

  1. GIT是分布式的,SVN不是:

    这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别。如果你能理解这个概念,那么你就已经上手一半了。需要做一点声明,GIT并不是目前第一个或唯一的分布式版本控制系统。还有一些系统,例如Bitkeeper, Mercurial等,也是运行在分布式模式上的。但GIT在这方面做的更好,而且有更多强大的功能特征。

    GIT跟SVN一样有自己的集中式版本库或服务器。但,GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect out代码后会在自己的机器上克隆一个自己的版本库。可以这样说,如果你被困在一个不能连接网络的地方时,就像在飞机上,地下室,电梯里等,你仍然能够提交文件,查看历史版本记录,创建项目分支,等。对一些人来说,这好像没多大用处,但当你突然遇到没有网络的环境时,这个将解决你的大麻烦。

    同样,这种分布式的操作模式对于开源软件社区的开发来说也是个巨大的恩赐,你不必再像以前那样做出补丁包,通过email方式发送出去,你只需要创建一个分支,向项目团队发送一个推请求。这能让你的代码保持最新,而且不会在传输过程中丢失。GitHub.com就是一个这样的优秀案例。

    有些谣言传出来说subversion将来的版本也会基于分布式模式。但至少目前还看不出来。

  2. GIT把内容按元数据方式存储,而SVN是按文件:

    所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。如果你把.git目录的体积大小跟.svn比较,你会发现它们差距很大。因为,.git目录是处于你的机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。

  3. GIT分支和SVN的分支不同:

    分支在SVN中一点不特别,就是版本库中的另外的一个目录。如果你想知道是否合并了一个分支,你需要手工运行像这样的命令svn propget svn:mergeinfo,来确认代码是否被合并。感谢Ben同学指出这个特征。所以,经常会发生有些分支被遗漏的情况。

    然而,处理GIT的分支却是相当的简单和有趣。你可以从同一个工作目录下快速的在几个分支间切换。你很容易发现未被合并的分支,你能简单而快捷的合并这些文件。

  4. GIT没有一个全局的版本号,而SVN有:

    目前为止这是跟SVN相比GIT缺少的最大的一个特征。你也知道,SVN的版本号实际是任何一个相应时间的源代码快照。我认为它是从CVS进化到SVN的最大的一个突破。因为GIT和SVN从概念上就不同,我不知道GIT里是什么特征与之对应。如果你有任何的线索,请在评论里奉献出来与大家共享。

    更新:有些读者指出,我们可以使用GIT的SHA-1来唯一的标识一个代码快照。这个并不能完全的代替SVN里容易阅读的数字版本号。但,用途应该是相同的。

  5. GIT的内容完整性要优于SVN:

    GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。这里有一个很好的关于GIT内容完整性的讨论 – http://stackoverflow.com/questions/964331/git-file-integrity

GIT和SVN之间只有这五处不同吗?当然不是。我想这5个只是“最基本的”和“最吸引人”的,我只想到这5点。如果你发现有比这5点更有趣的,请共享出来,欢迎

My name is ________. I am graduatefrom ________ seniorhigh school and major in ________. There are ________ people in my family. My father works in a computer company. And my mother is a housewife. I am the youngest one in my family.

In my spare time, I like to read novels. I think reading could enlargemy knowledge. As for novels, I could imagine whatever I like such as a well-known scientist or a kung-fu master. In addition to reading, I also like to play PC games. A lot of grownups think playing PC games hinders the students from learning. But I think PC games could motivate me to learn something such as English or Japanese.My favorite course is English because I think it is interesting to say one thing via different sounds. I wish my English could be improved in the next four years and be able to speak fluent English in the future.

Sample1:
I am . I was born in . I graduate from senior high school and major in English. I started learning English since I was 12 years old. My parents have a lot of American friends. That’s why I have no problem communicating with Americans or others by speaking English.

In my spare time, I like to do anything relating to English such as listening to English songs, watching English movies or TV programs, or even attending the activities held by some English clubs or institutes. I used to go abroad for a short- term English study. During that time, I learned a lot of daily life English and saw a lot of different things.

I think language is very interesting. I could express one substanceby using different sounds. So I wish I could study and read more English literatures and enlarge my knowledge.

Sample3:

My name is . There are 4 people in my family. My father is a Chemistryteacher. He teaches chemistry in senior high school. My mother is an English teacher. She teaches English in the university. I have a younger brother, he is a junior high school student and is preparing for the entrance exam.

I like to read English story books in my free time. Sometimes I surf the Internet and download the E- books to read. Reading E- books is fun. In addition, it also enlarges my vocabulary words because of the advanced technology and the vivid animations.

I hope to study both English and computer technology because I am interested in both of the subjects. Maybe one day I could combine both of them and apply to my research in the future.

Sample4:

My name is . I am from . There are people in my family. My father works in a computer company. He is a computer engineer. My mother works in a international trade company. She is also a busy woman. I have a older sister and a younger brother. My sister is a junior in National Taiwan University. She majors in English. My brother is an elementary school student. He is 8 years old.
Because of my father, I love surfing the Internet very much. I play the on-line game for about 2 hours every day. I wish I could be a computer program designer in the future. And that is why I am applying for the electronics program in your school.

Sample5:

From a middle class family, I was born in Hsin Ying, Tainan on October 10th, 1965. My father is a civil official at Tainan City Government. My mother is a house wife good at cooking. Although I am the only child of my parents, I am by no mans a spoiled one. On the contrary, I have been expected to be a successful man with advanced education. I study hard at school. Besides texts knowledge, journalism is my favorite; whenever reading, my heart is filled with great joy and interesting.
“Being good is must; successful, however, is plus.” Father adopts the idea of his father. Especially in military service, I realized it more precisely. People said: Military service makes a boy to man, I agree that.
I realized the importance of English and began to study diligently when I was eighteen. I did not start in my early age, but I hope that I could pass the test of General English Proficiency Test. And this is my best wish at the moment.

Sample6:

After completing my military service, I have been looking for a challenging goal for me to achieve. And I found that the Intermediate of General English Proficiency Test fits my new achievement properly.

I graduated from Taipei Commercial Junior College, majored in business administration. Instead of spending much time in playing, I devoted myself to my studies and paid attention to all meaningful things happened in daily life. By the way, I learned a lot from Mr. Wang, the professor of my business class. He is my good friend till now an often gives some appropriate suggestions toward my problem confusion.

My father is, in the same way, a good consultant to me. As he said: I am in poor education, little for you; to clarify, what he have given is far beyond his words, I do think so. I was born in a country of Ping Tung Country, farming is our career of generations. There are four people in my family, Mother is housewife and my brother is a student of an Agriculture College.

I am optimistic and active, and I am confident that I can pass the test. Thank you for your precious to read my autobiography.

 

、Good morning/afternoon/evening, my name is . It is really a great honor to have this opportunity/chance to introduce myself. I would like to answer whatever you may raise, and I hope I can make a good performance today.

上午好/下午好/晚上好!我的名字叫……。今天有机会进行自我介绍深感荣幸。我乐意回答你们所提出来的任何问题。我希望我今天能表现的非常出色。

2、I am ­years old, born in province/Beijing, northeast/southeast/southwest…… of china, and I am currently a freshman(大一新生)/sophomore(大二学生)/junior(大三学生)/senior(大四学生) student at Capital Institute of Physical Education.

我今年……岁,出生在……省/北京,它位于中国的东北/东南/西南……等部。我目前是首都体育学院大一/大二/大三/大四的学生。

3、 My major is sports training of basketball/voellyball/football/badminton/pingbang/tennis/

我主修篮球/排球/足球/羽毛球/乒乓球/网球/田径/游泳/跆拳道等运动训练专业。在我毕业以后,我将会获得学士学位。

4、In the past 1/2/3 years, I spend most of my time on study. I have passed CET3/4/6 and I have acquired basic knowledge of sports training both in theory and in practice.

在过去的1/2/3年中,我把大量的时间用在学习上。我已经通过了大学英语2/3/4/6级。而且,我已经从理论和实践二方面对运动训练专业的基础知识有了一个大致的了解。

5、Besides, I have attended several sports meetings held in Beijing. I am also the volunteers of China Tennis Open, Chinese Badminton Masters…… . Through these I have a deeply understanding of my major—sports training.

除此以外,我还参加了在北京举行的许多运动会。我还是中国网球公开赛,羽毛球大师赛……的志愿者。通过这些,我对运动训练专业有了一个更深刻的了解。

6、I have lots of interest, such as singing, dancing, drawing and so on.

我有很多兴趣爱好,如唱歌、跳舞、画画等。

7、Thank you!

谢谢大家!

Sample :简介版自我介绍
Hello, everyone!My name is Winnie. I'm a 15 years old girl. I live in the beautiful city of Rizhao.
I'm an active, lovely, and clever girl. In the school my favorite subject is math. Perhaps someone thinks it's difficult to study well. But I like it. I believe that if you try your best, everything can be done well.
I also like sports very much. Such as, running, volleyball and so on. I'm kind-hearted. If you need help, please come to me.I hope we can be good friends!
OK. This is me .A sunny girl.

 

 

General Introduction
I am a third year master major in automation at Shanghai Jiao Tong University, P. R. China. With tremendous interest in Industrial Engineering, I am writing to apply for acceptance into your Ph.D. graduate program.
Education background
In 1995, I entered the Nanjing University of Science & Technology (NUST) -- widely considered one of the China’s best engineering schools. During the following undergraduate study, my academic records kept distinguished among the whole department. I was granted First Class Prize every semester,In 1999, I got the privilege to enter the graduate program waived of the admission test.
At the period of my graduate study, my overall GPA(3.77/4.0) ranked top 5% in the department. In the second semester, I became teacher assistant that is given to talented and matured students only. This year, I won the Acer Scholarship as the one and only candidate in my department, which is the ultimate accolade for distinguished students endowed by my university. Presently, I am preparing my graduation thesis and trying for the honor of Excellent Graduation Thesis.
Research experience and academic activity
When a sophomore, I joined the Association of AI Enthusiast and began to narrow down my interest for my future research. With the tool of OpenGL and Matlab, I designed a simulation program for transportation scheduling system. It is now widely used by different research groups in NUST. I assumed and fulfilled a sewage analysis & dispose project for Nanjing sewage treatment plant. This was my first practice to convert a laboratory idea to a commercial product.
In retrospect, I find myself standing on a solid basis in both theory and experience, which has prepared me for the Ph.D. program. My future research interests include: Network Scheduling Problem, Heuristic Algorithm research (especially in GA and Neural network), Supply chain network research, Hybrid system performance analysis with Petri nets and Data Mining.
Mr. gao

 

 

 

good morning, my name XX, it is really a great honor to have this opportunity for a interview, i would like to answer whatever you may raise, 
and i hope i can make a good performance today, eventually enroll in this prestigious university in september. now i will introduce myself briefly,
i am XX years old,born in XX province ,and i am curruently a senior student at beijing XX university.my major isXX.and i will receive my bachelor 
degree after my graduation in june.in the past 4 years,i spend most of my time on study,i have passed CET4/6 with a ease. and i have acquired basic 
knowledge of packaging and publishing both in theory and in practice. besides, i have attend  several packaging exhibition hold in Beijing, this is our advantage study here, i have taken a tour to some big factory and company. 
through these i have a deeply understanding of domestic packaging industry. compared to developed countries such as us, unfortunately, 
although we have made extraordinary progress since 1978,our packaging industry are still underdeveloped, mess, unstable, the situation
 of employees in this field are awkard. but i have full confidence in a bright future if only our economy can keep the growth pace still. 
i guess you maybe interested in the reason itch to law, and what is my plan during graduate study life, i would like to tell you that pursue 
law is one of my lifelong goal,i like my major packaging and i wont give up,if i can pursue my master degree here i will combine law with my 
former education. i will work hard in thesefields ,patent ,trademark, copyright, on the base of my years study in department of p&p, my character? 
i cannot describe it well, but i know i am optimistic and confident. sometimes i prefer to stay alone, reading, listening to music, but i am not lonely, 
i like to chat with my classmates, almost talk everything ,my favorite pastime is valleyball,playing cards or surf online. through college life,
i learn how to balance between study and entertainment. by the way, i was a actor of our amazing drama club. i had a few glorious memory on stage. 
that is my pride.
 
Good morning, my dear professors. I am very glad to be here for your interview. My name is XXX(姓名), and i am 22 years old .I come from XX(城市), a beautiful and charming city. My major is biology engineering, and my undergratuade  period will be accomplished in XX(大学名) university in July ,2011(应该是那个时候毕业吧?);and now, I am trying my best for obtaining a key to XX(要申请的大学名) university。
  Generally speaking ,I am a hard working student especially when doing what I am interested in. I will try my best to finish it no matter how difficult it is. ((When I was sophomore, I found web design very interesting, so I learned it very hard. To weaver a homepage for myself, I stayed with my personal computer for half a month, and I am the first one in my class who own his homepage. )) Forther more,I am a person with great perserverence. During the days preparing for the first examination, I insist on running every day, no matter what the weather was like. And just owning to this, I could concentrate on my study and succeeded in the end。
  Well ,in my spare time ,I like (( basketball, tennis and chinese chess.)) Also english is my favorate. I often go to English  corner to practise my oral English on every thursday, and write compositions to improve my witten ability .But I know my english is not good enough , I will continue studying.
  Ok, that is all, thank you for your listening.

 
在作 英文自我介绍时,每个人会根据自己的经验及经历的不同来撰写。要注意哪些 英语自我介绍 演讲技巧呢?以下是一篇 英文版自我介绍范文,请参考。

  I was born in a small village of Shan Dong Province on April 4th, 1968. When I was young, my family was very poor, so I had to work to earn money to help my parents after class when I was in the middle school.

  In 1986 I was admitted by University of International Business and Economics (or: UIBE) to pursue a bachelor degree in Economics. My major is accounting in Department of International Business Management. The undergraduate education gave me a wide range of vision and taught me how to cooperate with others. I developed several professional interests in Accounting, Finance, and International Trade.

  The following eight-year working experience offered me a good chance to give full play to my creativity, intelligence and diligence. In 1990-1993, I worked as an assistant to funding manager in China National Technical Import and Export Corporation. In 1993-present, I was employed by China Kingdom Import and Export Corporation to be the Manger of Financial and Accounting Division.

  I do believe that with my hard early life, solid educational background and ample working experience, I would be an excellent student of you MBA program.
英文 自我介绍范文:Hello everyone, my name is****. This is really a great honor to have this opportunity, and I believe I can make good performance today. Now I will introduce myself briefly. I am ** years old,born in **** province, *** of China, and I am a **** student at***** **University. My major is ******. And I will receive my bachelor degree after my graduation in June. In the past four years, I spent most of my time on study. I passed CET* and CET* with a ease and acquired basic theoretical and practical knowledge of Language. Besides, I have attended several Speech competition held in *** which really showed our professional advantages. I have taken a tour to some big factories and companies, through which I got a deep understanding of English for application. Compared to developed countries, unfortunately, although we have made extraordinary progress since 1998, our packaging industry is still underdeveloped, messy and unstable, and the situation of employees in the field is awkward. But I have full confidence in its bright future if only our economy can be kept at the growth pace still. I guess you may be interested in why I choose this job. I would like to tell you that this job is one of my lifelong goals. If I can work here,I will work hard. As to my character, I cannot describe it well, but I know I am optimistic and confident. Sometimes I prefer to stay alone, reading and listening to the music, but I am not lonely, for I like to chat with my classmates about almost everything. My favorite pastime is to play volleyball, to play cards or to surf online. From life at university, I learn how to balance study and entertainment. 英语自我介绍范文:Hello, my professors.It’s a fine day today,and I’m very pleased to meet you here.First of all,I’d like to introduce myself to you.My name is ***,my hometown is ***,which is a really beautiful city.Even when I was a young boy,I was very interested in accounting .Every one may have a dream,and I still remember that my dream is to be a accountant .Still today I think that interest is the best teacher in one’s whole life (and knowledge comes from practice). Second, I will introduce my major .My major is accounting in *** University.And my major,which lays more stress on practical use, seems to be at the end of it.When both of them interact well enough,the discovries and theories in biology science can be soon turned into products in all of the modern industry. Four years’ university education gives me a lot of things to learn,a lot of chances to try,and a lot of practices to improve myself.It teaches me not only what to study and how to think,but also to see the importance of practical ability (such as doing expriment as much as possible). In the university life,I have made many good friends.They help me improve my study and research ability, do ererything just like a man,and often give me good example to follow. Besides what I have introduced myself above,I also have many interests in my spare time.I like playing football,which is an effective way I think to improve my body health,and it can teach me how to join in a group and deal with other people.Drawing and writing is another favor to me. Above all,I choose the major in order to broad my view in accounting ,and enhance my research ability.I will do my best to join the new group and be good at postgraduate study. 面试英文 自我介绍范文一:I'm very glad to join in the interviw.First,let me introduce myself to you.My name is Lin YA Qian,I'm 20 years old,I come from Zhe Jiang,and I'm an outgoing girl,I like philosophy and sport.Oh yes,I hope that I can do something for the Beijing Olympics.If you give me the great chance,I won't let you disappoint.Ok,that's all.I hope that you are satisfied with me,thank you! 中文版:各位领导,给位招聘官,大家好!很高兴能参加这次面试,首先让我做个自我介绍,我叫林雅倩,今年21 岁,来自浙江,曾经做过网管的工作,学到了很多东西。我是一个很活泼开朗的男孩,喜欢哲学和运动。这次北京举办奥运会,我很希望能做点什么,如果贵公司给我这个机会,我想我不会让你失望的。简单介绍到这,希望能我今天的表现能令您满意,谢谢! 面试英文 自我介绍范文二:How are you, I call XX.This year is 22 years old.Graduate from XXXX college.The profession is a calculator multimedia.I am one is bright, optimism, there is the person of responsibility.A fondness for plays basketball, computer, listen to music, etc..Thankful your company gives me this the opportunity of the personal interview! 你好,我叫XX。今年22 岁。毕业于XXXX 学院。专业是计算机多媒体。我是一个开朗,乐观,有责任心的人。爱好打篮球,电脑,听音乐,等。感谢贵公司给我这次面试的机会! 面试英文 自我介绍范文三:Dear Sir or Madame. Hello ! I 'm XX ,I feel I will be fit for the job needed in your company. I’m 22 years old and in good health. After graduation from XXXXa middle school, I have studied IT for many years. I am a better man.Do well in personal responsibility ,I am good at both operating a PC,I like palying basketball.computer and listening to the music.I’m interested in the position . I want very much to be accepted by your company. I’ll work hard if I can be a member in your company. XXXX 面试英文 自我介绍范文四:很高兴做自我介绍,我出生在辽宁,专业是国际贸易,毕业于南开大学,我的兴趣是音乐,读书,尤其是经济类的书。 很荣幸应聘贵公司,希望能在贵公司实现我的梦想,希望能给我一次机会,谢谢。 I am very happy to introduce myself here.I was born in Liaoning Province.I graduated from Nankai University and majored in International Trade. I like music and reaing books,especially economical books. It is my honor to apply this job. I hope I can realise my dream in our company.Please give me a chance.Thank you very much it is my great pleasure to introduce myself.i was born in LIAONING. My major is international trade. I was graduated in Nankai University. My hobby lies in the music and reading, especially like economics. i am glad that i can take part in this interview and i am sincerely hope that i can join this company to realize my dream. please give my a chance. Thank you.



1. 没有完美的代码


没有完美的人,更没有完美的代码。虽然教科书上说deadlock(死锁)多么不好不好,但是在现实生活中,很难把它完全消灭。假设不小心内核出现了deadlock,可能你得干瞪眼。CPU就在那里空等着,空转着,叫天天不应,叫地地不灵。等到海枯石烂,CPU生锈的那一天,它还会那么痴痴地等着那个霸占了锁的家伙会良心发现,解下这个锁。也许你会说,哎呀,这么麻烦干嘛?RESET一下,不就一了百了吗?但是如果是一台肩负重担的 Server(服务器),在夜深人静你正呼呼大睡的时候发生了deadlock呢?如果deadlock的原因没有查到,三天五天就会发生一次,光这样被动的重启也不是办法……


不用说让人心惊胆颤的deadlock,很多时候,一段小小的循环,就会把你彻底雷到。我们总认为循环是可以结束的,但是别要忘记,事物都是辩证的,有的时候,碰巧发生了某些预料之外的条件,让这个循环成了彻彻底底的死循环。恰巧此时,CPU的中断如果已经被禁掉,那神仙也救不了你。“我佛慈悲,能不能把循环给我停掉?”“阿弥陀佛,神仙也得遵守潜规则,你让我给你停掉循环,好歹也要给我一个中断,让我能够施法吧?”……不能怪父母,更不能怪政府,如果你正好在电脑旁边,可以RESET;如果你不在旁边,就等着老板的电话吧。“小福啊,今天又超过100位客户打电话投诉我们的交友网站不能访问了,你赶紧打的到公司,看看是怎么回事。赶紧啊!有个客户说,如果今晚12点之前不能登录网站,取得要约会的5位MM的详细资料,他就会携带人体炸弹到办公楼来砸场子……“


2. 保留现场,强行重启


言归正传。如果应用程序进入死循环,我们可以把它KILL掉。如果内核因为意料之外的原因,导致系统进入无法自拔的死循环,最好的办法就是让系统给强行重启。当然,这种重启最好是自动的,不需要人干预的,且最好能够打印出导致重启的原因,便于开发者调试错误。在Linux内核中,用NMI看门狗(NMI Watchdog Timer)的方式来实现该机制。


在系统的正常运行过程当中,每秒都有非常多的中断产生。即便它啥都不做,啥外部中断都不接收,每秒至少有数以百计的用来给线程调度的时钟中断。(如果调度时间片为10ms,则有100个时钟中断。)假设如果内核发现5秒钟之内,没有产生一个中断,那将会是怎么一回事呢?


这个时候,CPU会辩解道:“我兢兢业业地执行每一条指令,有没有中断不干我的事,叫我干啥就干啥,我是真正的劳动模范,不要怀疑我会捣鬼。中断既来之,我就安之。不来之,则说明中断已经被禁掉了。肯定是有个幕后黑手已经调用CLI之类的指令关闭了全局的外部中断,然后偷偷摸摸干自己相干的事情,不被其他人给打断。人都有自己的隐私嘛,代码也不例外。屏蔽中断,执行不被打断的代码,人之常情。但是用得不恰当,如同毒品一样,就会出现大问题。少量鸦片,可以当作药品;携带超过5克海洛因,就得上刑场。禁掉中断占用一点点CPU时间,可以让程序很容易地绕开race condition(竞争条件);但是如果中断被禁掉的时间长达5秒钟,那就违反常理了。5秒钟之内系统不会有其他响应,其影响之深远,罪行之恶劣,不用满清十大酷刑简直不足以平息民愤……”


“该杀!该杀!”这个时候,内存,芯片组,硬盘……所有硬件都附和。看来CPU还是一直是IT届的老大。不怪我们不客气了,赶紧打印出现场(CPU出现LOCKUP时的相关上下文,包括寄存器值,函数调用栈等),且记入LOG,作为判案的证据,同时有警示后人只用。接着,就对施以极刑,给内核来一个oops,彻底终止它的执行,让它重新启动。


3. 少林扫地僧——NMI


不对,不对!也许你有这样的感觉,既然5秒之内没有一个中断,基本肯定中断是已经被禁掉了,那CPU就被迫只会一直执行那段有问题的代码,根本没有机会来执行所谓的“保留现场,强行重启”的代码。这些代码放在内核的另外一个地方,要调用它,必须由中断出发。可是,可是中断不是已经被禁了吗?借尸还魂?恐怖,恐怖……


“再厉害的黑社会,也斗不过我们人民警察!”这个时候,CPU又冷笑了,“虽然中断被禁掉了,但是,我还拥有秘密武器。那就是Non-maskable interrupt,不可屏蔽中断,简称NMI。你要禁,只能禁掉一般的可屏蔽中断。NMI,我压根就让你摸不着,碰不着!”


原来,内核中隐藏着一个神秘的高手,那就是NMI。我们调用spin_lock_irq,虽然能够禁掉本地的中断,但是NMI却不行。内核中设置了一个watchdog timer,它的中断类型就被置为NMI,每过一定的时间,这个timer就执行一次,用来悄悄监视系统的运行。如果系统正常,它啥事都不做,仅仅是更改一些时间计数;如果系统不正常(默认5秒没有任何普通外部中断),那它就闲不住了,会立马跳出来,且中止之前程序的运行。该出手时就出手!


我想到了在血腥的武林当中,有无数的高手。刚开始的时候,似乎人人都是高手;但后来,昔日的高手看起来都是菜鸟,强中更有强中手。再后来,更高的高手出来了,开始这里论剑那里比武,争霸天下了。最后来,天下也许是第一第二的高手开始决战……似乎故事就这个时候结束了,但是让人大跌眼镜的是,一个小小的少林扫地僧,却能轻易地两位顶尖高手制服。NMI就是这样的角色,平时从不站在前台,也很少为人所知。除了用NMI watchdog timer监测系统是否锁住之外,一些特殊的严重的硬件错误,比如内存奇偶校验错等,也会触发NMI的发生。不过这些错误,估计很多人从来不会碰到过。


4. More...


如果出现死循环的地方没有把中断禁掉,那是不是不会触发NMI watchdog timer了呢?理论上是的。至少Linux2.6的抢占内核应该不会触发。但是,由于系统还是有机会调度到其他线程,所以整个系统可能响应很慢,但不至于给死掉。我们可以通过top命令查看进程状况等手段来进行分析。


不是所有的Linux内核都支持NMI watchdog timer的。必须在内核中添加APIC的支持。(现在的内核和硬件一般都是没有问题的)如果是x86-64的硬件体系结构,APIC是被默认支持的。在很多发行版本当中,需要在启动的时候添加内核启动参数
nmi_watchdog=N
来启动NMI watchdog timer。N代表了该timer的source,如果为1,表示利用IO APIC的始终源;如果为2,表示利用LOCAL APIC的performance counter。具体哪个好用,可以分别测试一下,一般来说,比较新的CPU(一般都是双核了)选择2的话,系统负担更小一点。想要更多的了解NMI watchdog timer,请看如下的kernel文档
http://www.kernel.org/doc/Documentation/nmi_watchdog.txt
想要知道啥时APIC(注意不是ACPI),啥是IO APIC,啥是LOCAL APIC,那就请google一下吧



AIDA 64
 
当然大家还可以继续点下去,每一页都有实用内容,我就懒得截图了……

GPU-Z,检测时大家先看看型号是否正确,以防止出现不正常问题。然后可以看看下面显存的规格(DDR3还是DDR5)显存位宽等,这些细节才决定了显卡的终极性能
 
感谢帖子第9页几位同志的建议,之前疏忽,忘了推荐一款检测显示器的软件了

我个人验机在商家知底的状况下有些时候甚至只会检查一下显示器,目的是没有点

这个软件叫DisplayX,体积很小,我就一并放在帖子里了
现在大家买电脑更多的关心的是处理器和显卡,但是有一种说法说的好,99%的时间内,决定你试用电脑感受的关键部件是硬盘和内存,所以对于电脑的存储部分,我们也要给予一定的关心啊。

检测硬盘常用的软件是HD tune 最新版本4.6
双Z出马,最小巧软件搞定最艰难任务

双Z,这里指的是CPU-Z和GPU-Z两款软件,顾名思义,两个分别是检测处理器和显卡芯片的,两个东西的体积都不到1MB,但是已经可以足够完成我们的验机任务了。

两款软件的下载链接如下:
 
Everest

纳兰性德《木兰辞 拟古决绝词柬友》
人生若只如初见,何事秋风悲画扇。
等闲变却故人心,却道故人心易变。
骊山语罢清宵半,夜雨霖铃终不怨。
何如薄幸锦衣郎,比翼连枝当日愿。



对linux邮件列表的一点建议
 
1 读万卷书,不如行千里路,找点东西做,做出点成果来,发行个版本,整点驱动,找点漏洞
 
2 整理资料,问问题的时候说明环境 版本 等,最后解决的时候整理下,思路 方法供后来者学习
 
3 定期讨论下发展方向




(戴旭)

我是1995年在国务院军安办来深圳考察创维老板的时候来过一次,从那以后我就再也没有来过。昨天因为国航的飞机晚点了10个小时,我到深圳的时候已经是晚上1:30了,所以已经没有办法再见到深圳的面貌。早上醒来的时候,我有一个感受,深圳还这么年轻,我已经老了。为什么这么说,从1995年之后,虽然我没有来深圳,但是我大量的时间都在中国的周边走,为什么走我们中国的周边?我一会儿就会在我的演讲里讲到这个问题,是因为我们深圳在这十几年中一直在平安无事的发展,大家在挣钱,但是在我们的周边,大家也应该能感受到,连续不断地发生很多的问题,为什么会发生这些问题?我今天就要给大家解开这个谜。
为什么我们周边会出现这些事情?大家可以回想一下,进入2009年几乎每个月都有关于中国的消息传来,远的不讲,奥巴马刚刚上台,便和日本密谋关于针对中国的很多事情,我们的很多人都还被蒙在鼓里。5月份是马来西亚、越南、菲律宾一块儿提出把南沙群岛并入他们国家最嚣张的一个月,在这个月美国的军舰连续在南海和中国的军舰、渔船发生冲突,到6月份的时候,印度一下子增兵6万,在这6万里面有2个山地步兵师加1个炮兵师。所以在6月份的时候我又去了一趟成都,是因为它这次增兵。到8月份的时候我又去了一趟,7月份的时候日本宣布要在与那国岛驻军,后来日本新政府上台以后,这个消息暂时停下来了,现在是搁置,但是它的国防部长已经宣布要在这个地方驻军。
就在这个月,新疆发生7?5大屠杀,6月份印度增兵的时候我在成都,我从成都去了新疆,我从新疆回来不到20天,乌鲁木齐发生大屠杀,它屠杀的地方我全都去过。还是在7月份,印度自己制造的核潜艇下水,还要宣布再建4条,然后日本邀请热比娅访问,同时希拉里又跑到印度宣布要和印度建立战略伙伴关系,大规模出售军火,同时又回到泰国,然后台湾又邀请达赖一系列的事件。8月份澳大利亚借力拓案在政治上攻击中国,它发表了一个白皮书,白皮书上公开的宣称要和中国打一仗。到8月的下旬,缅甸果敢就发生了杀中国人的事件,这个事件一会儿我再讲。
我从新疆回来到北京基本上没有停过,果敢的枪声一响我又过去了,直到听到那边的枪声熄灭我才回来的,我从那边又去了朝鲜半岛。到9月份,就是奥巴马宣布对中国加征关税,这是一个经济事件,就在同一天,中国宣布要对美国的肉鸡和其他的产品进行调查的时候,这时候美国宣布派助手到印度,到达赖的驻地见达赖。就在9月15号,美国情报部门出台报告,公开的把中国、俄罗斯、朝鲜和伊朗一起列为危害美国国家利益的假想敌。它的国防部长公开宣布要研制新型的战略轰炸机B—3对付中国,10月份,就我们阅兵过后不久,前几天台湾突然大规模的试射导弹,那不是小数,而且这个导弹不是小导弹,全是大的导弹,有很多导弹可以打到新疆,基本上可以覆盖大陆全境。这些东西集中在2009年奥巴马上台以来,我说的还只是一个轮廓,很多的事件全都上网了,只是我们的政府出于其他安定的考虑,没有有意的宣传这些事件。
昨天我在飞机上看到我在《环球时报》发表的一篇文章,是批评印度的,印度现在在中印边境上非常的嚣张,它嚣张的举动我能举出10个到20个,但是由于这种事情不是今天的主题,我就不展开。这些事情都围绕中国的周边,连续不断的出现,这是为什么?那就是说我们中国周边的局势已经被包围了,什么形势的包围呢?我把它形容为C字型的包围圈,这是我自己提出的。我们看看这个字母,在冷战的年代,中国被包围就是处在海上被包围,也就是美国50年代发动朝鲜战争的国务卿杜勒斯,当时宣称要对中国实行新月形包围,就是从日本列岛到南海群岛,也就是从海上封堵中国,仅仅是一个新月形,像一个月牙一样。今天这个包围就不是这样的,它是从月牙这个地方又从陆地上延伸到中亚,伸到蒙古,现在我们看一个视频。(凤凰卫视《军情观察室》介绍中国被包围的情况片断播放)

它的第二个点就在琉球,日本列岛往前面走还有一个琉球,这个点现在在我们很多中国人的意识中已经把它当成日本的领土了,但是我从学术的角度不断的提出,我说琉球不是日本的国土。在今年的7月份我在《环球时报》上写过一篇文章,当时是有一个代表团跟他们谈判这个问题,我怕他们有些人脑子犯糊涂跟他谈地理问题,但是现在跟他们谈,我们一直坚持一个原则,就是按照联合国的《海洋公约》,看这个东西到底是按大陆架谈,还是按海上分界线谈。我说这些原则都不对,我们国家对外领土领海的谈判,我个人认为应该坚持历史权益优先的原则。什么叫历史权益优先?就是谁拥有这个地方,谁最先发现、最先使用的,那么就是谁的,而不应该看这个地方离谁近。联合国《海洋公约》是1982年才出台的,我们使用这个地方有多长时间呢?所以我就写了一篇文章,我说中日之间没有领海争端,哪有领海争端?我说中日之间还隔了一个国家——琉球国。为什么呢?因为琉球国如果不能算成中国的领土,它也不应该算成日本的领土,因为它原来是我们的附属国,大家都非常清楚,1879年被日本并为他们的领土。琉球人被日本称为华族,什么意思呢?在日本人心里,他们都认为这些是华人。因为琉球的国王是需要被中国皇帝册封的,不是儿子也是外孙的意思。固然我们今天不能把它当成我们的一部分,但是在民国的时候,我们的国民就是把琉球视为中国领土。你们回去可以读一读闻一多的《七子之歌》,他怎么说的?他把琉球当成台湾的腹地,是我们家族的一个兄弟,谁都没有把琉球当外人。但是琉球国就在1879年被日本并了,因为中国当时正处在衰落的阶段,并了就并了,清朝也没有敢吭气,这个事也就算了。但是在 1945年的时候中国曾经有两次机会收回琉球,在座的可能也都很清楚,1945年二战结束以后,罗斯福两次向蒋介石提出,把琉球群岛还给你,你能不能派孙立人的远征军到日本来作为占领军。当然美国军队非常害怕日本人,因为他跟日本人一打仗,他发现日本人根本就不是人,全都是野兽,有神风敢死队,包括战败以后所有的老百姓都跳出来了,他就发现这根本不是人类,这个民族非常凶悍,他就怕美军登陆日本以后,可能对美国的占领军引起很大的麻烦。他认为中国人被日本人欺负了很多年,特别仇恨日本人,让中国人去做占领军,他们就去一些领导人,去一些军事机构,他心里就比较踏实,而且特别点名孙立人的军队去。孙立人的军队就是远征军,前不久我们看的一个电视剧《我的团长我的团》里面的那个部队,就是孙立人的部队。孙立人的部队前面被打的是杜聿明的部队,孙立人的部队就在印度接受了美式装备,换了美国的军装,拿了美国的机关枪、大炮、火焰喷射器,后来把日本人打得够呛。孙立人有一个特点,他每仗打胜以后抓到日本的俘虏,他审问俘虏非常简单,他就问日本军人两句话:你到过中国大陆没有?“到过”。到过的站到一边,没有到过的站到另一边。就这么简单,再也不问了。后来问完以后,凡是到过的一律活埋。当时美国想派孙立人,一个是孙立人比较能打,再一个是孙立人毕业于美国的西点军校。他们也觉得中国人对日本人充满仇恨,作为占领军以后,一定会镇压日本,所以就向蒋介石提出把10万远征军派到日本来,作为占领军,然后把琉球群岛还给他。蒋介石没有答应,第二次又提出,说来五万人就可以了,还是把琉球群岛还给他,蒋介石还是没有答应。
这个机会就放过去了,放过去之后,今天就成为中日之间一个大的麻烦,因为琉球群岛前面还有一个钓鱼岛,钓鱼岛在琉球群岛和台湾岛之间,它其实是属于台湾,但是是介于台湾与琉球之间,日本既然把琉球视为自己的领土,他也认为钓鱼岛也属于琉球群岛的一部分,可是在我们的观点中,它应该属于台湾群岛的一部分,因为它离台湾最近。

这个机会就放过去了,放过去之后,今天就成为中日之间一个大的麻烦,因为琉球群岛前面还有一个钓鱼岛,钓鱼岛在琉球群岛和台湾岛之间,它其实是属于台湾,但是是介于台湾与琉球之间,日本既然把琉球视为自己的领土,他也认为钓鱼岛也属于琉球群岛的一部分,可是在我们的观点中,它应该属于台湾群岛的一部分,因为它离台湾最近。
双方就围绕这个地方又埋下了一个火种,这是美国有意设计的。由于蒋介石没有接受美国的邀请,美国军队就自己在琉球群岛上驻军了,把它的海军、空军全部驻在这个地方,作为一个非常大的军事基地驻在这里。美国就一直在观察,他观察未来中国和日本谁有可能成为美国的朋友,他就把这个地方交给谁。大家也看了《建国大业》,中国的政治生态后来发生了变化,就和美国成为了敌人,双方在朝鲜战场上大打出手,开始成为不共戴天、势不两立的状况,美国一看这个情况,显然日本成为它的朋友,后来就把这个地方从法理上移交给日本,但是钓鱼岛没有说是谁的,琉球群岛就移交给日本了,日本人就把它变成冲绳。今年2月份希拉里去就是在和日本签一个协议,就是美国将把驻冲绳的部队迁到关岛。
这是什么意思?它迁到了关岛,这就是说在中国和日本之间,再也没有一个劝架的了,也就是说中国和日本基本上处于面对面的状态。所以在2月份的时候我就写过一篇文章,我说:由于美国和日本签署这个协议,日本军队接管冲绳之后,由于和我国处于面对面的状态,日本的态度将变得非常强硬,未来解决东海问题和钓鱼岛问题将变得非常不容易。但是我没有想到的是7月份日本又宣布将在与那国岛驻军,我们可以看看它的位置,它离台湾只有 110公里,距离东京有2112公里,比我们到南沙群岛的距离还要远,也就是说日本要在这个地方驻军,当然后来麻生下来以后,新政府上来要和中国搞好关系,这个主张就暂时放下来了。但是我们不能忘了,这是日本大战略中的一部分,它早晚会在这个地方有动静。
美国和日本加上印、澳、新等盟国,就在日本到琉球群岛周边,这么多年进行了大规模的演习不下几百次,基本上都是针对中国的。在今年的4月份,海军阅兵的时候,我们大家都知道,印度来了两条比较先进的驱逐舰,当时我们还比较感谢印度,说印度人还挺给我们面子,把他最新的军舰全都派过来了,但是4月23号我们阅兵完毕,4月24号,印度的军舰直接从青岛开到冲绳,和日本、美国进行大规模的海上演习,叫“反恐演习”,美国出动了航空母舰、核潜艇,日本出动的有宙斯盾、金刚级的大型驱逐舰一万多吨,加上印度两条比较先进的驱逐舰。所以当时我在国际广播电台做节目时就说:在冲绳这个地方有什么样的恐怖分子,能够值得美国动用航空母舰和核潜艇呢?有什么样的恐怖分子值得印度从印度洋上跑到这个地方来反恐呢?这就是在日本方向针对中国的情况。
从日本列岛再往前走,在这个包围圈里面还有一个重要的点就是台湾。当然由于马英九上台以后,两岸的关系比较和谐,也就是说现在战争冲突的形势看起来不怎么紧张,当然我们不要忘了,台湾问题困扰了大陆多少年?也就是说我们建国多少年,这个问题就困扰了我们多少年。蒋介石的时候一直在反攻大陆,围绕这个地方可以说是小仗不断,一直到1958年还发生大规模的炮击金门,我们的空军和国民党的空军还在福建的上空进行过大规模的空战。直到后来,我们改革开放之后,双方的形势在蒋经国时代有过一阵短暂的和平时期。但到李登辉上台以后,1996年我们又进行了一次特别大规模的演习,就是解放军历史上从来没有过这么大规模的演习,三军大规模出动。也就是在这次演习中,我们军队枪毙了一个少将,也就是说我们演习的很多重要的底牌被他透露给台湾,当时我们6枚导弹穿过台湾岛,从台湾的上空打过去。结果我们的导弹还没有发射,李登辉就知道我们的导弹上没有弹头,他说是空炮弹。这个情报就是总后的一个将军刘连昆传递出去的,这个人前前后后为台湾做间谍做了9年,是目前唯一一个同时拥有两岸少将军衔的人,既是中国人民解放军的少将,也是中华民国国军的少将。从这点可以看出两岸的形势非常的不平静,从1996年开始,两岸就进入到风急浪高的阶段,一直到陈水扁上来,可以说是非常的嚣张,一直就奉行对大陆的挑衅对策。也就是说仅仅从2008年马英九上台以后,双方才由紧张得对峙转向相对的缓和。所以在相当长的时间内,解放军有一句口号,就是要以对台军事斗争做准备,以对台军事斗争拉开我们军队的全面现代化建设。台湾岛这个问题我们还不可以小视,只要它一天不回来,一天就是我们的麻烦。
在美国和日本两个国家的作战计划中都有为了台湾不惜和中国发生大规模战争的准备,光是兰德公司为了应对台湾问题,就有三套大的方案,其中一套方案就是未来台湾问题双方发生冲突,将对中国的沿海、北京、上海进行全面的轰炸,包括中国的东北,这还只是局部战争,所以我们不能小看这个问题。日本说得更明确了,日本有一个防卫次长说过,他说我们日本对大陆两岸的关系是怎么看的呢?他说:大陆和台湾就是一对夫妻,夫妻之间平时吵架我们邻居可以不管,但是当丈夫要拿刀杀老婆的时候,我们邻居就不能不问了。讲得非常明确,这实际上就说明了日本的根本心态,就是你们平时怎么吵架都无所谓,大陆真想要用武力把台湾拿回来的时候,那日本就不能不问了。所以我们应该知道台湾问题目前对我们大陆是一个什么样的状况,另外,两个国家是怎么想的。

台湾之后,也就是说海上包围圈的终点就在南海。在今年7月份,我跟深圳卫视的22度观察做了一期节目,跟北京的徐光裕将军,就是为了南海问题,我当时就觉得深圳人不仅是爱国,而且非常胆大,他问的很多话题非常的尖锐。后来他问徐光裕将军,他说:徐将军,你认为我们在南沙问题上,我们最后的结果会怎么样?徐光裕将军说:我认为会双赢。他后来又问我:戴老师你认为会怎么样?我说:不可能。哪有双赢呢?要么就是他们拿走,我们全输,要么就是我们拿回来,他们什么都没有,哪有什么双赢的结果呢?因为这个地方的情况跟其他的地方不一样,领土的问题是不能谈判的,就像邓小平同志当年在香港问题上跟英国人说的是一样的,主权问题不能谈判。所以我们现在有很多的学者还在做着梦,怀着梦想通过外交谈判、外交手段收回这个地方,事实上根本不可能。而且在南海问题上,我也是目前中国人当中,写的文章最多,呼声最强烈的,就是力主民间、军队赶紧有所动作,赶紧进去。为什么?就是因为在南海发现的石油和天然气超过中东,目前已经发现的石油有500多亿吨,不算天然气,已经相当于第二个中东,如果再扩大一下区域,很可能超过中东。这对于我们中国意味着什么?意味着你的未来。大家看现在有这么多的车辆,可是目前我们国家的石油储备不到一个星期。而我们海上所有的石油通道全在美国手上卡着。如果美国要把我们这些石油管道关了的话,咱们一个星期就没有油用了,不是多少钱的问题,是你根本没有,所以我们一定要重视这个问题。
在这个地方,南海这些国家打了1100口油井,没有一口是我们中国的。今年2月份国家海洋局和北京大学中国战略研究中心的一些人,召集我们几个要制定一下中国的海洋战略,后来叫我过去了。叫我过去以后,我一听他这个题目我就有点不太高兴,我说:你们怎么现在才制定中国海洋战略呢?中国海洋已经被人家全部拿完了,你怎么才制定海洋战略呢?你们这么多年干什么去了?所以这个数据我是从他那个地方搞到的。我问:现在别人有多少口油气井?他说:别人有1100多口。我说:我们呢?他说:我们一口都没有。我说:为什么没有?他说:因为我们的体制,条块分割,因为中央和地方内部的体制不健全。我说:不对,你在找借口,因为你们贪生怕死,你们怕跟人家搞纠纷。果然我这个主观的推断被我验证了。当时《环球时报》有一个记者,我不知道他是什么动机,他去采访中石化的一个领导人。他说:我们中石化为什么不去南海开发石油呢?那个人说:这个地方不能去,这个地方能引起外交纠纷。所以我就在我的博客上写了一篇文章猛烈抨击中石化,我说:你自己的地方,人家都不怕发生纠纷,你怕什么呢?你就是一个贪生怕死的行为。所以说这种软弱会导致我们将来在很多问题上根本没有地方着手。后来在和徐光裕将军做这个节目中,我还说了一下,我说:我们大众一定要纠正一个观念。很多人到现在认为,包括周边的国家(越南、菲律宾)也在说,他们以联合国《海洋公约》为依据,他们说:南海这个地方离我们的大陆架很近,离我们的领土很近,所以这个地方不是中国的。离我们菲律宾也近,离印尼也近,离中国那么远,怎么能说是中国的呢?你的大陆和那个地方的大陆架也不相连。导致我们谈判的领导人非常被动。后来我在深圳卫视22度观察中说,我一定要把这个问题讲清楚,为什么这个地方离我们这么远,又不是在我们的大陆架上,它还是中国的。这个东西我们就要看历史了,联合国《海洋公约》是1982年出台的,越南是1975年独立的,那在越南独立之前,这个地方是谁的?我们发现这个地方,是在西汉时期。那个时候中国命名这个地方叫“千里藏沙,万里石塘”。那个时候越南是谁的?越南是我们中国不可分割的一部分,越南是我们不可分割的一部分的历史直到宋朝,到宋朝的时候变软弱了。这个朝代我后面还要讲到,宋朝这个国家非常有意思,和我们中国现在有一比,很有钱,很富裕,很软弱。所以越南是我们不可分割的一部分到那个时候就变成可以分割的一部分了,它就变成了附属国。这时候就像琉球一样,因为在宋朝以前,我们在越南设的都是郡,就像我们设一个省、一个地区一样,叫安南郡,这些都是我们给它起的名。到宋朝以后,它变成了附属国,之后随着中国朝代的更替,有时候我们中央的军队过去,就把它给灭了,灭了之后它又变成我们的一部分,然后等我们弱的时候,它又独立了,等于说是晃来晃去。到后来清朝衰落了,这个地方就被法国拿去了,大家都非常清楚,大家看一下近代史就知道了。法国拿走以后,又被日本人夺走了,日本人失败以后交给了美国,后来美国人又被日本人打跑了,越南才独立,所以越南1975年才独立。这是全部的历史,所以我后来讲:越南和南沙和我们中国,相当于什么关系呢?我说这相当于儿子跟老子分家。它现在长大了,翅膀硬了,它要独立了,分家了,分家就分家吧,你可以把你的房子拿走,但是你不能把老子鱼塘也拿走。越南是我们中国一部分的时候,这个鱼塘就是我们的一部分,你分家的时候把你的房子拿走了,我们并没有要把鱼塘给你。但是我这段说完以后,咱们深圳卫视放的时候把这一段给拿掉了,白讲了半天。我觉得这是一个基本的常识问题,讲得非常通俗,它是真实的问题,我们应该明确这一点,全世界都应该明白这点,这是老子的鱼塘,你们不能拿走。其实到现在,我就觉得,我们和他们将来的谈判,一定要拿这个例子和他们讲,这是我们的鱼塘,你是不能拿走的,固然你现在把它占住了,那占了是要还的。就像吴镇宇说的:出来混,迟早是要还的。你不能永远不还,就是这个问题。

当然今天我们不讲这个问题,我们就讲一下,目前对我们的封堵到这个地方的情况。南海这些国家正在做什么?一个是大力挖我们的石油。所以我就主张我们坚决要过去,我说:你赶紧过去在这里搞一个我们的海军基地,到现在全国所有的地方我都跑遍了,唯独没有到南沙旅游过。为什么呢?并不是我害怕他们,是因为没有交通工具,坐我们海军的小破船要跑好几天,晕船晕得不得了。你要在那边建个机场,我坐飞机不就过去了吗。我说:你赶紧把它建起来。在《环球时报》上,为了南海的文章,我发了四五篇。所以我一直主张我们赶紧过去。你要不过去,那这个地方就是这样。而且我们提出“搁置争议,共同开发”,我认为我们说话不算数,我们搁置争议,人家在开发,你为什么不跟人家共同开发呢?所以我觉得在这块我们是说话不算数,共同开发你应该赶紧开发去,他开发了你也要开发。我当时在《环球时报》写这篇文章也比较着急,我说:我们应该利用4万亿拉动内需的政策,鼓动全民下南海,给他政策,划一片区域,捕鱼的捕鱼,挖油的挖油,把海军往这儿一放,看着,海军干的就是这个活儿。所以我一直主张,但是到目前还没有看到行动,但是我到目前还在呼吁,我希望赶紧过去,如果过去晚了的话,这个地方会非常麻烦。
在未来的5到10年,南海各国目前在做的事是什么?他们现在大概在2年到3 年,引进的先进潜艇要达到36艘,其中光越南一个国家就有多少潜艇?我们国家才4条,它一下就买的6条。菲律宾从法国买先进潜艇一下就买10条。而且越南还买了远程的战略轰炸机,就是苏联的苏30,这个飞机的作战半径是2500公里,那就不是针对南海的问题,整个海南岛和我们深圳这个地方实际上都在越南的飞机威胁之下。还有它远程的防空导弹,因为越南这个国家像一个黄瓜一样,特别长,它架到北部,它的防空导弹斜刺可以打200公里,可以打到这边。如果俄罗斯再把先进的给它可以打300公里,他们一直在做大工作量的准备,这些东西都是针对中国航空母舰来的。
美国到现在玩的这个东西是什么样的呢?它基本上在做的就是把太平洋当成一扇门,从日本这个地方一直关到南海,从南海再往西就是印度,现在印度也过来了,我刚才不是讲了吗,阅兵的时候印度的军舰都过来了,但是印度还不仅仅是在阅兵上和美国、日本搞在一起,它在南沙和东盟国家、美国联合搞的演习,以及在印度洋上和欧洲国家搞的演习不计其数。也就是说它现在扮演的也是另外一扇门,也从印度洋上关了南海,这样从太平洋到印度洋实际上是海上两扇门,基本上得逞了,美国就是这个关门人,像东盟这些小国,像越南这些小国家,实际上扮演的就是插门闩的角色,把门闩一插,我们这个门基本上就被关上了,3万公里海上的大门。所以我们现在有些人说:经过六十年的建设,我们的海军已经建设成为海上钢铁长城。我说这个话讲得真是不中听,不用你建钢铁长城,在你的外面,人家已经为你建起了一道钢铁长城。正是因为有这么大的一条钢铁长城在这边拦截,所以我们中国海军目前处在一个囚徒困境中。这是我给他们命名的,可能我们某些人听了不舒服,但是现实就是这样的。
这么多的国家,这么长的区域,围着我们的海上,它的处境像什么呢?我们可以回顾一下世界历史,它很像德国。德国在大西洋上就被称为囚徒,英国就是它的看守,英国这个看守看着德国海军,只要德国海军一动,英国海军马上把它拿下。所以德国海军两次想要冲破英国海军的看守,两次都被英国海军全部歼灭。但是我们要知道,德国海军面对的看守只有一个国家,可我们面对的看守有多少个?美国、日本、南海一系列的国家,加上印度。可是这些国家里面加起来有多少航空母舰,不说美国的,美国有10条核动力航空母舰。日本今年3月份下水了一条直升机航空母舰,6月份试水了一条,在5年之内日本会拥有4艘航空母舰,可是在10年之内,我能不能看到我们的航空母舰都不好说。而且就算能看到,我刚才也讲了,人家猎杀我们的航空母舰的武器都已经准备好了。所以说我们目前基本上就处于这么一个困境,所以我认为我们今天中国海军的处境比当年德国海军的处境更加艰难。中国今天是不能失去海洋的,我们深圳人可能更有体会,我们今天这个经济实际上就是海洋经济,是外贸型的国家,我们大量的资源、能源,以及我们的市场全都要借助海洋通道,但是目前我们还不能控制我们的海疆。不能控制海疆,事实上我们的海外利益就没办法保卫。目前,外围我们保卫不了,眼前我们又冲不出去。所以我在不断的给有关部门上书,我说:如何突破海上的围堵,应该成为我们新军事变革的一道思考题,这是海上。
冷战的时候只有海上的包围圈,那时候的说法叫新月形包围,就像月牙一样,很小的一个包围。但是今天不一样,也就是说海上的包围是到印度为止,从印度开始,陆地的包围又上来了。所以陆地上的包围紧接着海上的包围线展开,从印度一直再往西,再向北,再向东走。我们看新闻都知道,前几天,印度和美国的陆军进行了大规模的山地作战演习,这是第一次,以往美国和印度的演习都是进行空军演习,都是印度的空军跑到美国去,跟美国的空军进行格斗演习,当然是针对中国设定的一些项目,问题是它现在陆军也在进行演习。而且希拉里上个月去宣布对印度出售预警机,这是美国海军使用的最先进的ERD,鹰眼预警机,所以印度不仅买了以色列的3架预警机(以色列的几架预警机可能大家都知道,就是当时以色列准备卖给中国的,后来由于美国使坏没有卖,这个飞机就卖给印度了,是费尔康。也是像我们阅兵式的EL76一样,一个大圆盘子。后来这个飞机就卖给了印度),还要买美国的,而且下一步还要买美国一系列的武器,除了美国的隐形飞机和它的战略核导弹以外,几乎美国的军事库全都对印度出售,卖给他大量的军火,双方在军事上也在结成非常紧密的联盟。所以我在昨天的《环球时报》上又说了,当时《环球时报》也让回答几个问题,他说:如果印度要和中国打怎么办?中国会出现一个什么状况?当然我也是为了给中国人提精神,不过实事求是也是这样的,我说:印度和中国打肯定是不行的,但是印度是美国包围中国的一环。就是我们要在这个地方发生和印度的冲突,这地方不可能是单独的中国对印度作战,美国会用它庞大的军事体系给印度提供支持,比如说美国的太空卫星、美国的侦察机和美国源源不断的军火支持,所以这个地方的问题

美国拉印度的用意也比较深了,它也不光是为了围堵中国,它还有其他方面的考虑,但是它拉走以后,的确给我们中国造成很大的麻烦。所以在昨天的文章中,我讲:我们中国单独对印度占有很多的优势,经济上比印度有优势,主要是双方的军队,因为我一直在去成都军区,那边军方的领导人都是我的好朋友。大概每年6——7 次,因为一个是国内问题,还有一个就是印度问题,那边的问题非常的多,所以说我们对印度这块,大家以后还可以观察,这个地方的问题从现在开始,会无穷无尽的困扰中国,除了印度在边境上对我们进行挑衅以外,印度对达赖原来是隐形的支持,就是让达赖在他的境内进行一些反华活动,到处出访。实际上我们中国人不知道,它还在印度给达赖培养特种武装,它有一支专门的正规军1万人,是特种部队,平时就编制在印度的部队以内,穿印度的军装。他们敬礼全都是印度式的军礼,是达赖流亡政府的部队,他们不断的退役,然后再不断的招他的新兵,实际上就是在为达赖培训武装。所以在去年的3?14事件中,有很多都是他们退役的特种兵过来的。大家应该知道,特种兵不是一般的军人,具备很大的破坏力。

印度之后就是巴基斯坦。最近巴基斯坦的局势非常的严重,不仅巴基斯坦的军方在跟塔利班进行交战,而且美国在巴基斯坦的军事行动也基本上超过了阿富汗。这个地方的军事行动,我们很多人认为美国只不过是在反恐,实际上不是这样的,美国的反恐是非常明确在哪个地方打。它在哪儿打呢?它在巴基斯坦的西南部,靠近印度洋的地方打。这个地方是什么地方呢?这个地方是我们中国在巴基斯坦投资最多的地方,因为这个地方有一个面向印度洋的出海口,叫瓜德尔港,是我们中国人建的。当时印度有很多人提出要在印度洋上对中国进行拦截,所以我在昨天的文章中也说了,当时有一个人提出:你一定要回答一下,如果印度在印度洋上拦截中国船队怎么办?我说:如果印度敢在印度洋上拦截中国,它除非把它的新德里牵到月球上。因为你在海上拦截,我不一定在海上跟你作战。今天的作战就是全方位作战。我曾经说到这个问题。所以当时我们对它的这个担忧还是有,这个担忧之一,就是我们在巴基斯坦有一个瓜德尔港,我们如果把这个港口建好,那么我们很多的船队、物资就可以在巴基斯坦这个地方登陆,卸货上岸,然后走陆路,过新疆,就过来了。但是美国在巴基斯坦的反恐战争,大量的战争就在这个地方打,直到打得这个地方的老百姓到处逃跑,所有的投资在这个地方都没办法进行。
所以今年5月9号美国人写了一篇文章,算把这个谜底揭开了。他说:为什么我们要在这个地方打?那就是必须尽一切可能迫使建成瓜德尔港、需要伊朗天然气的中国退出。就是这个意思,就是要把这个地方打烂,名义上你还不能说他,因为它在反恐,他在打塔利班。所以我认为它是明打塔利班,暗打中国,所以现在这个地方终于把我们的很多企业全部打跑了,我们现在在那个地方的建设工程全部撤走了,现在也没有办法了,美国在这个地方的作战行动基本上就消停下来了,这就是美国在陆地上的行动。
过了巴基斯坦就是阿富汗,大家知道美国已经在阿富汗打了9年,到目前为止还没有一个结果,所以我也不知道它这个仗要打到什么时候,但是可以肯定的是,美国继续打,美国绝对赢不了,但是美国也不想赢,因为美国本来就不是真心想在这个地方打仗,它本来就是假的,要以在阿富汗作战为名,进驻中亚。中亚才是美国的核心,为什么要进中亚?两个问题,一是中亚等于第二个中东,因为南海目前还没有被列为公开的世界资源地,目前石油气、天然气最多的就是中亚,所以在中东之后,第二个能源基地就是中亚,美国进到这个地方就是要控制这个地方的石油,第二个就是要与俄罗斯争夺势力范围,所以美国以在阿富汗打塔利班为名,大量的军队进驻中亚,控制这个战略要地,下一步就是针对中国、俄罗斯发力。所以今年的7月5号新疆发生这个事情,我们一直说是热比娅,说是疆独势力,实际上背后还有美国因素,这个大家都很清楚了,因为美国一直在对热比娅进行政治上的支持。但是我们不知道,美国还对新疆的叛乱势力进行事实上的支持,美国在阿富汗有一个维语的广播站,每天15个小时的广播,它广播什么内容,显然很清楚,不想也可以知道。所以在整个的事件背后,美国这个因素非常的重要。
从陆地上到海上,美国还部署了一条反导网,我们可以看到,8月份的时候,美国在东欧宣布放弃部署针对俄罗斯的反导系统,但是事实上美国在中国的周边,从朝鲜半岛的韩国,一直准备部署到印度。因为它海上的反导系统包围圈是由美国的宙斯盾军舰,具有反导能力的军舰连起来的,从海上到陆地,实际上就是沿C字型包围圈,美国还部署了这样一条反导系统,这条反导系统实际上就是要拦截中国的导弹,不让中国的导弹从本土上发射,尽管大家都可以看到,阅兵上过了很多的导弹,但是同时他们也在做准备,一条反导的大网络已经建立起来了。
我们下一步就要回答一个问题:为什么美国要包围中国?中国和美国又不是天生有仇,尽管当时美国和中国在朝鲜半岛上打了一仗,针对意识形态问题,双方因为冷战问题打了一仗,但之后就进入到冷战状态,随着冷战的结束,改革开放以后,双方的关系大幅度的改善,那为什么美国现在又开始包围中国,这并不是两个民族之间有太大的矛盾,有像中国和日本之间有解不开的心结,不是这样的。这主要就要从美国的国家战略利益出发,它为什么这样。美国这个国家在20世纪打败日本、德国和苏联之后,美国的战略家为美国设计了一个新的美国国家目标,就是要建立世界帝国。当时美国有一些学者在1992年的一个会议上曾经说过,他说:历史上曾经建立过的帝国和我们现在正在进行的帝国事业比起来,都是微不足道的,包括当时最大的波斯帝国、奥斯曼帝国,成吉思汗的蒙古帝国,这些帝国目前都在美国的脚下。美国现在的势力已经基本上覆盖了全球。我们看它的本土,很多人说美国的本土和我们中国的本土差不多,这是一个错误的概念,美国的本土,包括它的陆地,固然和我们差不多,但是美国是一个世界性的国家,它不仅有美洲的土地,它还有很多亚洲的土地,夏威夷、关岛、塞班不都是美国领土吗?在它领土的周边如果再划上海洋,那美国的国土是多大呢?那比我们大得多。所以我认为美国本身是一个跨洲际的大国,我们不能用陆地对陆地比,美国在全球还有几百个海空军事基地,美国还事实上控制着全球的海洋天空,太空就不用说了,还有网络。现在全世界的很多国家的路由器全都在美国。
可能很多人都不知道,我们现在全球所有人的手机都要被美国监听,美国有一个过滤,他看你的手机上有没有重要的信息,有重要的信息就自动的进入到美国的情报系统了,因为你都要用美国的通信卫星,既然用它的卫星,当然要被它监听。所以我认为它已经是唯一的超级大国,美国的这些战略家不会像秦国占领六国一样,去占领别国的领土,它在改造别国的政府,让它听命于自己建立一个新型的,一个世界级的帝国,所以美国的驻军也是全球驻军,它的卫星事实上已经把地球牢牢的包围住。为什么美国的军队可以全球作战,1986年美国军队打利比亚,军队飞行5000公里,中间的飞机进行16次空中加油,准确无误的把利比亚卡扎菲的帐篷打掉了,为什么这么准确?那就是因为美国的全球定位。我们现在讲现代战争是精确指导战争,只有美国才能这么说,因为他们有全球定位卫星,有了这个定位卫星,你才能精确定位,我们用过汽车GPS的都知道,你开着GPS的车非常方便,军用的GPS比这个还要方便,它能打到你一个窗户里头去,就这么精确,这就是美国的军事能力。

所以美国在20世纪的基础上打败了三大敌人,打败了日本、德国,后来又在冷战中打败苏联,然后在这个基础上建立世界帝国,建立世界帝国的时候,世界上又有三大对手,就是目前美国需要征服的三大对手,也就是说这三大势力对美国建立世界帝国不满,或者说不同意,一个是伊斯兰世界,然后是俄罗斯、中国。当初美国并没有把伊斯兰世界当回事,所以我们可以想一想,在小布什2001年上台的时候,他当时把中国锁定为主要对手,所以小布什上台以后非常嚣张,他曾经说过一句话:我们要坚定不移的保卫台湾,必要的时候我们可以出兵。这是在美国历届总统中,唯一一个明确表示,为了台湾要准备出兵的一个美国领导人,当然这个话说了没多久,突然在9月份被本拉登打了几拳,一下子把美国打倒在地,突然发现身后还有一个敌人,美国发现原来在世界上不仅是两个敌人,还有一个伊斯兰世界,美国一定要夺过去,就把中国放开了,奔着伊斯兰过去了。对伊斯兰的战争一直打到今天,还没有打完,除伊斯兰以外,加上其他两个国家就是美国在21世纪中的三大对手。美国对伊斯兰世界进行的战争很简单,就是武力打击、直接打击。它现在用的名义就是反恐,以反恐为名,进行的这个战争,全是沿着伊斯兰世界打的,包括伊拉克战争,现在的阿富汗战争,以及下一步以核问题为由头对伊朗进行的围困,都是伊斯兰世界,而且用的基本套路就是直接的军事打击,因为他发现伊斯兰世界很多的国家是有宗教信仰的民族,加上它的极端势力很多,我们光看到的是本拉登,实际上本拉登只是伊斯兰世界反美势力的总代理。反对美国的绝不仅仅是一个本拉登,至少不下几百种力量反对美国,所以他们两股势力之争,实际上是两个文明之争,两个宗教之争,两大势力之争,不是说恐怖分子和美国的较量,是整个西方和伊斯兰世界的战争,所以这个战争会打的时间特别长,美国采用的战略就是直接的军事打击。
美国打击伊斯兰世界除了拔除俄罗斯战略据点,控制石油这个考虑以外,它还有一个目的就是要牢牢地控制这个地方的资源。这就可以解释,为什么美国无条件支持以色列,那就是以色列实际上是整个西方势力的总代表,就是美国和西方楔入伊斯兰世界的一枚钢钉,所以不仅美国支持,英国、法国也支持。要不是西方这些国家支持,10个以色列在这个环境中也活不了,就是美国长远的大布局,就是有以色列在,伊斯兰世界就不可能复兴。所以说为什么美国打败了伊拉克以后,还一定要把萨达姆绞死,并不是说小布什因为萨达姆派人杀他父亲,个人有仇,这个东西太狭隘了,他主要是要给伊斯兰世界做个样子看,谁敢反对美国,萨达姆就是下场,就是要把阿拉伯世界的强人绞死。
所以说在把萨达姆绞死之后,美国又把战略焦点用于对付伊朗,下一步伊朗又成为美国针对伊斯兰战场的一个战略焦点。因为我们主要讲的是针对中国,所以这块就不展开讲。
美国的第二个对手——俄罗斯,它的战略是继续进行冷战,通过北约的东扩,吸纳独联体的国家,不让俄罗斯复活,你不是死了吗,死了以后害怕它活过来,通过加入欧盟、北约,把这些国家全都纳入到美国和欧洲的西方范围内,然后再继续挤压俄罗斯,进一步制约俄罗斯本土。这就是去年8月8号我们开奥运会的时候,突然格鲁吉亚发生战争的原因,格鲁吉亚和俄罗斯发生战争以后,美国和北约的舰队马上就开过去了,双方就在这个地方进行大范围的战略对抗。为什么俄罗斯在这个地方寸步不让,就是因为俄罗斯已经看到这一点了。就是美国下一步就是要把俄罗斯还剩下的30多个联邦,像肢解苏联一样肢解掉,俄罗斯看得非常清楚,一个是在外部要对西方、美国寸步不让,第二个就是在内部对这些分裂势力坚决打击,毫不留情。所以说我们现在很多人经常说冷战结束了,不要有冷战思维。冷战真的结束了吗?冷战结束的只是第一个阶段,俄罗斯目前还是美国和西方的心腹大患,北约的新任盟军司令10月2号说,北约下一步很可能与俄罗斯在北极发生争夺战,当然目前还处在一个冷战的层次上进行交流,至于说双方什么时候进行军事层面的较量,这个我们还要拭目以待。
再就是美国对中国是什么样的战略,这就是综合性的。美国对中国采取的占领基本上是经济掏空、地缘包围、军事遏制、政治高压、内外夹击、持续干扰,还要加上一个贸易围堵。美国对中国总的目标:美国已经按照中国的太监模式塑造了日本,现在又准备按照日本富而不强的模式塑造中国。所以如果中国还要坚持你的独立自主,还要维护民族的尊严,那美国就是用各种各样的手段对你进行遏制,包括挑起周边国家对你进行战争,包括直接的军事干涉,直至进行最后的肢解。从1951年中国和美国发生战争以后,美国中情局制定了一个戒令,刚开始还不叫戒令,就是如何通过国家级的行为,通过多种方面,从各个层面、多个角度对中国进行肢解和破坏,写了10条。一直到21世纪初,这个就基本上完备了,从它这里面我们可以看到,今天我们中国的很多现象,大家对照一看,基本上就出来了。一个是尽量用物质来引诱和败坏他们的青年,鼓励他们反对他们原来所受的教育,替他们制造色情奔放的兴趣和机会(这一点我们深圳的朋友最清楚)。让他们不以虚荣为耻。第二,要尽一切可能要让他们向往美国的生活方式。第三个是让他们集中于体育表演、色情书籍、享乐游戏、犯罪性电影、宗教迷信。然后还要经常制造一些无聊的事情,让他的人民公开讨论,然后在潜意识中就种下分裂的种子。第四,特别要在他们的少数民族里面找机会,分裂他们的地区,分裂他们的民族,分裂他们的感情,在他们之间制造新仇旧恨,这是完全不能忽视的策略。第五条是丑化领导。第六条是宣扬民主,就是要让他们相信美国。第七条就是尽量鼓励他们的政府花钱,鼓励他们向美国借钱,这样我们就有十足的把握摧毁他们的信用。但是目前这一点反过来了,是美国向我们借钱,我们向人民借钱,正好把这个局势反过来了。总而言之,他有一条,我们大家要知道:让他们的货币贬值,通货膨胀,让他们的物价失去控制,他们在人民心目中就会完全垮台。第八就是以我们的经济和技术优势打击他们的工业,只要他们的工业在不知不觉中瘫痪下去,我们就可以鼓励社会动乱,所以我们在表面上要非常慈爱的帮助他们,这样他们的政府就显得疲软,一个疲软的政府就会带来更大的动乱。下一步就是毁灭它的价值观,最后一条:暗地运送各种武器,装备他们的一些敌人,以及可能成为他们敌人的人们。那就是我们前面讲的那个大的包围圈,他不仅给在包围圈内的所有国家提供武器,他还和他们结成事实上的、公开的和隐形的联盟。
美国在1951年和苏联这么紧张对峙的情况下,它还没有忘记中国,现在已经把中国列为它的潜在对手的时候,它怎么可能放松对中国的包围呢?所以美国兰德公司在1999年给美国政府提过一个建议,他说美国的对华战略应该分三步走,第一个是西化分化中国,使中国的意识形态西方化,就是改造一个富而不强,不要和别人对抗。第二步就是在第一个成效不大的时候,进行全面的遏制,并形成对中国战略上的合围,这就解释了我前面说的包围圈,美国正是按照美国兰德公司提出的这个战略设想在走,第一个还在分化你,第二个还在包围你。下一个我们就看第三步了,如果前两步都不能得逞,不惜与中国一战。当然作战的最好形式不是美国直接参战,而是支持中国内部谋求独立的地区,或者与中国有重大利益冲突的周边国家,鼓励中国周边的内乱。这就解释了为什么去年会出现3?14的事件和今年为什么出现7?5事件,下一步还会出现其他的事件。

1985 年,美国一个重量级的战略家也为美国设计过一个蓝图,这就是我们前面讲的美国的三大对手、三大敌人。他说美国在全球是三条战线,一个是欧洲战线,刚才我讲了,实际上俄罗斯战线还是欧洲战线的延续。第二个斗争节点就是远东战线,就是集中在日本、中国、朝鲜半岛,关键的区域就是在菲律宾和台湾。第三个就是远西战线,就是伊斯兰世界。这是美国在1985年设想的东西,到目前为止,美国整个国家的设想都是按照布热津斯基和兰德公司两个设计在走。
今天世界的新闻基本上是在伊斯兰世界、俄罗斯和中国之间来回转,我们要是看报纸、新闻联播,大家都应该很清楚,实际上基本上都是不利于这三大集团。但是我们还要注意一个问题,目前我把它形容为四国演义,这四国演义里面,并不是说俄罗斯跟我们站在一边,都是它的潜在敌人,我们就可能形成天然的盟友,不一定。在今年的9 月17号,美国宣布在东欧放弃部署反导系统,北约同时邀请俄罗斯共同建立反导系统,表面上看起来,好像是美国后撤了一步,美国向西方、俄罗斯伸出了橄榄枝。事实上我认为这里面潜伏着一个阴谋,就是美国在中亚这个地方对俄罗斯放松一步,下一步可能针对伊朗。因为俄罗斯这个国家被他们自己的学者称为叛徒国家,为了他们自己的利益,什么朋友都敢出卖。这时候伊朗还把俄罗斯当成他们唯一的朋友,我觉得国际上是没有永远的朋友,也没有永远的敌人。所以我一看到俄罗斯要和西方套近乎,我马上就感觉到伊朗的麻烦可能来了。美国打不打伊朗,在以往我认为美国可能是不会打的,但在目前金融危机的情况下,完全有可能。为什么会打,一会儿再讲。

美国现在对中国除了地缘包围以外,还有其他的一些暗算手段,其中就有经济绑架、美元陷阱。经济绑架这点我要讲一个情况,改革开放30年,我们利用外资8000亿美元,我在新华社内参部了解到的情况是,这些外资在中国已经控制了我们国家28个重大产业中的21个,还有7 个目前处在合资的状态。已经控制了我们的很多产业,这些外资下一步还要控制中国的粮食,一旦控制了中国的粮食和猪肉,这块是关系到国计民生的,我觉得如果把这个领域控制了,中国的大麻烦可能就来了,但是目前正在向这个领域迈进。美元陷阱我们都知道,现在美国已经公开说了,美国的《华盛顿邮报》说:中国现在已经成了绝望的赌徒,中国不断的向我们出口有毒的玩具,我们应该向他出口有毒的债券,这些债券全部被中国人拿在手上了。中国现在已经基本上成为**旁边的赌徒,中国不往里面注钱,美元就要贬值。中国要往里面注钱,不断的注钱,美元只不过是推迟一下,早晚还要贬值,这就是陷阱,所以现在中国也没有办法。我在今年的7月份写过一篇文章,发表在新民周刊,我说在金融危机的后面有美国的战略玄机,就是为什么美国发生金融危机,美元不贬值?我们可以思考一个问题,东南亚金融危机的时候,所有发生金融危机的国家货币贬得一塌糊涂,一文不值,贬值几百倍,为什么到美国发生金融危机的时候,美元不贬值呢?它还要升值呢?这就是诱饵,诱使中国和日本
继续买,不断的往里投,直到把你全部的财富都弄进来,然后一下子彻底的贬值到底。后来很多的学者、老百姓也发现了这个问题,金融危机不出来,我们还不知道这么多钱在美国人手上。我都是第一次知道,吓了我一跳,中国到现在有2万多亿美元的外汇,除了8000亿的国债以外,我们还有几千亿买美国的两房债券,还有其他的金融衍生品,将近1.5——1.6万亿美元在美国的手上,所以我就觉得这个问题非常的严重。现在看,由于美国的诱饵策略也不是太成功,美元到现在已经基本上顶不住了,从4月份到9月份,美元已经贬值了12%,也就是说中国已经损失了1000多亿美元,这只是帐面上,还不算其他的,这1000多亿美元,还不算前面损失的几千亿美元,那个都不算了。因为我们开过一个内部的会议,那个数据我也不能透露,那已经损失掉一大笔,现在又损失1000多亿。1000多亿美元相当于什么概念呢?相当于美国现在所有10条大型航空母舰全部的价值,加上他们的飞机。也就是说它一条航空母舰全部配备齐就100亿美元。可是我们现在5个月已经损失了1000多亿美元,也就是说我们丢掉了10条大型的航空母舰,下一步怎么走,我还不知道。所以说我们这8000亿美元买的全是美国的债券,人家的8000亿美元控制了我们21个产业,所以我认为经济方面就有很大的问题。所以我一直有一个担心,我认为美国借我们的钱就是以合法的名义侵吞我们中国30年的财富,让我们中国没有钱买技术、买资源,实现工业化,把你的钱全部借光,让你没有钱用,也让你没有钱进行军事现代化。

除了经济上的情况以外,外交上美国现在对我们正在做的事情是什么?在摘走我们周边的三颗小卫星。我们中国周边是比较可怜的,我们在庆祝新中国建国60周年的时候,有人说我们的朋友遍天下,我不信,就买了一个放大镜在世界地图上找,我们的朋友在哪儿呢?找来找去,找到三颗小卫星,这就是围着我们转的三颗小卫星,现在这三颗小卫星基本上都快晃荡得差不多了。首先是朝鲜,朝鲜的情况我们都很清楚了,连续不断的新闻,包括前不久我们的领导人去,但是去完以后没多久,它又放导弹了。所以这个地方阴晴不定,我认为朝鲜的心思我们还没有搞清楚,它到底想干什么。所以我连续不断的去了几次,我自己的分析认为他目前的领导人为他下一步政权的延续在考虑,谁能够给他提供保护,它并不是真的想拥有核武器,它要核武器干什么呢?也不能吃,也不能喝,你拥有核武器也不能和其他的国家作战,就算你拥有几颗,打到其他的大国,你也没有什么了不起,别人给你放几颗,你马上就没有了,它非常清楚,它现在就是以这个东西作为筹码,就是要求这些大国给它提供持久的保护,如果我们不能提供,它一定会向美国要求。所以我一直有一个担心,就是总有一天,朝鲜会倒在美国的怀抱里,它一旦倒在美国的怀抱里,比韩国还会亲美。但是目前因为是我们的好朋友,我就不能说太多的坏话。第二个,美国现在已经控制了巴基斯坦,它在巴基斯坦有很多的驻军和基地,事实上巴基斯坦对我们国家的作用基本上发挥不了。巴基斯坦对我们国家的作用有两个:一个,它是伊斯兰国家,通过巴基斯坦这样一个中间环节,我们中国可以搞好和伊斯兰世界的关系。所以美国为什么策划7?5事件呢?就是要让中国和伊斯兰世界发生矛盾,美国把这个祸往东引,让中国陷入恐怖分子的袭击中,美国脱身。
但是由于中国和伊斯兰世界的关系还比较好,所以美国现在就进驻到巴基斯坦,就是要搞坏中国和巴基斯坦之间的战略关系。第二个就是切断中国通过巴基斯坦通向印度洋的通道。目前美国这两大目的基本上都实现了,所以巴基斯坦对于我们的战略作用价值正在下降。

他说:那为什么美国的GDP今年占世界的1/3,美国就是世界上最大的国家呢?我说:我给你解释,为什么清朝占世界GDP1/3的时候,你不是强国,为什么美国占世界GDP1/3的时候,人家是强国,这就要看GDP是由什么构成的。不能光看GDP的数量。
今天美国GDP的构成是什么?太空产业、航空产业、船舶制造,人家的航空母舰全是人家自己造的,民航全是他们造的,军机他们自己造的。计算机产业、生物科技、现代农业,所以它占世界第一的军事优势就是这些东西在支撑。日本的GDP是什么呢?汽车工业、电子工业,全是这些。正因为这些工业奠定了日本在世界上第二强国的位置。俄罗斯的GDP现在也是机械制造、航空工业、核工业。所以说尽管俄罗斯的GDP只有我们的一半,但世界上仍然把俄罗斯当成大国,这也是俄罗斯下一步必将复兴的基础。
再看清朝,我们清朝的GDP是什么呢?解释了今天,我再解释过去,清朝的GDP是茶叶、蚕丝、瓷器这些玩意儿,人家是什么?铁甲舰、大炮。人家是这些东西构成的,所以我说战争是双方GDP质量的对撞,不是GDP数量的抵消。那天和我们军工产业的一个老总聊天,他说航空工业的老总提出,航空工业要在近几年内达到万亿的产值,就是我们航空工业的林左鸣,我说这个人真是够左的。达到万亿有什么用呢?这个军工产业的领导跟我说:如果不掌握核心技术,单纯追求GDP,那就狗屁都不是。他一句话就提醒我了,我说这个GDP,它不就是“狗的屁”的汉语拼音吗。我说我们中国的经济学家不仅没有军事常识,也没有历史常识。我们的GDP都是没有国防转换能力的。但是这个
“狗的屁”被我们的很多学者、官员用于欺骗我们的人民。我说:你们不能拿这个气泡欺骗我们中国人民,应该把这个真相让我们中国人民理解。你的GDP上来了,你虽然是世界第二,谁会因为你的GDP是世界第二,人家就承认你是世界强国呢?没有人这样认为。只有当你的GDP质量上来以后,大家才会承认你。所以我认为我们今天的GDP也跟清朝差不多,主要是什么构成的呢?房地产、纺织品。这儿有一句话是薄熙来说的:8亿条裤子换欧美一架飞机”。8亿条裤子想想堆起来有多大,把一个大型的广场都占满了,才能换人家一架飞机。还有烟酒、玩具,就是这些东西,这些东西在战争时候都不能转换为国防力量,我们不能拿着玩具去跟人家打仗吧,不能抱着酒瓶子跟人家打吧。所以在战争的时候怎么办?那就“用我们的血肉筑成我们的长城”。
所以我在前年写过一篇文章,我说房地产支撑不了大国崛起,就在我的《盛世狼烟》那本书里面,我当时有一个观点,我说:我们现在积极的发展房地产,是我们国内的垄断资本和国际资本联合起来打劫中国人民的财富,这是一个大战场。你让我们今天的中国人没有钱,让我们中国人民的子子孙孙都没有钱,你把这些钱全都剥夺干净,哪有钱拉动你的工业发展。这也就是我们今年拉动不了内需的主要原因,因为我们没有钱了。我们的钱去干什么了?买砖头去了。所以昨天《环球财经》要我写一篇文章,我还没有来得及写。就谈一个问题,说我们的经济学家为什么得不了诺贝尔奖,说我们的 GDP已经这么大了,为什么还得不到诺贝尔奖呢?为什么美国现在金融危机了,美国反而可以得到这个诺贝尔奖。我要给他回答这个问题,你不是说你的经济发展非常快吗?为什么你得不了?我说:那是因为我们的政治家领导摸了30年石头,可是我们的经济学家领导摸了什么呢?摸了一大堆砖头。所以你看我们都是什么东西?这些学者里面,除了说GDP以外,基本上再找不出什么东西了。像北京、上海这样的大城市,不去发展高科技,发展房地产。北京的房子,在10年前最贵的公园6号达到6万一平米,今年当然更贵了。我是上个月去上海进行了一场演讲,当时跟我一起演讲的有一个是索罗斯的门徒金岩石博士,这个人很厉害,是经济学家,他给我提供一个信息,他说:下个月上海有一个楼盘就要开盘了,你猜一猜这个楼盘能卖多少钱?我说:那能卖多少钱呢?卖个几千万?他说:你太小看我们上海了。你以为光你们北京有贵房子吗?我说:我猜不出来。他说:我诉你,下个月开的这个楼盘,一栋房子8个亿,37亩的院子。我们就干这个东西。我们所谓的 GDP全是这样吹出来的。所以我说,这就是我们的经济学家获不了诺贝尔奖的主要原因。《环球时报》前几天还发了一篇文章,他说中国的经济学者离诺贝尔奖虽然没有永远那么远,也有十万八千里。我说我完全同意这个观点。我觉得我们应该把我们的经济学家派到美国、日本去,做他们的顾问,取代我们的孔子,不要设孔子学院,让他们鼓动美国和日本搞房地产,让他们搞教育产业化。然后把他们国家搞垮,这样我们再授予他爱国奖,他不授诺贝尔奖,我们授他爱国奖。所以说我们现在提出这些东西,我就说航空工业,你不提出技术指标去造你的波音,你提出一万个亿,你为什么不提你在10年内造出中国的F—22,造出中国的波音呢?你 30年能够造出这么一架飞机吗?不要说30年我们让你造一架飞机了,你能不能把一台发动机造出来。我们目前所有的主力战斗机的发动机全是人家的,尽管我们国庆阅兵在外观上看起来非常的漂亮。歼—10飞机用的是俄罗斯的发动机,飞豹飞机是英国的发动机,预警机EL76是人家的原机,我们的很多大型军舰用的也是人家的发动机,你连个发动机都造不出来,你搞1万个亿有什么用呢?
净在那边吹这个东西。所以我认为我们的这些官员什么都不懂,就懂GDP。而我们的一些企业家呢?也基本上政客化了,也在那边看GDP,都不看GDP背后的真相。所以我认为GDP这个概念已经毒化了很多人的意识,并且欺骗了很多人。就在无形中把我们变得什么都没有,我们除了拥有一堆砖头之外,什么都没有了。
所以我认为我们再也不能陶醉于“狗的屁”之中了。你的物质生产能力就是你进行战争的能力。进入工业时代以来,实际上战争打的全是工业技术和工业实力。所以为什么当年日本以不到百万之兵基本上灭亡了中国。我们14年抗战,日本进到中国来的军队是100多万人,真正打的就是60多万人,但是我们中国死了多少人呢?死伤了3500万。为什么?就是因为你没有工业。当年日本第一波进攻就把我们沿海全部占领了,当年的工业和今天的工业布局一样,全在沿海,沿海的工业被日本占领了,很多工业来不及往内地迁移,把我们近百年来的工业全部摧毁,导致我们这个国家就从工业刚刚启蒙的国家,又重新回到农业时代。这就是当年日本对我们的破坏,因为你没有能力保卫你的工业,你的工业不能生产出你的装备。我们可以看一个数据,在我们和日本进行作战的时候,日本已经生产了40艘航空母舰,每年生产1万架以上的飞机,坦克就不用说了。中国当时的三大军工厂,一直到民国的军队抵抗日本的时候,我们的三大军工厂只能造质量很差的步枪,连钢盔都不能造,这就是双方的区别。所以在战争还没打的时候,斯大林就说:如果苏联没有军事工业,就会和现在的中国一样,只要谁高兴,谁就可以蹂躏它,就是这个问题。我们当时的钢盔全是英国的瓜皮帽,是铁的,根本防不住子弹,但是我们连这个都不能造。由于没有这个工业实力,在二战中,我们的军队基本上没有获得现代化战争的经验。所以我就说,在今天这个情况,就应该引起我们的反思。由于国家的经济形态,实际上也决定了我们目前军队的基本装备和外观形态,所以现在美国的军队基本上就是天上飞的军队。
我上次在《环球时报》也说过这个问题,当然很多人对我的比喻还不满意。我把美国比成老鹰,我说美国像一只鹰一样,飞得高,看得远,打得远。我说俄罗斯虽然飞得不高,但是跑得比较快,像鸵鸟一样,我说我们中国军队就像企鹅一样,很多人听了不舒服,但是现实就是这样。

下一个问题,美国人借我们的8000亿美元国债,我认为它不会还了。我们光知道买美国的国债,我们想没想过美国还?所以我就跟很多人说:你们现在买美国的国债,等于把肉送到美国的狗肚子里去了。现在我们的很多官员还跟美国的领导人说:你要保卫我资产的安全。美国人跟你说了:你放心,你这块肉在我肚子里很安全。那你什么时候拿回来呢?它回不来了。回不来这个问题,我有好几个理由可以支持。还是跟金岩石聊天的时候,他跟我说过,他跟索罗斯学习的时候,巴菲特他们有一个会议,当时巴菲特就说:我们美国的经济就是一个借贷的经济,不断的借债,推动我们经济的发展。这里面就有一个13岁的小孩问他:巴菲特爷爷,你不断的借债,你借的债,将来是不是要我们还?巴菲特就跟他说:好好学习,让你的孙子替你还。我就说:我们这8000亿国债要看美国孙子是什么还的。反正大家现在可以看到。
还有一个问题,就是那次跟我同时演讲的,就是发明G2的门蒂斯,他当时有一个理论。当时底下的人问他,门蒂斯先生,刚才戴先生说了,这8000亿美元,你们肯定不会还我们了,你认为你们美国会怎么还?他说:当初我们欠英国人的债,我们把他们打跑了,后来我们又欠荷兰人的债,我们也把他打跑了。我们当然欠的不过就是8000万美元,这8000万美元和你们的8000亿就是一个数字不同而已,别的没有什么区别。这就是门蒂斯回答的,他欠谁的债,他就把谁打跑。所以说,大家要知道了,现在光想着这个东西,你借钱给人家,他最后还要打你,你不要忘了这一点,这就解释了为什么我开始说那个问题,他对我们进行包围。我们给美国的钱最多,美国对我们一点感情都没有,反而在坑害我们,还准备打你,这就是现状。
最后一个,美国带头,世界正在对中国发生暴徒般的贸易攻击。在9月份,奥巴马对我们宣布制裁以后,现在已经有55个国家在几天之内对我们起诉,进行反倾销。这是一个美国人说的,他说:目前世界各国都在拉帮结派,利用世界贸易组织的规定对中国发起暴徒般的反击。这是美国的教授说的,在这里面,美国起一个带头作用。所以你看用贸易围堵,中间这样包围,里面再掏空,这就是我们目前面临的现状。
讲到这个情况,我又得出一个结论,就是中国面临的情况,我们除了内忧外患的问题,中国到最后可能会面临一场战争,为什么是这样?有几个方面的原因。第一,美国是一个军工综合体的国家,美国有1/3的企业在从事军品生产。为什么呢?是因为军火是暴利产业,它生产这个东西干什么呢?卖出去。怎么能卖出去呢?打仗。不打仗谁要军火呢?所以美国到处打仗、到处制造战争。美国通过战争拉动它的工业发展、拉动它的技术进步。我们今天用的很多东西,实际上都是美国的军工产品。我们的手机是美国在朝鲜战场上用的一个战场通信系统,那就是手机的原型。你的电脑是美国当时在核军备竞赛中为了超越苏联发明的。这些都不是民用的,都是把军用的技术转为民用。所以美国这个国家是通过战争、军事拉动它的技术进步和经济发展的。所以我就说,打仗美国可以要别人的命,不打仗就要美国的命,它一定会打仗。所以现在欧洲还给奥巴马授予一个和平奖,实际上就是怕奥巴马继续打全世界,现在把老虎当一个猫一样的哄。但是我认为奥巴马没有这么傻,傻子也当不上总统。

第二个不能摆脱战争的原因是战争总是跟着财富走,这是世界经济规律,就像食肉动物跟食草动物走一样的。所以我们可以看20世纪3次财富大的转移,第一次是欧洲从中国抢完财富以后,欧洲暴富起来了,就是在 50年代以前,欧洲成了世界的财富中心,就在这个地方连续爆发了两次世界大战。第二次财富转移发生在七八十年代,中东的石油成为西方的命脉,所以从那时候,中东连续打了20多年5场大的战争。现在又是第三次大的财富转移,就转移到了亚太,转移到了中国,世界财富的中心。中国凭什么能逃过战争的劫难呢?
所以我们不能逃过战争劫难的第三个原因是:经济危机一般都导致战争。第一次世界大战是因为英国的经济危机导致的,第二次的世界大战是1929年美国的金融危机,到1939年一场大的战争结束了,2009年又发生的危机,兰德公司又提出来了,与其用7000亿美元救市,不如用7000美元打一仗。所以美国现在不是打不打的问题,而是在哪儿打、找谁打、打谁的问题。我认为目前中国正在面临被瓜分的危机,现在我们梦想的还是复兴和崛起,但是你在人家的眼里实际上就像一个牛一样,已经长大了,人家考虑的是什么时候开刀,什么时候宰杀你的问题,尤其像我们深圳,大家都这么有钱,有钱要非常关注安全问题。你再有钱,这和国家的安全比起来,也不过是一根毛而已。国家才是一张皮,皮之不存,毛将焉附。所以我们应该关注国防的安全。甲午战争的时候,我们一仗失败,日本让我们赔了多少钱?相当于日本GDP的7倍,一下子赔给日本,所以你的GDP有什么用呢?全部变成人家的战利品。所以我到处呼吁,不要迷信GDP,一定要建立我们的战略产业。
我认为未来20年,中国可能会面临一场大的灾难。为什么我说20年呢?我们现在不断的在用吹泡泡的方式、发钞票的方式推动我们的经济在发展,到2030年的时候,我们的城市化达到最高峰,正好也是世界走出金融危机,世界新一轮经济革命完成的时候,而且很多国家的军事革命也完成,它的新经济也完成。新经济完成了,里面还有一个规律,基本上就是先进的军队对落后的军队进行屠杀,然后抢劫他的财富,改变世界格局。所以这个时间是一个非常重要的节点。
腐败问题也会加速我们外部灾难的到来,现在我认为我们的很多官员已经腐败到极端无耻、无边界的程度,这会导致我们外部的危险加速到来。重庆不是在打黑吗,我要问一个问题:其他城市比重庆白多少?我们现在的国民意识,不仅是很多官员腐败,人民也腐败。为什么胸无大志?对很多问题都比较怯懦,不敢打仗,不敢主持正义,也不敢高声说话。所以说1898年罗斯福总统怎么说的,跟我们今天中国的情况差不多:自满自足、贪图自己疆域内的安宁享乐,渐渐的腐败堕落,对国外的事情毫无兴趣,不干涉内政。忘掉了奋发向上,苦干冒险的高尚生活,整天忙于满足我们肉体暂时的欲望。洗脚、洗头,你看我们洗头中心多少?深圳我不知道,北京这些大的酒店洗头城,基本上把党政军的机关全包围了。可是对外呢?畏惧战争、闭关锁国、贪图享乐,这种民族在别的民族进攻面前,它肯定是要衰败的,历史规律就是这样的。我们现在很类似当年统一后的德国,到处弥漫政治市侩主义、投机主义和软乎乎的幸福主义,马克思?韦伯说的真是形象。
如果我们中国先被肢解,会是一个什么样的情况?如果中国被肢解,会被分裂成7到8个小国,这7到8个小国都会竞相的向美国寻求安全,然后成为美国的盟国,然后进攻俄罗斯,和俄罗斯发生直接的碰撞,然后和俄罗斯进行核大战,同归于尽,这是必然的。如果俄罗斯先被解体呢?那么这些小国也会加入北约,掐断俄罗斯目前对我们所有的输油管线,让中国饿死,让中国屈服,还要成为为他们打工的奴隶。所以我认为我们要想不被肢解,必须要从精神上和体格上同时强壮起来,要像世界上真正的将要崛起的大国一样。当年八国联军在屠杀中国的时候,他们很害怕,他们说我们今天这么欺负中国,万一有一天中国人上来以后,也到欧洲这样对付我们怎么办?他们很害怕。但是我觉得他们今天可以放心了,因为我们今天去的是这个老头(孔子),到处设孔子学院,

孔家店又在我们的思想中恢复重建。在我们设这些东西的时候,遍布中国的全是教堂。而孔子事实上是比较注重文武兼备的,我们现在不讲这个东西了。这也就是我不断的到处演讲,向人民传递一些真实的信息的基本原因,我认为我们不能稀里糊涂的就被人家宰掉了。所以我认为我们应该有宏观的战略布局,在这个时候,实际上还是有很多机会可以利用的,把我们内部的事情搞好,把我们国家建设得强大,在外部抓住机会、创造机会,再一个就是进行四个整合,一个政治方面的整合,把我们内部不同的民族都整合起来,我们都是中华民族,大家应该团结起来。把版图整合起来,赶紧把外面的地该收的收回来。我始终主张我们的军队一定要走出去,不要老等别人来打,所以我最反对动不动说军队是我们的长城。怎么是我们的长城呢?应该是国家的长剑。我们已经失去了这么多的土地,今天我们该收回来的就要收回来,收回来干什么?替我们的祖宗把这个帐追回来,老祖宗丢的东西不能继续丢了。所以我认为我们应该有一些战略眼光,不应该一味的避战。一些合理合法的战争该打还是要打。这就是我当时和徐将军不一样的观点,他说南海会有双赢,我说不可能有双赢,除了他们走出去,我们不要他的租金了。其他的哪有什么双赢?所以,我觉得对于争端,我们可以选择外交解决,但是一定要有武力解决的决心和准备,这是替我们的祖宗追帐,没有什么可含糊的。
这里有我在书里写的几个观点,特别是在军事上、经济上,我希望我们的国家从GDP的迷途中醒过来,然后主张我们的军队一定要确立鹰击战略思维,打出去。我来的时候还带了一篇文章,就是给一本杂志写的,我说我们要在8000里外拦截战争。毛主席当时说过,我们最理想的就是把敌人消灭在他的出发地,不要跑到我们国内来打,就像我们深圳一样,这么好的城市,怎么能我们的城市跟别人打仗呢?应该在别人的国土上打仗。最低也要在公海上跟他打,绝不能在我们的本土迎接我们的战争。所以我坚决主张,我们的军队第一个军事能力就是要为我们的沿海提供3000公里到4000公里的防御纵深,因为我们没有盟国,也没有航空母舰,也没有战略支点,怎么办?任务在我们的空军身上。打得远一点,打到4000公里以外,谁想动我们的念头的时候,先把它干掉,全国人民全是鸽子,应该有一些老鹰。所以说,我们三军应该像唐僧的三个徒弟一样,各个都厉害得不得了,但是我们的陆军不能像猪八戒,应该像哪吒一样,空军可以学孙悟空。要提供三层保护,特别是空军,我觉得应该为我们国家提供 8000里保护

这次大阅兵大家也看到了,前面讲了这么多外患,但是我们还是应该振奋起来,毕竟中国的体格还是比较强大,加上我们的军队是身经百战打出来的。我今天在报纸上说了,印度根本不要和中国比,印度的军队不值一提,为什么呢?它没有战事。新中国是我们人民解放军一刀一枪打出来的,你那个印度是谁给你打出来的?不是印度军队打出来的,印度军队对你国家胜利根本没有任何贡献。而且你这个印度军队从你成立以来,也没有经历过任何一场像样的战争,所以和中国较量,你根本就不在一个级别上,所以我们应该对我们的军队有信心。但是我们还不能自满,在这个基础上还要继续努力。到什么时候中国才算强大?第一把我们现在失去的所有领土、领海全部拿回来。第二,能够为自己的国家生产自己制造的飞机、汽车,你别老组装别人的东西。另外一个,世界上再也没有各个国家欺负华侨的新闻,什么时候我看不到了,听不到了,我就相信中国真的强大了。特别是最后一条,我曾经听一个人说:美国人的护照上都有一条“美国军队是你强大的后盾”。等有一天,我们中国人出去的时候,护照上也印这么一句话:中国军队是你强大的后盾。什么时候把这句话加上去,中国就真正强大了。所以我们不仅需要装备先进的武器,还要有尚武精神。
在今年的4月份,香港《争鸣》杂志第一条“军中鹰派崛起”,说的就是我。他说戴旭已经取代朱成虎成了中国最大的鹰派,当然是用一种非常警惕的眼光看。我当时写过一篇文章说,我们13亿鸽子不应该有一只老鹰吗?所以有很多的问题是值得我们思考、值得我们努力的,我们不能贪图享受,为了肉体享受和简单的一些安宁失去了我们所有的东西,不能穷得只剩下钱,我们应该拥有高尚的目标和一往无前的勇敢精神,敢于面对一切困难,为我们的子孙创造一个强盛的汉唐式的中国。这个责任我们不能再移交给下一代,就在我们这一代人身上实现。所以中国不仅需要黄光裕这样的首富,我们还需要另外一个姓黄的。也就是说新中国为什么到现在昂首走在世界上,那是因为黄继光走在了我们的前头。当时在抗日战争的时候,有过一句话非常振奋人心,叫“中国不亡,有我”!所以我觉得我们今天也应该喊出一句话“中国强大,有我”!(掌声……)
这就是中国真正的面临的危急形式,可笑一些无知网友还在那发贴意淫,一会儿用震惊世界,一会用吓的某某目瞪口呆,你恶不恶心啊。中国失了藏南,失了南海,你怎么不意淫了。炸我们的大使馆,撞死我们的飞行员,印尼杀了我们多少华侨,你有资格在这意淫吗?现在的中国真的到了像清朝一样的危险境地了。
中国的老百姓不知道真相也就罢了,怎么你们这些无知网民也在这瞎意淫呢,中国的高层以经非常忧郁了,他们已经看出了中国处于极度危险的境地了,只不过是敢说真话的戴旭说出了真相。
戴旭和另一位专家判断,中国在重要的部门已经至少有美国和日本间蝶四位数,这也直接造成中国经常以忍为荣,其实都是这些汉奸学者卖国贼在那不断进言施压。
醒醒吗,国人,如果你不想亡国,你不想你的家人在列强的远程导弹中丧命,请你尽你一份作为中国人的责任,多转转戴旭演讲,让每名中国人都醒来,团结起来,不要让列强第三次把我们瓜分,我们这代人决不当亡国奴


你可能感兴趣的:(修身养性)