注册 登录 进入教材巡展
#

出版时间:2014年9月

出版社:高等教育出版社

以下为《Linux高级程序设计》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 高等教育出版社
  • 9787040409581
  • 1版
  • 193426
  • 0045151855-9
  • 异16开
  • 2014年9月
  • 380
  • 262
  • 工学
  • 软件工程
  • TP316.85
  • 计算机科学与技术
  • 本科
内容简介
罗怡桂主编的《Linux高级程序设计》内容选择精要,由浅入深、循序渐进地阐述了Linux环境下的高级编程技术,体现了Linux高级编程人员必备的技术要求。全书共10章,主要包括Linux编程基础、文件与目录的操作、标准输入输出及系统信息、进程及进程的控制、信号、高级I/O、进程之间的通信、服务进程、多进程的综合控制与多线程编程。书后的综合案例习题提供了一些小型案例项目,供读者自行实践。
本书可作为本科生或研究生的Linux编程技术课程的教材,也可以作为Linux编程技术人员的参考书。
目录

第1章  Linux编程基础


  1.1  Linux的演化


    1.1.1  UNIX时代


    1.1.2  从UNIX到Linux


  1.2  Linux编程环境


    1.2.1  程序编辑器


    1.2.2  程序编译器gec


  1.3  常用调试工具


    1.3.1  gdb


    1.3.2  mtrace


    1.3.3  hook


    1.3.4  Binutil工具集


  1.4  GNU编程风格


  本章小结


  习题


第2章  文件与目录的操作


  2.1  Linux文件系统概述


    2.1.1  文件及文件系统


    2.1.2  文件描述符


    2.1.3  用户标识与用户组标识


    2.1.4  硬连接与符号连接


  2.2  文件的基本操作


    2.2.1  文件的打开与共享


    2.2.2  文件的创建与关闭


    2.2.3  文件的定位


    2.2.4  文件内容的读取


    2.2.5  文件内容的写入


  2.3  文件属性的获取与改变


  2.4  文件访问权限及其操作


    2.4.1  设置文件权限屏蔽码


    2.4.2  改变用户的操作模式


    2.4.3  改变文件的所有者


    2.4.4  验证实际用户对文件的操作权限


  2.5  文件的删除与重命名


  2.6  文件的同步


  2.7  文件的其他操作


    2.7.1  文件描述符的复制


    2.7.2  获取、改变文件的时间信息


    2.7.3  目录的创建、删除与读取


    2.7.4  相对于路径的文件操作


  本章小结


  习题


第3章  标准输入输出及系统信息


  3.1  标准输入输出


    3.1.1  流与FILE指针


    3.1.2  缓存


    3.1.3  打开、关闭流


    3.1.4  流的读写


    3.1.5  流的定位


    3.1.6  格式化输入输出


    3.1.7  创建临时文件


  3.2  获取或设置系统信息


  3.3  获取或设置系统时间


  3.4  文件系统设置


  3.5  获取与设置磁盘配额


  3.6  其他系统操作函数


  本章小结


  习题


第4章  进程及进程的控制


  4.1  进程及进程运行环境


    4.1.1  进程标识与进程的状态


    4.1.2  进程的开始与终结


    4.1.3  内存空间分布


    4.1.4  环境变量


    4.1.5  操作能力设置


    4.1.6  获取、设置进程资源限制


  4.2  函数间的直接跳转


  4.3  创建子进程


    4.3.1  fork函数


    4.3.2  vfork函数


    4.3.3  clone函数


  4.4  父进程等待子进程


  4.5  在进程中执行另一个程序


    4.5.1  exec系列函数


    4.5.2  关于closeonexec


  4.6  设置与读取用户标识


  4.7  进程记账


  4.8  获取当前进程的时间


  4.9  进程的跟踪


  4.10  进程的组织


    4.10.1  进程组


    4.10.2  会话


  本章小结


  习题


第5章  信号


  5.1  信号处理概述


  5.2  信号处理的上下文


  5.3  信号的编程模式


  5.4  信号与信号处理函数的关联


    5.4.1  sigaction函数


    5.4.2  signal函数


  5.5  发送信号


    5.5.1  发送信号的原因


    5.5.2  在内核中信号的发送


    5.5.3  kill、raise函数


    5.5.4  sigqueue函数


    5.5.5  alarm函数


  5.6  信号的处理


    5.6.1  内核中信号的处理


    5.6.2  获知当前未决信号


    5.6.3  sigsetjimp与siglongjmp函数


    5.6.4  信号处理函数的可重入性


    5.6.5  sleep函数


  5.7  信号的屏蔽


    5.7.1  sigprocmask函数


    5.7.2  sigsuspend函数


  5.8  实时信号与普通信号


  5.9  使用信号同步进程


  5.10  获取或设置信号处理函数的堆栈信息


  本章小结


  习题


第6章  高级I/O


  6.1  非阻塞I/O


  6.2  记录锁


  6.3  I/O复用


    6.3.1  select与pselect函数


    6.3.2  poll函数、ppdl函数与epoH系列函数


  6.4  异步I/O


  6.5  ready与writev函数


  6.6  内存映射I/O


  6.7  文件或目录的访问通知机制


    6.7.1  dnotify


    6.7.2  inotify


  本章小结


  习题


第7章  进程之间的通信


  7.1  管道


  7.2  FIFO


  7.3  System V进程间的通信机制


    7.3.1  消息队列


    7.3.2  信号量集合


    7.3.3  共享内存


  7.4  Posix信号量


  本章小结


  习题


第8章  服务进程


  8.1  服务进程的编程模式


  8.2  服务进程的参数设置与日志


  本章小结


  习题


第9章  多进程的综合控制


  9.1  内核的调度算法


  9.2  从LJnux 2.4  调度算法到Linux2.6  O(1)调度算法


  9.3  Linux 2.6  O(1)调度算法分析


    9.3.1  静态优先级


    9.3.2  动态优先级


    9.3.3  时间片的计算


    9.3.4  休眠进程与唤醒进程


    9.3.5  调度的时机


    9.3.6  Linux 2.6  O(1)调度算法中CPU的负载平衡


    9.3.7  调度策略


  9.4  Linux应用程序中对进程调度的控制


    9.4.1  内核参数调优


    9.4.2  多进程组织


    9.4.3  进程的调度控制


    9.4.4  进程调度操作权限


    9.4.5  进程控制的其他操作


  本章小结


  习题


第10章  多线程编程


  10.1  线程与线程的实现方式


  10.2  线程应用的基本操作


  10.3  线程数据


  10.4  线程中的信号处理


  10.5  安全创建子进程


  10.6  线程之间的互斥


  10.7  线程应用的其他操作


  本章小结


  习题


综合案例习题


参考文献