2005-11
29

研究发现,将英文单词的首尾字母之外的其他字母随机调换顺序,人还是能够基本无障碍地阅读整篇文章。例如,

Sometimes w3c's specification is much more insteresting than MSDN.
Unfortunatelly new techs are not supported by most browser.

将该文章中每个单词保持首位字母不变,中间的其他字母随机调换顺序,得到下面的文章。

Stmemieos w3c's seapifccition is mcuh mroe inseeirsttng tahn MSDN.
Urfnltueanolty new tcehs are not speproutd by msot bsrwoer.

但是大部分人仍然能够正常阅读。 做了个小程序用来调换字母顺序。


2005-06
10

我们原有的论坛使用的是基于 ASP 的 LeadBBS,后来由于服务器出现了一些小故障,导致 RegExp 对象不能用,于是论坛的许多用到正规表达式的功能全部失效。后来考虑将论坛整个转移到 PHP 系统上。而我维护的另一个论坛使用的是 NewvBB,这个系统是基于国外最流行的 vBulletion 修改而成的,该论坛相当成熟,管理功能也十分强大,于是就准备把论坛移动到 vBulletion 系统上。

目前面临的任务是 LeadBBS -> NewvBB。到网上查了一下资料,发现有关 LeadBBS 数据转换的程序很少,可能是由于在国内动网论坛独霸天下的原因吧。最后总算找到了一个 LeadBBS->phpWind 3.0的转换程序。经过进一步的调查,我决定了转换方法:LeadBBS -> phpWind 3.0 -> Discuz! 2.5F -> NewvBB 3.0。这样做起来相当麻烦,不过似乎是唯一可行的途径了。

1. LeadBBS->phpWind 3.0

这一步基本上没有遇到任何问题,简单地安装一个 phpWind 3.0,然后利用转换程序就能够把用户和帖子数据完整地转换过来。附件不能转换,不过算了,附件本来就不多,以后再慢慢手动修复吧。

转换后使用安装 phpWind 时设置的管理员密码进入 phpWind 的管理员界面,重新建立缓存。

2. phpWind 3.0->Discuz! 2.5F

这一步稍稍遇到一点困难。Discuz官方主页上找到的转换程序是 phpWind 2.0.1->Discuz! 2.5F的,直接利用该程序转换时,转换到第5步出现错误,说在 pw_tmsgs表中找不到用于 order by 语句的 id 列。查了一下数据库结构,发现 pw_tmsgs 中的字段名为 tid 而不是 id,于是修改转换程序的 340 行的列名为 tid ,于是转换成功。

转换成功之后试图登录管理面板结果失败了。查明原因,升级之后 Discuz! 原有的管理员的用户组id变成了普通用户,于是直接修改 cdb_members 表中 Admin 行的 adminid 和 groupid 列为管理员的相应值。管理员的用户组 id 可以在 cdb_admingroups 和 cdb_usergroups 表中找到。

修改之后即可成功登录管理员界面,重新建立缓存。

如果错误登录次数过多而导致被系统禁止登录,可以清除 cdb_failedlogins 表中的内容。

3. Discuz! 2.5F -> NewvBB 3.0

这一步也比较容易,直接利用留爱论坛上提供的转换程序即可成功转换。转换之后也同样遇到 admin 用户组变成普通用户的问题,修改 user 表中的 usergroupid 列即可。最后进入管理面板,更新缓存。


2005-02
25

802.11

IEEE(美国电器电子学会)于1998年7月制定的无线局域网标准。使用频率为2.4GHz,通信速度为2Mbps。

802.11b

IEEE制定的无线网标准的一种。使用频率为2.4GHz,通信速度为11Mbps,通信距离约为50m~100m。如果附近有同时使用2.4GHz频率的医疗器械、蓝牙设备等,802.11b会受到干扰而使得速度下降。

802.11a

为了防止干扰,802.11a选择了5.2GHz的频率,实现了54Mbps的传输速度。

802.11g

IEEE于2003年6月制定的无线网标准,与802.11b使用同样的2.4GHz频率,但是却实现了54Mbps的传输速度,并能够与802.11b兼容。同样由于会受到同频率设备的干扰,实际速度要比802.11a慢很多。

802.11e

这是IEEE正在开发中的协议,目标是在保持与802.11a和802.11b的兼容性的基础上增添新功能。基本上沿用802.11a的技术,但是预计802.11e将同时使用2.4GHz和5.2GHz两个频带。


2005-02
25

CF卡(Compact Flash)

CF卡是由SanDisk提出的一种记忆卡标准,通常在数码相机和掌上型电脑上使用。CF卡由不加电也能保持内容的闪存和输入输出控制器组成。输入输出遵循ATA标准,因此可以被计算机当作普通硬盘一样处理。外部接口遵循PCMICA标准(PC卡标准),通过专用转换器即可插入到笔记本电脑的PC卡插槽中。这种转换器仅仅需要通过延长接线将CF卡接口转换成PC卡接口,因此相对于其他记忆卡的转换器来说造价相当低廉。

由于CF卡的输入输出控制是在CF卡中进行的,因此能够在保证兼容性的前提下制造出各种各样的CF卡形状的设备。例如IBM的被称为Microdrive的超小型硬盘。

记忆棒(Memory Stick)

记忆棒由索尼开发。尺寸为21.5x50x2.8mm。1999年12月,索尼为它增加了名为MagicGate的版权保护功能。

Memory Stick Pro

是索尼的记忆棒的高端产品。记忆棒采用串行方式传送数据,而MS Pro采用并行方式,使得数据传输的理论值提高了8倍,达到160Mbps。另外,标准还规定了最低写入速度为15Mbps,这样利用MS Pro可以毫无阻碍地录制播放DVD质量的视频。

SD卡(Secure Digital memory card)

SD卡是1999年由SanDisk、松下、东芝三家公司联合开发的。尺寸为32x24x2.1mm,数据传输速度最大约10MB/s。它支持版权保护技术CPRM(Content Protection for Recordable Media)。另外SD卡上带有写保护开关。 SD卡基于SanDisk的MMC卡的标准,因此MMC卡可以插入到SD卡的插槽内进行读写。但由于SD卡要比MMC卡厚,因此反过来SD卡无法插进MMC插槽中。

miniSD卡

2003年由SanDisk开发的记忆卡的一种,主要用作手机的存储卡。物理特性与SD卡相同,只是尺寸缩小为21.5x20x1.4mm,重量约1g。由于面积不足,miniSD上没有写保护开关。

xD卡(xD Picture card)

xD卡是2002年由奥林巴斯和富士公司联合开发的记忆卡。尺寸只有20x25x1.7mm,重量约2g。写入速度1.3MB/s,读取速度5.0MB/s。目前应用于两家公司的数码相机上。


2005-02
25

DVD-ROM采用了多种版权保护方式来保证不被非法复制。

阅读全文 »


2005-02
25

DVD-R v1.0和DVD-R v2.0

1997年DVD-R盘第一次问世,当时的标准叫做DVD-R Ver.1.0。该标准的容量只有3.95G,与DVD-ROM的兼容性也不是很好,因此仅在工业上被采用。 2000年制定了DVD-R Ver.2.0标准,就是我们现在所见到的DVD-R盘所使用的标准。容量为与DVD-ROM相同的4.7G,基本上能与DVD-ROM完全兼容。

DVD-R for Authoring Ver.2.0和DVD-R for General Ver.2.0

DVD-R Ver.1.0的后继者为DVD-R for Authoring Ver.2.0。这种盘片目前仅在工业上采用,它没有版权保护机制,因此可以利用它将DVD-ROM完整地复制出来。 DVD-R for General Ver.2.0在物理特性上与DVD-R for Authoring Ver.2.0几乎完全相同,但它加入了版权保护机制,因此不能够用来复制DVD-ROM。我们在市面上见到的盘绝大多数都是DVD-R for General Ver.2.0。

DVD-R for Data和DVD-R for Video

DVD-R for General Ver.2.0又分成了两种,即for Data和for Video。两种盘的物理特性完全相同,但是for Video的价格中包含了一部分补偿费,这些补偿费由一个名为“个人录音补偿费管理协会”的组织负责征收,然后将这些费用平均分配给唱片协会、加盟的艺人以及加盟团体。因此for Video的盘片价格要比for Data高一些。实际上,使用for Data的盘片进行录像是完全没有任何技术问题的。至于选择for Data还是for Video,就完全凭用户的良心了。


2005-02
25

CD-R、CD-RW

我们能见到的可写光盘只有这两种格式。标准很简单,盘片的格式也都一样,刻录机的原理也都差不多,刻出来的光盘在任何一台光驱上都能顺利地读出来。这是因为可写光盘的标准完全由索尼和菲利普两家公司制定,其他要使用、生产可写光盘的公司都需要向索尼和菲利普支付专利费。

五花八门的可写DVD标准

终于DVD技术问世了。显然谁都不想支付专利费(像使用CD盘那样),因此许多家公司都参与了DVD规格的制定。参与的人多了,自然少不了互相口角。最后这些公司分成了两大阵营,一方是以松下、东芝、日立等家电厂商为主的DVD论坛,另一方是以菲利普、雅马哈等计算机厂商为主的DVD联盟,而在这其中也包括像索尼、夏普、先锋这样两方都加入的厂商。

最先出台的便是DVD论坛推出的可随机读写的DVD-RAM。其后DVD论坛又相继推出了DVD-R和DVD-RW。而稍晚一些,DVD联盟也推出了DVD+R和DVD+RW。由于时间上比DVD-R/RW晚一些,所以它吸收了DVD-R/RW的优点,性能上要比DVD-R/RW好一些。但是兼容性则要差一些,甚至许多DVD驱动器不能同时支持DVD+R和DVD+RW。


2005-02
25

DVD-ROM是利用反射面上的凹洞来记录数据的。读取数据时,激光照射到反射面上,没有凹洞的地方能够将激光反射,而有凹洞的地方不能正常反射激光,根据这些就可以读出数据。在制作DVD-ROM时,需要先将电影的内容制成母板。母板上的凹凸状况与实际盘片上的凹凸状况相反。然后再像盖章一样,利用母板上的突起来破坏盘面上的反射层。这种方法制作一张DVD-ROM只需要几秒,因此很适合批量制作。

DVD-R则是利用反射面上的有机色素的状态来记录数据的。空白的DVD-R盘上各个地方的色素的反射率都相同。烧录时,利用高功率的激光使得一部分色素分解,色素分解的地方反射率会发生变化。这样在读取时根据色素是否分解而造成的反射率变化,就可以读出数据。由于DVD-R所用色素的反射率与DVD-ROM的反射面的反射率相似,因此DVD-R的兼容性很好。

DVD-RW则是利用晶体的结晶状态来记录数据的。空白DVD-RW盘的反射面上的晶体都处于结晶的状态,反射率较高。烧录时,利用高功率激光加热晶体到熔点(约600℃),使得晶体熔化,然后再将其急速冷却,使其成为非结晶状态,反射率大大降低。而擦除时,则是用低功率激光将晶体加热到结晶温度(约350℃),然后慢慢冷却,使得晶体返回到结晶的状态。

由于DVD-RW所使用的晶体的反射率要比DVD-ROM低很多,因此兼容性比较差,部分光驱不能正常读取DVD-RW盘便是这个原因。


2005-02
25

目前流行的DVD盘有两种,即单面单层和单面双层。单面单层盘由三层组成,从上到下分别为:

  1. 用于盘面印刷的树脂层
  2. 用于数据记录的银色反射层
  3. 用于保护的树脂层

单面双层盘则由五层组成,从上到下分别为:

  1. 用于印刷的树脂层
  2. 用于数据记录的银色反射层
  3. 透明树脂层
  4. 用于数据记录的橙色半透明树脂层
  5. 用于保护的树脂层

因为双层盘的反射面分别为橙色和银色,所以看上去双层盘的反射面是金色的。

理论上还有双面单层盘和双面双层盘,但是由于盘的两面都用于记录数据,没有办法印刷标签,使用上也极为不便,所以后来双面盘都销声匿迹了。


2005-02
14

海明码是一种具有纠错功能的校验码。本文简单地介绍海明码的计算方法。
阅读全文 »