标签归档:42

时间是用来浪费的

时间是用来浪费的!因为如果你不去浪费,不,你无法阻止时间的流逝,没有时间的流逝,意识也无法存在。

你真的认为生活还有什么意义?我不这样觉得。

大部分人所谓的生活的意义其实和动物毫无区别:为了让自己生存,为了让自己的基因延续,为了种族的发展。作为“高级动物”,人类或许还会有更“高级”点的目标。

但是,如果你能看得远点,看的久点,或者很久后再回过头看,你就会发现,所做的一切几乎毫无意义。

人的生命就是一段有限时间的意识的存在。意识能够感觉到时间的存在,但必将在一段时间后消亡。在意识消逝后,时间也变的毫无意义,一万亿年和一秒钟有什么区别呢?

也许人类的意识会长久点,因为人的生命可以繁衍,人的记忆可以通过口头,书籍等等相传,也就是历史。但人类终究不可能一直延续下去。依照人类目前的水平,气候稍微的变化就可以造成人类的灭绝。更别提什么行星撞击、太阳爆发等等。毁灭人类的还有人类自己制造的无数用来自杀的武器。并且,宇宙的时间终究是有限的。

在死亡面前,一切都失去了意义,所做的一切都是在浪费时间而已。

知道自己的生命是有限的很重要,这样你就明白没有什么像你想象的那么重要,没有什么是有意义的。

你所需要做的,就是想好如何去浪费余下的生命。虽然你不知道自己的生命将在何时终结,但它会到来的。

如果你不知道如何浪费,那么你的生活将变得非常无聊、无趣。

啤酒软件许可证(Beerware)

开源软件一般是有许可证的,最著名的就数 GPL (GNU General Public License), 你可以在这里查看几乎所有的开源软件许可证。如果你想找一个适合自己的开源软件许可证,可以看看这篇文章

一般软件许可证类似于繁琐的法律条文,但今天看到了一个非常有趣的的许可证:Beerware(啤酒软件)

许可证内容如下:

/*
 * ----------------------------------------------------------------------------
 * "THE BEER-WARE LICENSE" (Revision 42):
 * <phk@FreeBSD.ORG> wrote this file. As long as you retain this notice you
 * can do whatever you want with this stuff. If we meet some day, and you think
 * this stuff is worth it, you can buy me a beer in return Poul-Henning Kamp
 * ----------------------------------------------------------------------------
 */

对应的中文翻译是:

/*
 * ----------------------------------------------------------------------------
 * "啤酒软件许可证"(版本号:42):
 * <phk@FreeBSD.ORG> 写下了这份文件。只要你保留这份公告,你就可以用这个软件做任
 * 何你想做的事情。如果我们哪一天见面了,并且你觉得这个软件还是有点价值,那么
 * 你可以考虑请我喝杯啤酒作为回报。
 * ----------------------------------------------------------------------------
 */

其中为什么版本号为 42 也是有点来历的:在小说《银河系漫游指南》(同名电影)中,42 是终极电脑对问题:”the answer to life, the universe, and everything.(人生的意义)” 的回答。

用这种许可证其实类似于作者放弃版权或者说放入公共领域,所有人都可以随意的使用该作品。

鉴于国内盗版横行、漠视版权、法律不完善的现状,我就不想多说什么了。

Linux 僵死进程的避免

今天读《UNIX 环境高级编程》第八章进程控制,其中讲到了僵死进程,它的定义是这样的:

在 UNIX 术语中,一个已经终止,但其父进程尚未对其进行善后处理(获取终止进程的有关信息,释放它仍占有的资源)的进程被称为僵死进程( zombie )。

如果编写一个长期运行的程序,它调用 fork 产生了很多子进程,那么除非父进程等待取得子进程的终止状态,否则这些子进程终止后就会变成僵死进程。

这使我想起了在实习期间负责的一个项目。程序使用了一大块共享内存,使用哈希表存储数据。我希望能够在运行时定期输出内存的使用率,这虽然不是一个必须的功能,但对调试和运维会有一些帮助。不过对大块内存的扫描会消耗数百毫秒的时间,这样的延迟对一个提供实时服务的程序来说是不可容忍的。

继续阅读