升级到Snow Leopard

昨天升级到了Snow Leopard 10A432版,这一版竟然给我的硬盘节省出了近8个G的空间。据说这一版是全64位系统,但是uname的时候并不是x86_64。看了Note,要使用64位系统就要在启动的时候按住6和4,这样开机就是64位了。还有另一个办法是使用nvrom(8)来改NVRAM的变量。 % sudo nvram boot-args=”set arch=x86_64″ 要回到32位,可以在启动的时候按3和2,也可以把boot-args给删了。 % sudo nvram -d boot-args 开机之后在System Profiler里看软件部分,除添加打印机X11之类的不是64位,其他大量的苹果程序都已经是64位了。 这一次中文输入法真的是有大提升,太赞了。拼音输入太好了,五笔的改进好象没有。加入了手写输入,识别率还是挺高的,就是刚一开始很不适应。 输入法的切换上,恢复了Tiger时期一个功能—-不同程序使用不同的输入法,Command+空格的切换也变的稍复杂了一些,以前只是在当前输入法和前一个输入法之间进行切换,现在变成了可对所有输入法进行切换方法,这样的话与Command+Option+空格的作用就有相似之处了(不一样),混乱!Snow Leopard就是要让你出手利索,拖泥带水的必然会换错输入法。 人类使用的东西无非都是为了提高效率,区别在于是优雅的提高还是恶心人提高。Snow Leopard确实比Leopard更轻更快!

人和机制

上卫生间洗手,边上有一个自动出洗手液的机器。机器的下方常常有洗手液滴下来,滴在台子上,有些浪费。 公司最早使用的是手压式容器,每用一段时间就坏了,洗手液滴了一台子。现在自动了,但有人把手伸过去后,接了一点洗手液后就开始洗手了,剩下的洗水液自然就滴到台子上了。 把这个小小的洗手液容器,看成是一种机制。总有些人不按机制行事,从而导致机制的失效。换个角度来想,如果洗手液容器改进一下,在下面设计一个接收盒,如果有从上面滴下来的洗手液就自动回收到容器里,是否可以阻止这种浪费呢? 现实中人与机制的问题远比这个洗手液的问题,复杂的多。面对很多事情,到底是机制的问题,还是人的问题。很多情况下是无奈。

libtool15移到了libtool22

安装devel/glib20的时候没有出错,但是与其依赖的包却找不到,而且glib-2.0.so也确实没有安装。看了一下devel/glib20/Makefile的diff,只有libtool的版本发生了变化。查了下/usr/ports/UPDATING,在2009/08/02的时候mezz把devel/libtool15和devel/libltdl15移到了devel/libtool22和devel/libltdl22,所以是收衣服的时候了。

Mac的一般用户怎么改Hosts文件

有个同事不是技术人员,但是使用Mac系统。这类用户比较稀少,但是她遇到了一个很严重的问题就是怎么改hosts文件。以前在Windows下的时候用用notepad %systemroot%\system32\drivers\etc\hosts也是可以的。可这Mac下的Finder根本就找不到这个文件。 最后请出了AppleScript这样的神器,写下了下面这一段。 do shell script “/Applications/TextEdit.app/Contents/MacOS/TextEdit /etc/hosts” with administrator privileges 把拷贝到Applications->AppleScript->Script Editor.app里,运行一下,输入密码后会在一个TextEdit.app中打开/etc/hosts文件,修改完毕后保存并退出TextEdit.app,脚本结束。 也可以使用Script Editor.app把上面这句Compile成一个App,比如叫EditHosts,放在Applications目录下。

Week number of year in python

早晨有同事问为什么Python里的datetime模块使用strftime(“%W”)取出来的Week number不对呢,好象差一周。使用date “+%W”得出的结果与Python的结果是一致的。 造成这种差异的原因是对于周数的定义不太一致,通常使用的周数指的是ISO 8601中定义的。要输出这个ISO格式的周数应当使用strftime(“%V”),%U、%W和%V的区别在strftime(3)说的明白。虽然Python在strftime文档里没有说明可以使用%V格式化,但是在2.3、2.4、2.5和2.6里测试都可以正常的输出ISO的周数。Python提供的另外一种方法是isocalendar(),这个方法返回一个tuple(Year, WeekOfYear, DayOfWeek)。

MB990的CPU型号

昨天用Plex看电影的时候发现MB990的CPU不是之前确认的P8400而是P7550。这就奇怪了,满世界都在说MB990的CPU是P8400,怎么成了P7550了,去Intel的网站上也是查不到P7550的信息。开始怀疑这个世界,是不是我的机器有问题,查来查去查出来了,这两个型号MB990都用了。iFixit的拆机照也是P7550。 即然Apple用了这两种型号,那就不用怀疑世界了,但是这两个型号有什么差别呢?国民待遇有差?继续查,有人说p7550不支持VT,后来呢在MacX.cn找到了一个贴子,也查了贴子里的那些链接。看来这p7xxx系列应该是Intel专门给Apple的OEM货,参数上呢应该和p8400相差无几,而且也支持VT。Apple为什么会用两个型号的CPU在同一款机型上呢?费解。从这篇Benchmark来看,p7550的性能还要比p8400的好一些。 看来买机器要做的功课还很是很多的,像下面这个方法就可以查的出CPU的型号和特性列表。 % sysctl -a machdep.cpu.brand_string machdep.cpu.brand_string: Intel(R) Core(TM)2 Duo CPU P7550 @ 2.26GHz % sysctl -a machdep.cpu.features machdep.cpu.features: FPU VME DE PSE TSC MSR PAE MCE CX8 APIC SEP MTRR PGE MCA CMOV PAT PSE36 CLFSH DS ACPI MMX FXSR SSE SSE2 SS HTT TM SSE3 MON DSCPL VMX EST TM2 SSSE3 CX16…