星期日, 四月 20, 2008

Windows下的免费软件

 

开发系统:

Cygwin

Windows下的UNIX环境模拟

MinGW

Windows下的gcc port,原生,包含msys小工具集

Dev-cpp

Windows下的c/c++IDE,使用MinGW

Eclipse

集成开发环境,主要是Java,插件支持众多语言

Netbeans

SUN的集成开发环境,支持语言不如Eclipse

Visual Studio Express

MS的免费编译器,不支持MFC,可以用.Net

Qt

图形库,使用MinGW,原生

JAVA

本为跨平台而生

KDE for Windows

KDEWindows port,为KDE程序提供支持

动态语言:

Python

脚本语言,有众多的模块,可能用到的如下:
enthought_python ffmpeg matplotlib MayaVi numpy PIL pyfits PythonMagick PyX scipy VPython VTK wxPython

Perl

ActivePerl,有庞大的CTAN

Tcl/TK

命令行、图形交互界面的简单实现

科学软件:

Octave

Matlab的开源版本,语法几乎兼容

SciLab

类似Matlab的语言,语法接近,并不完全兼容

Maxima

Lisp语言写的,计算机符号计算的鼻祖,包含wxMaximaXMaxima图形前端

QtiPlot

相当于简化版开源Origin,需要自己编译,MinGW+QT

GNUPlot

命令行模式的Plot工具

R

命令行统计软件

Visit

三维可视化

文档编辑:

Texlive

Tex/latex实现,xelatex/xetex实现系统字体支持

OpenOffice

典型的Office替代软件,期待3.0的表现,希望OXML的开放能促成兼容性的提高

Vim

viwindows portvi流的最爱

NtEmacs

emacswindows port

Npp

台湾人写的一个开源编辑器,适于用other编译器的人

Pspad

长的很像ultraedit

BullZip
FreePrimo
PDFCreator

PDF虚拟打印机,可以从任何程序输出PDF

LyX

Tex辅助编辑器

Kile

Tex辅助编辑器,需要KDE支持

图形图像:

Picasa

Google的免费图片查看器,一定得图片编辑能力

Live Photo Gallery

Vista的人就不用看了

Paint.Net

号称免费的PS,当然不及PS

Gimp

Linux下著名的PS替代,当然也有Windows版本

VirtualDub

开源视频编辑器,很强大

系统软件:

CDBurnerXP

刻录软件

7zip

开源的压缩软件,也有自己的压缩算法

StarDict

开源辞典

antivir

俗称小红伞,个人版免费,杀毒,就是更新的时候有专业版广告

Avast

最早支持vista的一批杀毒软件,Home免费

DaemonTools

Lite版本免费,虚拟光驱软件

FileZilla

开源的ftp客户端和服务端,不过似乎只支持Unicode

VirtualBox

开源的虚拟机,现隶属于SUN

Vmware player
Vmware Server

虚拟机,这两个版本免费

TightVNC

远程桌面

星期三, 四月 16, 2008

编译Win版本Qtiplot

以前我有篇叙述如何编译Linux版本的Qtiplot的文章,现在介绍一下Win下面编译的过程,仅供参考,Linux下已经直接提供了可运行得免费版本了。需要注意,系统应安装好了Qt和MinGW,并且所有操作在Qt Command Prompt下执行(环境变量包含Qt和MinGW的bin目录)。所有编译的库为静态库版本。

  1. 下载qtiplot qwtplot3d gsl muparser源码包
  2. 解压缩所有文件夹,把库文件都放到qtiplot的3rdparty目录下,并去掉版本号,加上自带版本,目录如下:
    gsl、liborigin、muparser、qwt、qwtplot3d、zlib123
  3. 编译Qwt:自带的Qwt已经把qwtconfig.pri中的CONFIG += QwtDll注释了,所以不需要修改,直接在qtw目录执行qmake和make命令。如果是自己下载的,需要注释这么一句,编译成静态;
    同时设置CONFIG           += release,表明编译为release版本
  4. 编译qwtplot3d:注释掉qwtplot3d.pro中的win32:TEMPLATE    = vclib,因为我们使用的是MinGW,如果使用msvc就需要注释了;
    CONFIG           += qt warn_on opengl thread zlib debug,把最后一个参数debug改为release,编译release版本,debug版本有37M,release才600K不到;
    按照linux下面的编译说明,需要编译为静态的,但是切记在win下不需要,否则会出现opengl库未定义的情况,为此我郁闷了好久,无意中弄好的。然后仍然是qmake和make;
  5. 编译muparser:进入muparser\build目录,运行mingw32-make -fmakefile.mingw,默认编译静态release版本库,需要更好则修改makefile.mingw;
  6. 编译gsl:首先要保证安装了msys和msysDTK,这是MinGW平台的工具集,主要提供bash及开发所需要的工具。然后使用这个环境编译gsl,./configure --prefix=存放目录,make,因为默认同时编译静态库和动态库,所以不需要更改什么,直接把存放目录命名为gsl放到3rdparty下面就可以了,目录里面需要包括include和lib文件夹;
  7. 下载zlib123预编译版本,放到原有的zlib123目录下,minigzip.c和zdll.lib都需要有;
  8. 编辑qtiplot目录下的qtiplot.pro: 屏蔽SCRIPTING_LANGS += Python,取消Python语言支持,因为总是需要特定版本的Python和SIP才能用,暂时不需要这个功能。然后qmake,make

经过漫长的等待,就可以看到qtiplot.exe啦。运行需要把qwtplot3d.dll拷过来,当然还需要一大堆的Qt库,在自己机器上,就只要把Qt的bin目录加到PATH环境变量里面去。需要注意,Matlab2008也带有一个不同版本的Qt库,所以要把Qt库放到可能有Qt库的路径前面,要不然会出现找不到入口的错误。

然后……你就有一个origin的替代品了,如果用得好,可以考虑捐助一下,哈哈

星期六, 四月 12, 2008

Eclipse

莫名其妙的跟别人谈起来用Android平台做开发,然后就想着是不是自己也看看,虽然Android SDK早就下过了,但是还是只用过那个模拟器,都没看过SDK怎么玩的。索性上网找了开发环境,就是Eclipse加Android插件就可以了,既然如此,不如玩玩Eclipse。

Eclipse是IBM的开源IDE,有无数的插件,能支持n种开发语言,新的IDL7.0就是基于Eclipse的,所以也不算太陌生。相传,这是IBM为了在气势上压倒SUN,所以选择了Eclipse(日食),哈~~

下载了Eclipse 3.3.2 J2EE版,没有中文语言包(3.2.x倒是有很完善的,包括帮助,不过对于喜欢新版本的我来说,还是选择了新的)。在默认的Update站更新安装CDT支持C/C++语言,我很早就装过Cygwin,CDT可以使用Cygwin版本的gcc。然后是安装其他各种我需要的语言插件,安装还算简单,一般情况就是在Help->Software Updates->Find and Install->Search for new features to install,添加给出的升级地址,然后选择自动安装就可以,有点类似yum apt之类的东西,下面是我安装的一些插件:
Android       https://dl-ssl.google.com/android/eclipse/   Google手机OS开发环境
PDT           http://download.eclipse.org/tools/pdt/updates/   PHP开发
pydev        http://pydev.sf.net/updates/   Python集成开发环境
Texlipse      http://texlipse.sourceforge.net/  TeX/LaTeX支持
然后是Fortran,这个稍微有点麻烦,因为没有更新站点,先在http://www.eclipse.org/photran/download.php下载Photran Feature包,然后解压缩至eclipse下的随便一个目录,例如photran-4.0-beta3-incubation,然后在该目录下新建目录eclipse,把原先的两个目录features和plugins移动到eclipse目录里面,同时在eclipse的目录下新建空文件.eclipseextension(要到命令行下面),之后Help->Software Updates->Manage Configuration->Add an Extension Location,选择刚才的photran-4.0-beta3-incubation目录,然后会要求重启,这样就把Photran装好了。
QT。在http://trolltech.com/developer/downloads/qt/windows下载opensource版本的QT for Windows,在http://trolltech.com/developer/downloads/qt/eclipse-integration-download下载Qt Eclipse Integration。先要安装MinGW,因为Windows版本的QT使用的是MinGW gcc,然后安装QT,选择MinGW的时候会提示需要正确win32api.h,不用理会,是QT安装程序识别不出新版本的MinGW,装好之后记得把MinGW的bin目录添加到环境变量PATH中,这样再安装Qt Eclipse Integration,就不需要使用它的开始菜单中的Start Eclipse with MinGW了,因为这个总是会修改eclipse的工作目录到默认路径,很不爽。
顺便唠叨一句,cygwin和MinGW的不同,我在看了仅有的一些讨论,觉得,Cygwin是为了提供一个Unix模拟环境,MinGW是把gcc port到了windows;使用上来说,Cygwin的程序要带有cygwin1.dll,就跟DS9一样,但是MinGW使用的是MSVCRT,就不依赖自己的运行库,同时也是原生的Windows程序;目的上,要在Windows下开发Linux程序选择Cygwin,要在Windows下找个开源编译器写程序就还是MinGW。

Eclipse还有perl lua等脚本开发插件,也还可以将sqlite mysql oracle等数据库连接上去。总之,eclipse插件实在太多了,不过我可不想状态多以至于启动速度比VS2005还慢,不过eclipse有个好处,不需要安装,所以也可以选择安装多个版本的eclipse,冲突的可能少一点,启动速度快一点,牺牲一点硬盘空间。

星期四, 四月 10, 2008

Joomla 1.5 native

Joomla 1.5发布之后,很快就出了两个bugfix版本,现在已经到1.5.2了。新框架带来的麻烦就是插件需要重写,这是一个庞大的工程,但是就目前的状况来看,发展速度超过了当初的预期——很大一个原因就是开发者发现,力图让老的系统安全跑在legacy模式下比新开发一个还要麻烦。

Remository很早就出了原生的J1.5版本,因为legacy模式和原生模式的插件不能共存,所以还是需要找其他的原生插件,期望它们升级,当然也因为新的框架出现了很多新生的插件。CB,最近还处于1.2Beta,原因就是他们提早进入了原生1.5的环境,大概是beta4以后决定要原生的,所以还要等一段时间,不过应该不会太漫长。1.0下面用fireboard习惯了,觉得这个比整合论坛要好,如果不是要求做一个大型论坛的话,灵活性很强,也不会出现整合论坛的那些麻烦;不过现在似乎都没有什么动静更新到原生1.5的版本,Firemessage也是coming soon状态很久了。还有曾经用的zoom,连网站都关掉了,看样子是很困难了。

重新在joomla extension网站搜索了一番,把所有1.5 native的组件都看了一遍,倒是找到几个不错的东西:
Joomla Advanced Message,不错的站内信件系统,支持不错,那个messaging太过简陋了,忽略之;
JFusion,还在alpha,是个多平台整合工具,现在主要是各种论坛,但是其可扩展性说明还有很大的发展空间;
Joomfish到2.0Beta了,1.5的多语言环境有保障了;
Jootags,多少可以弥补一下只有双层目录的遗憾(想不明白到1.5了怎么还在用section+category的分类模式),tag也是google很喜欢的模式;
ChronoForms,生成表单,还不会用,理解上可以作为会议注册的工具;
expose,flash照片库,习惯了zoom,其实这个要更好一点,当然弹出全尺寸照片的时候要有lightbox的效果会更好;
JEvents,反正这类东西都差不多,一个日历,可以记事,没什么特别的,只是支持原生模式;
joobb,这个很有意思,高度修改和内嵌的Bulletin Board,基本实现了Fireboard的模式,只是外观啊什么的没有配套上来,也还只是测试版本,不好做production;
swmenufree,这个居然也很快更新了,虽然用的不多;
JACLplus,hack方法的权限管理,但是我还是希望Joomla能内置这个功能,毕竟hack出来的稳定性要差一点。

这些就是我草草测试了一下的组件,基本网站功能可以实现,现在还是差CB,Joobb和Fireboard都还是需要更新的。

星期日, 四月 06, 2008

IDL Volume Rendering效果

看了好多天,重新学习了一下IDL的对象图形系统。因为直接图形系统没有volume rendering能力,又不喜欢用ivolume或者xvolume这样的工具,不方便制作动画,所以还是选择了用IDLgrVolume来画图。数据是gracos模拟的结果,转换成体密度分布,上个效果图吧,好歹是几天的成果。

fin

星期三, 三月 26, 2008

IMAX

最近猛下了几部IMAX的影片,很大,下起来很慢,播放时间很短~~~不过很值,70mm的胶片也1500美元/8分钟呢
效果和内容都没得说,当然还是缺根DVI to HDMI线,打算自己去买根好了,便宜的一两百,贵的诸如Belkin之流,就不好说了,反正二手的好几千,更贵的就不看了;如果有IMAX影院的话,效果就……
Amazing.Caves,一直就很喜欢探洞,大概就是从凡尔纳的小说《地心游记》开始的吧,里面的生态系统让人着迷,太奇特了;不过我自己是没有机会也不敢去的,不过号称那个很适合做救生员的人是98磅,看来我也许有点潜质
Blue.Planet,场面宏大的介绍地球,跟NASA合作,把IMAX设备拿到太空去玩
Coralreef,要去海边就得去这样的地方,大堡礁、斐济、塔希提……
Australia,大概也是凡尔纳的小说《格兰特船长的儿女》,这个古老的曾经和南极连接的大陆,虽然生存环境不算好,但却有着古老而奇特的生态系统,很有趣
Antarctica,看看下个站建在南极是否合适
The Serengeti,东非三国的森林公园,原来只是很喜欢南非的克鲁格,还不知道东非这个呢,都不错
NATURES_JOURNEY这个不是IMAX系列,只有画面和音乐没有解说
还在下热带雨林、热带雨林昆虫、暴风、深海等几个,好慢啊~~

看了这些之后,突然觉得广角比长焦的震撼力要大得多。IMAX的纪录片,广角、鱼眼用的非常多,鱼眼那接近180度的视角,拍大场景太舒服了。原来一直比较喜欢长焦,可以反映细节但是表现力就显然不如广角,而且广角比长焦更不易得。看来35mm定焦微距之后我应该先上10-17的,可惜就是没有全幅K1D,170-500以后再说,哈哈

星期五, 三月 07, 2008

镜头搭配

想来总是这样,在有什么东西之前,无论怎么看也总是看不出什么来,直到拥有了用过了,才能逐渐体会出些东西来。电脑就是这样,买之前我是一点兴趣也没有,一点也不想看关于电脑的东西;买完之后很长一段时间,关于计算机的任何东西都看,然后大呼上当,买了TCL这么个垃圾,哈哈。

如DSLR之前,只用过胶片傻瓜,对相机几乎一无所知。上网看了半天,大多数集中在机身上,而且看评论很多。对比参数,却不知道如何取舍(有钱自然买好的,但是无奈囊中羞涩)。镜头就草草了选了套头+70-300。完全是配焦段,那个时候只用过小机器的我,显然对长焦很有兴趣,直接上了300,其实当时相同价位可以选择直接18-200。

用了一段时间发觉,最常用的焦段被分割成两段,其实外拍很不爽,总要换来换去,非常频繁。有时候懒就干脆不拍了。而70-300号称的Macro,用了段时间,觉得还不如套头方便实在。要增加镜头也不知道如何加。

如果本着焦段和循序渐进的角度来看,现在我可能会换一种方式:

第一,Sigma 18-200mm F3.5-F6.3 DC或者Pentax DA 18-250mm F3.5-6.3 ED,¥2250/¥3750。前者比较狗,后者稍微好一点,差价也还有不少,完全看要求。这是第一支,就是一镜走天下的,练练手,画质要求不算太高的时候拍拍,旅游的时候挂机,都还不错,长短兼顾,200手持一般无问题,就这一支也不会出现太大的焦段差距,可以用好一段时间。

第二,Pentax DA 35mm F2.8 Macro Limited,¥3380。这个头素质不错,标微。平时的人像,风景,静物都可以,标头用处还是很大的;然后1:1的微距也很好,拍花花草草小虫子什么的。这个头可是号称专为“创作杰出的视觉效果”而设计的。

第三,等到很有必要或者有money的时候,可以上个Sigma APO 170-500mm F5-6.3 DG打鸟/¥4900。500mm的长焦在这个价位已经很猛了,特殊需求的时候才带。500mm本来手持就困难,肯定是随脚架走,特殊场合才用,也不会带来太多的麻烦。

第四,熟练了摄影之后,也许会考虑广角乃至fisheye,Pentax DA Fish-Eye 10-17mm F3.5-4.5 ED或者Sigma 10-20mm F4-5.6 EX DC HSM,¥3700/¥3750。倾向于前者,超广角也是一种创作风格10-17刚好和18-200衔接。拍摄大市场星空和空旷地带很有味道,属于锦上添花型的镜头。当然如果没有需求,弄个0.45X的广角镜偶尔玩玩也不错,才200块不到。

而且到了第三步的时候已经比较熟悉的话,可以考虑淘二手头,会便宜不少,相对划算。一般有前两个就差不多了~~所有考虑基于Pentax机身假设,1.5的系数加上机身防抖,有些头如果镜头防抖就该翻番了,哈哈。Macro之后可以考虑上闪光灯,环闪有就更好。

星期四, 三月 06, 2008

随评

堕落了大半天,啥事没干,就一直在翻网页,然后想着随便写了点~

拍微距,突然发现那个70-300还不如套头好使,又P家发布了Limited的第一个微距,遂上网看了看。

Pentax DA 35mm F2.8 Macro Limited ¥3380

这个头倒真挺好的,APS-C上,可以当标头;1:1的微距能力,0.13m的对焦距离,微距也很不错。也是P家Limited级别的头,就是小贵,而且F2.8也不算出彩。Tokina有一个跟这个很接近的,可是没有PK口,究其原因,原来3月份Hoya与Pentax合并了,而Tokina就是Hoya下属的一个厂(Kenko也是),自然Tokina就不会有PK口了。还有人幻想Kenko的UV都是SMC的呢。不过这样一来,Hoya Pentax HD就是相机、镜头(双煞)、附镜俱全了。

Sigma 24mm F1.8 EX DG Aspherical Macro ¥4000
Sigma 24mm F1.8 EX Aspherical DG DF ¥2200

这两个似乎看参数比较接近,带不带Macro都是1:2.7,也不知道差距多大,价格倒是差不少。不过看似乎很诱人。

Sigma 28mm F1.8 EX Aspherical DG DF Macro ¥1800

很实在的样子,倍率1:2.9,也不好算很Macro吧。

Sigma 30mm F1.4 EX DC HSM ¥3100

很好的标头,不过没有Macro能力。

Sigma 50mm F2.8 EX Macro ¥1920

不错,除了P家那个我就看上这个了,便宜是王道,不过50mm太长了,不好做标头,又不是全幅。话说全幅配这个……

APS-C要上广角还是有难度的,我看还是算了。看看P家35上市表现吧,最好是再降一些。顺便一说,K20D用了三星的CMOS,也可以大画幅了,我还指望有全幅的K1D呢,结果小道消息说,也许Pentax会重拾645D的工作,因为现在有合作伙伴的CMOS了,要形成中画幅+APS-C,一举压制主流的全幅+APS-C——可怜人家Nikon刚上全幅呢。从现在P出的头来看,都是为APS-C设计的,完全不考虑可能存在的全幅,大概也还真有可能的。不过120还是可望不可及的。

无聊之中还顺便看了几个卡片,Richo GX100/Panasonic LX2/F100FD。GX100功能强大,但是褒贬都很极端,普遍认为ISO200以上就不可用;LX2这么古老还这么贵,要是便宜点或者出LX3比较合理,当然LX2本身还是可圈可点的,除了性价比;F100FD似乎跟前两者有点差距,用户群不是一类人,不过看参数还OK,就是不知道上市反映如何,2k5以内就很强大了。

星期二, 三月 04, 2008

msasno.dll病毒

一晚上都在看cmb,也没有觉得有什么异常。直到因为删除文件才需要重启电脑,启动之后也没有太在意,winrar打开压缩包的时候半天出不来,顿生疑;开资源管理器,没有动静,些许不安;再点点别的东西,有的可以(例如foobar)有的不可以(开始菜单里面的网络链接都消失了),糟糕。幸好计算机管理控制台还可以看,只是系统消息里面记录了一个服务器{8BC3F05E-D86B-11D0-A075-OOCO4FB68820}没有用DCOM连接的错误,是Winmgmt(Windows Management Instrumentation)这个服务,看似乎是什么没有起来,因为好几个服务都显示为“启动”而不是“已启动”,也无法更改状态。网络链接功能完全失效,大概是netman没有起来。
接下来就是常规处理,安全模式——看起来似乎都还可以用,就是有点慢;最后一次正确配置——没有效果;上网查找各个相关的资料,都没有找到根源所在,尝试了好几个方法都无效。我一般最后想到的才是病毒,无奈之下开始用小红伞查毒,还的确查出来两个,是浏览器cache里面的,删之;然后在一个文件msasno.dll处停顿了,点了两下就死机了,强制关机,希望是查出来的那连个病毒的问题;启动之后并未好转,只好继续查毒,奇怪,到这个文件又不动弹了,怀疑有诈。遂上网查证这个文件,的确有诈,强制关机,进Linux,发现NTFS没有正常关机是挂不上去的,再回到Windows的安全模式,打算正常关机后再到Linux下去删除的,结果找到该文件后直接就删掉了,很轻松,有点怀疑——病毒没有这么容易被干掉的啊。
再启动,终于见到网络图标了(拔了网线),再测试一下其他功能,还真正常了,看来的确是这个msasno.dll文件捣的鬼。我都已经在计划如何做灾后重建工作了,要不是两次看到这个文件查不过去有点奇怪,还真就重装了,那可是个大工程啊~~
好了之后再查毒,似乎还有不止一个,看来尽管平时比较注意,病毒防火墙也还开着,但是还是会中招~~现在的病毒防不胜防啊!!!!

P.S.,可恶的Google居然这个时候还挂了一阵子,用了yahoo中国和baidu,啥有用的都搜索不到,最后用live顶了一阵子
P.S.2我的Linux突然没有eth0只有eth2了。曾经改过MAC地址,但在Linux下似乎无效,怎么现在突然冒出来了,而且无论怎么弄都只有这个改过的MAC地址了。回到Win下面也改不回去原来的MAC地址了,虽然这都不影响使用,但是很不爽,真是奇怪,让我手忙脚乱了好一阵子,现在只好听之任之了

星期日, 三月 02, 2008

Nexenta

这已经是一条旧闻了,因为这个内容在我的blog待写列表里面放了好长时间,只是一直没有写出来,其实倒也没有什么东西。

大概是今年一月中旬吧,Nexenta发布了1.0正式版本。何谓Nexenta呢?自从SUN将Solaris内核开源后,就有好几个项目在试图利用这个内核按照GNU/Linux的发展模式发展新兴的OpenSolaris发行版,其中就有一个在力图把GNU的软件port到OpenSolaris上的项目,大概可以称为GNU/Solaris,很长一段时间都一直在Alpha7-Alpha9徘徊。也不知道是得到了SUN的赞助还是路线发生变化(很可能是得到赞助了,因为原来首页有一个赞助的图标,是一个拉小提琴的乞丐,面前放着个帽子,现在似乎没有了),年底的时候出现了RC3的版本,没有看到过Beta过程(我也有一阵子不关注了,只是觉得按照先前的发展速度,要好多年才能到Release)。一月份Release之后,名字是Nexenta Core Platform 1.0 (NexentaCore)。

为什么是Core呢,因为只提供了最精简的一个发行版,提供核心功能——OpenSolaris的核心加上GNU/Debian的包管理工具——目前Linux世界很流行的包管理器,还有一个apt源提供软件下载。这样的发行版可以很方便的适应各种环境(除了不能上网的电脑),当然也是为后续版本和分支奠定基础。这个发行版和OpenSolaris还是有点区别的,首先除了核心都是使用GNU系列的(那就得同时符合CDDL和GPL两个系列License);提供了Debian的环境和Ubuntu的源(应该是source package才能用)——我想到OpenSolaris官方的Indian计划也是由Debian创始人主持的,有相似点。

这个的发展还是很有趣的。话说到目前,UNIX的嫡系能发展得不错的已经不是很多了,Solaris这个时候奋起直追,也是在向开源世界注入新的活力。当年Linux缘何发展,就是因为UNIX的封闭,当GNU世界重写了大多数UNIX的软件的时候,他们看中了Linux内核,两者相结合出现了现在颇具影响力的GNU/Linux。要是当年Solaris能早点开源,或许现在的格局又不仅仅如此了。Solaris开源了,Indian计划一步步地发展,SUN又收购了MySQL和VirtualBOX,社区版本现在也在发展中,可以看到UNIX世界的新的发展前景。SUN多年征战在多线程世界,号称世界上最疯狂的多核心多线程公司之一,这个软硬通吃的公司看到了开源世界的活力,把他们的技术向世界开放,力图形成一个新的开源社区环境。OpenSolaris强大的内核,强大的ZFS,SUN发展多年的Java等等各种技术,都说明这个开源世界的“新生力量”不可小觑。我们也将会有更多更好的选择。

P.S.1,再稳定发展一下,可以考虑astro-solaris了

P.S.2,Indian项目也是很有实力的,看过preview了,操作性的改善(Gnome)等等方面,可以为Solaris普及做出贡献。LiveCD等优秀思想也引入了Solaris,桌面Solaris会很快出现并良好发展的。

P.S.3,Apple也在逐步开放源代码,不过BSD核心等本来就是开源的,他们肯定也不会开放那个漂亮的外壳,所以不知道会有多开放。

P.S.4,IBM发布z10服务器,在力图拉拢Solaris,呵呵。这也是个怪物,高端型号一个有64个处理器,每个处理器封装了5个DIE,每个DIE内部有四个物理核心,每颗完整的处理器上就有20个处理器核心、60MB二级缓存和48MB三级缓存。

星期六, 二月 23, 2008

cmbfast安装

cmbfast本身程序很小,代码也不长,目前版本4.5.1,已经有好多年没有更新了。下载后./configure,make就可以了。但是这样的操作会产生如下错误:

$ make
f77 -O2   -c -o jlgen.o jlgen.F
jlgen.F: In program `jlgen':
jlgen.F:14:
         include 'cmbfast.inc'
         ^
Unable to open INCLUDE file `cmbfast.inc' at (^)
jlgen.F:18:
         integer l(lmax),i,j,lmo
                   ^
Invalid declaration of or reference to symbol `lmax' at (^) [initially seen at (
^)]
jlgen.F:18:
         integer l(lmax),i,j,lmo
                 1
jlgen.F:21: (continued):
         common /lvalues1/ l,l0,lmo
                           2
Invalid declaration of or reference to symbol `l' at (2) [initially seen at (1)]

jlgen.F: In subroutine `initlval':
jlgen.F:121:
           include 'cmbfast.inc'
           ^
Unable to open INCLUDE file `cmbfast.inc' at (^)
jlgen.F:123:
           integer l(lmax),l0
                   1
jlgen.F:125: (continued):
           common /lvalues1/ l,l0,lmo
                             2
Invalid declaration of or reference to symbol `l' at (2) [initially seen at (1)]

jlgen.F:133:
           include 'lvalues.inc'
           ^
Unable to open INCLUDE file `lvalues.inc' at (^)
jlgen.F:123:
           integer l(lmax),l0
                     1
jlgen.F:136: (continued):
           end
           2
Invalid declaration of or reference to symbol `lmax' at (2) [initially seen at (
1)]
jlgen.F: In subroutine `bjl':
jlgen.F:96: warning:
             call bjl(l(j),x,ajl)
                  1
jlgen.F:140: (continued):
           subroutine bjl(L,x,jl)
                      2
Argument #1 (named `l') of `bjl' is one type at (2) but is some other type at (1
) [info -f g77 M GLOBALS]
make: *** [jlgen.o] Error 1

原因就是g77找不到当前工作目录下的包含文件,解决方法是在添加编译参数“-I./”。可以把这个参数添加在Makefile里面:
FFLAGS    = -O2  改为
FFLAGS    = -O2 -I./

这样就可以顺利编译了。

星期六, 二月 09, 2008

Abre los ojos

英文名字是Open Your Eyes,西班牙电影,是看介绍海下的时候下载的,当然部分也是因为看到了熟悉的名字Penélope Cruz。可是电影看到一般已经糊涂了,感觉很诡异。忍不住上网去查了一下,评分还不低,更令我吃惊的是,居然这个就是Tom Cruise像演技派转型的Vanilla Sky的西班牙原版,而这个翻拍的电影居然使用了相同的女主角。如此一来,就更有兴趣仔细研究一下电影了。

可是呢,看完整个电影之后才发现,根本理清头绪,到底发生了什么事情。看影评,更是有人给出了7种以上的解释,让人摸不着头脑,这让我细细想了一整天,然后也想就此说两句了。我还是倾向于按照电影中的解释来,不要将所有的东西都设置为虚幻的(以下内容涉及剧透,未看影片者慎入)。

电影一开始就是一个虚幻的场景——万人空巷,只有主角一人。由此推断,整个电影都是虚幻的,但是这个又不尽然。此后一段,从生日Party到撞车毁容,到Sofia害怕他,离开酒吧后匆匆回家,而César则醉酒街头,都是真实存在的,以至于到后面的签字、磕药自杀也是存在的。但是Sofia爱上他,面容整好了,等等后面的情节则完全是他自己一厢情愿想象出来的。但是我认为又不是这么简单的拍摄。前面那些真实存在的情节不是简单的叙述,而其实是主角自己的回忆,导演通过回忆来展现故事的缘由。可是为什么会回忆呢?因为技术消除了他的记忆,却并不是那么干净。他本来可以完全按照自己的想象去生活,但是却因为仇恨等等给自己设下了痛苦的环境,以至于出现紊乱,终于在想象中进了精神病院。然后他在努力的认清楚真相,想象出了自己的心理医生(中弹却没死的情节说明心理医生也是假的),以此来进一步回忆过去,所以才展现出了各种的真实存在的那些事件。那个公司的人出现提醒应该就是技术上的介入产生的影像,他们自己也说,是消除部分记忆,然后按照自己的想象无缝连接上去,这就需要一部分生前的记忆来进行铺垫;而所说的无法控制这个人的潜意识,就是说虽然抹除了记忆,但是潜意识还是很努力的把这些记忆自己给找回来了,这是公司也无法控制的。所以整个电影都是主角自己在休眠情况下的映象,只是映像一部分基于事实,一部分纯属虚构,而分界线就可以简单的认为是他的人生的那个转折点,Sofia莫名其妙的爱上他,而医院也突然可以治愈他,治愈的如此完美。最后的声音就是公司监测到他的思维活动跳楼了,就在提示他如何正确的醒过来。

据说香草的天空比这个要简单一点,或许我应该再去看看那个,然后才好推断。不过好莱坞版本自然分数也要低一点。

顺便一说,前段时间还看了《穆赫兰大道》,那个才是最晦涩难懂的,到现在我也不知道到底说的是个什么劲,这个电影还隐隐约约知道说的是什么,只是理不清楚;《非常嫌疑犯》倒是我自认有个比较清晰的定论,而《记忆碎片》只是看起来比较累。看这种电影还真是脑力劳动。

星期四, 二月 07, 2008

MoinMoin安装

Moin是一个Python写的wiki,感觉比mediawiki有意思,fedora project的主页就是这个做的。Python的程序只装过Plone,还是standalone server的,所以没有什么安装配置。

开始是在wamp上,按照网上的一个xp上的教程进行安装,但是比较凌乱,不知其所以然,所以安装失败,最好的一个瞬间是cgi模式下勉强显示出了一个首页来,然后mod模式和cgi模式都不行了。无奈换到了linux下,按照官网的教程一点点地配置,弄清楚了过程之后才到wamp下再测试,发现还是要知其所以然才好。

一、安装moin。这个过程只是把python代码装到电脑里面去,就是在解压缩的目录里面运行setup.py install。这个过程就是把moin的源代码安装到python的site-packages里面去,然后把一些页面相关的数据放在python的share目录下。

二、创建moin实例。这个过程就是创建一个可访问的moin,有自己的数据和配置。moin的数据和核心功能代码是分开的,所以功能代码更新就不会影响网站了。一个实例所需要的文件就是share目录下的data(用户数据)、underlay(系统页面)目录,wikiconfig.py(配置文件)、moin.cgi(cgi接口)文件,然后htdocs文件夹下面都是模板等也不需要经常更改的东西。这些东西可以随意放置在任何一个web server可访问的地方。

三、wikiconfig.py配置。data_dir(设置为该实例的data目录),data_underlay_dir(设置为该实例的data_underlay目录),url_prefix_static(在1.60之前是默认‘/wiki’,1.60是‘/moin_static160’),一般不需要更改。

四、moin.cgi配置。第一行写python可执行文件路径,尤其是windows下要修改,例如
#!D:/Python25/python
sys.path.insert(0, '..')   '..'是wikiconfig.py所在的路径。

五、httpd.conf配置。就是设置两个别名。wikiconfig.py中url_prefix_static所设置的别名需要指向share下的htdocs文件夹,例如
Alias /moin_static160/ "D:/wamp/www/mywiki/htdocs/"
尤其要注意htdocs后面还需要一个'/'。我的是xp home,所以没有办法设置访问权限,需要把htdocs从share目录复制到www目录下面。另一个别名就是指向moin.cgi,例如
ScriptAlias /mywiki "D:/wamp/www/mywiki/cgi-bin/moin.cgi"

至此访问自己设置的别名或者cgi就可以看到默认配置的moinmoin wiki了。