星期五, 十月 06, 2006

telnet-based BBS八卦 section 4 (原创)

说明:本系列文章,作者为Hok-men Chan;本系列文章纯粹yy,纯粹八卦;除特别标出外,在2003年11月至2004年3月间写成。并且,本文的发布与再发布均须遵循GNU Free Documentation License。

标 题: telnet-based BBS八卦 section 4 (原创)
(Wed Mar 31 16:05:55 2004)

telnet-based BBS八卦

Author: Hok-men Chan ( hokmen (dot) chan (AT) gmail (dot) com )

License: GNU Free Documentation License
(link: http://www.gnu.org/licenses/fdl.html )

Copyright:

Copyright (c) 2004 Hok-men Chan
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

4 运行在非Linux/FreeBSD环境中的telnet-based BBS及其webbs

目 前telnet-based BBS及其web界面仍然是以linux和FreeBSD为主要的开发平台,当然在役的bbs主机也有非linux或者FreeBSD的,如武汉的白云黄 鹤用的是跑在sun fire系列上的solaris9,广州的中山大学bbs用的是alpha上跑的OSF/1(听说在2004年要迁到x86体系上去),高雄中山大学 bbs据说用的是solaris for x86。

这里就面临一个移植的问题,尤其是telnet-based BBS的web界面,目前还很少能移植到windows的cygwin上的。

4.1 telnet-based BBS向多个平台的移植

移 植工作做得最多的是telnet-based BBS的bbsd从linux/FreeBSD向cygwin移植了。Firebird 2000系列和Firebird 3.0派生系列,目前成功移植的有kxn的firebird 3.x nt,gluton的firebird 3.3 nt,ytht,smth和pukebbs,这些都有专门为了向cygwin移植而写的代码,都能从网上或者它们各自的匿名cvs服务上拿得到源代码。我 还没见到maple系列和ptt系列向cygwin移植的消息,也有可能已经有人做了这方面的工作了。

Firebird 2000系列向OSF/1上的移植的过程要更具传奇色彩一些。Firebird 2000代码的功能比Firebird 2.x/3.0要多很多,而且引入了bbsd,减少了不少系统消耗,但它刚出生的时候bug非常非常的多。目前广州中山大学bbs的主力系统维护者甚至给 它逐个逐个文件,逐个逐个功能地改写,优化,以及全面重写了精华区程序和邮件发送程序,因而派生出firebird2000系列的新版本pukebbs。 广州中山大学的bbs系统从firebird 2.x向pukebbs升级的时候,即使是经历了linux试验机器,OSF/1系统上内部测试两个阶段,仍然在刚开始公开服务的两三天内被报告了20多 个bug,虽然这些bug都有惊无险地在1个小时甚至几分钟内被修复。从linux/FreeBSD平台向OSF/1移植一事被这位pukebbs代码的 维护者列入他自己的简历,他对firebird 2000系列所做的更为细致和贡献更大的工作却没有被收入。

4.2 telnet-based BBS的web界面向多个平台的移植

telnet-based BBS的web界面,由于大多cgi或者增强功能的php,以及用apache做httpd,往类unix平台上的移植大多都比较成功。

telnet-based BBS的web界面用的tiny httpd方面,尚未见到njuwebbsd成功移植到cygwin上的消息,而sanry webbsd由于最初碍于环境所限,在cygwin上开发成功雏形的,因此也不能说是移植到cygwin,只能说可以在cygwin上跑。