Wednesday, May 31, 2006

Install JDK in Debian

这里介绍的方法是使用Java官方包,通过java-package生成deb包进行安装。
1)登录Sun网站下载JRE/JDK。
2)安装fakeroot和java-package:
apt-get install fakeroot java-package

3)切换到普通用户(即非root用户),制作deb包(需要gcc编译器):
fakeroot make-jpkg jdk-1_5_0_06-linux-i586.bin

4)切换回root用户,安装deb包:
dpkg -i sun-j2sdk1.5_1.5.0+update06_i386.deb

本文为中文翻译,原文在此

Setting System Time in Debian

Linux中使用两种时间:世界时间(GMT)和本地时间(Local Time)。世界时间即格林尼治时间。而各个时区用户根据所在的时区(Time Zone)与国际时间的差值来获得本地时间。比如中国在东8区(CST +8:00),所以本地时间比国际时间快8小时。

Debian下设置时区的命令是tzselect或者tzconfig。

Linux 在每次启动时会加载BIOS的时间,并在退出时把时间写回BIOS。默认情况下,Linux认为BIOS里的时间是世界时间(UTC)。因此它读入世界时 间然后根据用户所在时区计算出本地时间。对于中国而言,就是加上8小时。这种机制在多系统环境中会产生问题:因为Windows只认识本地时间,所以你在 Windows里设置的时间(会写回BIOS)在Linux环境中被认为是世界时间,从而导致Linux本地时间比正确时间快了8小时(对于中国而言)。 如果你在Linux里把本地时间减去8小时来修正(世界时间相应的也会被减去8),又会导致Windows里的时间慢了8小时(因为Linux在退出时会 将修改后的世界时间写回BIOS)。

Debian下的解决办法(应该适用于其它Linux版本)是编辑文件/etc/default/rcS,把其中的UTC=yes选项改为UTC=no(即让Linux认为BIOS里的是本地时间)。然后在BIOS里设置好正确的本地时间。

2008.4 更新: This doesn't work for debian4.0. Here is a solution, but I don't quite understand:
1) set UTC=no in file /etc/default/rcS
2) # hwclock --directisa --localtime
3) # hwclock --hctosys
3) append "--directisa" after HWCLOCKPARS= (at about 21 lines) in file /etc/init.d/hwclock.sh

2009.1 更新: Linux Debian 2.6.26-1-686下只需在 /etc/default/rcS 中写两行:
UTC=no
HWCLOCKPARS="--directisa"
重启后记得进BIOS改好时间,就可以了。

Tuesday, May 30, 2006

Install Debian

安装基本系统(网络安装Debian Testing):
Debian的主页下载netinst CD image(150MB, 注意是i386平台),刻录到光盘。
用刻好的光盘引导系统进入安装界面,所有安装设置都有很详细的说明,照着做就行。
最后安装程序提示取出光盘并自动重启。在重启后运行下列命令更新系统:
apt-get updata
apt-get dist-upgrade

安装Xfce4桌面系统:
apt-get install x-window-system-core xfce4

安装xfce4-systemload-plugin插件(用于在Panel上以图形方式显示当前CPU,内存和swap分区的使用情况):
apt-get xfce4-systemload-plugin

设置locales:
dpkg-reconfigure locale

选择所有以en_US或zh_CN开头的项。将默认项设为zh_CN.GBK。
安装中文相关包:
apt-get install xfonts-intl-chinese

安装中文字体:
将Windows系统中System/Fonts里的simsun.ttc文件拷贝到~/.fonts/,并改名为simsun.ttf。在Firefox等应用程序中将字体设为simsun。
安装中文虚拟终端rxvt-ml(rxvt-ml对GBK和GB2312支持较好,安装后运行crxvt-gb启动):
apt-get install rxvt-ml

安装Fcitx输入法:
apt-get install fcitx

在~/.xssession中加入下列语句(其中第3句是启动xfce):
export XMODIFIERS="@im=fcitx"
fcitx&
exec startxfce4
killall fcitx

安装alsa音频驱动:
apt-get install alsa-util

配置alsa:
alsaconfig

安装Emacs(使用unstable版本):
apt-get intall emacs-snapshot

安装Mplayer(使用marillat非官方包):
apt-get install mplayer

可能会提示缺少支持库,要先安装unstable版本中的libdvdread3:
apt-get install libdvdread3

安装Acrobat Reader(unofficial包):
apt-get install acroread



附我的硬盘分区方案,仅供参考:









device_namesizefile_systemmount_pointcomment
/dev/hda110GNTFS--WindowsXP的C盘
/dev/hda210GFAT32--WindowsXP的D盘
/dev/hda5512Mswap--swap分区,现代的Linux已经越来越少使用它
/dev/hda6512Mreiserfs/boot存放kernel-image,grub等,用于引导了Linux
/dev/hda75Greiserfs/根目录
/dev/hda85Greiserfs/usr传统上用于存放各种应用程序
/dev/hda983Greiserfs/home用户目录,用于存放个人数据

我的sources.list文件,适合教育网用户:
# cn99 mirror
#deb http://debian.cn99.com/debian/ testing main
#deb-src http://debian.cn99.com/debian/ testing main

# ustc mirror - testing
deb http://debian.ustc.edu.cn/debian testing main non-free contrib
deb-src http://debian.ustc.edu.cn/debian testing main non-free contrib
deb http://debian.ustc.edu.cn/debian-security testing/updates main

# ustc mirror - unstable
#deb http://debian.ustc.edu.cn/debian/ unstable main non-free contrib
#deb-src http://debian.ustc.edu.cn/debian/ unstable main non-free contrib

# unofficial
deb http://debian.ustc.edu.cn/debian-uo/ sid marillat misc ustc

Wednesday, May 24, 2006

Learning Minix

“Minix学习轨迹”是我的第一个主页,主要是关于Minix的一些资料。当时学习操作系统的劲头还是很足的,买了不少书,甚至着手写一个简单的操作系统。可惜最后没有坚持下去,代码也只是实现了利用Grub引导、键盘输入和屏幕输出。

很难得的是因为这个主页我收到过两个人的邮件,一个是关于Minix的,另一个是关于我的主页的。可惜我都没有及时回复,而且也不知道如何解答,真是抱歉。

今天有空把原来主页上的Minix相关链接检查了一遍,有大半都失效了,而且剩下的那些也是很久没更新了,不过里面的内容还是很有用的。而我那篇翻译将被转移到我的GooglePage上。

下面是一些有效的Minix相关链接:
  • http://www.minix3.org/,Minix已经发展到第3代了,而我当时学习还是Minix2。新的版本我没有看过,功能是强了许多,但是不知道会不会增加学习的难度。这个网站是当前Minix的官方网站,有关于Minix各方面的资料。
  • OSRC: The Operating System Resource Center,涵盖了操作系统相关的各个方面,并且进行了很好的分类,最后一次更新是在2005年4月。
  • Write your own operating system,提供了编写操作系统所需的各方面知识,还有他们自己实现的内核源代码下载。
  • Oldlinux.org,中英文网站,研究早期的Linux系统,适合初学者。
  • Minix Overdocumentation Project,对Minix2引导部分进行了详尽的分析。
  • Minix2引导过程分析,这是我对上面那个网站内容的中文翻译。

这几本是我买过的书:
  • 《操作系统:设计与实现(第二版)》,英文原名Operating Systems Design and Implementation,Andrew S.Tanebaum等著,王鹏等译,电子工业出版社,1998.8。书的作者也就是Minix的作者。共上下两册,上册是操作系统原理,下册是Minix2的源码,可以分开购买。此书是学习Minix2的必备。
  • 《深入理解Linux内核(第二版)》,英文原名Understanding The Linux Kernel,Bovet D.P.等著,陈莉君等译,中国电力出版社&O'Reilly,2004。此书是学习当代Linux内核的权威,对于了解操作系统的各部分原理及发展很有帮助。第二版是针对Linux2.4内核,而更新的第三版则针对2.6内核。
  • 《Linux内核完全注释》,赵炯编著,机械工业出版社,2004.9。这本书是国人编写的,针对Linux0.11这个早期版本。现代的Linux内核过于复杂,并不适合初学者,而早期的Linux内核则比较简单。与Minix相比,它的注释太少,而且缺少配套书籍,而这本书的出现弥补了这一不足。Oldlinux.org是本书的支持网站。
BTW, Minix3的logo比以前好看多了:)
minix3 vs minix2

Tuesday, May 16, 2006

Goodbye ACM

刚进大学时,不知ACM是何物。很庆幸和牛人Savior在一个寝室,在他的言传身教下,我也开始在zju上做题。刚开始都挑简单题,慢慢的也开始做中等题,有一个月还做了100多题。

记得看的第一本书是Savior的那本清华的《数据结构(C语言版)》。看的最多的书是Savior的那本高中奥赛,到现在还有好多不懂的地方。最厚的是那本《Introduce to Algorithms》,还是和Savior一起买的。

大一的ACM赛我没参加,当时正是中大最风光的时候,Dynamic、Savior一群大牛都在。和Savior在一个寝室的另一个影响就是觉得差距好大,容易自卑,想着再怎么学也不可能达到那种水平。其实现在想想有点后悔,大学4年要是能专心搞ACM,至少简历上会好看很多。

大二,Zeus拉我组队,再加上黄志斌,队名"Fools‘ day"(报名当天正好4月1日)。预选赛和决赛我都基本只动了嘴,沾了两个牛人的光,我们拿了一等奖第8名,还有每人100元奖金。有点可惜的是当时省赛和校赛是分开的,而我们没有拿到参加省赛的资格。

凭借校赛的优异表现,我们也得以进入校队选拔赛,就是有名的4+2。虽然我每场都有做出题来,而且罚时也很少,可是都只是一两道简单题。最后我们三个都没能进校队。

大三好像大家都在忙,比赛完全没有准备,还是我们三。队名"Fool Again", 是我想的,Westlife 刚出道时的一首歌,可惜马失前蹄,我们连决赛都没进。搞笑的是不知过了多久,突然收到一个三等奖,感情是人手一份了。

大四这次我和锦标,伟东一队,队名"Salmon(三文鱼)"。预选赛比较顺利,不过决赛的时间比较郁闷,因为比赛前一天正好考托福。虽然我们只有二等奖,但是和以前不同的是我敲键盘的机会多了不少,参与的份量也多了。而且3年比赛获得3个不同等级的奖项,也算是不错的经历了。

和那些在国际赛场上叱咤风云的ACMer相比,我一直都是个路人。即使如此,它还是给我带来了很多乐趣,让我见识了许多牛人。

040424_dsci0003
060514_004

Tags:

Web Spam

Web Sites
PageRank
HITS
Link Spam
  • Spam, damn spam, and statistics: using statistical analysis to locate spam web pages, by Dennis Fetterly, Mark Manasse, Marc Najork. In Proceedings of the 7th International Workshop on the Web and Databases (WebDB), 2004 [pdf]
  • Making eigenvector-based reputation systems robust to collusion, by Hui Zhang, Ashish Goel, Ramesh Govindan, Kahn Mason, and Benjamin Van Roy. Workshop on Algorithms and Models for the Web Graph (WAW), 2004 [ps]
  • Link Spam Alliances, by Zoltan Gyöngyi, Hector Garcia-Molina. Stanford University, 2005 [pdf]
  • Link Spam Alliances (Paper Analysis)
  • Identifying link farm spam pages, by Baoning Wu, Brian D. Davison. In Proceedings of the 14th Link Spam Detection Based on Mass Estimation, by Zoltan Gyöngyi, Pavel Berkhin, Hector Garcia-Molina, Jan Pedersen. International World Wide Web Conference, 2005 [pdf]
  • Development of Algorithms for Web Spam Detection based on Structure and Link Analysis, by Michael Hilberer, Hendrik Speck.International Association for Development of the Information Society (IADIS), 2005 [pdf]
  • Thwarting the nigritude ultramarine: learning to identify link spam, by Isabel Drost and Tobias Scheffer. Proceedings of the 16th European Conference on Machine Learning (ECML), 2005 [pdf]
  • SpamRank - Fully Automatic Link Spam Detection, by Andras A. Benczur, Karoly Csalogany, Tamas Sarlos, Mate Uher. In Proceedings of the First International workshop on. Adversarial Information Retrieval on the Web (AIRWeb), 2005
Spam blog (Splog)
Others

Monday, May 15, 2006

GDCPC'2006 & ZSUCPC'2006

昨晚很困,没写总结就睡了。

先恭喜Zeus,Gecko和文文的“Lost Temple”勇夺一等奖第6名!赞!

我们队只过了5题,是所有队里罚时最多的,最后排在28名,大概有个校赛二等奖吧。考虑到我们当前的水平和状态,这样的结果可以接受了。

比赛初期比较郁闷,我先看了H题,是一个计算面积的几何题,很简单,于是我就上去敲。可是敲到一半发现忘记了反三角函数怎么写,只好先放下来。伟东他们说A题很简单于是换人敲。这时已经有不少队过了A题。开局不利。

我换看D题,是个找规律的简单题,敲了,WA,打印出来找了挺久最后发现一个地方把+号打成-号,ft。不记得我们是先过了A还是先过D了,反正我们过这两题时已经很迟很迟了,Zeus他们已经过了5题,汗~

当天的RP也比较低,PC2老是死机,还不得已换了一台机。不知道过了多久,锦标说反三角函数是a打头,就是atan,acos之类,于是我又继续敲H题,一运行连例子都没过。和锦标讨论了一下发现少考虑了一种情况:就是斜边>S>D的情况。而且还忘了算顶点和E1E2之间的那个三角形面积。都改好以后提交还是WA,不解。直到看到PC2发来的提示说pi要用cos(-1),这才恍然大悟,原来我一直把pi设为3.1415926,精度不够。总算Yes了。很快伟东也过了J题,大家总算又看到了希望。

这时也差不多封版了,我们排在35名。看看Zeus他们队就比我们多做了B题。B题我和锦标在浙大上都做过,就是记不起来。我记得是很简单的规律,试了把行和列分别考虑是否被2或4整除的几种情况都不对,最后改成考虑行和列的积是否被8整除,Yes~

最后剩下半小时,锦标和伟东看F题,锦标说是最大流问题,可以敲标程。我觉得半小时不可能完成,而且我从来没有用过标程,但是现在其他题都没思路,于是就让锦标敲,而我开始看G题。首先奇数长的边和偶数长的边必定分别在水平和垂直方向,而且奇数边和偶数边的数量必须是都偶数以分成左右或上下等长的两份,这样多边形的边数必定得被4整除。可是四边形明显不行,所以我猜测边数必须被8整除。这个猜测是对的,可是我在接下来如何构造多边形上比较晕,最后也没能想清楚。后来听说Zeus他们只用了10分钟就做出这题,真气人。

总结一下,我做出的3道题都是简单题,本该很快做完的,结果却花了太多时间,而且很多细节都没注意到。主观原因是太久没做题,平时太少练,以后要多做SRM。客观原因嘛,前一天刚考的T,也许有点影响吧。

感谢队友锦标,虽然废话多了点,但是还是提了很多重要的意见!
感谢队友伟东,感谢对我的信任,而且没有放弃J题!

Monday, May 08, 2006

Why Smallka?

鉴于最近某人对我的id(smallka)的曲解,决定特意在此发表官方说明:

smallka这个中国英语id的由来要追溯到高中时代。当时互联网正蓬勃兴起,为了在各种网站和信箱上申请帐号,就需要一个英文id。当时也是我的足球生涯的巅峰时期,而我最喜爱的球星就是和我一样担任后卫的巴西球星Roberto Carlos。于是英语水平不怎样的我就决定起个和carlos相关的英文id。我记得我曾经想用xiaoka,xiaoca,smallca,可是在注册时都被人抢先了。于是在上天冥冥中的安排下,我选择了smallka。

时过境迁,随着我的大学足球生涯的结束,Carlos也已不再年轻。曾想过换一个id,但是考虑到已经建立的名声和大量的帐号,还是作罢。最后奉上一段Carlos的精彩集锦: