热门关键字:  听力密码  单词密码  新概念美语  巧用听写练听力  零起点

Linux基础及应用教程

中国水利水电出版社
    【作 者】陈英 梁建武主编 【I S B N 】978-7-5084-6037-6 【责任编辑】张玉玲 【适用读者群】本科 【出版时间】2008-11-01 【开 本】16开本 【装帧信息】平装(光膜) 【版 次】第1版 【页 数】260 【千字数】 【印 张】 【定 价】26 【丛 书】21世纪高等学校精品教材 【备注信息】
图书详情

      本书以Fedora Core Linux为基础,介绍Linux系统的概念、原理和管理等方面的内容。主要分为3个部分,包括Linux基础、Linux内核机制和嵌入式Linux的应用开发。Linux基础部分详细介绍Linux的安装过程、基本操作命令,为Linux初学者能快速入门提供了保证。接着系统讲解了Linux下的C编程基础、进程控制开发、进程间通信、网络应用开发、Linux与Windows的资源共享等,最后介绍了嵌入式Linux应用开发。本书内容实例丰富、讲解清晰、在学习过程中力避代码复杂冗长。简短的实例特别有助于初学者仿效理解、把握问题的精髓和对应用程序框架的整体认识;它的创新之处就是为读者提供开发的过程,而不局限书的每个知识点堆积。

      本书可作为高等院校(含高职)电子类、计算机类、信息类等专业的Linux课程教材,也可作为广大Linux用户、系统管理员和Linux系统自学者的参考书或培训教材,还可作为希望转入嵌入式领域的科研和工程技术人员参考使用。

    在多年Linux教学、应用的基础上编写;内容选取上尽可能将最新、最实用的技术写到教材里;坚持侧重实践、由浅入深的原则;通过具体操作实例理解和掌握所学知识

    Linux是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。可移植性为运行Linux的不同计算机平台与其他任何机器进行准确而有效的通信提供了手段,不需要另外增加特殊的和昂贵的通信接口。本书的侧重点是理论与实践相结合,遵循循序渐进、由浅入深的认识特点来安排各个章节的内容顺序,从而使读者达到学以致用的目的。

    第1章至第6章介绍Linux系统的概念、原理和进程控制、管理、通信等方面的内容。

    第7章至第9章介绍Linux网络管理的相关服务。完善的内置网络是Linux的一大特点。Linux在通信和网络功能方面优于其他操作系统。其他操作系统不包含如此紧密地和内核结合在一起的连接网络的能力,也没有内置这些联网特性的灵活性。而Linux为用户提供了完善的、强大的网络功能。Linux对计算机网络产生了巨大影响。

    第10章介绍Linux内核机制。Linux是具有设备独立性的操作系统,它的内核具有高度适应能力,随着更多的程序员加入Linux编程,会有更多硬件设备加入到各种Linux内核和发行版本中。另外,由于用户可以免费得到Linux的内核源代码,因此用户可以修改内核源代码,以便适应新增加的外部设备。

    第11章介绍嵌入式Linux。进入20世纪90年代,嵌入式技术全面展开,目前已成为通信和消费类产品的共同发展方向,嵌入式系统已经渗透到我们生活中的每个角落,如工业、服务业等。Linux系统有着嵌入式操作系统需要的很多特色和突出的优势:适应于多种CPU和多种硬件平台,性能稳定,裁剪性很好,开发和使用都很容易。嵌入式Linux是将日益流行的Linux操作系统进行裁剪、修改,使之能在嵌入式计算机系统上运行的一种操作系统。除了智能数字终端领域外,Linux在移动计算平台、智能工控设备、金融业终端系统,甚至军事领域都有广泛的应用前景,这些Linux称为“嵌入式Linux”。嵌入式Linux既继承了Internet上无限的开放源代码资源,又具有嵌入式操作系统的特性。

    本书是在多年Linux教学、应用的基础上编写的。在内容选取上,尽可能将最新、最实用的技术写到教材里,坚持侧重实践、由浅入深的原则,通过具体的操作实例让读者分层次、分步骤地理解和掌握所学的知识。

    本书由陈英、梁建武任主编,谭海龙、刘旭光任副主编。其中陈英编写第4、5、7、8章,梁建武编写第1~3章和第6章,谭海龙编写第9章和第10章,刘旭光编写第11章。在本书的编写过程中,参考了有关文献,谨此向这些文献的作者表示感谢。

    由于时间仓促加之作者水平有限,书中的不足之处在所难免,敬请广大读者批评指正。

    编者

    2008年9月


    前言
    第1章 Linux入门 1
    1.1 Linux基础知识 1
    1.2 Linux系统安装 5
    1.2.1 做好安装前的准备工作 5
    1.2.2 安装Fedora Core Linux 7
    1.3 Linux文件及文件系统 21
    1.3.1 Linux中常见的文件类型 21
    1.3.2 Linux文件系统 23
    习题一 25
    第2章 Linux基础命令 26
    2.1 系统基本操作 26
    2.1.1 系统登录和退出 26
    2.1.2 修改口令 28
    2.2 Linux常用操作命令 28
    2.2.1 文件和目录的基本概念 28
    2.2.2 文件和目录命令 31
    2.2.3 进程管理命令 44
    2.2.4 文件压缩命令 58
    2.2.5 网络命令 59
    2.2.6 联机帮助命令 62
    2.2.7 操作要点 62
    2.3 Linux启动过程详解 63
    2.3.1 启动GRUB/LILO 63
    2.3.2 加载内核 65
    2.3.3 执行init进程 65
    2.3.4 通过/etc/inittab文件进行初始化 65
    2.4 Linux系统服务 67
    2.4.1 系统服务的作用 67
    2.4.2 Linux系统服务 67
    2.5 系统安全性 69
    2.5.1 系统管理员安全 69
    2.5.2 文件系统安全 69
    2.5.3 /etc/passwd文件 72
    2.5.4 /etc/group文件 72
    2.5.5 增加和删除用户 72
    2.5.6 系统检查命令 73
    习题二 73
    第3章 Linux下的C编程基础 75
    3.1 概述 75
    3.1.1 C语言简单回顾 75
    3.1.2 Linux下C语言编程环境概述 76
    3.2 vi编辑器 76
    3.2.1 vi的工作模式 76
    3.2.2 vi的启动和退出 77
    3.2.3 文本输入 78
    3.2.4 文本修改 79
    3.2.5 文件操作 82
    3.3 Emacs 82
    3.3.1 Emacs的基本操作 83
    3.3.2 Emacs的编译概述 85
    3.4 Gcc编译器 87
    3.4.1 Gcc简介 87
    3.4.2 Gcc的基本用法和选项 88
    3.4.3 编译多个源文件 89
    3.5 Gdb调试器 90
    3.5.1 启动Gdb 91
    3.5.2 设置断点 93
    3.6 Make工程管理器 94
    3.6.1 Makefile的基本概念 95
    3.6.2 Make管理器的使用 96
    3.7 使用autotools 97
    习题三 99
    第4章 进程控制开发 100
    4.1 Linux下的进程概述 100
    4.1.1 进程的概念 100
    4.1.2 进程的结构 101
    4.2 Linux进程控制编程 102
    4.2.1 进程的创建 102
    4.2.2 进程的等待 103
    4.2.3 进程的终止 103
    4.2.4 进程映像的更换 103
    4.3 Linux守护进程 104
    4.3.1 守护进程及其特性 104
    4.3.2 守护进程的编程要点 104
    4.4 Linux内核简介 105
    4.5 shell基本工作原理及编程 107
    4.5.1 shell的基本工作原理 108
    4.5.2 创建和执行shell脚本 109
    4.5.3 shell变量 110
    4.5.4 shell的特性 112
    4.5.5 控制结构 117
    习题四 122
    第5章 进程间通信 123
    5.1 Linux下的进程间通信概述 123
    5.2 管道通信 124
    5.2.1 管道概述 124
    5.2.2 管道创建与关闭 125
    5.2.3 管道读写 125
    5.2.4 标准流管道 127
    5.2.5 FIFO 128
    5.3 信号机制 132
    5.3.1 信号概述 132
    5.3.2 信号的发送 134
    5.3.3 信号的处理 136
    5.4 共享内存 140
    5.4.1 共享内存概述 140
    5.4.2 共享内存实现 141
    5.5 消息队列 144
    5.5.1 消息队列概述 144
    5.5.2 消息队列实现 145
    5.6 信号量 148
    习题五 150
    第6章 多线程编程 151
    6.1 Linux下的线程概述 151
    6.2 Linux线程实现 152
    6.2.1 一个简单的多线程程序 152
    6.2.2 修改线程的属性 154
    6.2.3 线程的数据处理 155
    习题六 163
    第7章 管理网络服务 164
    7.1 网络配置文件 164
    7.1.1 /etc/hosts IP地址和主机名的映射 164
    7.1.2 /etc/services 映射服务名和端口号 165
    7.1.3 /etc/host.conf配置名字解析器 165
    7.1.4 /etc/nsswitch.conf 配置名字解析器 166
    7.1.5 /etc/sysconfig/network网络配置 166
    7.1.6 /etc/resolv.conf配置DNS客户 167
    7.1.7 /etc/init.d/network 主机地址、子网掩码和网关 167
    7.2 配置FTP服务 168
    7.2.1 FTP协议 168
    7.2.2 FTP服务器vsftpd的配置 168
    7.3 配置邮件服务器 170
    7.3.1 电子邮件简介 170
    7.3.2 sendmail服务器 172
    7.4 网络文件系统 175
    7.4.1 网络文件系统简介 175
    7.4.2 配置网络文件系统 175
    7.5 安装Web服务器 177
    7.5.1 Web服务器概述 177
    7.5.2 Apache的特性 179
    7.5.3 Apache的配置 180
    7.6 网络安全 182
    7.6.1 网络安全主要特征 182
    7.6.2 网络安全威胁 182
    7.6.3 网络安全主要技术 183
    习题七 185
    第8章 远程管理系统 187
    8.1 使用Telnet 187
    8.1.1 Telnet简介 187
    8.1.2 Telnet协议 187
    8.1.3 Telnet的配置 189
    8.2 安全的SSH 191
    8.2.1 SSH简介 191
    8.2.2 SSH协议 192
    8.2.3 SSH的安全验证 192
    8.2.4 OpenSSH的配置 192
    8.3 使用图形化的VNC 196
    8.3.1 VNC概述 196
    8.3.2 使用VNC Server 196
    8.3.3 VNC Viewer 197
    习题八 200
    第9章 与Windows共享资源 201
    9.1 使用Samba共享资源 201
    9.1.1 Samba概述 201
    9.1.2 Samba的配置 201
    9.1.3 Samba使用 204
    9.2 Windows模拟程序Wine 209
    9.2.1 Wine简介 209
    9.2.2 Wine支持的功能 210
    9.2.3 安装Wine 211
    9.2.4 使用Wine 212
    9.3 访问Windows分区 212
    习题九 214
    第10章 Linux内核机制 215
    10.1 Linux内核简介 215
    10.1.1 Linux内核的地位 215
    10.1.2 系统初始化及运行 215
    10.1.3 内核提供的各种系统调用 216
    10.1.4 存取文件系统 217
    10.2 Linux内核源码 218
    10.2.1 了解Linux内核源码 218
    10.2.2 内核机制 220
    10.2.3 内核模块的装入与卸载 222
    10.3 Linux内核分析 223
    10.3.1 相关源码的分析 223
    10.3.2 对内核源码的修改 224
    习题十 227
    第11章 嵌入式Linux 228
    11.1 嵌入式系统简介 228
    11.1.1 嵌入式系统的定义 228
    11.1.2 嵌入式系统的特征 228
    11.2 嵌入式Linux基础 229
    11.2.1 嵌入式Linux的应用 229
    11.2.2 Linux作为嵌入式操作系统的优势 230
    11.3 Linux I/O端口编程 231
    11.3.1 如何在C语言下使用I/O端口 231
    11.3.2 硬件中断与DMA存取 232
    11.3.3 延迟时间 232
    11.4 嵌入式Linux开发 232
    11.4.1 构造嵌入式Linux前先要了解的几个关键问题 232
    11.4.2 嵌入式Linux开发环境 236
    11.4.3 开发嵌入式Linux的步骤 237
    习题十一 245
    参考文献 246 
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册