书籍详情
LINUX系统分析与高级编程技术
作者:周巍松等编著
出版社:机械工业出版社
出版时间:1999-12-01
ISBN:9787111075363
定价:¥58.00
购买这本书可以去
内容简介
本书介绍Linux环境下的编程方法,内容包括Linux系统命令、Shell脚本、编程语言(gawk、Perl)、系统内核、安全体系、XWindow等,内容丰富、论述全面,涵盖了Linux系统的方方面面。本书附带光盘包括了RedHatLinux系统的最新版本,及安装方法,还包括本书的大量程序代码,极大地方便了读者,为使用和将要使用Linux系统的技术人员提供了较全面的参考。
作者简介
暂缺《LINUX系统分析与高级编程技术》作者简介
目录
目 录
前言
第一篇 Linux系统介绍
第1章 Linux简介
1.1Linux的起源
1.2自由软件基金会的GNU计划
1.3Linux的发音
1.4Linux的特点
1.5基本硬件要求
1.6如何获得Linux
1.6.1从网上下载Linux
1.6.2从光盘获得Linux
1.7涉及Linux的Web网址和新闻讨论组
1.8Linux的不足之处
第2章 外壳及常用命令
2.1登录和退出
2.2Linux系统的外壳
2.3外壳的常用命令
2.3.1更改帐号密码
2.3.2联机帮助
2.3.3远程登录
2.3.4文件或目录处理
2.3.5改变工作目录
2.3.6复制文件
2.3.7移动或更改文件、目录名称
2.3.8建立新目录
2.3.9删除目录
2.3.10删除文件
2.3.11列出当前所在的目录位置
2.3.12查看文件内容
2.3.13分页查看文件内容
2.3.14查看目录所占磁盘容量
2.3.15文件传输
2.3.16文件权限的设定
2.3.17检查自己所属的工作组名称
2.3.18改变文件或目录工作组所有权
2.3.19改变文件或目录的最后修改时间
2.3.20文件的链接
2.3.21文件中字符串的查录
2.3.22查寻文件或命令的路径
2.3.23比较文件或目录的内容
2.3.24文件打印输出
2.3.25一般文件的打印
2.3.26troff文件的打印
2.3.27打印机控制命令
2.3.28进程控制
2.3.29外壳变量
2.3.30环境变量
2.3.31别名
2.3.32历史命令
2.3.33文件的压缩
2.3.34管道命令的使川
2.3.35输入/输出控制
2.3.36查看系统中的用户
2.3.37改变用户名
2.3.38查看用户名
2.3.39查看当前系统上所有工作站
的用户
2.3.40与某工作站上的用户交谈
2.3.41检查远程系统是否正常
2.3.42电子邮件的使用简介
第3章 Linux系统的网络功能
3.1Linux支持的网络协议
3.1.1TCP/IP
3.1.2TCP/IP版本6
3.1.3IPX/SPX
3.1.4AppleTalk协议集
3.1.5广域网
3.1.6ISDN
3.1.7PPP、SLIP及PLIP
3.1.8业余无线电
3.1.9ATM
3.2Linux系统下的文件共享和打印共享
3.2.1Machintosh环境
3.2.2Windows环境
3.2.3Novell环境
3.2.4UNIX环境
3.3Linux系统中的Internet/Intranet功能
3.3.1邮件
3.3.2Web服务器
3.3.3Web浏览器
3.3.4FTP服务器和客户机
3.3.5新闻服务
3.3.6域名系统
3.3.7DHCP和bootp
3.3.8NIS
3.4Linux系统下应用程序的远程执行
3.4.1Telnet
3.4.2远程命令
3.4.3XWindow
3.5Linux系统的网络互连功能
3.5.1路由器
3.5.2网桥
3.5.3IP伪装
3.5.4IP统计
3.5.5IP别名
3.5.6流量限制器
3.5.7防火墙
3.5.8端口下传
3.5.9负载平衡
3.5.10EQL
3.5.11代理服务器
3.5.12按需拨号
3.5.13管道、移动IP和虚拟个人网络
3.6Linux系统中的网络管理
3.6.1Linux系统下的网络管理应用程序
3.6.2SNMP
3.7企业级Linux网络
3.7.1高可用性
3.7.2RAID
3.7.3冗余网络
第4章 Linux系统管理简介
4.1root帐号
4.2启动和关闭系统
4.2.1从软盘启动
4.2.2使用LILO启动
4.2.3关闭Linux系统
4.3挂接文件系统
4.3.1挂接软盘
4.3.2创建新的文件系统
4.3.3卸载文件系统
4.4检查文件系统
4.5使用文件作为交换区
4.6系统和文件的备份
4.7设置系统
4.7.1设置系统名
4.7.2使用维护磁盘
4.7.3重新设置root帐号口令
4.7.4设置登录信息
第二篇 Linux高级语言及管理编程
第5章 外壳编程
5.1创建和运行外壳程序
5.1.1创建外壳程序
5.1.2运行外壳程序
5.2使用外壳变量
5.2.1给变量赋值
5.2.2读取变量的值
5.2.3位置变量和共他系统变量
5.2.4引号的作用
5.3数值运算命令
5.4条件表达式
5.4.1if表达式
5.4.2case表达式
5.5循环语句
5.5.1for语句
5.5.2while语句
5.5.3 until语句
5.6shift命令
5.7Select语句
5.8repeat语句
5.9子函数
第6章 gawk语言编程
6.1gawk的主要功能
6.2如何4执行gawk程序
6.3文件、记录和字段
6.4模式和动作
6.5比较运算和数值运算
6.6内部函数
6.6.1随机数和数P学函数
6.6.2字符串的内部函数
6.6.3 输入输出的内部函数
6.7字符串和数字
6.8格式化输出
6.9改变字段分隔符
6.10元字符
6.11调用gawk程序
6.12卫BEGIN和END
6.13变量
6.14内置变量
6.15控制结构
6.15.1if表达式
6.15.2while循环
6.15.3for循环
6.15.4next和exit
6.16数组
6.17川户自定义函数
6.18儿个实例
第7章 Perl语言编程
7.1什么是Perl
7.2Perl的现状
7.3初试P erl
7.4Perl变量
7.4.1标量
7.4.2数组
7.4.3相关数组
7.5文件句柄和文件操作
7.6循环结构
7.6.1foreach循环
7.6.2判断运算
7.6.3for循环
7.6.4 while和until循环
7.7条件结构
7.8字符匹配
7.9替换和翻译
7.9.1替换
7.9.2翻译
7.10 子过程
7.10.1子过程的定义
7.10.2参数
7.10.3返回值
7.11 Perl程序的完整例了
第8章 Linux内核简介
8.1系统初始化
8.2系统运行
8.3内核提供的各种系统调用
8.3.1进程的从本概念和系统
8.3.2创建和撤消进程
8.3.3执九行程序序
第9章 系统进程
9.1什么是进程
9.2进程的结构
9.3进程调度
9.4进程使用的文件
9.5进程使川的虚拟内存
9.6创建进程
9.7进积的时间和计时器
9.7.1实时时钟
9.7.2虚拟时钟
9.7.3形象时钟
9.8程序的执行
9.8.1ELF文件
9.8.2脚本文件
第10章 内存管理
10.1内存管理的作用
10.2虚拟内存的抽象模型
10.3按需装入页面
10.4交换
10.5共享虚拟内存
10.6存取控制
10.7高速缓存
10.7.1缓冲区高速缓存
10.7.2页面高速缓存
10.7.3交换高速缓存
10.7.4硬件高速缓存
10.8系统页面表
10.9页面的分配和释放
10.9.1页面的分配
10.9.2页面的释放
10.10内存映射
10.11请求调页
10.12页面高速缓存
10.13内核交换守护进程
第11章 进程间通信
11.1信号机制
11.2管道机制
113SystemVIPC机制
11.3.1信息队列
11.3.2信号量
11.3.3共享内存
第12章 PCI
12.1PCI系统
12.2PCI地址空间
12.3PCI设置头
12.4PCII/O和PCI内存地址
12.5PCI-ISA桥
12.6PCI-PCI桥
12.7PCI初始化
12.7.1Linux系统内核有关PCI的
数据结构
12.7.2 PCI设备驱动程序
12.7.3 PCIBIOS函数
12.7.4 PCIFixup
第13章 中断和中断处理
13.1中断
13.2可编程中断控制器
13.3初始化中断处理的数据结构
13.4中断处理
第14章 设备驱动程序
14.1硬件设备的管理
14.2轮询和中断
14.3直接内存存取
14.4内存
14.5设备驱动程序和内核之间的接日
14.5.1字符设备
14.5.2块设备
14.6 硬盘
14.6.1IDE硬盘
14.6.2初始化IDE硬盘子系统
14.6.3SCSI硬盘
14.6.4初始化SCSI磁盘子系统
14.6.5传递块设备请求
14.7网络设备
14.7.1网络设备文件名
14.7.2总线信息
14.7.3网络接目标记
14.7.4协议信息
14.7.5初始化网络设备
第15章 文件系统
15.1Linux文件系统概述
15.2 ext2文件系统
15.2.1ext2的索引节点
15.2.2ext2超级块
15.2.3ext2数据块组描述符
15.2.4ext2中的目录
15.2.5在ext2文件系统中查找文件
15.2.6改变ext2文件系统中文件
的大小
15.3VFS
15.3.1.VFS超级块
15.3.2 VFS索引节点
15.3.3登记文件系统
15.3.4 挂接文件系统
15.3.5在VFS中查找文件
15.3.6撤消文件系统
15.3.7VFS索引节点缓存
15.3.8VFS目录缓存
15.4 缓冲区缓存
15.5/proc文件系统
第16章 网络系统
16.1TCP/IP网络简介
16.2TCP/IP网络的分层
16.3BSD套接口
16.4INET套接口层
16.4.1创建BSD套接口
16.4.2给INETBSD套接口指定地址
16.4.3在INETBSD套接口上创建连接
16.4.4监听INETBSD套接口
16.4.5接收连接请求
16.5IP层
16.5.1套接口缓冲区
16.5.2接收IP数据包
16.5.3发送IP数据包
16.5.4数据碎片
16.6地址解析协议
第17章 系统内核机制
17.1BottomHalf处理
17.2任务队列
17.3计时器
17.4等待队列
17.5信号量
第四篇 Linux系统高级编程
第18章 Linux内核模块编程
18.1 个简单程序HelloWorld
18.2 设备文件
18.3 proc义件系统
18.4 使用/proc输入
18.5 与设备文件通信
18.6 启动参数
18.7 系统调用
18.8 阻塞进程
18.9 替换printk
18.10 调度任务
第19章 有关进程通信的编程
19.1进程间通信简介
19.2半双工UNIX管道
19.2.1基本概念
19.2.2使用C语言创建管道
19.2.3创建管道的简单方法
19.2.4使用管道的自动操作
19.2.5使用半双工管道时的注意事项
19.3命名管道
19.3.1基本概念
19.3.2创建FIFO
19.3.3FIFO操作
19.3.4FIFO的阻塞
19.3.5SIGPIPE信号
19.4 SystemVIPC
19.4.1基本概念
19.4.2消息队列基本概念
19.4.3系统调川msgget()
19.4.4系统调川msgsnd()
19.4.5系统调用msgctl()
19.4.6一个msgtool的实例
19.5使用信号量编程
19.5.1基本概念
19.5.2系统调用semget()
19.5.3系统调用semop()
19.5.4系统调用semctl()
19.5.5使用信号量集的实例:semtool
19.6 共享内存
19.6.1基本概念
19.6.2 系统内部用户数据结构
shmidds
19.6.3系统调川shmget()
19.6.4 系统调用shmat()
19.6.5系统调川shmctl()
19.6.6系统调用shmdt()
19.6.7使用共享内存的实例:shmtool
第20章 高级线程编程
20.1线程的概念和用途
20.2个简单的例子
20.3线程同步
20.4使用信号量协调程序
20.5信号量的实现
20.5.1Semaphore.h
20.5.2Semaphore.c
第21章 Linux系统网络编程
21.1什么是套接口
21.2两种类型的Internet套接口
21.3网络协议分层
21.4数据结构
21.5IP地址和如何使川IP地址
21.5.1socket()
21.5.2bind()
21.5.3connect()
21.5.4listen()
21.5.5accept()
21.5.6send()和recv()
21.5.7sendto0和recvfrom()
21.5.8close()和shutdown0
21.5.9getpeername()
21.5.10gethostname()
21.6 DNS
21.7客户机/服务器模式
21.8简单的数据流服务器程序
21.9简单的数据流客户机程序
21.10数据报套接口
21.11阻塞
第22章 LinuxI/O端口编程
22.1如何在C语言下使用I/O端口
22.1.1 一般的方法
22.1.2另一个替代方法:/dev/port
22.2 硬件中断与DMA存取
22.3高精确的时间
22.3.1延迟时间
22.3.2时间的量测
22.4 使用共他程序语言
22.5 些有用的I/O 端口
22.5.1并行端口
22.5.2游戏端口
22.5.3串行端口
第五篇 Linux系统安全分析
第23章 系统管理员安全
23.1安全管理
23.2超级用户
23.3文件系统安全
23.3.1 Linux文件系统概述
23.3.2设备文件
23.3.3/etc/mknod命令
23.3.4 安全考虑
23.3.5find命令
23.3.6secure程序
23.3.7ncheck命令
23.3.8安装和拆卸文件系统
23.3.9 系统目录和文件
23.4 作为root运行的程序
23.4.1启动系统
23.4.2init进程
23.4.3进入多用户
23.4.4 shutdown命令
23.4.5系统V的cron程序
23.4.6系统V版本2之后的cron程序
23.4.7/etc/profile
23.5/etc/passwd文件
23.5.1口令时效
23.5.2UID和GID
23.6/etc/group文件
23.7增加、删除和移走用户
23.7.1增加用户
23.7.2删除用户
23.7.3将用户移到另 个系统
23.8安全检查
23.8.1记帐
23.8.2共他检查命令
23.8.3安全检查程序的问题
23.8.4 系统泄密后怎么办
23.9 加限制的环境
23.9.1加限制的外壳
23.9.2 用chroot()限制用户
23.10 小系统安全
23.11 物理安全
23.12 用户意识
23.13 系统管理员意识
23.13.1保持系统管理员个人的
登录安全
23.13.2 保持系统安全
第24章 系统程序员安全
24.1系统子程序
24.1.1I/O子程序
24.1.2 进程控制
24.1.3 文件属性
24.1.4 UID和GID的处理
24.2 标准C程序库
24.2.1标准I/O
24.2.2 /etc/passwd的处理
24.2.3/etc/group的处理
24.2.4 加密子程序
24.2.5 运行外壳
24.3编写安全的C程序
24.3.1 需要考虑的安全问题
24.3.2 SUID/SGID程序指导准则
24.3.3编译、安装SUID/SGID 程序
的方法
24.4root用户程序的设计
第25章 Linux系统的网络安全
25.1UUCP系统概述
25.1.1UUCP命令
25.1.2 uux命令
25.1.3uucico程序
25.1.4 uuxqt程序
25.2UUCP的安全问题
25.2.1USERFILE文件
25.2.2 L.cmds文件
25.2.3uucp登录
25.2.4 uucp使用的文件和目录
25.3HONEYDANBERUUCP
25.3.1HONEYDANBERUUCP
老UUCP的差别
25.3.2 登录名规则
25.3.3MACHINE规则
25.3.4 组合MACHINE和LOGNAME
规则
25.3.5uucheck命令
25.3.6 网关
25.3.7 登录文件检查
25.4其他网络
25.4.1远程作业登录
25.4.2 NSC网络系统
25.5通信安全
25.5.1物理安全
25.5.2 加密
25.5.3用户身份鉴别
25.6 SUNOS 系统的网络安全
25.6.1确保NFS的安全
25.6.2 NFS安全性方面的缺陷
25.6.3远程过程调用鉴别
25.6.4 Linux鉴别机制
25.6.5DES鉴别系统
25.6.6 公共关键字的编码
25.6.7 网络实体的命名
25.6.8DES鉴别系统的应用
25.6.9 遗留的安全问题
25.6.10 性能
25.6.11 启动和setuid程序引起的问题
25.6.12 小结
第26章 Linux系统的用户安全性
26.1口令安全
26.2文件许可权
26.3目录许可
26.4 umask命令
26.5设置用户ID和同组用户ID许可
26.6cpmvIn和cpio命令
26.7su和newgrp命令
26.7.1su命令
26.7.2newgrp命令
26.8文件加密
26.9 其他安全问题
26.9.1用户的profile文件
26.9.2 ls-a
26.9.3.exrc文件
26.9.4 暂存文件和目录
26.9.5UUCP和其他网络
26.9.6 特洛伊木马
26.9.7 诱骗
26.9.8计算机病毒
26.9.9 要离开自己已登录的终端
26.9.10 智能终端
26.9.11 断开与系统的连接
26.9.12 cu命令
26.10 保持帐户安全的要点
第六篇 XWindow系统的内部结构和使用
第27章 XWindow系统的基本知识
27.1XWindow系统介绍
27.1.1X的特点
27.1.2 什么是窗口系统
27.1.3X发展的历史
27.1.4 X的产品
27.1.5 MIT发行的X
27.2 X的从本结构
27.2.1X的从本元素
27.2.2服务程序和客户程序如何
交互通信
27.2.3X的网络概况
27.3 从川户界面的角度概观X
27.3.1管理界面:窗口管理器
27.3.2应用程序界面和工具箱
27.3.3儿他系统角度
27.4 术语和符号
27.4.1术语
27.4.2符号
27.5启动和关闭X
27.5.1启动X
27.5.2执行X程序的方式
27.5.3关闭X
27.6 窗口管理器从础 uwm
27.6.1什么是窗口管理器
27.6.2 启动uwm
27.6.3从本窗口操作 uwm
的莱单
27.6.4 移动窗口
27.6.5 重定窗口大小
27.6.6 建立新窗口
27.6.7管理屏幕空间
27.6.8中止应用程序窗口
27.6.9 激活uwm菜单的其他方式
27.7 使用X的网络设备
27.7.1指定远程终端机—— display
选项
27.7.2实际使用远程的显示器
27.7.3控制存取显示器 xhost
27.8终端机模拟器 详细介绍xterm
27.8.1选择xterm功能 菜单与
命令行选项
27.8.2 滚动xterm屏幕
27.8.3记录与终端机的交互过程 写
记录
27.8.4 剪贴文本
27.8.5使川Tektronix模拟功能
27.8.6 使用不同的字体
27.8.7 使川颜色
27.8.8其他xterm选项
27.8.9 设定终端机键盘
第28章 实用程序和工具
28.1实用程序
28.2保存、显示和打印屏幕图像
28.3使川X的应用程序
28.3.1文字编辑器 Xedit
28.3.2邮件信息处理系统 xmh
28.4示例和游戏程序
28.4.1找出通过随机迷宫的
路径 maze
28.4.2担任鼠标指针的大眼睛
xeyes
28.4.3智慧盘游戏——puzzle
28.4.4 打印一个人X标志—— xlogo
28.4.5跳动的多面体 ico
28.4.6动态儿何图案 munchcr与
plaid
28.7 显示信息和状态的程序
28.7.1列出X服务程序的特征——
Xdpyinfo
28.7.2 获取有关窗口的信息
28.7.3观察X的事件——xev
第29章 定制XWindow系统
29.1使用X的字体和颜色
29.1.1字体初步
29.1.2字体命名
29.1.3观察特定字体的内容 ——xfd
29.1.4 保存字体和位置
29.1.5 例子:在你的服务程序中
增加新字体
29.1.6使川X的颜色
29.2 定义和使用图形
29.2.1系统图形程序库
29.2.2交互编辑图形 ——bitmap
29.2.3编辑图形的其他方法
29.2.4 定制根窗口——xsetroot
29.3定义应用程序的缺省选项
Resources
29.3.1什么是资源
29.3.2XToolkit
29.3.3管理资源 资源管理器
29.3.4资源的类型 如何指定值
29.4 实际使用资源
29.4.1在何处保存资源的缺省值
29.4.2 在服务程序上保存缺省值卜——
xrdb
29.4.3常见的错误和修正
29.5定制键盘和鼠标
29.5.1实际使用转换
29.5.2转换 格式和规则
29.5.3转换规范中常见的问题
29.6 键盘和鼠标—— 对应和1参数
29.6.1键盘和鼠标映射 ——xmodmap
29.6.2键盘和鼠标参数设定——xset
29.7进一步介绍和定制uwm
29.7.1uwm的新特征
29.7.2 定制uwm
29.8显示器管理器 ——xdm
29.8.1需要做些什么
29.8.2xdm
29.8.3xdm的更多信息
29.8.4uwm配置
附录A GCC使用介绍
附录B 安装XWindow窗口系统
前言
第一篇 Linux系统介绍
第1章 Linux简介
1.1Linux的起源
1.2自由软件基金会的GNU计划
1.3Linux的发音
1.4Linux的特点
1.5基本硬件要求
1.6如何获得Linux
1.6.1从网上下载Linux
1.6.2从光盘获得Linux
1.7涉及Linux的Web网址和新闻讨论组
1.8Linux的不足之处
第2章 外壳及常用命令
2.1登录和退出
2.2Linux系统的外壳
2.3外壳的常用命令
2.3.1更改帐号密码
2.3.2联机帮助
2.3.3远程登录
2.3.4文件或目录处理
2.3.5改变工作目录
2.3.6复制文件
2.3.7移动或更改文件、目录名称
2.3.8建立新目录
2.3.9删除目录
2.3.10删除文件
2.3.11列出当前所在的目录位置
2.3.12查看文件内容
2.3.13分页查看文件内容
2.3.14查看目录所占磁盘容量
2.3.15文件传输
2.3.16文件权限的设定
2.3.17检查自己所属的工作组名称
2.3.18改变文件或目录工作组所有权
2.3.19改变文件或目录的最后修改时间
2.3.20文件的链接
2.3.21文件中字符串的查录
2.3.22查寻文件或命令的路径
2.3.23比较文件或目录的内容
2.3.24文件打印输出
2.3.25一般文件的打印
2.3.26troff文件的打印
2.3.27打印机控制命令
2.3.28进程控制
2.3.29外壳变量
2.3.30环境变量
2.3.31别名
2.3.32历史命令
2.3.33文件的压缩
2.3.34管道命令的使川
2.3.35输入/输出控制
2.3.36查看系统中的用户
2.3.37改变用户名
2.3.38查看用户名
2.3.39查看当前系统上所有工作站
的用户
2.3.40与某工作站上的用户交谈
2.3.41检查远程系统是否正常
2.3.42电子邮件的使用简介
第3章 Linux系统的网络功能
3.1Linux支持的网络协议
3.1.1TCP/IP
3.1.2TCP/IP版本6
3.1.3IPX/SPX
3.1.4AppleTalk协议集
3.1.5广域网
3.1.6ISDN
3.1.7PPP、SLIP及PLIP
3.1.8业余无线电
3.1.9ATM
3.2Linux系统下的文件共享和打印共享
3.2.1Machintosh环境
3.2.2Windows环境
3.2.3Novell环境
3.2.4UNIX环境
3.3Linux系统中的Internet/Intranet功能
3.3.1邮件
3.3.2Web服务器
3.3.3Web浏览器
3.3.4FTP服务器和客户机
3.3.5新闻服务
3.3.6域名系统
3.3.7DHCP和bootp
3.3.8NIS
3.4Linux系统下应用程序的远程执行
3.4.1Telnet
3.4.2远程命令
3.4.3XWindow
3.5Linux系统的网络互连功能
3.5.1路由器
3.5.2网桥
3.5.3IP伪装
3.5.4IP统计
3.5.5IP别名
3.5.6流量限制器
3.5.7防火墙
3.5.8端口下传
3.5.9负载平衡
3.5.10EQL
3.5.11代理服务器
3.5.12按需拨号
3.5.13管道、移动IP和虚拟个人网络
3.6Linux系统中的网络管理
3.6.1Linux系统下的网络管理应用程序
3.6.2SNMP
3.7企业级Linux网络
3.7.1高可用性
3.7.2RAID
3.7.3冗余网络
第4章 Linux系统管理简介
4.1root帐号
4.2启动和关闭系统
4.2.1从软盘启动
4.2.2使用LILO启动
4.2.3关闭Linux系统
4.3挂接文件系统
4.3.1挂接软盘
4.3.2创建新的文件系统
4.3.3卸载文件系统
4.4检查文件系统
4.5使用文件作为交换区
4.6系统和文件的备份
4.7设置系统
4.7.1设置系统名
4.7.2使用维护磁盘
4.7.3重新设置root帐号口令
4.7.4设置登录信息
第二篇 Linux高级语言及管理编程
第5章 外壳编程
5.1创建和运行外壳程序
5.1.1创建外壳程序
5.1.2运行外壳程序
5.2使用外壳变量
5.2.1给变量赋值
5.2.2读取变量的值
5.2.3位置变量和共他系统变量
5.2.4引号的作用
5.3数值运算命令
5.4条件表达式
5.4.1if表达式
5.4.2case表达式
5.5循环语句
5.5.1for语句
5.5.2while语句
5.5.3 until语句
5.6shift命令
5.7Select语句
5.8repeat语句
5.9子函数
第6章 gawk语言编程
6.1gawk的主要功能
6.2如何4执行gawk程序
6.3文件、记录和字段
6.4模式和动作
6.5比较运算和数值运算
6.6内部函数
6.6.1随机数和数P学函数
6.6.2字符串的内部函数
6.6.3 输入输出的内部函数
6.7字符串和数字
6.8格式化输出
6.9改变字段分隔符
6.10元字符
6.11调用gawk程序
6.12卫BEGIN和END
6.13变量
6.14内置变量
6.15控制结构
6.15.1if表达式
6.15.2while循环
6.15.3for循环
6.15.4next和exit
6.16数组
6.17川户自定义函数
6.18儿个实例
第7章 Perl语言编程
7.1什么是Perl
7.2Perl的现状
7.3初试P erl
7.4Perl变量
7.4.1标量
7.4.2数组
7.4.3相关数组
7.5文件句柄和文件操作
7.6循环结构
7.6.1foreach循环
7.6.2判断运算
7.6.3for循环
7.6.4 while和until循环
7.7条件结构
7.8字符匹配
7.9替换和翻译
7.9.1替换
7.9.2翻译
7.10 子过程
7.10.1子过程的定义
7.10.2参数
7.10.3返回值
7.11 Perl程序的完整例了
第8章 Linux内核简介
8.1系统初始化
8.2系统运行
8.3内核提供的各种系统调用
8.3.1进程的从本概念和系统
8.3.2创建和撤消进程
8.3.3执九行程序序
第9章 系统进程
9.1什么是进程
9.2进程的结构
9.3进程调度
9.4进程使用的文件
9.5进程使川的虚拟内存
9.6创建进程
9.7进积的时间和计时器
9.7.1实时时钟
9.7.2虚拟时钟
9.7.3形象时钟
9.8程序的执行
9.8.1ELF文件
9.8.2脚本文件
第10章 内存管理
10.1内存管理的作用
10.2虚拟内存的抽象模型
10.3按需装入页面
10.4交换
10.5共享虚拟内存
10.6存取控制
10.7高速缓存
10.7.1缓冲区高速缓存
10.7.2页面高速缓存
10.7.3交换高速缓存
10.7.4硬件高速缓存
10.8系统页面表
10.9页面的分配和释放
10.9.1页面的分配
10.9.2页面的释放
10.10内存映射
10.11请求调页
10.12页面高速缓存
10.13内核交换守护进程
第11章 进程间通信
11.1信号机制
11.2管道机制
113SystemVIPC机制
11.3.1信息队列
11.3.2信号量
11.3.3共享内存
第12章 PCI
12.1PCI系统
12.2PCI地址空间
12.3PCI设置头
12.4PCII/O和PCI内存地址
12.5PCI-ISA桥
12.6PCI-PCI桥
12.7PCI初始化
12.7.1Linux系统内核有关PCI的
数据结构
12.7.2 PCI设备驱动程序
12.7.3 PCIBIOS函数
12.7.4 PCIFixup
第13章 中断和中断处理
13.1中断
13.2可编程中断控制器
13.3初始化中断处理的数据结构
13.4中断处理
第14章 设备驱动程序
14.1硬件设备的管理
14.2轮询和中断
14.3直接内存存取
14.4内存
14.5设备驱动程序和内核之间的接日
14.5.1字符设备
14.5.2块设备
14.6 硬盘
14.6.1IDE硬盘
14.6.2初始化IDE硬盘子系统
14.6.3SCSI硬盘
14.6.4初始化SCSI磁盘子系统
14.6.5传递块设备请求
14.7网络设备
14.7.1网络设备文件名
14.7.2总线信息
14.7.3网络接目标记
14.7.4协议信息
14.7.5初始化网络设备
第15章 文件系统
15.1Linux文件系统概述
15.2 ext2文件系统
15.2.1ext2的索引节点
15.2.2ext2超级块
15.2.3ext2数据块组描述符
15.2.4ext2中的目录
15.2.5在ext2文件系统中查找文件
15.2.6改变ext2文件系统中文件
的大小
15.3VFS
15.3.1.VFS超级块
15.3.2 VFS索引节点
15.3.3登记文件系统
15.3.4 挂接文件系统
15.3.5在VFS中查找文件
15.3.6撤消文件系统
15.3.7VFS索引节点缓存
15.3.8VFS目录缓存
15.4 缓冲区缓存
15.5/proc文件系统
第16章 网络系统
16.1TCP/IP网络简介
16.2TCP/IP网络的分层
16.3BSD套接口
16.4INET套接口层
16.4.1创建BSD套接口
16.4.2给INETBSD套接口指定地址
16.4.3在INETBSD套接口上创建连接
16.4.4监听INETBSD套接口
16.4.5接收连接请求
16.5IP层
16.5.1套接口缓冲区
16.5.2接收IP数据包
16.5.3发送IP数据包
16.5.4数据碎片
16.6地址解析协议
第17章 系统内核机制
17.1BottomHalf处理
17.2任务队列
17.3计时器
17.4等待队列
17.5信号量
第四篇 Linux系统高级编程
第18章 Linux内核模块编程
18.1 个简单程序HelloWorld
18.2 设备文件
18.3 proc义件系统
18.4 使用/proc输入
18.5 与设备文件通信
18.6 启动参数
18.7 系统调用
18.8 阻塞进程
18.9 替换printk
18.10 调度任务
第19章 有关进程通信的编程
19.1进程间通信简介
19.2半双工UNIX管道
19.2.1基本概念
19.2.2使用C语言创建管道
19.2.3创建管道的简单方法
19.2.4使用管道的自动操作
19.2.5使用半双工管道时的注意事项
19.3命名管道
19.3.1基本概念
19.3.2创建FIFO
19.3.3FIFO操作
19.3.4FIFO的阻塞
19.3.5SIGPIPE信号
19.4 SystemVIPC
19.4.1基本概念
19.4.2消息队列基本概念
19.4.3系统调川msgget()
19.4.4系统调川msgsnd()
19.4.5系统调用msgctl()
19.4.6一个msgtool的实例
19.5使用信号量编程
19.5.1基本概念
19.5.2系统调用semget()
19.5.3系统调用semop()
19.5.4系统调用semctl()
19.5.5使用信号量集的实例:semtool
19.6 共享内存
19.6.1基本概念
19.6.2 系统内部用户数据结构
shmidds
19.6.3系统调川shmget()
19.6.4 系统调用shmat()
19.6.5系统调川shmctl()
19.6.6系统调用shmdt()
19.6.7使用共享内存的实例:shmtool
第20章 高级线程编程
20.1线程的概念和用途
20.2个简单的例子
20.3线程同步
20.4使用信号量协调程序
20.5信号量的实现
20.5.1Semaphore.h
20.5.2Semaphore.c
第21章 Linux系统网络编程
21.1什么是套接口
21.2两种类型的Internet套接口
21.3网络协议分层
21.4数据结构
21.5IP地址和如何使川IP地址
21.5.1socket()
21.5.2bind()
21.5.3connect()
21.5.4listen()
21.5.5accept()
21.5.6send()和recv()
21.5.7sendto0和recvfrom()
21.5.8close()和shutdown0
21.5.9getpeername()
21.5.10gethostname()
21.6 DNS
21.7客户机/服务器模式
21.8简单的数据流服务器程序
21.9简单的数据流客户机程序
21.10数据报套接口
21.11阻塞
第22章 LinuxI/O端口编程
22.1如何在C语言下使用I/O端口
22.1.1 一般的方法
22.1.2另一个替代方法:/dev/port
22.2 硬件中断与DMA存取
22.3高精确的时间
22.3.1延迟时间
22.3.2时间的量测
22.4 使用共他程序语言
22.5 些有用的I/O 端口
22.5.1并行端口
22.5.2游戏端口
22.5.3串行端口
第五篇 Linux系统安全分析
第23章 系统管理员安全
23.1安全管理
23.2超级用户
23.3文件系统安全
23.3.1 Linux文件系统概述
23.3.2设备文件
23.3.3/etc/mknod命令
23.3.4 安全考虑
23.3.5find命令
23.3.6secure程序
23.3.7ncheck命令
23.3.8安装和拆卸文件系统
23.3.9 系统目录和文件
23.4 作为root运行的程序
23.4.1启动系统
23.4.2init进程
23.4.3进入多用户
23.4.4 shutdown命令
23.4.5系统V的cron程序
23.4.6系统V版本2之后的cron程序
23.4.7/etc/profile
23.5/etc/passwd文件
23.5.1口令时效
23.5.2UID和GID
23.6/etc/group文件
23.7增加、删除和移走用户
23.7.1增加用户
23.7.2删除用户
23.7.3将用户移到另 个系统
23.8安全检查
23.8.1记帐
23.8.2共他检查命令
23.8.3安全检查程序的问题
23.8.4 系统泄密后怎么办
23.9 加限制的环境
23.9.1加限制的外壳
23.9.2 用chroot()限制用户
23.10 小系统安全
23.11 物理安全
23.12 用户意识
23.13 系统管理员意识
23.13.1保持系统管理员个人的
登录安全
23.13.2 保持系统安全
第24章 系统程序员安全
24.1系统子程序
24.1.1I/O子程序
24.1.2 进程控制
24.1.3 文件属性
24.1.4 UID和GID的处理
24.2 标准C程序库
24.2.1标准I/O
24.2.2 /etc/passwd的处理
24.2.3/etc/group的处理
24.2.4 加密子程序
24.2.5 运行外壳
24.3编写安全的C程序
24.3.1 需要考虑的安全问题
24.3.2 SUID/SGID程序指导准则
24.3.3编译、安装SUID/SGID 程序
的方法
24.4root用户程序的设计
第25章 Linux系统的网络安全
25.1UUCP系统概述
25.1.1UUCP命令
25.1.2 uux命令
25.1.3uucico程序
25.1.4 uuxqt程序
25.2UUCP的安全问题
25.2.1USERFILE文件
25.2.2 L.cmds文件
25.2.3uucp登录
25.2.4 uucp使用的文件和目录
25.3HONEYDANBERUUCP
25.3.1HONEYDANBERUUCP
老UUCP的差别
25.3.2 登录名规则
25.3.3MACHINE规则
25.3.4 组合MACHINE和LOGNAME
规则
25.3.5uucheck命令
25.3.6 网关
25.3.7 登录文件检查
25.4其他网络
25.4.1远程作业登录
25.4.2 NSC网络系统
25.5通信安全
25.5.1物理安全
25.5.2 加密
25.5.3用户身份鉴别
25.6 SUNOS 系统的网络安全
25.6.1确保NFS的安全
25.6.2 NFS安全性方面的缺陷
25.6.3远程过程调用鉴别
25.6.4 Linux鉴别机制
25.6.5DES鉴别系统
25.6.6 公共关键字的编码
25.6.7 网络实体的命名
25.6.8DES鉴别系统的应用
25.6.9 遗留的安全问题
25.6.10 性能
25.6.11 启动和setuid程序引起的问题
25.6.12 小结
第26章 Linux系统的用户安全性
26.1口令安全
26.2文件许可权
26.3目录许可
26.4 umask命令
26.5设置用户ID和同组用户ID许可
26.6cpmvIn和cpio命令
26.7su和newgrp命令
26.7.1su命令
26.7.2newgrp命令
26.8文件加密
26.9 其他安全问题
26.9.1用户的profile文件
26.9.2 ls-a
26.9.3.exrc文件
26.9.4 暂存文件和目录
26.9.5UUCP和其他网络
26.9.6 特洛伊木马
26.9.7 诱骗
26.9.8计算机病毒
26.9.9 要离开自己已登录的终端
26.9.10 智能终端
26.9.11 断开与系统的连接
26.9.12 cu命令
26.10 保持帐户安全的要点
第六篇 XWindow系统的内部结构和使用
第27章 XWindow系统的基本知识
27.1XWindow系统介绍
27.1.1X的特点
27.1.2 什么是窗口系统
27.1.3X发展的历史
27.1.4 X的产品
27.1.5 MIT发行的X
27.2 X的从本结构
27.2.1X的从本元素
27.2.2服务程序和客户程序如何
交互通信
27.2.3X的网络概况
27.3 从川户界面的角度概观X
27.3.1管理界面:窗口管理器
27.3.2应用程序界面和工具箱
27.3.3儿他系统角度
27.4 术语和符号
27.4.1术语
27.4.2符号
27.5启动和关闭X
27.5.1启动X
27.5.2执行X程序的方式
27.5.3关闭X
27.6 窗口管理器从础 uwm
27.6.1什么是窗口管理器
27.6.2 启动uwm
27.6.3从本窗口操作 uwm
的莱单
27.6.4 移动窗口
27.6.5 重定窗口大小
27.6.6 建立新窗口
27.6.7管理屏幕空间
27.6.8中止应用程序窗口
27.6.9 激活uwm菜单的其他方式
27.7 使用X的网络设备
27.7.1指定远程终端机—— display
选项
27.7.2实际使用远程的显示器
27.7.3控制存取显示器 xhost
27.8终端机模拟器 详细介绍xterm
27.8.1选择xterm功能 菜单与
命令行选项
27.8.2 滚动xterm屏幕
27.8.3记录与终端机的交互过程 写
记录
27.8.4 剪贴文本
27.8.5使川Tektronix模拟功能
27.8.6 使用不同的字体
27.8.7 使川颜色
27.8.8其他xterm选项
27.8.9 设定终端机键盘
第28章 实用程序和工具
28.1实用程序
28.2保存、显示和打印屏幕图像
28.3使川X的应用程序
28.3.1文字编辑器 Xedit
28.3.2邮件信息处理系统 xmh
28.4示例和游戏程序
28.4.1找出通过随机迷宫的
路径 maze
28.4.2担任鼠标指针的大眼睛
xeyes
28.4.3智慧盘游戏——puzzle
28.4.4 打印一个人X标志—— xlogo
28.4.5跳动的多面体 ico
28.4.6动态儿何图案 munchcr与
plaid
28.7 显示信息和状态的程序
28.7.1列出X服务程序的特征——
Xdpyinfo
28.7.2 获取有关窗口的信息
28.7.3观察X的事件——xev
第29章 定制XWindow系统
29.1使用X的字体和颜色
29.1.1字体初步
29.1.2字体命名
29.1.3观察特定字体的内容 ——xfd
29.1.4 保存字体和位置
29.1.5 例子:在你的服务程序中
增加新字体
29.1.6使川X的颜色
29.2 定义和使用图形
29.2.1系统图形程序库
29.2.2交互编辑图形 ——bitmap
29.2.3编辑图形的其他方法
29.2.4 定制根窗口——xsetroot
29.3定义应用程序的缺省选项
Resources
29.3.1什么是资源
29.3.2XToolkit
29.3.3管理资源 资源管理器
29.3.4资源的类型 如何指定值
29.4 实际使用资源
29.4.1在何处保存资源的缺省值
29.4.2 在服务程序上保存缺省值卜——
xrdb
29.4.3常见的错误和修正
29.5定制键盘和鼠标
29.5.1实际使用转换
29.5.2转换 格式和规则
29.5.3转换规范中常见的问题
29.6 键盘和鼠标—— 对应和1参数
29.6.1键盘和鼠标映射 ——xmodmap
29.6.2键盘和鼠标参数设定——xset
29.7进一步介绍和定制uwm
29.7.1uwm的新特征
29.7.2 定制uwm
29.8显示器管理器 ——xdm
29.8.1需要做些什么
29.8.2xdm
29.8.3xdm的更多信息
29.8.4uwm配置
附录A GCC使用介绍
附录B 安装XWindow窗口系统
猜您喜欢