各国的零仓储案例漫谈

发布于: 2010年05月22日

据说在日本,发达的制造业追求零仓储。通过对上游供应商和下游客户订单的精确管理,达到原材料和成品的库存最低,直至零。比如,本月30号要提交给客户100件商品,生产周期为20天,原料需要10种。那么就会对要求10种原材料的供应商们在本月10号这天,分别准时送达制造这100件商品的10种原材料。通过20天制造过程之后,在本月30号,物流公司的车子到达公司门口,100件商品运出。通过这样的精确控制,制造企业不需要额外的仓储过程,最大限度的降低制造成本。

在澳大利亚的大堡礁,有人见过这样的情形。有一个卖龙虾的路边餐馆,店主的装备是一个小炉子,慢慢煮着一锅清水,边上放着一只水桶,里面有半桶清水和一只网兜,另有一些调料和店主的一身潜水装备。一个卖龙虾的却并未见到任何龙虾。若有客人想要吃龙虾怎么办呢?店主会带着网兜纵身潜入水中,几分钟后,带着客人需要龙虾的数量上来,为客人现杀现烹。这位店主的零仓储,将保证给客人最新鲜的食物为他的最大竞争力。

而前两天,我有幸在网上看到了中国的零仓储案例。一小伙去买二手自行车,店主并无现货,于是将其带到了一个地方。那是一个自行车停放处,曰:“看中哪辆,我给你撬。”这位店主通过其无敌的撬锁技术,无视所有自行车锁,真正做到了“撬遍天下单车,心中自然无锁”的最高境界。以其技术为竞争力,做到了二手自行车出售业过程的零仓储。

以上几个案例在我看来也算堪称经典了,不过这种案例并不能简单复制。在中国,实行第一个案例相当困难,就算物流公司准时送达了你的原材料,也可能送货员已经打开包装吃掉了一部分。而第二个案例如果发生在中国,当店主带着新鲜龙虾浮上来的时候,十有八九他的烹煮装备已随着顾客消失得无影无踪了。

Firefox3.6.4 再次beta更新

发布于: 2010年05月16日

Mozilla于2010-4-16发布了 Firefox 3.6.4beta,我的电脑上的版本进行了自动更新。

五月初的时候又进行了一次更新,显示的是20100503,我以为是3.6.4版本的正式发布。

想不到今天有进行了一次更新,显示的是20100513,而Mozilla主页上却仍然没有正式发布的信息。看起来还是一次beta更新。

前段时间得到消息,Firefox3.7版本取消了,变成了3.6.4,看来Mozilla对这个版本还是比较重视的。同时也希望独立插件进程的的支持做的更好些。

frd超好用的网盘下载工具

发布于: 2010年05月15日

随着众多bt网站被河蟹,bt下载逐渐被out。网盘下载将是文件分享的重要应用。

如果你还在网盘网站点击下载,并焦急得等待几十秒时间,生怕错过下载按钮,那么你也out了。

frd全称FreeRapid Downloader,是一款基于java的自由软件,基于GPL2.0协议分享。基于java表明frd可以跨平台,实际使用上,我在windows和Linux下运行同一个目录的文件,没有发现不同。

主页地址:http://wordrider.net/freerapid/index.html

下载地址:http://wordrider.net/freerapid/download.html

frd支持当前流行的大部分网盘,如rapidshare,hotfile等以及数十种其他我叫不上名的。这一切全靠插件实现,由于开发活跃,插件也会经常自动更新。

frd支持很多人性化操作, 比如剪贴板监视能发现所有支持的文件链接,而且同时载入多个文件链接。后面的等待,下载等动作就全部交给frd好了。frd甚至还支持验证码;当网站要求验证码验证时,会弹出对话框让你输入。

专为国人设计的爬墙软件puff

发布于: 2010年05月15日

去年,我推荐了Ultra VPN作为免费好用的爬墙利器。很不幸,在一个重要的生日来临之时,离开了我们。虽然还有tor,但毕竟速度不快。个人不太喜欢政治背景过于浓重的软件,如自由门或者无界啥的。于是就发现了puff。其实用puff有一段时间了,觉得速度又快,还挺好用,就上来推荐一把。

在我看来,puff是看到了中国人翻墙这一需求的市场,进行着商业运作。主页:http://www.erights.net/ 除了几个下载链接,几乎没有任何内容,包括一般都会介绍一下自己的about us。

虽然主页全是英文,但是主界面典型的Chinese Dragon虽说不能完全表明作者的身份,但至少表现出了所面对的客户的属性。加上各国访问量页面:中国第一,美国第二,但量只有中国一半。其余国家和地区基本可以忽略。而美国的访问量,我猜大部分还是中国人翻墙出去后访问的结果。而他们的puffstoretwitter帐号都是中文。

上面这些,说明了puff确为专为国人设计的爬墙软件。而我们正需要这些。

puff分商业版和免费版。如果没有特别的需要,免费版的速度和稳定性基本足够。下载地址:

商业版:Puff 0.05

免费版:Puff 0.03.321

下载翻墙软件,而软件却需要翻墙下载,这个问题真纠结:

hotfile下载:免费版

但是我发现下当前最新的0.03.321版本会有连不上的情况,用老版本反倒可以。也放上hotfile下载吧:免费版

使用方法及其简单,打开软件,点击“Connect”, 完成连接之后,点击“IE via Proxy”开始用。

如果用其他浏览器,Connect之后,把浏览器http proxy设置为“127.0.0.1”,端口“1984”

initrd和Linux 启动

发布于: 2010年05月09日

Linux 启动一般分成两个部分,比如Linux安装在第一个硬盘的第一个分区,在grub的命令行,我们可以采用下面的几行命令启动:

grub>kernel (hd0,0)/vmlinuz root=/dev/sda1 ro quiet splash

grub>initrd (hd0,0)/initrd.img

grub>boot

上面的命令,除了制定kernel位置和root位置以及一些kernel 的参数以外,还指定了initrd的位置。

很长一段时间,我并不知道initrd是用来干什么的,也几乎没有在中文资料里面看好很好的解释。就这样不求甚解的过了很久,才在近段时间在wikipedia上看到了比较详细的解释。花了点时间翻译了原理性的部分,如下:

Initinal ramdisk或者“initrd”是Linux 启动阶段被 Linux 内核调用一个临时文件系统。Initrd 和 initramfs 是实现的两种机制,虽然两者都是用于真正 “根(root)”文件系统被挂载之前的进行准备工作,但在载入临时文件系统到内存的实现上细微的区别。

基本原理

大部分Linux 发行版携带者一颗通用的内核映像(kernel image),用来启动尽可能多的硬件。而这颗通用内核映像(kernel image)的大部分硬件驱动一般被编译为可加载模块(module),因为如果全部静态编译的话,内核(kernel)会变得巨大无比,不仅软盘启动无法实现,一般小内存的电脑无法承受这么大的内存占用。

这样,在mount 根(root)文件系统前,探测和加载必要的驱动模块(module)成了大问题。或者说,判断哪个是根(root)文件系统变得困难。(译者注:在识别跟文件系统之前,必须先识别硬件设备,而识别硬件设备–如硬盘–的驱动代码可能是存在根(root)文件系统内的可加载模块(module)。)

而更复杂的问题是,根(root)文件系统可能是软RAID卷,LVM,,NFS(无盘工作站),或者一个加密分区。这些情况下,在mount之前需要更多的特殊的驱动加载。

另外一个复杂情况是让内核支持系统休眠(hibernation),休眠会让系统挂起(suspend),将整个内存内容dump成一个映像(image)到swap分区或者常规文件存储,然后关机。下次启动的时候,这个映像(image)必须可读才能加载到内存。

为了防止内核(kernel)不得不硬编码处理这么多特殊情况,使用了一种在初始化启动阶段使用临时根(root)文件系统(也称早期用户空间)。这种临时根(root)文件系统可包含硬件探测,模块加载,设备识别直到mount到真正的根(root)文件系统。

实际使用

initrd映像(image)文件必须和内核映像(image)一起被存放于Linux 引导程序(bootloader)或者启动固件(boot firmware)可读的地方,比如:

  • 系统的根(root)文件系统
  • 启动光盘
  • 本地启动分区,可以是ext2或者FAT等格式化的小分区
  • TFTP服务器,使系统可以通过以太网启动

引导程序会加载内核(kernel)和initrd映像(image)文件到内存,然后启动内核(kernel),传递initrd映像(image)内存地址给内核(kernel)。在启动程序的最后阶段,内核(kernel)会通过读取initrd映像(image)的首部分数据尝试判断它的格式:

  • 在initrd机制里面,initrd映像(image)是一个文件系统映像(可以是压缩的),这样就可以以特殊的块设备(block device) mount(/dev/ram)。但文件系统驱动必须被静态编译到内核。 很多Linux发行版使用压缩的ext2格式作为initrd映像(image)的格式。另外一些(包括Debian 3.1)使用cramfs, 因为cramfs映像(image)可以被直接mount 而无需额外的解压缩空间,让内存有限的系统更容易启动。一旦临时文件系统启动,内核(kernel)会执行/linuxrc 作为第一个进程。当这个进程退出,内核(kernel)会认为真正的根(root)文件系统已经被mount,然后执行”/sbin/init”来开始正常的用户空间进程。
  • 在initramfs机制里面(Linux 2.6.13以后版本可用),initrd映像(image)是一个cpio包(可以是压缩的)。在启动过程中,cpio包被内核解包为一个tmpfs的特殊实力,成为一个临时根文件系统。initramfs机制的优点是不需要一个必须被静态编译到内核(kernel)的中间文件系统格式或者块设备(block device)。 在initramfs机制里,内核(kernel)执行/init 作为第一个进程,这个进程开始之后并不退出。

依赖静态编译在内核(kernel)的压缩算法不同,initrd/initramfs映像(image)的压缩格式可以是gzip,bzip2和LZMA.

男人三十

发布于: 2010年05月07日

今年是我三十岁生日。蓦然回首三十载,虽说不是一事无成,但也是远没有达到自己的梦想。于是一直在安慰自己,房子也有了,妻子也有了,车子现在也不贵了,孩子也在酝酿中了,小日子总算也是可以一过了。只是心中一直期望着一次结结实实的机会,和一次结结实实的爆发。虽然对金钱的期望是其中的一个诱惑,有时我在想,有很多钱有怎样,我不是一个懂得挥霍钱财的人,我想更多的却是对成功的一种成求感的渴望。

也许不是每个人的性格,都是适合作为成功者的,我时常这样怀疑自己。

好吧,我今天要留下的其实不是上面的这些,而是我的生日这个日子的轶事。好让我的思想不致于如此深沉。

我的公历生日是5月7日,户口本和身份证都是如此;农历是四月初四,我爸妈给我记着的。有一天我无聊翻看手机的万年历,猛然发现当年的5月7日和四月初四并不是同一天。30年前的四月初四,应该是5月17日。我相信,这是一个不经意的笔误,却导致这三十年来,我一直在错误的日子庆祝着我的生日。

纠结阿,我不知道我是不是还要这样进行下去。也许我应该高兴,离三十岁还有10天。

欣慰的是,据我所知,在地球的另外一端,至少还有一个人和我有着同样的遭遇,FML.

浙ICP备18056264号-1