To Solaris novices -- Solaris 学习资料经验谈
不知不觉中, 用Unix(Solaris/Linux) n 年了, 回顾这几年的学习过程, 还是有些体会。今天我(斗胆,有些心虚)谈一下学习 Solaris 的资料问题。
1. 大部分Solaris的书、资料、都是垃圾, 特别是国内一些写者写的;(来板砖我也这么说) 它们不是抄来抄去, 就是一知半解的乱说一气。
2. 我的观点是读好书多遍强于读多本书
3. To Solaris novices and intermediate programmers
《Advanced Programming in the Unix Environment》 by Richard Stevens
这本书10年前的经典有些老了, 但还是提供了大部分的Unix programming的精华,难能可贵的是Mr. Stevens超强的表述阐析能力, 让我们的很容易的把握住重点和微妙之处。 可惜大侠已逝, 我们是没法看到APUE的第二版了。
(此外还强烈推荐 Richard 的其余的所有的书,都是Unix/Networking 的经典啊)
好在我们还有《Solaris Systems Programming》 by Rich Teer
Rich 是一个independant UNIX consultant、OpenSolaris CAB 的五成员之一。 他的 best sellor 提供了更新、更 Solaris-specific 的参考。 看看作者和Acknowledgement list这些Unix界的大牛, 像Casper Dik 这样的Unix Networking/Security 专家作 reviewers, 让人对这本书的权威性有十足的信心。
Rich Teer's homepage: http://www.rite-group.com/rich/
上两本书是 general-purpose 的 Solaris Programming 必备参考书。 存在没有这两本书的Solaris C/C++ programming guru 吗?! 别开玩笑了。:)
4. 你要GUI programming? Kernel programming? Networking programming?
Multithreaded programming? Performance tuning for large scale middleware?
...
这都是一些专题了。 希望有些帮助:
GUI programming: Sorry, i have no idea on it
Kernel programming:
Are you serious?
Try to be a OS guru first?
STREAMS programming:
<Unix System V Networking Programming> by Stephen Rago
Outdated but informtive
Device driver:
最有用的material 可以下载得到。
http://developers.sun.com/prodtech/solaris/reference/docs/index.html
我觉得最快的方式是上 Training 课程, 当然自己学也可以,你有的学了。:)
4. Compilers and Tools
你需要足够的工具:
a. GNU 有一套 toolchain 可以选择. Solaris Companion CD(free的)上就有比较次就是了。 编程有 error/warning,提示的信息云山雾罩的经历有吧?更不用说效率了。
b. Solaris 安装盘安装了除 compiler之外的其他的所以工具 as, ld, ... 可就是没有compiler. 好东西是要花银子的。 不过值。
你有两个选择:
* 只用compiler: C/C++/Fortran 95 的都有
* Sun 有集成的开发工具包名曰 Sun Studio10(取代了以前的Sun Workshop, sun Forte)
并且有Solaris on SPARC, Solarisx86 on AMD64/IA32, Linux on IA32等版本
含有 compiler
IDE的传统内容, editor/debugger/project manager/...
test/performance anlysis: 可是物超所值的额外收获
c. 还有,你要对学会用两个工具:DTrace and MDB
这俩是Solaris guru的必修。 非常有用啊。 在此不多述了。
5. Script programming/web programming/java programming?
I do not know. 我只会C/C++。 :(
( May 23 2005, 05:16:27 AM EDT ) Permalink Comments [1]


Posted by kevin Fu on May 24, 2005 at 10:40 AM EDT #