第十章 X Window系统
//X的概念
X是建立在客户机/服务器模式(Client/Server)基础上的,X Server是一个在你的系统上运行的程序,它会处理所有对图形硬件的访问。X Client是一个和X Server通信的应用程序,它送出如“划一条横线”等请求,X Server来处理。
X是一个面向网络(Network-Oriented)的图形系统,也就是说X Client既可以运行在本机也可以运行在远程系统上。
X Server会同时监控本机和远程的网络端口(Network Socket)来接受Client端的请求,很明显这是一个很强大的功能。如果你有一条道TCP/IP网络的连接,你可以登录进入网络上的另一个系统,并在系统上运行X应用程序,再把它的显示重定向到本地的X Server。
第十一章 调整你的X环境
你使用startx命令启动X,它其实是xinit的一个前端界面,这个程序负责启动X Server,以及运行你所指定的各种X client程序。xinit会运行在你登陆目录下的.xinitrc这个shell脚本,这个文件中包含了你想要启动X时运行的命令,诸如xterm,xclock等等。如果你没有.xinitrc文件,xinit就会改用系统默认的/usr/lib.X11/xinit/xinitrc
KDE桌面环境(K Desktop Enviornment)
第十二章 与Windows的兼容性和Samba
Samba:提供SMB共享
Samba package可以让你从Windows存取Unix的文件和打印机,这也是开源软件中一个有名的程序。有时候,执行Samba的Unix服务器所提供的文件存取速度甚至比Windows服务器还快,此外,Samba很稳定和可靠。
//文件转换工具
Linux文件和Windows文件最大的不同就是他们对于行尾字符的表达方式不一样
,可以通过如下方法解决:
@如果你存取的文件在同一台计算机的挂接分区上,你可以让内核为你处理转换的事宜,如“外挂DOS, VFAT, NTFS分区”
@功能比较强大的Emac可以自动转换
@Linux上仍然有许多工具可以处理转换工作,如duconv与recode
第十三章 程序设计语言
//gcc程序设计
UNIX软件开发时C语言是最常用的,因为UNIX就是用C开发的,GNU C编译器gcc是属于功能较强且多样化的编译器。
gcc也是c++编译器,针对喜欢面向对象环境的人而言,它支持所有c++的功能,gcc也提供完整的c++类,如iosstream类库
除了gcc,还有egcs编译器
使用C语言程序设计
使用Perl语言程序设计
就UNIX程序设计环境的变迁而言,Perl的出现是里程碑的,它是用来处理文本和文件名的语言。后来发展成一套全方位的语言,可以处理各种工作。
使用Shell脚本语言程序设计
Bourne shell和C shell两种脚本语言
使用Tcl/Tk设计程序
Tool Command Language是一种简单的解释性语言
使用Java设计程序
Java是一个面向对象,并且适用于Internet网络的程序语言。
跨平台特性。
其他的如Phthon,LISP,CLISP, SWI-Prolog
第十四章 程序设计员的工具
调试器
Linux下有很多调试器,真正标准的调试器是gdb
另外还有DDD(Data Display Debugger)
性能分析工具
如gprof是一个效率分析程序
strace监视程序动作
make与imake
make项目管理程序,可以用它来编译项目
imake可以简化makefile文件的编写过程,尤其是C程序方面的处理
Checker是一套C语言内存管理函数库
用户界面产生工具
X Window有很多工具和函数库,如Xaw3D元件库,Qt是C++GUI工具套件,gtk是C的GUI工具套件,原本是为了图像处理程序GIMP而开发
版本控制工具
RCS(Revision Control System)
CVS(Concurrent Version System)
使用CVS
加入已有一个名为dataimport的模块
#cvs checkout dataimport
“取出”dataimport模块
#cvs checkout clients/sub/dataimport
如果第一次使用项目模块,必须知道项目位于repository中的路径
#提交更新或单个文件
#cvs commit
#cvs commit single.c
#cvs update
从项目cvs服务器同步项目
//通过Internet使用CVS
#cvs -d :pserver:user@domain.com:path/to/repository
缩排工具
indent是一个C语言排版工具