好玩的竖排格式转换器

│苟│十│是│匆│看│奈│醉│把│
│或│年│非│匆│破│何│酒│剑│
│一│不│成│太│前│我│高│向│
│醉│悔│败│匆│生│生│歌│西│
│豪│执│转│匆│后│独│危│风│
│情│一│头│ │世│自│楼│ │
│慰│念│空│ │往│愁│东│ │
│平│ │ │ │来│ │ │ │
│生│ │ │ │同│ │ │ │
│ │ │ │ │ │ │ │ │

此古书式竖排格式由http://www.cshbl.com/gushu.html在线转换工具生成

《Solaris应用程序设计》书评

受朋友托,为《Solaris应用程序设计》写一个书评。因为只负责翻译了一章,所以算不得自评,呵呵 ...


许多读者看到“某某等”译的书籍,心中对其就分数大减。对这本书,各位看官只管放心。本书是Sun中国工程研究院的若干同事集体翻译的(我承担的是第七章的翻译),同时每一章都有另外两位同事对其进行评审和校订,自信有很好的专业保证和翻译质量。这本书是最新的Solaris应用开发指南,涵盖了各方面的知识且具有相当的深度,的确是不可多得的一本好书。

和大多国内的Solaris/OpenSolaris爱好者(包括同在国内的许多同事)一样,我也是从Linux转入到Solaris开发的。 Solaris的开发环境,包括编译器、调试器以及许多实用工具,与Linux相较都有所不同。回想刚入职时,主要是向前辈请教和自己摸索,知识点亦分散在不同的文档中。而这本书对此有全面的介绍,并且包括了许多最新的内容。试想如果当初有这本书作为入门指导,学习起来一定事半功倍。本书的重心是介绍如何在Solaris上开发高性能的应用。将应用开发中有关性能优化的各个侧面,都一一展现给读者。对于一个严肃的Solaris应用开发程序员,这真是一本必读的开发指南。对于非Solaris平台上应用的性能优化,亦有一定的参考价值。

“我用Linux好好儿的,干嘛要用Solairs/OpenSolaris?”,这可能是你心中一个大大的问号。严格来说,你使用的是 Gnu/Linux系统,Linux只是kernel。你所依赖的,更多的是Gnu系统,而不是Linux kernel。Solairs(特别是OpenSolaris),除了kernel,C库和一些实用程序,和众多的Linux发行版也没太大差别。UltraSparc T1/2 + Solaris/OpenSolairs,对于Web应用的部署和运营来说,真可谓是一个梦幻平台。最新的UltraSparc T2芯片,有8核且每核8线程,操作系统所见的“虚拟”CPU有64个之多,并且内存访问的带宽巨大,而功耗很低,它甚至还是
一个开源的芯片。 X86/64平台上的Solairs,同样也表现不俗,DTrace、ZFS、Virtualization等业界领先的特性,都对你的应用部署和维护,提供了强大的支持。再加上MySql刚刚加入Sun的大家庭,可以预见SAMP平台将有非常好的应用前景。

这本书的翻译,除个别段落有些生涩或小的错误外,总体十分流畅。唯一遗憾的地方是,出版社没有采用“页页对译”的方式,所以附录的索引就丢掉了,对于一本需要时常查阅的工具书来说,十分可惜。这似乎是出版社的惯例,之前的Solaris Kernel Internals也是如此。

boost, shared_ptr and bcp

众所周知,STL的containers只支持“value语义”,而不支持“reference语义”。直接将对象的指针类型作为模板参数的方案并不完美,需要我们在erase()或remove()之外自己来释放对象。几乎所有人的推荐方案是,使用shared_ptr这个boost或者TR1中的智能指针(gccc 4.x已经提供了对TR1的支持)。不过,你知道boost是很大的(约40多M),而且不那么容易用Sun的C++编译器平顺地编译过去(如果不使用libstl-port的话)。关于Solaris上的Boost近况,参见http://blogs.sun.com/sga/category/Boost

后来又了解到bcp这个工具,可以将所需的module(s)提取出来,单独发布。于是就下载了boost的源代码包,编译了bjam和bcp,再用bcp将shared_ptr提取出来。结果吓了一跳,shared_ptr及其依赖的文件有300多个,共约3.5M。看来只好自己照猫画虎实现一个简化的ad hoc版本了...

"Solaris Application Programming"的中文版出版在即

"Solaris Application Programming"的中文版《Solaris应用程序设计》,终于出版在即了。这本书是由ERI的若干同事集体翻译的(我承担的是第7章的翻译),同时每一章都有另外两位同事对其进行评审和校订,相信有很好的专业和质量保证。这本书是最新的Solaris应用开发指南,涵盖了各方面的知识且具有相当的深度,的确是不可多得的一本好书。

我书架上的C++书籍

个人很喜欢买书,因为深受过买不到绝版书的痛苦,所以自己虽然买回来从头看到尾的不多,但也买回来藏着。上图是我历年来购买的C++的书籍,这还不包括"The C++ Programming Language"以及"C++ Primer"这样的百科大全,以及其例如"Advanced Corba Programming with C++","Data Structure and Algorithm Analysis with C++","XML programming with C++"这样特定领域的C++书籍,更不消说久以前的MFC书籍了。其中也有若干是在特价时买的。这一匣书,大约占我家里现存各种书籍的4%,所以总共也就千余册,值数万元。