2009年11月29日星期日

一个c语言小技巧,摘自minix fs

我说的小技巧就是最后的那句 err |= minix_sync_inode(inode);

真是懒的可以,Linus真是惜行如jing啊, 前面的错误检测和后面的都一并检查了,不过这里也有一个前提,就是 sync_mapping_buffers错误了,调用minix_sync_inode也不会导致更严重的问题。

学习学习。。。




int minix_sync_file(struct file * file,
struct dentry *dentry, int datasync)
{
struct inode *inode = dentry->d_inode;
int err;

err = sync_mapping_buffers(inode->i_mapping);
if (!(inode->i_state & I_DIRTY))
return err;
if (datasync && !(inode->i_state & I_DIRTY_DATASYNC))
return err;

err |= minix_sync_inode(inode);
return err ? -EIO : 0;
}

About File system logging

This is a note @MIT OCW 6.824 Lecture 7:

The main point of a log is make complex operations atomic.

I.e. operations that involve many individule writes. You want all writes or none, even if a crash in the middle.

A "transaction" is multi-write operation that should be atomic. The logging system needs to know which set of write from a transication.

Re-do with checkpoint:

Most logs work like this, e.g. FSD,
allows much faster recovery: ca use on-disk data
write-ahead rule:

delay flushing dirty block from in-memory data cache until corresponding commit recore is on disk

Check point rules:

all data writes before check point must be stable on disk checkpoint may not advance beyond first uncommitted Begin

Recovery:

for each block mentioned in the log
find the last xaction that wrote that block
if committed: re-do
if not committed: un-do

Why is logging fast:

group commit -- batched log writes.
could delay flushing log -- may lost committed transactions but at least you have a prefix.

Single seek to implement a transaction.
maybe less if no intervening disk activity, or group commit

Write-behind of data allows batched/schedules.
one data block may reflect many transactions, i.e. create many files in a directory.
don't have to be so careful since the log is the real infomation.

How can we avoid delete/create inconsistency?

This is a file system note: @MIT 6.824 2006 Lecture 6

Think this satiation,

unlink("f1");
create("f2");
Create happens to re-use the i-node freed by the unlink.
suppose only create write goes to disk, but none of the unlink's writes.

Crash.

After re-start, what does recovery see?

The file system looks correct! Nothing to fix!
But file f1 actually has file f2's contents!

Serious *undetected* inconsisency.

This is *not* a state the file system counld have been in if the crash had occured slightly earlier or later. And fsck did not notify the user there was an unfixable problem!

How can we avoid this delete/create inconsistency?

Observation: We only care about what's visible in the file system tree.

Goal: on-disk directory entry must always point to correct on-disk i-node.

Unlink Rule: remove dirent *on disk* before freeing i-node.

Create Rule: initialize new i-node *on disk* before creating directory entry.

In general, directory entry writes should be commit points.
Crash just before leves us with unused allocated i-node.
Crash just after is fine.

2009年11月15日星期日

感冒了,翻墙了

冬天气温降的很快,就连以往冬天不那么冷的广东,这次都很冷很冷了。我都感冒了, 不过不是猪流感。

还有一件事就是使用ssh tunnel翻墙了,很爽阿。

赞一个OpenSSH。

2009年10月29日星期四

real world FIND usage

from http://www.wagoneers.com/UNIX/FIND/find-usage.html


sudo find / -type f -name *.jpg -exec cp {} . \;

find . -type f -size +10000 -exec ls -al {} \;
find . -atime +1 -type f -exec mv {} TMP \; # mv files older then 1 day to dir TMP
find . -name "-F" -exec rm {} \; # a script error created a file called -F
find . -exec grep -i "vds admin" {} \;
find . \! -name "*.Z" -exec compress -f {} \;
find . -type f \! -name "*.Z" \! -name ".comment" -print | tee -a /tmp/list
find . -name *.ini
find . -exec chmod 775 {} \;
find . -user xuser1 -exec chown -R user2 {} \;
find . -name ebtcom*
find . -name mkbook
find . -exec grep PW0 {} \;
find . -exec grep -i "pw0" {} \;
find . -atime +6
find . -atime +6 -exec ll | more
find . -atime +6 -exec ll | more \;
find . -atime +6 -exec ll \;
find . -atime +6 -exec ls \;
find . -atime +30 -exec ls \;
find . -atime +30 -exec ls \; | wc -l
find . -name auth*
find . -exec grep -i plotme10 {};
find . -exec grep -i plotme10 {} \;
find . -ls -exec grep 'PLOT_FORMAT 22' {} \;
find . -print -exec grep 'PLOT_FORMAT 22' {} \;
find . -print -exec grep 'PLOT_FORMAT' {} \;
find . -print -exec grep 'PLOT_FORMAT' {} \;
find ./machbook -exec chown 184 {} \;
find . \! -name '*.Z' -exec compress {} \;
find . \! -name "*.Z" -exec compress -f {} \;
find /raid/03c/ecn -xdev -type f -print
find /raid/03c/ecn -xdev -path -type f -print
find / -name .ssh* -print | tee -a ssh-stuff
find . -name "*font*"
find . -name hpmcad*
find . -name *fnt*
find . -name hp_mcad* -print
find . -grep Pld {} \;
find . -exec grep Pld {} \;
find . -exec grep Pld {} \;
find . -exec grep PENWIDTH {} \; | more
find . -name config.pro
find . -name config.pro
find /raid -type d ".local_sd_customize" -print
find /raid -type d -name ".local_sd_customize" -print
find /raid -type d -name ".local_sd_customize" -ok cp /raid/04d/MCAD-apps/I_Custom/SD_custom/site_sd_customize/user_filer_project_dirs {} \;
find /raid -type d -name ".local_sd_customize" -exec cp /raid/04d/MCAD-apps/I_Custom/SD_custom/site_sd_customize/user_filer_project_dirs {} \;
find . -name xeroxrelease
find . -exec grep xeroxrelease {} \;
find . -name xeroxrelease
find . -name xeroxrelease* -print 2>/dev/null
find . -name "*release*" 2>/dev/null
find / -name "*xerox*" 2>/dev/null
find . -exec grep -i xeroxrelease {} \;
find . -print -exec grep -i xeroxrelease {} \;
find . -print -exec grep -i xeroxrelease {} \; > xeroxrel.lis
find . -exec grep -i xeroxrel {} \;
find . -print -exec grep -i xeroxrel {} \;
find . -print -exec grep -i xeroxrel {} \; | more
find /raid/03c/inwork -xdev -type f -print >> /raid/04d/user_scripts/prt_list.tmp
find . -exec grep '31.53' {} \;
find . -ls -exec grep "31/.53" {} \; > this.lis
find . -print -exec grep "31/.53" {} \; > this.lis
find . -print -exec grep 31.53 {} \; > this.lis
find . -exec grep -i pen {} /;
find . -exec grep -i pen {} \;
find . -print -exec grep -i pen {} \; | more
find . -exec grep -i pen {} \;
find . -atime +6 -exec ll | more \;
find . -atime +6 -exec ll \;
find . -atime +6 -exec ls \;
find . -atime +30 -exec ls \;
find . -atime +30 -exec ls \; | wc -l
find . \! -name '*.Z' -exec compress -f {} \;
find . -name 'cache*' -depth -exec rm {} \;
find . -name 'cache*' -depth -print | tee -a /tmp/cachefiles
find . -name 'cache[0-9][0-9]*' -depth -print | tee -a /tmp/cachefiles
find . -name 'hp_catfile' 'hp_catlock' -depth -print | tee -a /tmp/hp.cats
find . -name 'hp_catfile' -name 'hp_catlock' -depth -print | tee -a /tmp/hp.cats
find . -name 'hp_cat*' -depth -print | tee -a /tmp/hp.cats
find . -name 'hp_cat[fl]*' -depth -print | tee -a /tmp/hp.cats
find /raid -name 'hp_cat[fl]*' -depth -print
find . \! -name '*.Z' -exec compress -f {} \;
find . -name '*' -exec compress -f {} \;
find . -xdev -name "wshp1*" -print
find . -xdev -name "wagoneer*" -print
find . -name "xcmd" -depth -print
find /usr/contrib/src -name "xcmd" -depth -print
find /raid -type d -name ".local_sd_customize" -exec ls {} \;
find /raid -type d -name ".local_sd_customize" \
-exec cp /raid/04d/MCAD-apps/I_Custom/SD_custom/site_sd_customize/user_filer_project_dirs {} \;

2009年10月20日星期二

All about container_of

对一个这个宏的不理解导致了几个晚上的熬夜。写代码的时候一定不能迷糊阿!

这个是Linux kernel里面的宏, 作用大概如下, 现在你有一个


struct big{
struct small sname_in_big;
int some_else
};

struct small{}


然后有一个函数, 传入参数只有一个*small, 比如

void some_func(struct small *s);


在这个函数里面, 你想作这么一件事情, 想得到那个int some_else的值是多少, 而你的函数只有一个struct small* 的参数, 所以kernel里面就有这么一个函数可以帮你获得 struct big的指针。
就是container_of
在这个函数里面可以这样用:
 void some_func(struct small *s) {
struct big *b;
b = container_of (s, struct big, sname_in_big);
}

不过, 还有一个更重要的前提。 就是, 这个函数的参数的这个s,必须是struct big的一部分。 也就是说, 必须有这样一个步骤, struct big a; a.sname_in_big = some_small.
some_func(&a.sname_in_big);
才可以找到big的正确的地址。

这里的解释更详细:
http://www.kroah.com/log/linux/container_of.html

2009年10月15日星期四

一个世纪前《纽约时报》对李鸿章的采访

一个世纪前《纽约时报》对李鸿章的采访



---------- Forwarded message ----------
From:
tombkeeper的和谐Blog

via hi.baidu.com on 9/23/09
一个世纪前《纽约时报》对李鸿章的采访
2009-09-24 08:58

离开在欧洲考察访问的最后一站英国后,大清帝国前直隶总督兼北洋大臣李鸿章乘"圣-路易斯"号邮轮于当地时间
1896年8月28日抵达美国纽约,开始对美国进行访问。李鸿章在美国受到了美国总统克利夫兰的接见,并和美国一些要员及群众见面,受到了"史无前例的礼遇"(《纽约时报》)。9月2日上午9时许,李鸿章在纽约华尔道夫饭店接受了记者的采访。

●美国记者:尊敬的阁下,您已经谈了我们很多事情,您能否告诉我们,什么是您认为我们做得不好的事的呢?

●李鸿章:我不想批评美国,我对美国政府给予我的接待毫无怨言,这些都是我所期待的。只是一件事让我吃惊或失望,那就是你们国家有形形色色的政党存在,而我只对其中一部分有所了解。其他政党会不会使国家出现混乱呢?你们的报纸能不能靠国家利益将各个政党联合起来呢?

●美国记者:那么阁下,您在这个国家的所见所闻中什么最使您最感兴趣呢?

●李鸿章:我对我在 美国见到的一切都很喜欢,所有事情都让我高兴。最使我感到惊讶的是20层或更高一些的摩天大楼,我在中国和欧洲从没见过这种高楼。这些楼看起来建得很牢
固,能抗任何狂风吧?但中国不能建这么高的楼房,因台风会很快把它吹倒,而且高层建筑若没有你们这样好的电梯配套也很不方便。

●美国记者:阁下,您赞成贵国的普通百姓都接受教育吗?

●李鸿章:我们的习惯是送所有男孩上学。我们有很好的学校,但只得付得起学费的富家子弟才能上学,穷人家的孩子没有机会上学。但是,我们现在还没有你们这么多的学校和学堂,我们计划将来在国内建立更多的学校。

●美国记者:阁下,您赞成妇女接受教育吗?

●李鸿章(停顿一会 儿):在我们清国,女孩在家中请女教师提供教育,所有有经济能力的家庭都会雇请女家庭教师。我们现在还没有女子就读的公立学校,也没有更高一级的教育机
构。这是由于我们的风俗习惯与你们(包括欧洲和美国)不同,也许我们应该学习你们的教育制度,并将最适合我们国情的那种引入国内,这确是我们所需要的。

●记者:总督阁下,您期待对现存的排华法案进行任何修改吗?

●李鸿章:我知道, 你们又将进行选举了,新政府必然会在施政上有些变化。因此,我不敢在修改法案前发表任何要求废除《格利法》的言论,我只是期望美国新闻界能助清国移民一臂
之力。我知道报纸在这个国家有很大的影响力,希望整个报界都能帮助清国侨民,呼吁废除排华法案,或至少对《格利法》进行较大修改。

●美国记者:阁下,您能说明选择经加拿大而非美国西部回国路线的理由吗?是不是您的同胞在我国西部一些地区没有受到善待?

●李鸿章:我有两个原因不愿经过美国西部各州。

第一,当我在清国北方港口城市担任高官时,听到了很多加州清国侨民的抱怨。这些抱怨表明,清国人在那里未能获得
美国宪法赋予他们的权利,他们请求我帮助他们使他们的美国移民身份得到完全承认,并享受作为美国移民所应享有的权利。而你们的《格利法》不但不给予他们与
其他国家移民同等的权利,还拒绝保障他们合法的权益,因此我不希望经过以这种方式对待我同胞的地方,也不打算接受当地华人代表递交的要求保证他们在西部各
州权益的请愿信。

第二,当我还是一名优秀的水手时,就知道必须学会自己照顾自己。我比别人年纪要大好多岁,从温哥华回国的航程要比从旧金山出发更短些。我现在才知道,清国"皇后号"船体宽阔舒适,在太平洋的所有港口都难以找到如此之好的远洋客船。

排华法案是世界上最不公平的法案。所有的政治经济学家都承认,竞争促使全世界的市场迸发活力,而竞争既适用于商
品也适用于劳动力。我们知道,《格利法》是由于受到爱尔兰裔移民欲独霸加州劳工市场的影响,因为清国人是他们很强的竞争对手,所以他们想排除华人。如果我
们清国也抵制你们的产品,拒绝购买美国商品,取消你们的产品销往清国的特许权,试问你们将作何感想呢?不要把我当成清国什么高官,而要当成一名国际主义
者,不要把我当成达官贵人,而要当作清国或世界其他国家一名普通公民。请让我问问,你们把廉价的华人劳工逐出美国究竟能获得什么呢?廉价劳工意味着更便宜
的商品,顾客以低廉价格就能买到高质量的商品。

你们不是很为你们作为美国人自豪吗?你们的国家代表着世界上最高的现代文明,你们因你们的民主和自由而自豪,但
你们的排华法案对华人来说是自由的吗?这不是自由!因为你们禁止使用廉价劳工生产的产品,不让他们在农场干活。你们专利局的统计数据表明,你们是世界上最
有创造力的人,你们发明的东西比任何其他国家的总和都多。在这方面,你们走在了欧洲的前面。因为你们不限制你们在制造业方面的发展,搞农业的人不限于搞农
业,他们还将农业、商业和工业结合了起来。你们不象英国,他们只是世界的作坊。你们致力于一切进步和发展的事业。在工艺技术和产品质量方面,你们也领先于
欧洲国家。但不幸的是,你们还竞争不过欧洲,因为你们的产品比他们的贵。这都是因为你们的劳动力太贵,以致生产的产品因价格太高而不能成功地与欧洲国家竞
争。劳动力太贵,是因为你们排除华工。这是你们的失误。如果让劳动力自由竞争,你们就能够获得廉价的劳力。华人比爱尔兰人和美国其他劳动阶级都更勤俭,所
以其他族裔的劳工仇视华人。

我相信美国报界能帮助华人一臂之力,一取消排华法案。

●美国记者:美国资本在清国投资有什么出路吗?

●李鸿章:只有将货币、劳动力和土地都有机地结合起来,才会产生财富。清国政府非常高兴地欢迎任何资本到我国投资。我的好朋友格兰特将军曾对我说,你们必须要求欧美资本进入
清国以建立现代化的工业企业,帮助清国人民开发利用本国丰富的自然资源。但这些企业的管理权应掌握在清国政府手中。我们欢迎你们来华投资,资金和技工由你
们提供。但是,对于铁路、电讯等事物,要由我们自己控制。我们必须保护国家主权,不允许任何人危及我们的神圣权力。我将牢记格兰特将军的遗训,所有资本,
无论是美国的还是欧洲的,都可以自由来华投资。

●美国记者:阁下,您赞成将美国的或欧洲的报纸介绍到贵国吗?

●李鸿章:中国办有 报纸,但遗憾的是中国的编辑们不愿将真相告诉读者,他们不像你们的报纸讲真话,只讲真话。中国的编辑们在讲真话的时候十分吝啬,他们只讲部分的真实,而且
他们的报纸也没有你们报纸这么大的发行量。由于不能诚实地说明真相,我们的报纸就失去了新闻本身的高贵价值,也就未能成为广泛传播文明的方式了。
________________________________
一个世纪,对个人来说差不多就是永远;而对人类社会的巨大惯性来说,百年时间所提供的摩擦力又是多么有限。
类别:网文收集 copy and paste 浏览(171) 评论 (3)

网友评论:
1
网友:underclass.h
2009-09-24 09:42 回复
我 只是以非常中立观点发表这个评论,其实末代中兴大臣,都有缺一个领袖.胡适曾指出:中国形成一个领袖不容易,如果因张学良出现不幸,中国将倒退20年, 是"国家民族之罪人".不过这的确成就另一个领袖,只是,一将功成万骨枯,正好你所说,摩擦力是有限的,要改变的终究改变了,现在不比以往的时代差.

2009年10月14日星期三

[转]叮叮整理:《动物农庄》人物情节对照

来自,叮叮


故事梗概:农场里的一头猪在提出了“人类剥削牲畜,牲畜须革命”的理论之后死去,若干年后农场里掀起了一场由猪领导的革命,原来的剥削者——农场主被赶 走,牲畜们实现了“当家作主”的愿望,尝到了革命果实的甘美,农场更名为“动物庄园”并且制定了庄园的宪法——七戒。但不久领导革命的猪们发生了分裂,一 头猪被宣布为革命的敌人,此后,获取了领导权的猪拥有了越来越大的权力和越来越多的特别待遇,逐渐脱离了其他动物,最终蜕变成为和人类完全一样的牲畜剥削 者,动物庄园的名字也被放弃。

  长者(Old Major)——猪,提出了动物主义的思想,向动物们启蒙,要他们为动物的解放奋斗影射马克思恩格斯和列宁
  雪球(Snowball)——猪,动物庄园革命的领导者之一,后被驱逐并宣布为革命的敌人,影射托洛斯基
  拿破仑(Napoleon)——猪,动物庄园革命的领导者之一,后来成为庄园的领袖,影射斯大林
  拳击手(Boxer)——马,动物主义理念的忠实追随者,积极响应革命领袖的号召,后被拿破仑卖给宰马商,象征着相信“革命理论”的广大善良群众及工人阶级。
  本杰明(Benjamin)——驴,对拿破仑的所作所为始终抱有怀疑但明哲自保,象征有独立思想对极权主义有所怀疑但明哲保身的知识分子
  无名的很多狗(dogs)——拿破仑在动物庄园实施暴力统治的工具,象征极权主义国家的各种暴力机构。内务部、克格勃。
  琼斯先生(Mr Jones)——沙皇尼古拉二世。被动物赶出庄园,反扑过一次,影射苏联内战。
  母鸡(hens)——农民阶级。小说中拿破仑强迫鸡群每天多下几百个蛋,可以看作比喻斯大林的农业合作化。
  莫莉(Mollie)——革命前的中上层阶级。莫莉在革命刚几天就逃跑可以看作俄罗斯旧贵族和上层在革命后
  纷纷流亡的映射。
  尖嗓子(squealer)——拿破仑的发言人。指斯大林政策导向的维护者、以正统的舆论麻痹人民的走狗。
  渡鸦摩西(raven Moses)——东正教廷
  羊群(sheep)——盲目迷信斯大林的人,包括党员与普通人
  猫(cats)——投机者的形象,而没有具体的原形。
  温普尔先生(Mr. whymper)——替斯大林向西方宣传的知识分子。
  四只小猪——共产党内不服从斯大林,并在大清洗中被处决的一批人。主要代表为布哈林等。四只小猪在审判时毫不抗拒、完全认罪在《动物农场》里缺乏情节上的合理性,可以认定是按照当时莫斯科三次审判写成的。这三次审判里所有被告均当堂认罪,痛骂自己、赞扬斯大林。

   琼斯先生被赶出农场——沙皇尼古拉二世被赶出俄国
   摩西在琼斯被赶走以后失踪——东正教廷在苏联建立后被压制、毁灭。
   拿破仑赶走雪球——斯大林赶走托洛茨基
   拿破仑建议积极保卫农场 – 雪球建议在全英国策动动物暴动:——斯大林建议积极建设保卫苏联,托洛茨基建议在全世界策动共产主义革命。
   雪球建议修建风车——托洛茨基建议建设第一个五年计划
   拿破仑修改历史,让动物们相信是他提议修建风车:——斯大林修改历史,说是他第一个提出五年计划。
   拿破仑妖魔化雪球,把一切罪责推到雪球身上,在动物中间抓内奸——斯大林妖魔化托洛茨基,在苏联以反对托派为名镇压异己。
   拿破仑修改历史,一次次给雪球的罪行加码——斯大林修改历史,先说托洛茨基是“犯了错误”,然后说他1935年投靠德国,再说托洛茨基从1921就是德国间谍。
   摩西回到农场——斯大林对德作战期间利用东正教廷作为动员士气的工具。刘晓波据此写的有一篇文章,专论斯大林对宗教的实用主义政策。
   拿破仑修改七条约定——斯大林不断修改历史。被清洗掉的人和事往往从所有记录里消失。
   拿破仑与猪们住进屋子——革命胜利后苏联G_c_D不断腐化,专为领导特供的商店、汽车、住房。

2009年10月8日星期四

Google Picasa访问浏览的另类方法

[转自 http://www.hzhjun.cn/post/googlePicasa.html]

关于gg被和谐的事,相信很多人都晓得,但受祸的不止是gg,还有其用户。

前段时间突然找不到右上角的登录链接,着实郁闷了下,虽然我不常登录,但需要的时候却没了,后来才知道进入其他频道是可以登录的;再就是Picasa网络相册,前脚上传了照片,紧接着就不让看,莫名其妙的打不开链接。。。

好在网络上传出了一种方法,通过配置Hosts可以在本地查看,操作如下:

在C:\WINDOWS\system32\drivers\etc找到hosts文件,将下面内容复制粘贴:
203.208.39.104 picadaweb.google.com
203.208.39.104 lh1.ggpht.com
203.208.39.104 lh2.ggpht.com
203.208.39.104 lh3.ggpht.com
203.208.39.104 lh4.ggpht.com
203.208.39.104 lh5.ggpht.com
203.208.39.104 lh6.ggpht.com

保存后即可正常使用,不过只能在本地访问;欲知效果如何,那就赶快动手一试。。。

有一个误传甚广的故事



by Akkad on 07/09/09

有一个流传甚广的故事: 美国航天部门首次准备将宇航员送上太空,但他们很快接到报告,宇航员在失重状态下用圆珠笔、钢笔根本写不出字来。于是,他们用了10年时间,花费120亿 美圆,科学家们终于发明了一种新型圆珠笔。这种笔适用于失重状态、身体倒立、水中、任何平面物体,甚至在摄氏零下300度也能书写流利。 而俄罗斯人在太空中一直使用铅笔。”

这个故事想告诉人们,有时看上去很复杂的问题,其实有极简单的现成解决办法。这当然是很有教育意义的,可惜它是捏造出来的。总结一下这个故事的错误:
1,美国宇航员也用过铅笔。
2,铅笔并不适合太空中使用,尖头有危险,易燃,书写产生的石墨残渣容易进入宇航员的胸腔、眼睛,更容易使电子设备短路(石墨是良导体)。
3,太空笔是一家私人企业发明的,据说耗资一百多万美元。
4,这种太空笔不但能在失重的情况下使用,还能在极端温度下使用。
5,失重笔不但想出了用氮气产生压力,而且还改革了油墨和笔尖,使得这种笔不写的时候不漏油。
6,太空笔发明出来以后,无论是美国宇航局还是俄罗斯宇航局都购买了。
7,找不到零下300摄氏度这样的环境(开尔文0度达不到-300摄氏度),这个杜撰的故事本身就有科学错误。

早期的宇航员都使用铅笔,并不是因为接受了小学生的建议,而是因为钢笔、圆珠笔在失重条件下都无法使用,铅笔是惟一的选择。但是铅笔笔芯有时候会断,在失 重的环境中飘浮,会飘进鼻子、眼睛中,或飘进电器中引起短路,成了危险品。此外,铅笔的笔芯和木头在纯氧的环境中还会极易燃烧。 因发明了圆珠笔通用笔芯而发了大财的保罗·费舍尔,意识到宇航员使用安全、可靠的书写工具的迫切性,自掏腰包进行研制,花了两年时间和约两百万元费用后, 于1965年研制成了能在太空环境下使用的圆珠笔———太空笔。其原理很简单,采用密封式气压笔芯,上部充有氮气(氮气是不活跃气体,一般条件下不会助 燃),靠气体压力把油墨推向笔尖。经过严格的测试后,太空笔被美国宇航局采用。1967年12月,费舍尔以每枝2.95美元的价格把400枝太空笔卖给美 国宇航局。 1969年7月20日,太空笔跟随阿姆斯特朗和奥尔德林上了月球,并救了他们的命。阿姆斯特朗和奥尔德林在月球表面完成历史性漫步,回到登月舱准备离开 时,发现发动机的塑料手动开关被宇航服的背囊碰断,无法启动发动机向地面指挥中心求援。他们需要拨动开关中一个细小的金属条,为了减轻重量,他们已抛弃了 所有的工具。地面指挥中心的一名工程师灵机一动,建议他们用太空笔试试。奥尔德林掏出太空笔,缩回笔芯,用笔的中空尾端拨动了开关,成功地启动了登月舱的 发动机。 太空笔是全天候的圆珠笔,除了太空环境,还可在其他各种极端恶劣(如寒冷的高山上和深海底)的条件下使用,如油污、潮湿、粗糙、光滑的表面,并适用于各种 角度书写,使用寿命长达几十年,深受登山运动员、户外活动者、技工、士兵、警察的欢迎。目前在美国市场上8美元即可买到一枝最简单的费舍尔太空笔。

奇怪的是这个富有传奇色彩的太空笔却成了谣言的对象,备受嘲笑,成了愚蠢的象征。有人说美国人花巨资开发太空笔完全没有必要,不如像前苏联宇航员那样简单 地使用铅笔(实际上,前苏联宇航员后来也改用费舍尔太空笔)。还有人干脆说太空笔从来就没有研制出来过。直到最近,还有人在学术会议上把这个谣言进行添油 加醋,开发费用被他们夸大了5000倍: “‘为了研究在太空环境下圆珠笔能出水,竟使科学家花费了100亿美元,终了却毫无结果。最后得知,铅笔在太空环境下就能写出字。’11月3日,在中国农 业大学召开的‘2004年全国农林研究生教育发展论坛’上,一位专家将这则黑色幽默娓娓道来,各大学领导和专家对‘研究要切合实际,尤其是以前沿研究为主 的研究生教育更是如此’的观点表示认同。”(《中国农大研究生教育创新性“学科群落”质高多产》,《中国教育报》2004年11月7日第1版) 《光明日报》也刊登过“美国科学家花费巨资研究太空笔居然没想到用铅笔”这样的笑话。 费舍尔太空笔中国市场上也买得到,叫“飞梭太空笔”,许多城市的百货大楼、礼品店均有销售,与会专家竟然没有一个人见过、听说过?“研究要切合实际”,说 得一点也不错,首先就要从自己做起。

2009年8月21日星期五

和谐的VirtualBox

混合

ubuntu, emacs,git, win xp, IE7, firefox, 飞信, 注意到这个截图里面有win的部分, 有ubuntu的部分, 并且是几乎无缝的, 这就是~~ 来自sun的VirtualBox 虚拟机, 真是太人性化了, 效率很好, 比KVM要高的多, 可惜了sun阿。可怜的sun阿。。。

Win下的google输入法是我最留恋的。 :D

最近这几天给team里面搭了svn, 因为svn 可以控制权限, 谁知道上司就把权限想的很死, 结果那个authz文件都快到100行了, SCM又不熟悉, 经常犯了错误就把我拉出来了。 真是手里拿着锤子,看什么都像钉子阿。。。

最近的生活很单调。

2009年8月7日星期五

Feel sad

Today is a sad day.

The someone  doesn't speak any words to me, I don't know what should  do.

And, with my stupid hand, I broken my new gotted develope Ben nanobook.

It's a sad day really.

Hope tomorrow is better.

2009年8月5日星期三

Step the first step

Well, today is a happy day. I meet  with Wolfgang Spraul last evening, the first real person that play with Linux and Open Source. I asked my confuse about the format and organization of Linux world, He said:" You always saw Linux elsewhere, but you are the Linux, Linux is every individual". It's encourage me very much.

I said that I'm just the listener of the mail-list, never being an active guy like others, and he said this is the problem of most of Chinese software engineer, even they are very good at skill, but they never step out, and do something, they are waiting for some one else to ask passive. I think he is right, I have same problem, but the core of this problem is NOT who you are, but the how you do it. The rule in the Open Source world is you take a semi-finished things, show to others, and then ask them help, clear about you request, so the others can understand what help can they offer, and finish it together.
Another problem of Chinese software engineer is language, the Open Source world is a English world, and communicate with mail-list/IRC/IM, all these way is in English, for example, He is a German,but he still have to learn & speak English(I heard that English is too simple to German). The most of people use mail-list, but wirte a clear mail is a challenge.

Anyway, I decide to conquer and learn my English well. So I practice my English here.

2009年7月28日星期二

推荐,上twitter的好武器

1. 配置一下你的HOST文件,帖子在这里

2. 这个adobe AIR 软件可以, 你可能需要先安装 AIR 平台, 地址在这里

然后可以去
http://www.twhirl.org/
下载这个应用,就可以上twitter了。

赞一个 adobe AIR.

2009年7月27日星期一

画的自己。

申明: 这个是我技术不到位, 真人要帅些。

[caption id="attachment_645608" align="alignnone" width="302" caption="自己"]自己[/caption]

2009年7月25日星期六

2009年7月12日星期日

希望

投了Ubuntu的JOB,在这里希望可以通过,这样我就可以在你身边了。

(只能把yo2当twitter了,习惯了,没办法)

2009年7月10日星期五

心情不好画画很丑

到头来还是不能摆脱, 加班, 上网受限, 不被相信的这些东西。

刚两天的好心情,逐渐回到了正常的坏心情。像一个在高飞的肥皂泡,始终会有破掉的一天。

我的要求不高,一个皮椅子就好。

画不好看了,真的是那句,心情不好的时候,画出来的画很丑。

2009年6月13日星期六

Numbers should knows

from google

L1 cache reference                                                                               0.5 ns
Branch mispredict                                                                                    5 ns
L2 cache reference                                                                                   7 ns
Mutex lock/unlock                                                                             100 ns
Main memory reference                                                                  100 ns
Compress 1K bytes with Zippy                                               10,000 ns
Send 2K bytes over 1 Gbps network                                    20,000 ns
Read 1 MB sequentially from memory                            250,000 ns
Round trip within same datacenter                                  500,000 ns
Disk seek                                                                                10,000,000 ns
Read 1 MB sequentially from network                      10,000,000 ns
Read 1 MB sequentially from disk                              30,000,000 ns
Send packet CA->Netherlands->CA                       150,000,000 ns

2009年5月23日星期六

Ssh without typing passwd

Blogspot被墙了,只好发到这里了。

在公司的时候,总是有这样的需求:你需要ssh或者scp东西到别人的机器上面,有时候会比较频繁,但是每次都得你的目标机的人过来输一下密码,很麻烦,效率也很低。

在看一篇hadoop的文章的时候看到了一些ssh,和公钥的用法(唉,没办法,比较土,现在才知道),可以避免输密码。

我这里就直接抄下来了,版权都在原作者.

使用三台机器,机器名分别为 homer06, homer07, homer08,均安装 Redhat Enterprise Linux 5.0 (其它 Linux 发行版亦可), 确保各台机器之间网络畅通,机器名与 IP 地址之间解析正确,从任一台机器都可以 ping 通其它机器的机器名。如有机器名的解析问题,可通过设置 /etc/hosts 文件解决,当然更好的解决方法是在你的网络中配置 DNS 服务器。此外,需要在三台机器上创建相同的用户帐号,如 caoyuz, 或直接使用 root 帐号亦可。

在 Hadoop 分布式环境中,Name Node (主节点) 需要通过 SSH 来启动和停止 Data Node (从结点)上的各类进程。我们需要保证环境中的各台机器均可以通过 SSH 登录访问,并且 Name Node 用 SSH 登录 Data Node 时,不需要输入密码,这样 Name Node 才能在后台自如地控制其它结点。可以将各台机器上的 SSH 配置为使用无密码公钥认证方式来实现。

现在流行的各类 Linux 发行版一般都安装了 SSH 协议的开源实现 OpenSSH, 并且已经启动了 SSH 服务, 即这些机器缺省应该就是支持 SSH 登录的。如果你的机器缺省不支持 SSH, 请下载安装 OpenSSH。

以下是配置 SSH 的无密码公钥认证的过程。首先,在 homer06 机器上执行命令,如代码清单 1 所示:


代码清单1




homer06: $ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/caoyuz/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/caoyuz/.ssh/id_rsa.
Your public key has been saved in /home/caoyuz/.ssh/id_rsa.pub.
The key fingerprint is:
2e:57:e2:bf:fd:d4:45:5c:a7:51:3d:f1:51:3c:69:68 root@krusty04


这个命令将为 homer06 上的当前用户 caoyuz 生成其密钥对,密钥对的保存路径使用缺省的 /home/caoyuz/.ssh/id_rsa, 要求输入 passphrase 的时候,直接回车。这样生成的证书以及公钥将存储在 /home/caoyuz/.ssh 目录,形成两个文件 id_rsa,id_rsa.pub。然后将 id_rsa.pub 文件的内容复制到每一台机器(包括本机 homer06)的  /home/caoyuz/.ssh/authorized_keys 文件的尾部,如果机器上不存在  /home/caoyuz/.ssh/authorized_keys 文件,可以自行创建一个。请注意 id_rsa.pub 文件的内容是长长的一行,复制时需注意,不要遗漏字符或混入了多余换行符。

接下来可以做一下 SSH 连接测试,从 homer06 分别向 homer06, homer07, homer08 发起 SSH 连接请求,确保不需要输入密码就能 SSH 连接成功。注意第一次 SSH 连接时会出现如下提示信息:

The authenticity of host [homer06] can't be established. The key fingerprint is: 74:32:91:f2:9c:dc:2e:80:48:73:d4:53:ab:e4:d3:1a Are you sure you want to continue connecting (yes/no)?

请输入 yes, 这样 OpenSSH 会把连接过来的这台主机的信息自动加到 /home/caoyuz/.ssh/know_hosts 文件中去,第二次再连接时,就不会有这样的提示信息了。

2009年5月20日星期三

Leaving Cellon - The First Job

Mark for the quit the first Job, Cellon ShenZhen. The moment I write the last mail to everyone I know, I feel hard. I want to tpying many words, but it's too hard to typing, since I want make this leaving normal, make this leaving like adult. Finally, I wrote a short message to obtain the wishes. The most impressive is from Jimmy.Liu, the boss of my boss, said, I was the youngest but the best member in Smart Phone SW team. We touch very few times, but he knows me. I'm gratified and encouraged.

It's hard to leaving. I have been with this team for almost one year, we was failed on the O8K project. But the lastest half-year, we can see the hope, the project like my child, growing up by our hands. For now, I just with my best wishes to the project, and to everyone.

This year also my working in a remote city, far from my family, my lover, It's very hard also. I hope the stituation will be better, I can together with my lover soon.

We are so young! We fighting! Fighting for our dream!

2009年5月6日星期三

Linux hard link

You may confused what the hard link is, and why the delete file use the unlink(2) system call. this example will help you somehow.


assumption, there is a file in /tmp/a.txt

$ cat /tmp/a.txt
hello, i'm a.txt

then, we write this test.c
test.c:
#include
int main(void)
{
link("/tmp/a.txt", "/tmp/new_a.txt");
/* in this moment, the a.txt have same content with new_a.txt */
unlink("/tmp/a.txt");
/* in this moment, a.txt will be delete */
}

we compile the test.c
$gcc test.c

and run it
$./a.out

$ cat /tmp/new_a.txt
hello, i'm a.txt

Use hard link is the simplest and the fastest way move files within the same filesystem, since hard link cann't across filesystem.

More infomation you need check the link(2) or the unix filesystem design.

2009年5月3日星期日

【转】必胜客沙拉吃法

转自: http://food.poco.cn/sitologyDetail.htx&id=5969

我原本对必胜客一无所知,但是最近和一个在必胜客做兼职的朋友聊天,发现了许多经济实惠的吃法,与大家分享:

  自助沙拉

  自助沙拉28元一份,要想实惠,盛沙拉者的水平是很重要的。我的建议是首先用老玉米或者你们喜欢的豆类把沙拉碗盛满,盛到与碗沿平起,然后依据我的口 味,我喜欢用黄瓜片和菠萝片交叉叠放在一起,同样是要沿着碗沿的,中间可以放如你们喜欢的其他的水果,我喜欢黄桃,而且成本高哦,呵呵!然后在放上一些坚 果,最后再弄一圈沙拉酱。注意,如果只是初去者,不要太贪心,码得太高,要知道要是弄洒了是很现眼的哦!最好是挑一个离沙拉吧近的位置,这个一进必胜客就 能向服务员要求的!

  上次去必胜客,某女生站在沙拉台差不多半小时,小心奕奕的摆着沙拉,最底一层是生菜,往上装点别的,在快和碗边平高的时候再在碗边铺一层黄瓜片或比较大块的水果,成莲花状,如是者一层又一层,最后该盘沙拉足有25公分高!!决不 bt!!然后,该mm捧起碗,小心奕奕的走到距离沙拉台最远的角落位置坐下,途中无任何的沙拉掉下,干脆利落,整个必胜客的服务生和顾客看的眼睛都不眨一下......

  今天在必胜客见到的,碗上周圈的绿色是黄瓜片,摆的非常整齐漂亮,要不是被店员制止垒得还能更高。从我进去开始盛沙拉(当时黄瓜片已经落了6层)到我卖单时(被服务员制止)为时将近1小时。

  但我不明白必胜客既然有此沙拉自助的规 矩又为什么制止此位高手的行为,也许是怕他和他的客人吃不完?不明白。要是换我定会在能吃完的前提下找他们理论一番。因为在必胜客看谁沙拉盛的多已成为一种风尚,不是贪小便宜的概念,我如果是老板还会定期举办盛沙拉比赛。

  中午去 必胜客 吃PIZZA,我一进门就看见一个女的在那里盛沙拉,我就坐在沙拉台旁边,从我进来到吃完饭,那个女的就一直在那里站着,因为她一直背对着我,我就没太 注意她在干什么,然后我就一直看着她,因为长时间低着头,她的脖子好像酸了,所以一侧身抬起脑袋晃了晃,随后我就看见桌子上摆着的东西。

  当时我都傻了,惊讶的:啊?了一声,当时声音挺大,旁边吃饭的人都看我,但我的眼睛一直看着桌子上的东西,吃饭的人也顺着我的目光看了过去,他们看见了也一口同声"啊?"当时那场面特逗,弄的那女孩都不好意思了,其实她还想接着盛,但是太不好意思了, 就要走,然后我就拿起手机,走到沙拉台前,照了这张照片。后来我注意了一下她,她是和另外一个女孩来的,别的没要,就花了28要了一个沙拉~~~真够战士的~~

我 给你讲一下要诀。虽然我现在已经不干这事了。周边的辣椒圈和洋葱圈要交错环排,白绿相间,如叶似瓣,记得要交错排列,中间部位的最上面浇满了如白雪般的沙 拉酱,其上还布洒着五颜六色的花花豆豆,沙拉酱相当于水泥,用许多螺旋状的胡萝卜条插在表面,根根直立,起钢筋的作用。

  最重要的是,充分发挥了食品建筑工程学的基本原理,大量使用黄桃这一优质建材,不但结构坚实具有良好的直立性,而且还不易出水溃塌。如果没有了它,一切都是歇菜。

   外国人去必胜客是去吃比萨饼,而不是去吃沙拉的,说白了,人家没把沙拉当回事儿,到我们这儿,偏偏就把沙拉当回事。这是文化的不同,此外还有经济实力的 不同。100多元吃一顿比萨饼对大部分的中国人来说还有些奢侈,就容易拿'免费'的沙拉找平衡。打个比方,国外吃比萨饼白给沙拉,就像我们喝粥给咸菜一 样,你说我们素质低吗?可咸菜我们并没多盛啊!
偶跟一个同事堆过一次超强的。。。

纯属吃饱了没事干。。。

当时我们端着那盘沙拉堡垒一路走到座位上

半个厅的人都看着我们

然后。。。

听到很多人在喊:给我们加一份沙拉。。。

一个个跃跃欲试很兴奋滴样子























































































































































































































































































































































2009年4月26日星期日

在twitter上被某位大师flow

今日睡醒闲来无事,上twitter上浪费时间,忽然发现了da lai la ma 的twitter,于是好奇的就flow了, 没想到几分钟后被大师flow,激动的同时又生出了会不会被和谐掉的担忧,毕竟他的名字出现的地方就特别容易和谐。那样我的邮箱等等一系列都不能上课怎么办啊。 :D

PS, twitter 的flow的意思呢,不好解释,大概就是我博客上发的东西会自动出现在他的HOME页面上,看来以后多用英语发帖了,

PS2, twitter是一种微型博客,一般几句话而已。但是有一种flow和被flow的机制,翻译成跟随差不多吧,别人跟随(flowing)我的,就可以看到我更新的东西,我(flow) 别人呢,就可以看到别人发的帖子和他对别人评论。

PS3,玩这玩着我就想起我没学好的图算法了。。。

2009年4月8日星期三

小病

发烧两天,很脆弱。用自己当作筹码,我知道很不光彩,但是你包容我了。你说我很不成熟,我想是的吧。我现在就只想抱着你,什么都不说。

晚安。

2009年4月3日星期五

使用libjpeg直接转换YUV420图像到JPEG

这篇文章主要介绍如何把yuv420的图像(当然也可以是422p的图像,但是如果不是planner格式的YUV数据,就不能直接作转换)用libjpeg转换成jpeg的图像。在网上看到许多介绍如何压缩jpeg图像的文章都是通过现把yuv数据转换成rgb格式,然后再通过libjpeg来压缩。但是jpeg内部是基于yuv的颜色空间的,所以这样会进行2次多余的颜色空间转换,这些都是不必要的。

看了jpeg的spec以后和libjpeg,还有mjpg-streamer的代码以后,自己尝试作一个能够转换的小程序。 现在把这个程序贡献出来给大家作为参考,有兴趣的可以下来代码看看, 100多行代码,很简单的。

source code: http://sites.google.com/site/kzjeef/files/still.bz2?attredirects=0

$ tar jxvf still.bz2
$ cd yuv2jpg
$ make

建议先阅读 README, 经过转换的图像放在/tmp/still.jpg

谢谢。

2009年3月14日星期六

[转] 一些佛学中的道理

“我不信佛,现在还达不到那种虔诚,但是看了这个帖子以后觉得佛学中的有些道理很好,至于是哪些道理,我觉得每个人的看法都不一样, 所以就不标出来了,有兴趣的欣赏一下”

 下面是转贴:

转自:有信佛的参考吧@

via metababy by metababy on 3/12/09

总是认为,自己看了《心经》就什么都清楚了,明白了,不再有任何的困惑。但总得给更多的朋友宣传这种想法吧,可他们总是不感兴趣,原因是我没有将其"翻译"成通俗的东西。今天在一朋友的QQ空间上看到了这文章,特别转过来,由于她也是转的,也不知道原文从哪来的。总之,在此感谢本文的原创作者,感谢他为世人所作的贡献!谢谢您让大家能学习到这么好的心态。

佛学的108条做人的道理
  一、人之所以痛苦,在于追求错误的东西。
  二、与其说是别人让你痛苦,不如说自己的修养不够。
  三、如果你不给自己烦恼,别人也永远不可能给你烦恼。因为你自己的内心,你放不下。
  四、好好的管教你自己,不要管别人。
  五、不宽恕众生,不原谅众生,是苦了你自己。
  六、别说别人可怜,自己更可怜,自己修行又如何?自己又懂得人生多少?
  七、学佛是对自己的良心交待,不是做给别人看的。
  八、福报不够的人,就会常常听到是非;福报够的人,从来就没听到过是非。
  九、修行是点滴的工夫。
  十、在顺境中修行,永远不能成佛。
  十一、你永远要感谢给你逆境的众生。
  十二、你随时要认命,因为你是人。
  十三、你永远要宽恕众生,不论他有多坏,甚至他伤害过你,你一定要放下,才能得到真正的快乐。
  十四、这个世界本来就是痛苦的,没有例外的。
  十五、当你快乐时,你要想,这快乐不是永恒的。当你痛苦时你要想这痛苦也不是永恒的。
  十六、认识自己,降伏自己,改变自己,才能改变别人。
  十七、今日的执著,会造成明日的后悔。
  十八、你可以拥有爱,但不要执著,因为分离是必然的。
  十九、不要浪费你的生命在你一定会后悔的地方上。
  二十、你什么时候放下,什么时候就没有烦恼。
二一、内心没有分别心,就是真正的苦行。
  二二、学佛第一个观念,永远不去看众生的过错。你看众生的过错,你永远污染你自己,你根本不可能修行。
  二三、你每天若看见众生的过失和是非,你就要赶快去忏悔,这就是修行。
  二四、业障深重的人,一天到晚都在看别人的过失与缺点,真正修行的人,从不会去看别人的过失与缺点。
  二五、每一种创伤,都是一种成熟。
  二六、当你知道迷惑时,并不可怜,当你不知道迷惑时,才是最可怜的。
  二七、狂妄的人有救,自卑的人没有救。
  二八、你不要一直不满人家,你应该一直检讨自己才对。不满人家,是苦了你自己。
  二九、一切恶法,本是虚妄的,你不要太自卑你自己。一切善法,也是虚妄的,你也不要太狂妄你自己。
  三十、当你烦恼的时候,你就要告诉你自己,这一切都是假的,你烦恼什么?
  三一、当你未学佛的时候,你看什么都不顺。当你学佛以后,你要看什么都很顺。
  三二、你要包容那些意见跟你不同的人,这样子日子比较好过。你要是一直想改变他,那样子你会很痛苦。要学学怎样忍受他才是。你要学学怎样包容他才是。
  三三、承认自己的伟大,就是认同自己的愚疑。
  三四、修行就是修正自己错误的观念。
  三五、医生难医命终之人,佛陀难渡无缘的众生。
  三六、一个人如果不能从内心去原谅别人,那他就永远不会心安理得。
  三七、心中装满着自己的看法与想法的人,永远听不见别人的心声。
  三八、毁灭人只要一句话,培植一个人却要千句话,请你多口下留情。
三九、当你劝告别人时,若不顾及别人的自尊心,那么再好的言语都没有用的。
  四十、不要在你的智慧中夹杂着傲慢。不要使你的谦虚心缺乏智慧。
  四一、根本不必回头去看咒骂你的人是谁?如果有一条疯狗咬你一口,难道你也要趴下去反咬他一口吗?
  四二、忌妒别人,不会给自己增加任何的好处。忌妒别人,也不可能减少别人的成就。
  四三、永远不要浪费你的一分一秒,去想任何你不喜欢的人。
  四四、多少人要离开这个世间时,都会说出同一句话,这世界真是无奈与凄凉啊!
  四五、恋爱不是慈善事业,不能随便施舍的。感情是没有公式,没有原则,没有道理可循的。可是人们至死都还在执著与追求。
  四六、请你用慈悲心和温和的态度,把你的不满与委屈说出来,别人就容易接受。
  四七、创造机会的人是勇者。等待机会的人是愚者。
  四八、能说不能行,不是真智慧。
  四九、多用心去倾听别人怎么说,不要急着表达你自己的看法。
  五十、同样的瓶子,你为什么要装毒药呢?同样的心理,你为什么要充满着烦恼呢?
  五一、得不到的东西,我们会一直以为他是美好的,那是因为你对他了解太少,没有时间与他相处在一起。当有一天,你深入了解后,你会发现原不是你想像中的那么美好。
  五二、这个世界只有圆滑,没有圆满的。
  五三、修行要有耐性,要能甘于淡泊,乐于寂寞。
  五四、活着一天,就是有福气,就该珍惜。当我哭泣我没有鞋子穿的时候,我发现有人却没有脚。
  五五、多一分心力去注意别人,就少一分心力反省自己,你懂吗?
五六、眼睛不要老是睁得那么大,我且问你,百年以后,那一样是你的。
  五七、欲知世上刀兵劫,但听屠门夜半声。不要光埋怨自己多病,灾祸横生,多看看横死在你刀下的众生又有多少?
  五八、憎恨别人对自己是一种很大的损失。
  五九、每一个人都拥有生命,但并非每个人都懂得生命,乃至于珍惜生命。不了解生命的人,生命对他来说,是一种惩罚。
  六十、自以为拥有财富的人,其实是被财富所拥有。
  六一、情执是苦恼的原因,放下情执,你才能得到自在。
  六二、随缘不是得过且过,因循苟且,而是尽人事听天命。
  六三、不要太肯定自己的看法,这样子比较少后悔。
  六四、当你对自己诚实的时候,世界上没有人能够欺骗得了你。
  六五、用伤害别人的手段来掩饰自己缺点的人,是可耻的。
  六六、世间的人要对法律负责任。修行的人要对因果负责任。
  六七、在你贫穷的时候,那你就用身体去布施,譬如说扫地、洒水、搬东西等,这也是一种布施。
  六八、内心充满忌妒,心中不坦白,言语不正的人,不能算是一位五官端正的人。
  六九、默默的关怀与祝福别人,那是一种无形的布施。
  七十、多讲点笑话,以幽默的态度处事,这样子日子会好过一点。
  七一、与人相处之道,在于无限的容忍。
  七二、不要刻意去猜测他人的想法,如果你没有智慧与经验的正确判断,通常都会有错误的。
  七三、要了解一个人,只需要看他的出发点与目的地是否相同,就可以知道他是否真心的。
  七四、人生的真理,只是藏在平淡无味之中。
  七五、不洗澡的人,硬擦香水是不会香的。名声与尊贵,是来自于真才实学的。有德自然香。
七六、与其你去排斥它已成的事实,你不如去接受它,这个叫做认命。
  七七、佛菩萨只保佑那些肯帮助自己的人。
  七八、逆境是成长必经的过程,能勇于接受逆境的人,生命就会日渐的茁壮。
  七九、你要感谢告诉你缺点的人。
  八十、能为别人设想的人,永远不寂寞。
  八一、如果你能像看别人缺点一样,如此准确般的发现自己的缺点,那么你的生命将会不平凡。
  八二、原谅别人,就是给自己心中留下空间,以便回旋。
  八三、时间总会过去的,让时间流走你的烦恼吧!
  八四、你硬要把单纯的事情看得很严重,那样子你会很痛苦。
  八五、永远扭曲别人善意的人,无药可救。
  八六、人不是坏的,只是习气罢了,每个人都有习气,只是深浅不同罢了。只要他有向道的心,能原谅的就原谅他,不要把他看做是坏人。
  八七、说一句谎话,要编造十句谎话来弥补,何苦呢?
  八八、其实爱美的人,只是与自己谈恋爱罢了。八九、世界上没有一个永远不被毁谤的人,也没有一个永远被赞叹的人。当你话多的时候,别人要批评你,当你话少的时候,别人要批评你,当你沈默的时候,别人还是要批评你。在这个世界上,没有一个不被批评的。
  九十、夸奖我们,赞叹我们的,这都不是名师。会讲我们,指示我们的,这才是善知识,有了他们我们才会进步。
  九一、你目前所拥有的都将随着你的死亡而成为他人的,那为何不现在就布施给真正需要的人呢?
  九二、为了赞美而去修行,有如被践踏的香花美草。
  九三、白白的过一天,无所事事,就像犯了窃盗罪一样。
九四、能够把自己压得低低的,那才是真正的尊贵。
  九五、广结众缘,就是不要去伤害任何一个人。
  九六、沈默是毁谤最好的答覆。
  九七、对人恭敬,就是在庄严你自己。
  九八、拥有一颗无私的爱心,便拥有了一切。
  九九、仇恨永远不能化解仇恨,只有慈悲才能化解仇恨,这是永恒的至理。
  一00、你认命比抱怨还要好,对于不可改变的事实,你除了认命以外,没有更好的办法了。
  一0一、不要因为众生的愚疑,而带来了自己的烦恼。不要因为众生的无知,而痛苦了你自己。
  一0二、别人讲我们不好,不用生气、难过。说我们好也不用高兴,这不好中有好,好中有坏,就看你会不会用?
  一0三、如果你自己明明对,别人硬说你不对,你也要向人忏悔,修行就是修这些。你什么事都能忍下来,才会进步。就是明明是你对,你也要向他人求忏悔,那就是修行了。
  一0四、当你的错误显露时,可不要发脾气,别以为任性或吵闹,可以隐藏或克服你的缺点。
  一0五、不要常常觉得自己很不幸,世界上比我们痛苦的人还要多。
  一0六、愚痴的人,一直想要别人了解他。有智慧的人,却努力的了解自己。
  一0七、别人永远对,我永远错,这样子比较没烦恼。
  一0八、来是偶然的,走是必然的。所以你必须,随缘不变,不变随缘。

2009年2月2日星期一

过年-漫长的旅程

有一个大年,以前过年都是从四川回家,坐40个小时的火车+2小时的火车;现在的过年是2个小时的和谐号+36个小时的火车。 没办法, 我的家比较遥远。在一些大背景的阴影的笼罩下,还有自己的一些小事务的影响下, 显得今年特别的不同。

到了广州,瞎转悠了几下, 就赶快去传说中的“春运时候的广州火车站”,原来大大的站前广场前面都是布满了车棚一样的“临时候车室”,里面是由 行李+人+武警 组成的, 我自己背了个包, 在熙熙攘攘的行李中找到了我的通道, 几下就进去了, 然后就在车站里面的候车室等了2个小时。 很后悔这么早就来了,应该多在广州逛一逛的。在深圳呆了这么长时间了,来了广州还是觉得自己是从乡下进了城里。

漫长的等待过后,终于开始上车了,我被挤在的那个地方竟然被第一时间放了进去。我很从容的上了车坐了位子,等了很久别人才上了车, 心里那个爽阿。呵呵, 哪知道我做错了位置。。。24号看成了25号。再到我的位置上以后发现行李空间已经没有了。 汗真的来的早也没用阿。车上都是人,说河南话的人居多。其中还有个小插曲,我旁边那个哥们的箱子的拉杆坏了,无法缩进去,放在行李架上之后就把他那长长的拉杆露在外边,挺突兀的感觉。列车员看见了很不爽,说你再不把你的拉杆弄进去我就得让你把箱子放下来了, 那哥们一脸苦相,说坏了没办法阿。 这时候一位“老乡”挺身而出, 随手拿出一个制作很精致的木板凳,看来这兄弟是很少能买到有坐的火车票,说:“我用这个帮你砸进去?怕给你砸坏”, 我旁边那哥们说,没事你砸吧。 话音刚落,那哥们拿起板凳很夸张的一砸,那拉杆就进去了,让我感叹农民工大哥其实也是很可爱的。 呵呵。

硬座的晚上比较难熬,中间醒来很多次,不过幸亏我还是最靠里的一个位置,还有一点点的桌子可以趴着睡,至于最边上的和在过道里边的就要倒霉许多了,不过最可怜的应该是过道里面的人了, 因为车上有2个卖货的一晚上竟来过来了7-8次,每一个听到“矿泉水,可乐,香肠,碗面”的声音想起,车厢里面就像鸟群起飞一样,在过道里面睡觉的人都骂骂咧咧的站了起来,这一来一回, 看来大家都不容易阿。又一次大家都在等待那个卖东西的回去以后再睡觉, 没想到那个卖东西直接在停站的时候从车厢外边推着车走了,让我想起一个老奶奶的“另外一支鞋"的那个笑话。

到了集宁,半夜4点多, 爸爸在接站,然后就去旅店里面热乎的睡了一觉。真是舒服。回家第一件事情就是帮PP摸摸姐姐的肚肚,呵呵, 圆鼓鼓的好像里面冲了气一样, 很是不同。今年的年过的少了一个人,龙龙在沈阳没有回家, 听说他们工厂也裁员了,他现在跑到沈阳找了份工作,祝愿他好运吧。初一的时候给了爷爷奶奶钱,作为我赚了钱的红包,还给了姐姐和姐夫,不过他们后来给我的更多。

后来和几个同学重聚了一下,去工作的人呢, 都变了,也有些人很久没有出现现在来寻找机会了,还有就是感觉这些人还是玩不到一块了,都自己的事情一大堆,不过还是玩的很开心。

然后很快, 就要从家走了,真的是很快。上了车,一直就睡觉,到现在我才发现,我在车上一句话都没有说。 肯定很口臭,:)
下了车以后去了杨熙家,这一次见都已经是结了婚了人了,没感觉出有啥不同,但是能看得到对他媳妇的照顾是很细心阿。 在他们家被照顾的很好,有吃好的又玩好的,很是感动。不过更加感叹的是他们一家都是学习型的,妈妈也看书学习,妹妹看的都是TOLEF的书,他媳妇更是诗词不离口。

明天就要上班了,有一些陌生的感觉,很想很想离开了, 这一次回家的经历让我更加清晰了要离开的念头。 只不过要看下一次面试的成绩了。

2009年1月21日星期三

Copmlete the Cycle.

明天就要坐上回家的火车了, 今天一天搞定了Wi-Fi, 晚上Li Ling 请客吃烧烤, 如果有机会, 准备换工作了-换一个行业。 还记得半年前刚到深圳时候的狼狈样, 因为这个人的签了这份工作。刚来第一天就落的很狼狈的下场, 今天, 在老王的帮助下, 总算见到了当初要来深圳的一个原因,算是一个圆满了。

此时的感觉呢, 生活真是有意思。 一个循环, 又回到初始的位置, 希望能在去首都再次开始打工的生活。

不过此时此刻, 很想念, 你。

2009年1月19日星期一

Dark Color

早上起床, 把已经穿了多日的黑色毛衣换下, 换上黑色卫衣, 忽然想起办公室的黑色马克杯, 以及黑色的Thinkpad, 还有我黑色的咖啡机。 环顾四周, 暗色居多了, 开始思考, 什么时候黑色的成分这么多了呢?

 本人还喜欢黑色电影, 黑色照片, 黑色幽默, 除了黑色的夜以外。

2009年1月12日星期一

[转]内部交易令火车票一票难求-实拍视频

经济学家杨小凯对 内生交易成本的定义是“自利决策之间的冲突,或激励不相容引起的扭曲”,这句话听起来有几分令人不解,但简单的意思就是在没有约束的情况下,每一个人都会 想方设法获取最大利益。特殊的国情让中国灰色的内生交易成本远高于外生交易成本,相比较之下美国则是外生交易成本远高于内生交易成本。 公共运输部门如铁路基本上为政府所垄断,而春运是一年一度的最大旺季,火车票一票难求的情景为何年年如此,年年无法得到改观?信息不透明的内生垄断决定了这一切,但同样信息传播迅速的互联网或许能产生一点约束力。有人将拍摄的火车站内部刷票的视频公布在网上,我们所能做的就是加大传播(视频一)。

转自: http://society.solidot.org/article.pl?sid=09/01/11/0722246&from=rss