本崇天地之至理,一朝懵懂学医,疲于奔命,虽欲判析天地之道,却乏近代格物之技,力不从心,由是别却近代硬科学。常为此情所扰,且矛盾,且悲痛,惟凭浅涉开源与编程,冒充极客,于其边缘游离,聊以自慰。
精华
燕园部分廉价美食情仇录
北医的临床学生是比较惨的,第一学年在P大待,之后跑到北医,之后又跑到医院,实在是有点“颠沛流离”的味道。于是乎作为北医的穷学生,我在第一年也吃了些燕园水饭。室友吴某曾引用不知名的人的话:“觉得P大的食堂好是因为没去过清二”,由于我的确没在清二吃过饭,所以实在无法辨明此话的真假。但至少在我的印象中,就说燕园的廉价馔食,很多是回味无穷的(相比之下很多值钱玩意儿倒没什么意思)。本来我早有记这一文的打算,只是因为平时比较忙,自己又实在太懒,就搁置了。直到今日在我大医学部学生食堂一层吃到了廉价菜中难得的佳肴——水煮白菜羊肉,顿时有了不少的思绪和感慨,恰逢还有些空闲时间,就暂且回忆一下燕园的部分廉价美食,撰文以记。
//
一、榨菜肉丝面 ——学一食堂
我所以把榨菜肉丝面放在第一位,除了它确是一道美食外,还因为它已经成为我对那段时光的纪念和缩影。
花3块钱,煮好的面浇上榨菜肉丝卤,用浅底儿盔儿(或称深底儿盘儿?)盛来。汤中漂浮的油花使面的表面更加爽滑,肉丝和葱花似应经过煸炒,其香味和榨菜的咸、辣椒的辣相得益彰,入口后实在是一种奇妙而舒爽的刺激。每每买了这道美食,我都要连汤也一并喝光,全然不顾盐摄入量过高。现在想来,我喜欢这一食物也许很大程度上只是因为我比较重口。
说到盐就说到了健康,很难再找出一道美食比榨菜肉丝面更不健康了。基于这个原因,我只在极开心或极伤心时才会买它来放纵一把。然而开心的时间实在还是太少,所以这道美食几乎就见证了我的血泪史。如果某一天我极伤心,却发现来晚一步,面已经卖完了,就会怅然若有所失,没有了吃饭的方向。当时对医学知识了解甚少,也不清楚盐敏感性高血压。现在想来,辣椒能够刺激内源性镇痛物质释放,减轻自己的痛苦;同时辣椒素促进扩张外周血管,再加上盐的作用,大概会使心输出量在饭后有一过性的提高。
据常去燕园的吴室友所说,做榨菜肉丝面的师傅已经离开了,所以恐怕以后也很难再有机会尝到那个熟悉的味道,找回当年的感觉了。北医的卖面窗口亦有榨菜肉丝卤,也还差强人意,却全然不是那个味道。尽管如此,我也会经常吃上一碗,除了饱口腹之欲外,也算是怀念一下当年的苦闷时光。
二、小笼汤包、生煎包、牛肉包、鲜肉包、奶黄包、三丁包 ——松林包子
严格来说它们并不是一道菜,应该分开写,但为了行文方便和逻辑清楚,还是合在一起吧。
松林包子营业时间很长,虽然我到现在也没弄清楚具体时间,但一般来说我可能出门的时间它都在营业。所以基本上,周末如果起得晚,比较好的吃饭之所就是那里了。
这几种包子风味各异,小笼汤包汁水丰富,入口爽滑,味道丰厚(再一次,以口重取悦我);生煎包以香取胜,以葱花等提香,用油煎得恰到好处;牛肉包原料单纯,牛肉味頗浓厚,是这几种包子中最贵的;鲜肉包似乎略甜,肉馅细腻,味道胜于学一的大包子;奶黄包的馅料是某种浅黄色胶冻状物,成分我尚不甚清楚,味香甜;三丁包是素包子(具体是哪三丁我未进行研究),甜面酱为其核心调味料,味甜,口感略脆。此外还有一种生菜包,虽然为了膳食平衡我每次去松林必吃,但其口感乏善可陈,不能称为美食。这几种包子最贵的只7角/个,以我的食量,每顿不过5、6个,每一次都是廉价的享受。然而似乎牛肉包能够诱发我面部的毛囊炎,但我并未进行详细的实验验证,也可能只是跟我内分泌的周期变化有关。
我在P大时患过一次挺严重的肺炎,为此还影响了我(除水课外)唯一可能拿到90分以上的考试。一次在社区医院输液时跟认识的护士阿姨/姐姐聊天,发现她居然经常去P大吃饭,并且也很喜欢松林的包子,和她聊起这个,让我顿时对上学不那么反感了。
三(一)、干烧肉 ——燕南食堂
燕南食堂的菜普遍较贵,但南边一路的“家常经典”、“家常创新”等都是相对廉价的。其中美食不多,干烧肉算是一个。
干烧肉是燕南的招牌菜,中午晚上皆有,且极少售罄。干烧肉需和白菜搭配在一起买,大师傅先将白菜盖于米饭之上,再盖浇挂有厚重口味酱汁的干烧肉。肉得了菜的清香爽脆,不显肥腻;菜得了肉的爽滑滋味,不显生涩,搭配绝佳。干烧肉无过多杂乱的配料,口味质朴而丰富。一顿仅4元余,因为肉多,若是中午食用,尚可抵挡下午饭前之饥饿。
三(二)、干烧肉 ——学一食堂
学一的干烧肉和燕南食堂的有很大的不同。燕南的色泽焦黑,而学一的色泽橙红,汁水更加丰富,口味咸中带甜,更适合泡饭。其实我更喜欢学一的干烧肉一些,然而学一的干烧肉并不是随时都有,需要碰运气才能买到,所以吃的次数就比燕南的少得多了。
四、宫保鸡丁 ——学五食堂
大概是因为距离教学楼最远,学五食堂是一个人相对较少的食堂,也是一个甚至比学医的便宜还要更便宜一点的地方。
学五一层的宫保鸡丁和学一等食堂那些略带甜味的宫保黄瓜丁有很大的不同,是货真价实的“鸡丁”。没有多余的闹哄哄的味道,有的只是辣椒对口腔一步到位的刺激和花生与鸡丁共同作用形成的油香,一瞬间贯通人虚伪的外表,与内心压抑掩藏的暴戾之气融为一体。不可不说是自暴自弃时放纵自己的绝佳菜肴,实在太适合我这样眼高手低、失败落魄的庸人了。至于对消化道的损伤,让这种碍眼的想法一边呆着去。
五、牛肉拉面 ——农园食堂
农园是P大规模最大,建设和维护成本最高的食堂,里面充斥着大量死贵而难吃的食物,给我留下了相当多的糟糕体验。总体来讲,农园没为我带来痛苦的食物所占不多,牛肉拉面是其中最好的一个。
初中时学校食堂有个(似乎是外包的)马兰拉面窗口,每次该窗口前的长队都气势恢宏,而我甚至曾经几乎每天一次排那条队,持续了一年还多。作为一个从小习惯吃米饭的人,从那时候我才对拉面有了好感。高中后换了学校,也再吃不到那样的面了,但我只要在卖牛肉拉面的地方,都会试图买来尝尝,以期找回熟悉的味道。
我在农园食堂找到了,尽管有些细节上不一样,但味道是熟悉而令人感动的。甘肃的好友说“北京没有正宗的拉面”,但我毫不在乎。所谓正宗,不过是从小形成的偏见的集合(这句话修改自爱因斯坦的某名言)。能让自己吃得开心和满足,就已经很好了……
医学部的面食窗口也有拉面,但需要等待的时间挺长,味道也略有不同,总体还说得过去,现在只是偶尔会去吃了。
六、煎饼果子 ——博实超市旁的小白房
回忆这东西大概的确能很大程度上改变对某个东西的看法。小时候做中医的父亲在某医院出门诊,我每每跟父亲同在医院门前时,都会要求父亲给自己买路边小推车处现摊的煎饼果子。并非是饿,只是想获得美食带来的满足。母亲大人是西医,她的卫生观念始终深切地影响着我,所以随着年龄渐长和意志力的提升,我就不再吃任何路边小摊的东西了。家附近的食堂也有煎饼果子,但大约就是有点甜有点咸的面团,一言以蔽之是“聊胜于无”。然后再一次,我在P大找回了当年的味道。
相比提供的量来说,小白房煎饼果子的价格倒是有些贵了。但与那些动辄数十却难吃无比的菜相比,还是十分划算的。更何况,回忆这东西是需要靠一些载体去点亮的,小白房的煎饼果子正是这样的东西。
//
后记
我的效率果然还是一如既往地低下得令人失望,用了一晚上的时间来才把这篇文章写到这里。我已经有点厌烦再继续想、继续写下去了。有什么还没想起来的,容日后再补。在P大这一年,其实有很多东西是错过了,比如口碑甚好的康博斯的鸡腿。那也没什么办法,只能等日后有机会再去补了。本来这篇文章的题目叫做“燕园部分美食考据”,但没写多久我就发现这文章变成了一段自说自话的无用文字,毫无“考据”的严谨性可言,于是就改了现在这个题目。这篇文章似乎暴露了太多的隐私,不过鉴于现在民众对网络安全越来越不重视,且在我朝什么事情都有可能发生,我也便跟风赶浪头一次。PBL时某同学云“不吐不快”,这样的情况我遇到得太多了。
[转载]为什么要探索宇宙
写在前面:
我最早是在Google Plus上看到这篇文章的,后来发现这一版本的译文出自译言网(原文在此),译者为kelejiabing,特此申明。
虽然本人是个貌似不食人间烟火有点科学至上实则没啥本事的卢瑟,但在我朝这样的环境下,也生发过类似的疑问。然而这篇文章视角之宏大,思虑之渺远,都深深打动了我等胸怀天下、眼高手低的沦落人的心,今日转载,供君参看。
原文:
1970年,赞比亚修女 Mary Jucunda 给 Ernst Stuhlinger 博士写了一封信,他因在火星之旅工程中的原创性研究,成为 NASA(美国航空航天局)Marshall 太空航行中心的科学副总监。信中,Mary Jucunda 修女问道:目前地球上还有这么多小孩子吃不上饭,他怎么能舍得为远在火星的项目花费数十亿美元。
Stuhlinger 很快给Jucunda 修女回了信,同时还附带了一张题为“升起的地球”的照片,这张标志性的照片是宇航员 William Anders 于1968年在月球轨道上拍摄的(照片中可以看到月球的地面)。他这封真挚的回信随后由 NASA 以《为什么要探索宇宙》为标题发表。
1970年5月6日
亲爱的Mary Jucunda修女:
每天,我都会收到很多类似的来信,但这封对我的触动最深,因为它来自一颗慈悲的饱含探求精神的心灵。我会尽自己所能来回答你这个问题。
首先,请允许我向你以及你勇敢的姐妹们表达深深的敬意,你们献身于人类最崇高的事业:帮助身处困境的同胞。
在 来信中,你问我在目前地球上还有儿童由于饥饿面临死亡威胁的情况下,为什么还要花费数十亿美元来进行飞向火星的航行。我清楚你肯定不希望这样的答案: “哦,我之前不知道还有小孩子快饿死了,好吧,从现在开始,暂停所有的太空项目,直到孩子们都吃上饭再说。”事实上,早在了解火星之旅的技术之前,我已经 对儿童的饥荒问题有所了解。而且,同我很多朋友的看法一样,我认为此时此刻,我们就应该开始通往月球、火星乃至其他行星的伟大探险。从长远来看,相对于那 些要么只有年复一年的辩论和争吵,要么连妥协之后也迟迟无法落实的各种援助计划来说,我甚至觉得探索太空的工程给更有助于解决人类目前所面临的种种危机。
在 详细说明我们的太空项目如何帮助解决地面上的危机之前,我想先简短讲一个真实的故事。那是在400年前,德国某小镇里有一位伯爵。他是个心地善良的人,他 将自己收入的一大部分捐给了镇子上的穷人。这十分令人钦佩,因为中世纪时穷人很多,而且那时经常爆发席卷全国的瘟疫。一天,伯爵碰到了一个奇怪的人,他家 中有一个工作台和一个小实验室,他白天卖力工作,每天晚上的几小时的时间专心进行研究。他把小玻璃片研磨成镜片,然后把研磨好的镜片装到镜筒里,用此来观 察细小的物件。伯爵被这个前所未见的可以把东西放大观察的小发明迷住了。他邀请这个怪人住到了他的城堡里,作为伯爵的门客,此后他可以专心投入所有的时间 来研究这些光学器件。
然而,镇子上的人得知伯爵在这么一个怪人和他那些无用的玩意儿上花费金钱之后,都很生气,“我们还在受瘟疫的苦”, 他们抱怨道,“而他却为那个闲人和他没用的爱好乱花钱!”伯爵听到后不为所动,“我会尽可能地接济大家”,他表示,“但我会继续资助这个人和他的工作,我 确信终有一天会有回报。”
果不其然,他的工作赢来了丰厚的回报:显微镜。显微镜的发明给医学带来了前所未有的发展,由此展开的研究及其成果,消除了世界上大部分地区肆虐的瘟疫和其他一些传染性疾病。
伯爵为支持这项研究发明所花费的金钱,其最终结果大大减轻了人类所遭受的苦难,这回报远远超过单纯将这些钱用来救济那些遭受瘟疫的人。
我 们目前面临类似的问题。美国总统的年度预算共有2000亿美元,这些钱将用于医疗、教育、福利、城市建设、高速公路、交通运输、海外援助、国防、环保、科 技、农业以及其他多项国内外的工程。今年,预算中的1.6%将用于探索宇宙,这些花销将用于阿波罗以计划、其他一些涵盖了天体物理学、深空天文学、空间生 物学、行星探测工程、地球资源工程的小项目以及空间工程技术。为担负这些太空项目的支出,平均每个年收入10,000美元的美国纳税人需要支付约30美元 给太空,剩下的9,970美元则可用于一般生活开支、休闲娱乐、储蓄、别的税项等花销。
也许你会问:“为什么不从纳税人为太空支付的30 美元里抽出5美元或3美元或是1美元来救济饥饿的儿童呢?”为了回答这个问题,我需要先简单解释一下我们国家的经济是如何运行的,其他国家也是类似的情 形。政府由几个部门(如内政部、司法部、卫生部与公众福利部、教育部、运输部、国防部等)和几个机构(国家科学基金会、国家航空航天局等)组成,这些部门 和机构根据自己的职能制定相应的年度预算,并严格执行以应对国务委员会的监督,同时还要应付来自预算部门和总统对于其经济效益的压力。当资金最终由国会拨 出后,将严格用于经预算批准的计划中的项目。
显然,NASA的预算中所包含的项目都是和航空航天有关的。未经国会批准的预算项目,是不会 得到资金支持的,自然也不会被课税,除非有其他部门的预算涵盖了该项目,借此花掉没有分配给太空项目的资金。由这段简短的说明可以看出,要想援助饥饿的儿 童,或在美国已有的对外援助项目上增加援助金额,需要首先由相关部门提出预算,然后由国会批准才行。
要问是否同意政府实施类似的政策,我个人的意见是绝对赞成。我完全不介意每年多付出一点点税款来帮助饥饿的儿童,无论他们身在何处。
我 相信我的朋友们也会持相同的态度。然而,事情并不是仅靠把去往火星航行的计划取消就能轻易实现的。相对的,我甚至认为可以通过太空项目,来为缓解乃至最终 解决地球上的贫穷和饥饿问题作出贡献。解决饥饿问题的关键有两部分:食物的生产和食物的发放。食物的生产所涉及的农业、畜牧业、渔业及其他大规模生产活动 在世界上的一些地区高效高产,而在有的地区则产量严重不足。通过高科技手段,如灌溉管理,肥料的使用,天气预报,产量评估,程序化种植,农田优选,作物的 习性与耕作时间选择,农作物调查及收割计划,可以显著提高土地的生产效率。
人造地球卫星无疑是改进这两个关键问题最有力的工具。在远离地 面的运行轨道上,卫星能够在很短的时间里扫描大片的陆地,可以同时观察计算农作物生长所需要的多项指标,土壤、旱情、雨雪天气等等,并且可以将这些信息广 播至地面接收站以便做进一步处理。事实证明,配备有土地资源传感器及相应的农业程序的人造卫星系统,即便是最简单的型号,也能给农作物的年产量带来数以十 亿美元计的提升。
如何将食品发放给需要的人则是另外一个全新的问题,关键不在于轮船的容量,而在于国际间的合作。小国统治者对于来自大国 的大量食品的输入很难做出准确的判断,他们害怕伴随着食物一同而来的还有外国势力对其统治地位的影响。恐怕在国与国之间消除隔阂之前,饥饿问题无法得以高 效解决了。我不认为太空计划能一夜之间创造奇迹,然而,探索宇宙有助于促使问题向着良好的方向发展。
以最近发生的阿波罗13号事故为例。 当宇航员处于关键的大气层再入期时,为了保证通讯畅通,苏联关闭了境内与阿波罗飞船所用频带相同的所有广播通信。同时派出舰艇到太平洋和大西洋海域以备第 一时间进行搜救工作。如果宇航员的救生舱降落到俄方舰船附近,俄方人员会像对待从太空返回的本国宇航员一样对他们进行救助。同样,如果俄方的宇宙飞船遇到 了类似的紧急情况,美国也一定会毫不犹豫地提供援助。
通过卫星进行监测与分析来提高食品产量,以及通过改善国际关系提高食品发放的效率,只是通过太空项目提高人类生活质量的两个方面。下面我想介绍另外两个重要作用:促进科学技术的发展和提高一代人的科学素养。
登月工程需要历史上前所未有的高精度和高可靠性。面对如此严苛的要求,我们要寻找新材料,新方法;开发出更好的工程系统;用更可靠的制作流程;让仪器的工作寿命更长久;甚至需要探索全新的自然规律。
这 些为登月发明的新技术同样可以用于地面上的工程项目。每年,都有大概一千项从太空项目中发展出来的新技术被用于日常生活中,这些技术打造出更好的厨房用具 和农场设备,更好的缝纫机和收音机,更好的轮船和飞机,更精确的天气预报和风暴预警,更好的通讯设施,更好的医疗设备,乃至更好的日常小工具。你可能会问 为什么先设计出宇航员登月舱的维生系统,而不是先为听力障碍患者造出有声阅读设备呢。答案很简单:解决工程问题时,重要的技术突破往往并不是按部就班直接 得到的,而是来自能够激发出强大创新精神,能够燃起的想象力和坚定的行动力,以及能够整合好所有资源的充满挑战的目标。
太空旅行无可置疑地是一项充满挑战的事业。通往火星的航行并不能直接提供食物解决饥荒问题。然而,它所带来大量的新技术和新方法可以用在火星项目之外,这将产生数倍于原始花费的收益。
若希望人类生活得越来越好,除了需要新的技术,我们还需要基础科学不断有新的进展。包括物理学和化学,生物学和生理学,特别是医学,用来照看人类的健康,应对饥饿、疾病、食物和水的污染以及环境污染等问题。
我 们需要更多的年轻人投入到科学事业中来,我们需要给予那些投身科研事业的有天分的科学家更多的帮助。随时要有富于挑战的研究项目,同时要保证对项目给予充 分的资源支持。在此我要重申,太空项目是科技进步的催化剂,它为学术研究工作提供了绝佳和实践机会,包括对月球和其他行星的研究、物理学和天文学、生物学 和医学科学等学科,有它,科学界源源不断出现令人激动不已研究课题,人类得以窥见宇宙无比瑰丽的景象;为了它,新技术新方法不断涌现。
由 美国政府控制并提供资金支持的所有活动中,太空项目无疑最引人瞩目也最容易引起争议,尽管其仅占全部预算的1.6%,不到全民生产总值的千分之三。作为新 技术的驱动者和催化剂,太空项目开展了多项基础科学的研究,它的地位注定不同于其他活动。从某种意义上来说,以太空项目的对社会的影响,其地位相当于 3-4千年前的战争活动。
如果国家之间不再比拼轰炸机和远程导弹,取而代之比拼月球飞船的性能,那将避免多少战乱之苦!聪慧的胜利者将满怀希望,失败者也不用饱尝痛苦,不再埋下仇恨的种子,不再带来复仇的战争。
尽 管我们开展的太空项目研究的东西离地球很遥远,已经将人类的视野延伸至月亮、至太阳、至星球、直至那遥远的星辰,但天文学家对地球的关注,超过以上所有天 外之物。太空项目带来的不仅有那些新技术所所提供的生活品质的提升,随着对宇宙研究的深入,我们对地球,对生命,对人类自身的感激之情将越深。太空探索让 地球更美好。
随信一块寄出的这张照片,是1968年圣诞节那天阿波罗8号在环月球轨道上拍摄的地球的景象。太空项目所能 带来的各种结果中,这张照片也许是其中最可贵的一项。它开阔了人类的视野,让我们如此直观地感受到到地球是广阔无垠的宇宙中如此美丽而又珍贵的孤岛,同时 让我们认识到地球是我们唯一的家园,离开地球就是荒芜阴冷的外太空。无论在此之前人们对地球的了解是多么的有限,对于破坏生态平衡的严重后果的认识是多么 的不充分。在这张照片公开发表之后,面对人类目前所面临的种种严峻形势,如环境污染、饥饿、贫穷、过度城市化、粮食问题、水资源问题、人口问题等等,号召 大家正视这些严重问题的呼声越来越多。人们突然表示出对自身问题的关注,不能说和目前正在进行的这些初期太空探索项目,以及它所带来的对于人类自身家园的 全新视角无关。
太空探索不仅仅给人类提供一面审视自己的镜子,它还能给我们带来全新的技术,全新的挑战和进取精神,以及面对严峻现实问题 时依然乐观自信的心态。我相信,人类从宇宙中学到的,充分印证了Albert Schweitzer那句名言:“我忧心忡忡地看待未来,但仍满怀美好的希望。”
向您和您的孩子们致以我最真挚的敬意!
您诚挚的
恩斯特史都林格
科学副总监.
从Ideapad Y460再次悲剧说起
我的笔电果然命途多舛,最近又出了问题。不过当然这篇文章不仅仅是记述这个问题的,这次笔电的意外实在是让我不得不想想我究竟需要一个什么样的笔电,以及如何面对选择。
简而言之,问题就是装电池+接电源使用大概几分钟后出现紫屏/绿屏,一切操作无反应;若不装电池则开机1秒后(显示器未加电前)即死机;只用电池时一切正常。送修,诊断是充电板或主板损坏。好在还在保修期内。
然而是时恰逢考试,亟需笔电复习用。我着急甚,只得给家里打电话求助,父上把自己出差时带着的Thinkpad X200借给了我。这一举动使我对父上的感激骤然增加。危难之时,伸出援手的果然还是父母。不知以后这些恩德还能不能还上了。
后来似乎是修好了,然而问题又发生了一次,我便不敢再将其作为日常使用的笔电,一直借用着父上的,不得不说父上的笔电用起来很舒服。问题少,发热小,而且更稳定,或者说更经折腾。
买笔电时,总是希望自己的笔电是万能的:性能强劲,稳定,续航时间长,轻便……然而完美的方案不可能存在。我当初觉得虽然自己未必经常玩游戏,但自己的笔电怎么样也该有玩得起主流游戏的能力。只可惜我为了这点损失的太多,真正自己90%+的应用状态都没有考虑到。于是在种种问题上浪费了宝贵的时间和精力。
也许我的下一个笔电要很久以后才能有,也许我现在用的就将是。但选购电脑也好,别的什么选择也好,道理都是一样的。前一阵子看一个TED演讲,说过多的选择带给人的不是自由而是痛苦。其实原因也不难理解,选择不仅仅是得到,也是舍弃。知道该舍弃什么,不把舍弃当作一种痛苦,才能真正做出正确的选择。每一个决策都是选择,也许自己在一辈子中不是所有的选择都能够做得正确,但至少仔细考量过了,就不那么容易后悔。
用vga_switcheroo在Linux下(开启KMS)彻底关闭某一可切换显卡的简单教程
我在早先时记载过自己一直为一个问题所扰,就是我配备双显卡的Ideapad Y460在BIOS中仅支持“可切换”(switchable)和“独立”(原文为discrete graphic)两种模式。而当使用可切换模式进入Linux后,虽然只有集成显卡在使用,但两个显卡都会同时耗电,导致温度很高。虽然用独立显卡+催化剂(Ati的商业驱动)可以获得不错的效果,但会有诸多麻烦事情,更何况这样一来集显的节能优势就消失了。
我曾在谷歌上粗略查找过很多彻底关闭独立显卡的方案,然而就目前我看到的中文解答来说,基本都是不靠谱的答案。直到我最近从Arch的Wiki辗转到了ubuntu documentation才找到一个使用内核自带的vga_switcheroo关闭显卡的方案。在此记述一下。
声明:本文只是记述了最主要的内容,详细内容可以从这个页面中找到。
//
下面进入正题:
首先,vga_switcheroo是内核提供的组件,但有这一组件(或者说有下文提到的文件)并不代表其在您的机器上能够正常使用。此外根据某些用户提供的信息,vga_switcheroo仅当KMS开启状态下才可用,所以请首先装好显卡的开源驱动并保持KMS开启。
一、查看当前双显卡使用状态:
终端中输入:
cat /sys/kernel/debug/vgaswitcheroo/switch
这步是要读出/sys/kernel/debug/vgaswitcheroo/switch这一文件的信息。不出意外您可能会看到类似下面(但不完全相同)的内容:
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :Off:0000:01:00.0
其中“IGD”表示集成显卡,“DIS”表示独立显卡;加号(“+”)表示当前用作输出(或称“连接上”(connected))的显卡;“Pwr”代表正在供电,“Off”代表已关闭。如果看到两个显卡都显示“Pwr”,则说明都在消耗着电能。
二、暂时性的关闭某一显卡
注意:下面和内核的交互操作是通过操作/sys/kernel/debug/vgaswitcheroo/switch这个“虚拟文件”实现的,而这一文件每次开机会重新创建,所以您对其所做的修改都是暂时的,重启后会失效。
首先切换到root用户:
su
这步通常是必要的,不可用sudo取代(似乎是因为sudo如果不经设置,是没有“>”操作符权限的)。
打开所有的显卡:
echo ON > /sys/kernel/debug/vgaswitcheroo/switch
这步是给所有显卡加电,使其运行,但不改变当前输出的状态。
切换到集成显卡:
echo IGD > /sys/kernel/debug/vgaswitcheroo/switch
这步表示使用集成显卡作为输出(即“连接上”集成显卡)。同理,将其中的“IGD”换成“DIS”可使用独立显卡。
关闭未使用的显卡:
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
最后可以再运行一下cat /sys/kernel/debug/vgaswitcheroo/switch,看一看自己的显卡状态。
三、永久性的关闭某一显卡
解决重启后失效的办法就是每次开机时都执行一遍需要的命令,而且越早执行越好。对于这个问题,不同的发行版有不同的解决方案。例如在我所用的Arch Linux中有一个/etc/rc.local文件,把需要开机执行的命令写进去即可。对于ubuntu,可以参考ubuntu documentation上的一个启动脚本。我没有尝试过加环境变量是否有用,但似乎也应该是可以的。
//
后记:3月14日帝都(室温约20度),开启acpi节能的情况下,我的Ideapad Y460使用集显,打字、浏览网页等操作,CPU温度不到37度,电池续航4小时以上,真是太舒爽了……
Fcitx皮肤查看器(fcitx-skin-viewer)最后的更新
Fcitx的皮肤预览功能已集成进Fcitx的KDE控制面板(kcm-fcitx),故fcitx皮肤查看器已无再更新的必要。于是我将最后一个没写完的功能写出,作为最后一次更新的内容。以后我可能会继续更新kcm-fcitx中的皮肤浏览功能。
更新内容:
增加皮肤选择表格,可一键选择当前用户皮肤目录(~/.config/fcitx/skin/)下的皮肤。原有的打开特定皮肤的功能依然存在。
本想至少先汉化一下这个程序,不过最后也没搞定cmake下Qt程序的汉化问题,只得作罢。
转:一分钱饭店里的离奇故事
本文转自“凡人医生”的网址,源地址:http://blog.sina.com.cn/s/blog_64c1af610100ri6i.html
瓷器村有一家饭店,每顿饭只收1分钱的饭费。我在这家饭店工作多年,目睹了许多离奇的故事,今天要讲给你听。你一定会感兴趣的。
(一)公益食堂
这家饭店始建于上世纪七十年代末,是生产队的食堂,主要靠生产队拨款维持运转。村民们每顿饭只要交1分钱的饭费就可以随便吃。当然饭菜也很简单,就是萝卜白菜馒头。
生产队领导曾经教导我们:“食堂是公益机构,要体现公益性。食堂职工要履行‘救饥扶饿’的神圣职责。”我们一直把这些教诲铭记在心。有的村民连1分钱的饭费都交不起,我们就让他进来白吃;食堂门口经常有乞讨者,我们就从后厨给他们拿饭吃。反正这些都会由生产队给买单。就这样,我们食堂的口碑一直很好。由于我们工作时都穿着白大褂,甚至有人称我们为“白衣天使”。
到了八十年代,食堂归村委会管理。虽然每顿饭的成本已经涨到了5角,但村委会给食堂足额补贴,所以村民们一直享受着“1分钱吃饱”的优惠价,食堂职工也一直在履行着“救饥扶饿”的神圣职责。
(二)聪明绝顶的村长
九十年代初,村长说,村委会的平房太寒酸了,要盖一座办公大楼。村干部们异口同声地表示支持,负责基建的村长小舅子和负责后勤的村长表弟更是热烈欢呼。村委会的分支机构很多,有犁地部、播种部、浇水部、收割部、打场部、拾荒部、养猪部、喂猪部、杀猪部、卖猪部……等等,按照每人400平方米的办公面积计算,至少要盖80层大楼。可是钱从哪里来呢?
村里开会研究了三天三夜,最后,聪明绝顶的村长想出了一个聪明绝顶的办法:把食堂改名为“瓷器饭店”,也就是“市场化”;村委会只给食堂拨款40%,让食堂自筹60%。所谓“自筹”,就是让食堂向吃饭的村民收钱。这样,就可以减轻村里的财政负担,省出盖大楼的钱。
村委会的会计算了算帐,说道:“现在每顿饭的平均成本是3元,村里补贴1.2元,食堂只要把饭费从1分涨到1.8元就可以了。我散会之后就去安排。”
村长瞪了会计一眼,喝斥道:“你脑子有毛病吗?现在村民们本来就对物价敏感,村委会要是宣布把饭费涨到原来的180倍,村民们还不把村委会砸了?”
会计说:“那咋办?不涨饭费,食堂靠啥自筹资金?”
村长笑了笑,说道:“我自有办法!”
(三)以餐具养食堂
第二天,瓷器村村委会发布了一份名为《以餐具养食堂》的红头文件。文件规定,为解决公立食堂经费不足的问题,现允许食堂向顾客收取“餐具费”。餐具费的收入,将用于弥补饭费收入的不足。
从此以后,村民们到食堂吃饭,除了支付1分钱的饭费以外,还要支付1至5元的“餐具费”。“1分钱吃饱”的时代一去不复返了。村民们纷纷议论:“村委会控制了饭费的上涨,真是亲民爱民!食堂加收了餐具费,真是贪得无厌!”
九十年代,瓷器村的经济形势一片大好,是大好,不是小好。村委会陆续购买了18辆奔驰、18辆广本、18辆帕萨特,村长包养了两个小媳妇,还把儿子送到河对岸的阿麦瑞克村上学。其他村子受了灾,村委会慷慨捐款。村干部的工资,也一次又一次地上涨。
当然,村民们不知道,村委会对食堂的拨款比例却是逐年减少的。到了1998年,拨款比例下降到了10%。这10%的拨款,还经常无法按时到位,有时还会被村委会赖帐不给。这时的“瓷器饭店”,虽然对外还宣称是“公立食堂”,但实际上已经跟自负盈亏的私营饭店相差无几了。
这期间,村委会也觉得1分钱的饭费实在是低得可笑,于是也给上调了几次。1998年,饭费调到了2元。但是,这时的饭菜档次也提高了很多,物价也涨了很多,每顿饭的成本已经涨到了5元至20元,饭费加上餐具费收入仍然不足以收回成本。食堂没办法,只好采购了一些中高档餐具,以便提高“餐具费”收入,用于弥补饭菜的亏损。此外,食堂还引进了南非鲍、澳洲龙虾、神户牛肉等高档菜,这些菜可以在2元饭费之外单独定价,卖到上百元,既可以满足高端顾客的需求,也可以增加一些收入。
(四)四个难题
2000年,村委会的会计奉命对食堂进行调查,发现了几个问题,汇报给了村长。
第一个问题:随着物价的上涨和食谱的更新,每顿饭的成本已经涨到了10至30元。但是,按村委会的定价,饭费仍然只能收2元钱。即使加上餐具费和少量高档菜的收入,食堂仍然是亏损的。照这样下去,食堂就会倒闭。如果食堂倒闭了,村民们没处吃饭,就会来找村委会算帐。如何避免食堂倒闭?
第二个问题:随着村民的餐饮需求的增长,食堂的工作量比以前增加了好几倍。但是,食堂的职工编制没有增加。因此,食堂现有职工不得不长期、常态超负荷工作。他们每天凌晨3点就要上班,晚上23点才能下班。遇到吃夜宵吃到后半夜的顾客,他们只能强打精神,加班奉陪。增加了的这部分工作量,不是靠增加人员来完成的,而是靠现有职工无偿加班、放弃节假日、牺牲个人权益来完成的。食堂职工对此有意见,如何平息?
第三个问题:在这二十多年中,餐饮行业发生了巨大的变化。现代餐饮已经变成了一门高技术含量的行业。一个人要想当厨师、服务员,先要以高分考入大学,读5年本科,其中大部分人又读了3年硕士,厨师长、厨师、领班等职位甚至只录用博士。新职工在正式工作前,要经过漫长、艰苦、低薪的见习期和轮转期,从摘菜、刷碗、拖地、端盘子做起。正式步入工作岗位后,终生都要进修、学习、钻研,紧追餐饮行业前沿,才能胜任工作、保住饭碗。顾客对饭菜的口味、色泽、形态、火候、营养、卫生、充饥能力、刀工精度、数量精度等方面以及配套服务的要求非常高,食堂职工必须遵循复杂而严格的技术标准,精工细作,精心服务;一旦出现疏漏,就可能被告上法庭、定罪判刑。因此,食堂职工的工作难度、工作量、心理压力和从业风险都比较大。食堂职工的付出显著超过了其他大部分职业,但是,食堂职工的工资标准却并不高。食堂职工对此有意见,如何平息?
第四个问题:村民们缴纳了沉重的税赋,却不能享受“1分钱吃饱”的福利待遇,每顿饭除了要花2元饭费以外,还要花几元、几十元的餐具费。如果想吃鲍鱼、龙虾,还要花成百上千元。因此村民们纷纷抱怨“吃饭贵”。食堂的职工、灶位、桌位、餐具等资源都比较紧张。在高峰时段,前来吃饭的村民甚至会找不到桌位,上菜速度也会变慢。因此村民们纷纷抱怨“吃饭难”。如果村民们发现“吃饭贵”和“吃饭难”是由村委会缩减食堂拨款引起的,就会责怪村委会。如何避免村民们发现?
村长听完这四个问题,一言不发,只顾眯着眼睛抽烟。会计不敢多嘴,也只是一言不发地看着村长。等到一袋烟抽完了,村长才转过头来,问会计:“你说,食堂的职工是人还是神?”会计弄不清村长葫芦里卖的什么药,只好老老实实地回答道:“当……当然是人,不是神。怎么啦?”村长点了点头,说道:“这就好!只要他们是人,不是神,就好办了。”
村长显然已经有了一个好办法!
(五)一箭四雕
第二天下午,被村长派去食堂查账的会计兴冲冲地跑回来,向村长报告:“查到了!我查到了!”
村长说:“别着急,坐下慢慢说。”
会计坐下,喘了一口气,继续说道:“我仔细审查了食堂的餐具帐目,终于发现,他们在采购鲍鱼的时候收取了供应商的1000元回扣。其中500元用于购买消毒柜,100元用于维修灶具,100元用于更换灯泡、水龙头;给几名干部和厨师长每人发了30元的奖金;最后给厨师和服务员补发了上月拖欠的工资,每人5至10元不等。”
听完汇报,村长狡黠地笑了:“好啊!我就知道,他们是人,不是神!”
会计不明白,就问村长:“您这是什么意思?”
村长说:“他们不是神仙,所以他们不可能凭空变出米面肉菜、水电煤气、桌椅碗筷。如果没有拨款,他们就只能靠歪门邪道来维持食堂运转。他们不是神仙,所以他们忍不住疾苦清贫、高付出、低回报,他们会自己设法用歪门邪道来弥补收入。”
会计讪讪地问:“那,咱们村里是不是要严查一下,刹刹他们的歪门邪道?”
村长斩钉截铁地说道:“不!我就是要让他们搞歪门邪道!”
会计纳闷了,问村长:“为什么?”
村长叹了一口气,说道:“亏你跟了我这么多年,怎么还是不开窍啊?你昨天说的四个问题,第一是食堂入不敷出,第二是职工又苦又累,第三是职工收入微薄,第四是村民吃饭贵、吃饭难。你说,这四个问题的原因是什么?”
会计不假思索地答道:“这个我知道!食堂入不敷出是因为村里给食堂的拨款少,又不允许食堂涨价;食堂职工又苦又累是因为村里给食堂的编制太少,食堂又没钱雇临时工;食堂职工收入微薄是因为村里给食堂定的工资标准太低;村民吃饭贵,是因为村里给食堂拨款少,食堂只能向村民收钱,村民跟以前的‘1分钱吃饱’比较,觉得现在吃饭贵;村民吃饭难,是因为村里给食堂的拨款和编制少,食堂建设和人员不足。”
村长说:“不错,你这个会计还算没白当。那你说,这四个问题,归根结底是谁的责任?”
会计张口刚想说,又给咽回去了。
村长厉声问道:“你说,是谁的责任?”
会计诚惶诚恐地看着村长,结结巴巴地答道:“是、是、是村委会的责任……”
村长冷笑了两声,干笑了两声,又大笑了两声,最后和颜悦色地对会计说:“你答对了。但是,我要让全村人都相信,这是食堂职工的责任!”
会计纳闷地问:“怎么让他们相信呢?”
村长说:“就是要让食堂搞歪门邪道!村委会表面上要打击回扣,但实际上要纵容甚至鼓励食堂从供应商手里拿回扣!”
村长接着讲道:“回扣可是个好东西。第一,回扣给食堂提供了资金来源,弥补了饭费价格过低和拨款不足造成的亏损,维持了食堂运转,掩盖了村里拨款不足的事实。第二,回扣可以用来给职工发工资奖金,安抚职工队伍,让他们忘记辛苦劳累,甘心做牛做马,卖命加班劳动。第三,按照村民们的一般观念,‘回扣’肯定是非正义的。村民们一听说食堂收了回扣,肯定会非常痛恨食堂,于是就把眼光全都盯在食堂职工身上,向他们发泄怨恨,就不会找咱们村委会的麻烦了;同时,村委会隔三差五地假装打击一下回扣,还会赢得村民的拥护和爱戴。这样,你昨天所说的四个问题就全都解决了,村委会还不用花一分钱!”
会计的嘴巴张得老大,半天才回过神来,赞叹道:“村长,您真是太高明了!这是一箭四雕啊!”
(六)发动村民斗食堂
晴空万里,阳光明媚。瓷器村办公大楼的第44层,4444房间,正在召开“瓷器村宣传工作动员大会”。会议由村长亲自主持,广播站站长、板报组组长、标语队队长、治保会主任等人参加了会议。
村长指示,在今后针对食堂的宣传报道中,要掌握几个“混淆”。
第一,要混淆“被动避害”和“主动趋利”。食堂如果没有供应商回扣、高档餐具的餐具费、高档饭菜的饭费等收入,只靠拨款和2元饭费,根本不可能维持运转。食堂的厨师、服务员如果不向顾客推荐高档餐具和高档饭菜,就拿不到工资,久之则被辞退。食堂不可能坐等倒闭,职工不可能坐等辞退,因此他们主要是在执行政策、被动避害、维持生计。但必须通过宣传教育,让村民们认为他们是在主动趋利、利用专业技术进行敛财致富,以激发村民们对他们的仇恨。
第二,要混淆“合理收入”和“暴利收入”。从行业的技术含量、难度、风险、工作量、付出代价等方面来衡量,食堂职工的合理收入水平应在1000元左右,但现在大多数职工即使加上回扣工资也只能拿到600元。必须通过宣传教育,抹杀这个行业的特殊性,用低学历、低技术、低难度、低风险、低劳动强度的职业的低微收入水平与之做比较,充分利用村民们“患不均”的心理,让村民们认为食堂职工拿600元就是暴利,以激发村民们对食堂职工的仇恨。
第三,要混淆“腐败领导”和“普通职工”。在食堂里,确实有些领导,依靠回扣拿到了每月数千元的暴利收入,但这部分人的比例在1%以下。实际上,99%的普通职工拿着偏低的工资,却在加班加点、受苦受累、牺牲奉献。必须通过宣传教育,让村民们认为,所有食堂职工都依靠回扣拿到了暴利收入,都富得流油,都有八套房、十辆车、一百个小老婆,以激发村民们对他们的仇恨。
第四,要混淆“正当的高价账单”和“不正当的高价账单”。有些高档饭菜本来就应该是高价,但在宣传报道时,必须淡化饭菜本身的档次和价值,而要强调账单上的高额数字,让村民们认为食堂在宰人,以激发村民们对食堂的仇恨。
村长最后总结道:食堂职工都是普通人,必然会带有普通人的各种缺点。你们要细心挖掘,将小事扩大化,将个案普遍化,将鸡毛蒜皮上纲上线,让村民们认为食堂职工都是十恶不赦的大贪污犯、大杀人犯、大渎职犯。顾客与食堂发生纠纷时,你们要大篇幅报道顾客的声音,尤其要用浓墨重彩渲染顾客多么悲惨、痛苦、无助,同时,要少报道或者不报道食堂的声音,不给食堂任何辩解的机会。要抢在事实查清之前,先行认定食堂职工一定有罪,先行认定顾客一定有冤。要通过“一言堂”式的报道,把食堂彻底批倒、斗臭。等到食堂的负面形象树立起来之后,他们的正当做法也会被怀疑为营私牟利,他们的好心好意也会被怀疑为驴肝肺,村民们将再也听不进他们的澄清辩解,他们一张嘴就会被村民们视为狡辩,他们中的大多数人加班加点、吃苦受累、牺牲奉献更是会被完全忽略。村民们会认为,“吃饭贵”“吃饭难”是食堂职工造成的!
从此以后,揭批食堂和食堂职工的新闻报道就没有停歇过,每隔一两年还会掀起一次高潮。
(七)两千元的馒头
2008年的某一天,村民张三到食堂吃馒头,咬了一口,就抱怨道:“一点味都没有!来个水煮鱼!”服务员端上水煮鱼,张三吃了一口,又说道:“太辣了,没法吃!拿菜谱来!”服务员拿来菜谱,张三点了一只1200元的龙虾和一瓶1000元的茅台。酒足饭饱之后,张三叫服务员结帐。服务员拿来账单,一共是2235元。张三跳了起来:“什么?这么贵?你们想钱想疯了?”
第二天,瓷器村村头的黑板报上登出了一条新闻,标题用醒目的特大号黑体字写道:“吃个馒头竟花2200元”。正文里说:“村民张某,来到食堂,仅仅是想吃个馒头。最后结帐的时候,他却要面对2200多元的天价账单!当张某质询食堂收费的时候,食堂经理竟然理直气壮地说,收费合理,计费无误!”看了这条新闻之后,村民们都气愤无比,异口同声地指责食堂黑心宰人。
(八)吃饭饿死
2009年的一天,村民李四在食堂里吃饭,吃着吃着,忽然想起了前几天跟邻居因宅基地打架的事。他越想越气,竟然气得心脏病发作,倒地身亡。李四的老婆孩子、三姑六舅、街坊邻居听说李四死在了食堂,赶忙扛着锄头锹镐,跑到食堂,让食堂赔钱。他们说:“在你们食堂吃饭时死了,所以就是被你们给活活饿死的!是你们没有尽到救饥扶饿的义务!”
瓷器村板报组在第一时间赶到现场,采访了李四的家属,连夜赶写了一篇催人泪下的板报文章。文章说:“李某,一个身板硬朗的汉子,谈笑风生地走着进了食堂,一个小时后,却身躯冰冷地蒙着白被单,被抬了出来。他只是想来吃一碗白米饭,他的老婆孩子还在家里等着他。他的儿子明天就要满6周岁了,李某早就答应儿子,要在家里陪他过6周岁生日,要送给他一本漫画书作礼物。然而,谁能想到,仅仅一顿饭的功夫,父亲与儿子,阴阳两隔。刚买来的漫画书还在李某的衣兜里,还带着他的体温,但他再也不能亲手送给儿子了。他还有个12岁的女儿,正在上小学。李某是家里唯一的劳动力,他死后,谁来负担女儿的学费?恐怕女儿只能辍学,去城里打工,用她那双稚嫩的小手去赚钱养家……”最后,文章义正词严地说道:“食堂,本来是救饥扶饿的神圣殿堂,现在却变成了要命的鬼门关,把顾客活活饿死。厨师的道德何在?服务员的良心何在?呜呼哀哉!呀买代!”
板报发表几个小时后,黑板周围的墙面上就写满了村民们义愤填膺的跟帖。村民们说:“把厨师捆起来,也让他活活饿死!”“把服务员千刀万剐,以告慰冤死的顾客!”“所谓食堂,就是榨干你的钱再把你活活饿死的地方!”
(九)天价芦笋
2010年初,村广播站的记者小刘为了搜集新闻素材,开始调查食堂饭菜的原料价格。终于,在一个偏僻的深山林区,他发现农民出售鲜芦笋的价格只要0.1元一斤,而一盘烧芦笋在瓷器村食堂里却要卖到10元。他敏感地意识到,这可能是个绝好的新闻素材!经过调查,他发现,农民以0.1元的价格把芦笋出售给本村蔬菜商,蔬菜商以0.2元的价格出售给乡蔬菜站,蔬菜站以0.4元的价格出售给蔬菜商贸公司,蔬菜商贸公司以0.8元的价格发往各地的蔬菜商贸公司;食堂本地的商贸公司以0.8元的价格购进后,以1.6元的价格出售给蔬菜批发站,蔬菜批发站以3.2元的价格出售给食堂;食堂制作烧芦笋这道菜时,还用到了肉和蘑菇,除去肉和蘑菇之后,芦笋折合6.4元。
看着这些数据,小刘有些失望,因为每个环节的毛利率都是50%,食堂环节并不比其他环节的利润更大。而且,食堂还提供了高技术含量的烹饪和配套服务,烧芦笋的利润还要用于补贴廉价饭菜的亏损。小刘又了解到,一个蔬菜推销员,收入相当于一个博士学历的厨师的几倍、十几倍,这也从侧面说明了,食堂应该不是获利最多的环节。最后他还发现,食堂大多数饭菜的加价率没有芦笋这么高,芦笋只是少数特例。小刘不禁发起愁来,这稿子该怎么写呢?广播站站长听了小刘的汇报之后,哈哈大笑:“这很容易写嘛!来,我教你。”
几天以后,题为《天价芦笋,百倍利润》的文章在村广播站播出了:“一斤芦笋的出厂价只要1角钱,但食堂卖给村民的价格却是100角!芦笋的价格暴涨了100倍!这天价的芦笋,简直比黄金还要暴利,比贩毒还要暴利啊!看到如此确凿的铁证,我们终于知道‘吃饭贵’的原因是什么了!食堂本是公益机构,应以‘救饥扶饿’为天职,但如今却成了厨师、服务员、洗菜工们敛财致富的暴利机构,吃饭焉能不贵!”
这正义的声音,从村广播站的大喇叭里播出来,传到瓷器村的家家户户。村民们听到这“百倍利润”的芦笋,气得肺都要炸了,恨不能立刻把食堂砸了,把厨师、服务员、洗菜工们碎尸万段。
(十)女工喝水330公斤
2011年,为了让村民们“明白消费”,村委会规定,食堂必须给顾客打印“收费明细”,要细到每种原料、每项服务。比如说,洗菜所用的水,不能直接摊到菜价中,而必须单独列在“水费”一栏中。菠菜、油菜等绿叶蔬菜,按村委会规定,需要多次浸泡清洗,以便除去农药、化肥,因此用的水比较多,平均每盘菜要用5升水。
村里有个女工,在食堂吃了一个月的饭,每天都要点两盘炒菠菜,因此每天都会用10升左右的洗菜水。再加上炒菜做饭过程中用到的水,每天的“收费明细”上总共会列出11升水。一个月下来,就是330升。
村板报组的组长听说了这件事,赶忙责令板报员小张写一篇文章,报道一下。
小张犯了难,对组长说:“每天用11升水,其中10升是洗菜的 ,很正常的嘛,有什么可报道的?”
组长启发道:“洗菜用10升水很正常,但如果喝10升水呢?还正常吗?每天总共11升水,听起来不多,但一个月的加起来就是330升,就是330公斤!听起来多不多?一个女工的肚子里能装下330公斤水吗?”
小张听完之后,豁然开朗,赶忙跑回去奋笔疾书。不多时,一篇义正词严、文采飞扬的文章诞生了。村头板报刊载了这篇文章,标题叫做《女工在食堂“被喝水”330公斤》。文章写道:某女工,仅仅是想吃一盘炒菠菜,但在最后结帐但时候,却看到收费明细清单上赫然写着“自来水330公斤”!一个女工的肚子里能装下330公斤自来水吗?食堂的乱收费已经到了不顾常识、不知廉耻的地步!
正巧,村里的“老大妈合唱团”正在村头排练红歌。团长张大妈看到板报标题后,都没看正文,就把嘴一撇,评论道:“不用问,肯定是食堂乱收费!”旁边的李大妈、刘大妈、赵大妈、王大妈纷纷附和:“对!肯定是乱收费!”
孙大爷、钱大爷遛早,路过板报墙,看了板报之后,用拐棍指着食堂方向,气呼呼地说道:“食堂太不象话了!人怎么能喝下330公斤自来水?拿我们当傻子呢?我们的眼光可是雪亮的!”
(十一)结局
村委会的大楼依然矗立着,村干部的生活依然滋润着。村民们依然自费掏钱吃饭,怨气冲天。食堂职工依然加班加点、累死累活、忍气挨骂。厨艺比较好的厨师,大都辞职改行,或者去别的村子当厨师了。年轻人看到食堂里的工作状况和厨师的社会地位,也都不愿意学厨师专业。食堂里剩下的职工,因为待遇差、身体疲劳、心情憋闷,工作积极性也不高。因此,食堂的服务水平越来越差,饭菜越来越难吃。由于工作太繁忙、太劳累,后厨和前堂都经常出错,比如把盐当成白糖、把醋当成酱油、把菜上错桌、给顾客算错账。村民们当然因此更加痛恨食堂的厨师和服务员们。
村长的儿子在阿麦瑞克村读书毕业了,把户口留在了阿麦瑞克村。村长和媳妇带着金银细软,投奔儿子去了。跟村长有关系的人,诸如村长的小舅子、表弟、外甥,村长老婆的“相好的”,以及村长老婆的“相好的”的“相好的”,都在村里的历次“民心工程”中发了大财,盖起了别墅,开上了豪车。
村民们依然觉得“吃饭难”“吃饭贵”。每次觉得心里堵得慌的时候,就跑到村头的板报墙前面,虔诚地拜读每天晚上七点准时更新的板报。读完板报,顿时觉得瓷器村是世界上最幸福的村子,自己是世界上最幸福的村民。当然,村民们依然不能忘记那个可恨的食堂。在茶余饭后,村民们经常会骂上几句:“他娘的!砸烂这个黑心食堂!打死这群黑心厨师!”
歪脖桃树
私在p大最常去的食堂门前有两棵山桃,上面挂了牌子,写着“物候监测对照”。起初私没有太在意那到底是什么树,只记得夏天入学之后长满了叶子,后来叶子掉光了,也就没再关注它。前一阵子早上去吃饭时远远地看到树上有淡粉色,走近一看,发现已经冒出了骨朵。最近几天颜色愈发鲜艳了,只是花还没开。
于是乎想起中学时校门口的那颗歪脖桃树。也是先开花后长叶,但似乎花开得更早一些,早到似乎从气温上根本感觉不到变化,而往往是从那树上首先感知到春天的到来。等春天真的“到来”时——当然,帝都的“春天”其实很难称之为春天,应该说冬天真的过去更合适——那桃树已经开始落英缤纷了,此后便长出在私印象中略有卷曲的叶子。
虽然这棵歪脖桃树花期其实很短,叶子也不甚喜人,私却以为这是整个学校最好的一棵树。在早上顶着睡眠不足的不适感奔跑在进教室的路上时,大抵想到的都是生活的苦闷。此时突然有一棵桃树映入眼帘,对私来说就像突然走进了桃花源一样欣喜。于是乎进教室前好歹对这新的一天抱了希望。
后来私初中即将毕业,就想将其照下来以兹留念,然而终究因为种种原因错过了花期没有照成。幸运(或是不幸)的是高中时在原来学校的分校上学,还要经常过去上课,于是又有了三年和其相会的机会,也终于在最后的时候用古老的卡片机(其实一点都不卡片)照了照片。回去用显示器一看,曝光时间太长,效果并不很好。后来这照片似乎也遗失在了硬盘中或是存储卡中,总之现在已经找不到了。后来私似乎也把它忘掉了,前几日看到食堂门前的桃树,才想起了这段事情。
写到此处私也不知该如何将这文章继续下去,像那些私很“鄙视”的文学家一样写一个可以作为中考高考题目的结尾。其实奠定语文高考这种模式的人才是真正可耻的人,文学家只是“想把自己的文章用这样的方法结尾”,这又有什么错呢?当初私想到写这篇文章,不过就是在看到食堂门前那两颗桃树时突然有了“我想把这件事记录下来”的冲动,仅此而已。
仅此而已。
3月25日追记:
其实帝都这地方还是比较盛产桃花的。往郊区走的话会看到街边有很多观赏的桃花。不过多是些枝杈被修剪得很整齐,并排垒着大朵大朵好似假花的品种。像食堂门前的那两棵还算自然的桃树私并没有见过几个——它们旁边的那几棵现在还光秃秃的树貌似也因为可能伤害学生都被或多或少地截肢了,它们还好,藏在深处,暂时似乎没有遭殃——,而像中学门口那棵那样恣意伸展,只自顾自冒出点点繁星,清新脱俗的仙品,私来到地球许多年,也只见到过那独一份。
DFS解迷宫的一些想法
写在前面:私不是程序员,也不是学信科的,也只是最近开始没事的时候翻翻C语言的书。因此阁下很可能会觉得下文所述的想法很原始或是阁下早已用过了。私在此只是记录一下自己的想法。
现阶段私学C语言用的书是宋劲杉的《Linux C编程一站式学习》,里面讲深度优先搜索的时候讲的是个走迷宫问题,用1表示墙,0表示路,从左上走到右下。代码如下:
#include <stdio.h> #define MAX_ROW 5 #define MAX_COL 5 struct point { int row, col; } stack[512]; int top = 0; void push(struct point p) { stack[top++] = p; } struct point pop(void) { return stack[--top]; } int is_empty(void) { return top == 0; } int maze[MAX_ROW][MAX_COL] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0, }; void print_maze(void) { int i, j; for (i = 0; i < MAX_ROW; i++) { for (j = 0; j < MAX_COL; j++) printf("%d ", maze[i][j]); putchar('n'); } printf("*********n"); } struct point predecessor[MAX_ROW][MAX_COL] = { {{-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}}, {{-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}}, {{-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}}, {{-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}}, {{-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}, {-1,-1}}, }; void visit(int row, int col, struct point pre) { struct point visit_point = { row, col }; maze[row][col] = 2; predecessor[row][col] = pre; push(visit_point); } int main(void) { struct point p = { 0, 0 }; maze[p.row][p.col] = 2; push(p); while (!is_empty()) { p = pop(); if (p.row == MAX_ROW - 1 /* goal */ && p.col == MAX_COL - 1) break; if (p.col+1 < MAX_COL /* right */ && maze[p.row][p.col+1] == 0) visit(p.row, p.col+1, p); if (p.row+1 < MAX_ROW /* down */ && maze[p.row+1][p.col] == 0) visit(p.row+1, p.col, p); if (p.col-1 >= 0 /* left */ && maze[p.row][p.col-1] == 0) visit(p.row, p.col-1, p); if (p.row-1 >= 0 /* up */ && maze[p.row-1][p.col] == 0) visit(p.row-1, p.col, p); print_maze(); } if (p.row == MAX_ROW - 1 && p.col == MAX_COL - 1) { printf("(%d, %d)n", p.row, p.col); while (predecessor[p.row][p.col].row != -1) { p = predecessor[p.row][p.col]; printf("(%d, %d)n", p.row, p.col); } } else printf("No path!n"); return 0; }
大概意思就是每次弹出一个栈,找到周围所有的合法步骤然后把它们栈压进栈区,下一轮时再弹出最后压入的栈,如果走入死路就再次弹栈,找另外一条可能路线,直到找到迷宫的解。如果栈空了就说明无路可走,打出“No path !”。
但是找到解之后就比较麻烦。如何输出路径呢?这段代码使用的方法是建立一个predecessor数组,用来表示每个点的前趋,然后从最后一个点顺藤摸瓜往前找,逐渐打印出来。但这个predecessor数组占用的空间很大,且只能从后向前找,不便于找到其中的某个特定步骤。怎么解决这一问题呢?作者宋劲杉出了一道思考题,还问读者能够想出几种方法,可见方法是不止一种的。
在正确理解这段代码之前,私一直认为栈区中至少应该存有正确路径走过的所有的点,后来才明白这个想法是有问题的。由于每个循环开始时栈顶已经弹出了,此时如果再在这一点继续向深处找,新压入的栈就会把刚才弹出的栈顶覆盖掉,这样找到最后整个栈中在极端情况下(例如整个迷宫都没有岔路)可能一个点也不剩。此外一个循环内是4个方向均会搜索,所以如果有岔路,就会压入多个点,但弹出时只会弹出一个点,所以栈中会残留错误道路的点。
怎么修改呢?其实很容易。原来每个循环会从栈顶弹出一个栈,其实找到路径之后,完全可以把这一栈再压回去,比如这样:
int main(void) { struct point p = { 0, 0 }; maze[p.row][p.col] = 2; push(p); while (!is_empty()) { p = pop(); if (p.row == MAX_ROW - 1 /* goal */ && p.col == MAX_COL - 1) break; if (p.col+1 < MAX_COL /* right */ && maze[p.row][p.col+1] == 0) { top++; visit(p.row, p.col+1, p); } else if (p.row+1 < MAX_ROW /* down */ && maze[p.row+1][p.col] == 0) { top++; visit(p.row+1, p.col, p); } else if (p.col-1 >= 0 /* left */ && maze[p.row][p.col-1] == 0) { top++; visit(p.row, p.col-1, p); } else if (p.row-1 >= 0 /* up */ && maze[p.row-1][p.col] == 0) { top++; visit(p.row-1, p.col, p); } print_maze(); } int i; if (!is_empty()) { for (i=0; i<top; i++) printf("(%d, %d)n", stack[i]); } else printf("No path.n"); return 0; }
如果找到了可用的路,由于有了top++,相当于仅仅是读取到栈顶的数据(而栈没有弹出),这样在搜索路径压栈的时候就不会把原来的栈顶覆盖掉,从而保证了栈中存在所有正确路径上的点。解决残留错误道路的点的问题也很容易,只需让一个循环内如果搜索到了一条可以深入的路径就停止(用else实现),否则再搜索下一条路径。如果找到死路栈会逐个弹出,直到岔路口,所以不用担心找不到正解。到最后如果迷宫存在解的话,栈中所保存的就是正确的路径。由于例子中的“栈”是一个数组(当然您可能会反驳说这个例子中stack[]并不是真正意义上的栈,“栈”在理论上应该只能访问顶端的元素,但那只是个形式问题),于是可以很容易地访问任何一步的点,输出的时候正着打反着打跳着打均可,程序中所有和predecessor有关的内容便可以删去了。
但是事实上这个办法在程序效率上是劣化而不是优化,首先虽然不需要predecessor了,但是栈空间消耗变得更大。原本栈空间的消耗和分岔路的多少有关,现在则是和路径的长度有关而与有多少岔路无关。那么栈空间的最小值应该是多大呢?私还没考虑好,但分配为整个迷宫的大小肯定是足够的。还有个问题是原来的方式由于覆盖了之前走过的路径,只保留岔路上其他方向的点,如果找到死路,弹栈后会直接跳到另外一个可能的岔路继续搜索,而修改后的方法如果找到死路,必须沿原路一步步跳回岔路口。再加上top++所用的时间,程序效率比原来要低,而且岔路越多越深入,效率上的差距越明显。
前几天看到个好玩的推,说“情人节我玩一天连连看,消灭一对是一对”。私寻思既然学了DFS和BFS,不如自己也写个文本连连看玩玩?再说吧。
另:为嘛我Tag里写C,wordpress会给自动补全成C++?
合理设置KDE触控板,减少延迟
果然如CS Slayer仁兄所说,ATi商业驱动——催化剂10.10版使得2D效能有所提高,现在在我PC(显卡Mobility HD 5650)上窗口缩放、kick-off弹出等都流畅了很多,除了模糊还不敢随便开以外其它特效都状态良好。不过有一点让我不悦的是在KDE下似乎做什么都慢一排,按一个按钮貌似总要“卡”一下才能生效,来得非常不顺畅。以前一直以为是kwin或者催化剂驱动的关系,直到今天才发现原来另有原因。
故事是这样的:
我的笔电是Ideapad Y460,上面有触控板,所以也就好久没接鼠标了。由于今天做某个测试,而且不得不用windows,笔电上的触控板就不是那么得心应手了,于是乎接了鼠标。做完测试之后换到Linux下面玩,突然觉得所有的操作都似乎快了不少。最近又没有更新什么重要的东西,也没调什么设置,怎么会这样呢?最终想到了鼠标头上。鼠标搁一边,重新用触控板,发现果然是触控板的延迟。
打开以前没怎么关注过的触控板选项,发现居然都还是英文的,而且没有帮助文件。于是乎连试带蒙,蒙出了一些设置的意义。
Max Tap Move:能够识别为拖曳的两次触碰最小距离。如果多次触碰距离太远就不会被识别为拖曳。
Single Tap Timeout:这个是最最重要的……单触碰超时。所有的单击都只有经过这段设置的时间之后(以认定不是双击、拖曳等)才会生效。
Click Time: 单击持续时间。也就是鼠标从“按下”到“弹起”的间隔时间。
Double Tap Time:可能是双击的持续时间,没有详细验证。
因此……导致按键有延迟的罪魁祸首就是Single Tap Timeout和Click Time。 如果想要最小化延迟,Single Tap Timeout应该设置到0,Click Time设置成1。不过如果设置得太小就不会识别出鼠标拖曳,所以对于喜欢用两次触碰代替鼠标拖曳的用户会有不便。我的建议是有经验的用户将其设置成75左右(已经相当快了),新手可以设置到100-125,总之在不影响使用的情况下越小越好。Click Time就无所谓了,一般设个个位数也可以正常使用。
设置了之后果然痛快了很多啊,非常舒畅。