本书以第一个运行在Linux操作系统下的、面向对象的、可视化的快速软件开发环境Kylix为学习研究对象,通过分析具体的程序实例从专业角度探讨了在Linux下开发应用程序遇到的问题和难点。本书教给读者如何能在最短的时间内掌握Kylix编程的基本概念,如果以前对Linux一无所知,也能通过本书前四章的简单介绍而熟悉和掌握Linux基本原理。\r\n\r\n 本书分为两大部分共9章,第一部分为从Delphi到Kylix,包括环境比较、初识Linux、使用库和Kylix程序员的C基础。第二部分为基本Kylix编程方法,包括进程控制、进程通信处理、文件系统的使用、在线帮助系统和系统管理。\r\n\r\n 本书适合具有一定编程基础的Delphi程序员学习在Linux下的编程开发。可供计算机程序开发人员、大专院校计算机专业师生、计算机网络爱好者和各种培训班学员参考使用。\r\n
\r\n
第一部分 从Delphi到Kylix \r\n\r\n 第1章 环境比较 \r\n\r\n 1. 1 两种环境之间的差异 \r\n\r\n 1. 1. 1 系统的差异 \r\n\r\n 1. 1. 2 开发环境的差异 \r\n\r\n 1. 1. 3 开放资源的差异 \r\n\r\n 1. 2 Linux中的视窗功能 \r\n\r\n 1. 2. 1 X Window系统 \r\n\r\n 1. 2. 2 WindoW管理器 \r\n\r\n 1. 2. 3 窗口小部件与组件 \r\n\r\n 1. 3 相关内容查询网址 \r\n\r\n 第2章 初识Linux \r\n\r\n 2. 1 文件与目录 \r\n\r\n 2. 1. 1 文件及目录名 \r\n\r\n 2. 1. 2 关于安装的其他信息 \r\n\r\n 2. 1. 3 驱动器名字 \r\n\r\n 2. 1. 4 文件的打印与共享 \r\n\r\n 2. 1. 5 文件链接 \r\n\r\n 2. 1. 6 文件及目录所有权 \r\n\r\n 2. 1. 7 关于目录 \r\n\r\n 2. 1. 8 设备命名规则 \r\n\r\n 2. 2 Linux编程简明指南 \r\n\r\n 2. 2. 1 系统调用的概念 \r\n\r\n 2. 2. 2 系统调用的原理 \r\n\r\n 2. 2. 3 关于man命令 \r\n\r\n 2. 2. 4 进程与信号 \r\n\r\n 2. 2. 5 线程 \r\n\r\n 2. 2. 6 进程通信 \r\n\r\n 2. 3 /proc文件系统 \r\n\r\n 2. 4 相关内容查询网址 \r\n\r\n 第3章 使用库 \r\n\r\n 3. 1 建立与使用共享对象 \r\n\r\n 3. 1. 1 创建一个项目组 \r\n\r\n 3. 1. 2 Hello库 \r\n\r\n 3. 1. 3 调用库函数 \r\n\r\n 3. 1. 4 使库可以访问 \r\n\r\n 3. 2 共享库规则 \r\n\r\n 3. 2. 1 库的命名规则 \r\n\r\n 3. 2. 2 库的存放位置 \r\n\r\n 3. 2. 3 Linux怎样查找库 \r\n\r\n 3. 2. 4 Kylix支持的库规则 \r\n\r\n 3. 2. 5 有趣的函数名 \r\n\r\n 3. 3 库的动态装载 \r\n\r\n 3. 3. 1 库的初始化与结束 \r\n\r\n 3. 3. 2 dlopen怎样查找库 \r\n\r\n 3. 4 平台交叉问题 \r\n\r\n 3. 4. 1 库的调用规则 \r\n\r\n 3. 4. 2 库名 \r\n\r\n 3. 4. 3 库的操作类型 \r\n\r\n 3. 4. 4 ShareMem \r\n\r\n 3. 4. 5 库开始代码 \r\n\r\n 3. 4. 6 交叉平台接口单元 \r\n\r\n 3. 5 相关内容查询网址 \r\n\r\n 第4章 Kylix程序员的C基础 \r\n\r\n 4. 1 Pascal程序员的C指南 \r\n\r\n 4. 1. 1 C及Pascal的数据类型 \r\n\r\n 4. 1. 2 关于int \r\n\r\n 4. 2 变量. 结构. 连接与类型 \r\n\r\n 4. 3 控制语句及循环 \r\n\r\n 4. 3. 1 while和do/while循环 \r\n\r\n 4. 3. 2 for循环 \r\n\r\n 4. 3. 3 循环终止语句 \r\n\r\n 4. 4 指针 \r\n\r\n 4. 5 函数与'过程' \r\n\r\n 4. 6 C与Pascal的差异 \r\n\r\n 4. 6. 1 数组索引 \r\n\r\n 4. 6. 2 动态内存分配 \r\n\r\n 4. 6. 3 C的预处理函数 \r\n\r\n 4. 7 C十十的危险性 \r\n\r\n 4. 7. 1 超载函数 \r\n\r\n 4. 7. 2 成员函数 \r\n\r\n 4. 7. 3 异常 \r\n\r\n 4. 8 在Kylix中使用C库 \r\n\r\n 4. 8. 1 用Make编写程序 \r\n\r\n 4. 8. 2 编写接口单元 \r\n\r\n 4. 9 相关内容查询网址 \r\n\r\n 第二部分 基本Kylix编程方法 \r\n\r\n 第5章 进程控制 \r\n\r\n 5. 1 取代当前进程 \r\n\r\n 5. 2 启动一个子进程 \r\n\r\n 5. 3 等待进程结束 \r\n\r\n 5. 4 建立一个后台进程 \r\n\r\n 5. 5 破坏一个进程 \r\n\r\n 5. 6 进程优先 \r\n\r\n 5. 7 减少系统负载 \r\n\r\n 5. 8 获取进程ID和用户信息 \r\n\r\n 5. 9 获取详细的进程信息 \r\n\r\n 5. 10 限制到单个实例中的进程 \r\n\r\n 5. 11 安排一个进程 \r\n\r\n 5. 12 以超级用户运行程序 \r\n\r\n 第6章 进程通信处理 \r\n\r\n 6. 1 用信号进行简单的通信 \r\n\r\n 6. 2 获得有效的系统信号描述 \r\n\r\n 6. 3 建立信号处理规则 \r\n\r\n 6. 4 避免出现死进程 \r\n\r\n 6. 5 通过管道与控制程序通信 \r\n\r\n 6. 6 GUI中父. 子进程之间的管道数据传送 \r\n\r\n 6. 7 通过管道在独立的GUI进程之间传送数据 \r\n\r\n 6. 8 用信号机制协调进程 \r\n\r\n 6. 9 与共享内存进行高效通信 \r\n\r\n 6. 10 用消息队列进行通信 \r\n\r\n 6. 10. 1 消息队列函数 \r\n\r\n 6. 10. 2 消息队列的建立与打开 \r\n\r\n 6. 10. 3 消息队列的控制 \r\n\r\n 6. 10. 4 发送消息 \r\n\r\n 6. 10. 5 接收消息 \r\n\r\n 6. 10. 6 使用不同类型的消息 \r\n\r\n 6. 10. 7 指针与消息队列 \r\n\r\n 6. 10. 8 一个简单的调试记录 \r\n\r\n 第7章 文件系统的使用 \r\n\r\n 7. 1 获取一个文件的许可设置 \r\n\r\n 7. 1. 1 程序GetPermissions \r\n\r\n 7. 1. 2 粘滞位 \r\n\r\n 7. 2 设置一个文件的许可范围 \r\n\r\n 7. 3 对数据文件执行文件水平的锁定 \r\n\r\n 7. 4 执行记录水平的文件锁定 \r\n\r\n 7. 4. 1 文件锁定命令 \r\n\r\n 7. 4. 2 一个假设例子 \r\n\r\n 7. 4. 3 程序LockWriter \r\n\r\n 7. 4. 4 程序LockReader \r\n\r\n 7. 5 获得文件属性和信息 \r\n\r\n 7. 6 其他文件系统的安装 \r\n\r\n 第8章 在线帮助系统 \r\n\r\n 8. 1 帮助系统的结构 \r\n\r\n 8. 2 建立一个简单的帮助浏览程序 \r\n\r\n 8. 3 向一个应用程序中添加帮助 \r\n\r\n 8. 4 与一个外部帮助系统连接 \r\n\r\n 8. 4. 1 SimpleHelp的格式 \r\n\r\n 8. 4. 2 帮助文件的格式化 \r\n\r\n 8. 4. 3 帮助系统SimpleHelp的执行 \r\n\r\n 8. 4. 4 Kylix帮助的未来 \r\n\r\n 第9章 系统管理 \r\n\r\n 9. 1 获得登录用户的一个列表 \r\n\r\n 9. 2 检查未读邮件 \r\n\r\n 9. 3 向本地用户发送邮件 \r\n\r\n 9. 4 从一应用程序使用sendmail \r\n\r\n 9. 4. 1 用sendmail发送 \r\n\r\n 9. 4. 2 程序FileMail \r\n\r\n 9. 5 关于八进制许可屏蔽 \r\n\r\n 9. 6 以超级用户的身份运行 \r\n\r\n 9. 6. 1 继承与环境 \r\n\r\n 9. 6. 2 改变配置 \r\n\r\n 9. 6. 3 脚本runsu1 \r\n\r\n 9. 6. 4 脚本runsu2 \r\n\r\n 9. 7 使用为调试而登录的系统 \r\n\r\n 9. 7. 1 系统记录例程 \r\n\r\n 9. 7. 2 驻留程序 \r\n\r\n 9. 7. 3 程序SysLog \r\n\r\n 参考文献 \r\n
\r\n
1991年, 当Linus Torvalds第一次对外公开发表Linux时, 他自己可能也没有想到要把这项工作无限发展和延伸, 开始只是作为一个娱乐项目, 旨在使有兴趣的黑客都能熟练掌握UNIX操作系统, 但是, Linux很快迎合了许多业余程序员的口味. 今天, 世界上成千上万的程序员都在认真而积极地设法维护内核, 而内核是Linux操作系统创建过程代码的关键部分.
目前, Linux虽然还不够优越, 但其高效及可靠性已被大多数用户和厂家认可. 对于Linux而言, 主要缺点是缺乏像Windows系统那样具有庞大的可利用的资源, 然而, 制约这个瓶颈的问题只能有两个:一是没有足够的时间和成本开发足够的Linux应用软件, 二是缺乏开发上述应用程序的工具. 然而, Kylix(即运行在Linux下的Delphi)的发布已经开始改变这个状态了. Delphi快速. 高效的可视化开发环境与快速. 稳定的低成本操作平台Linux之间已经完全融合.
Kylix是一个运行在Linux操作系统下的. 面向对象的. 可视化的快速软件开发环境. 使用Kylix可以建立高效的基于Intel架构的32位Linux应用程序, 并且具有高效紧凑的编程代码, Kylix提供了一整套开发工具, 包括开发. 测试. 调试. 发布应用程序等, Kylix还包含大量可以再利用的组件. 一套设计工具. 应用程序模板. 编程开发精灵等. 上述工具可以大大简化开发原型, 缩短开发周期.
最新发布的Kylix 3版本包含了KylixTM 3 Enterprise. KylixTM 3 Professional和KylixTM 3 Open Edition三个不同版本, Kylix 3真正成为一个跨平台的开发环境, 不但同时包含了Delphi和C/C十十编译器, 并且可以共享Borland C十十Builder和Delphi的Windows下的CLX(组件库), 基于CLX的Kylix 3应用程序和源代码可以在C十十Builder和Delphi中重新编译. Kylix 3广泛支持Oracle. IBM DB2. Informix. Red Hat Database. PostgreSQL. MySQL和InterBase数据库. 该版本支持Red Hat 7. 2. MandrakeTM 8. 2和SuSE Linux 7. 3.
本书主要面向具有一定编程经验. 但刚刚接触Kylix的Delphi程序员, 通过许多实例分析, 使读者慢慢熟悉这个新的操作系统下的开发工具. 其次, 本书教给读者如何能在最短的时间内运行Kylix, 如果以前对Linux一无所知也没有问题. 本书的前四章对Linux的基本原理及其与Windows的区别作了一些简单介绍, 并详细解释了Linux系统内API所用的C语言规则. 对于具有一定编程经验的人来说, 这是学习Kylix所必需了解的知识.
为了使读者能够在最短的时间找到解决编程问题的答案, 我们对每一个问题的解析都不仅提供答案, 而且详细阐明发现和解决问题的关键步骤. 同时也涉及了在Windows下怎样发现该问题, 以及它与解决Linux下的问题有何区别, 解决问题的程序策略等, 这对有一定编程经验的读者来说, 能够起到举一反三, 触类旁通的功效.
由于时间仓促, 水平所限, 书中错误在所难免, 请读者批评指正.
编 者
无封面