Linux 基础及应用教程 (21世纪高等院校规划教材)

分类: 图书,计算机/网络,操作系统/系统开发,LINUX ,
作者: 陈英等主编
出 版 社: 水利水电出版社
出版时间: 2008-11-1字数: 393000版次: 1页数: 245印刷时间: 2008/11/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787508460376包装: 平装编辑推荐
注重学科体系的完整性,兼顾考研学生需要;强调理论与实践相结合,注重培养专业技能。
采用“任务驱动”的编写方式,引入案例和启发式教学方法;提供电子教案,案例素材等教学资源,教材立体化配套;满足高等院校应用型人才培养的需要。
内容简介
本书以Fedora Core Linux为基础,介绍Linux系统的概念、原理和管理等方面的内容,主要分为3部分:Linux基础、Linux内核机制、嵌入式Linux的应用开发。Linux基础部分详细介绍Linux的安装过程、基本操作命令,为Linux初学者能快速入门提供了保证。接着系统讲解Linux下的C编程基础、进程控制开发、进程间通信、网络应用开发、Linux与Windows的资源共享等。最后介绍嵌入式Linux的应用开发。本书实例丰富、讲解清晰、力避代码复杂冗长。简短的实例特别有助于初学者仿效理解、把握问题的精髓和对应用程序框架的整体认识;它的创新之处就是为读者提供开发的过程,而不局限于每个知识点的堆积。
本书可作为高等院校(含高职)电子类、计算机类、信息类等专业的Linux课程教材,也可作为广大Linux用户、系统管理员和Linux系统自学者的参考书或培训教材,还可作为希望转入嵌入式领域的科研和工程技术人员参考使用。
目录
序
前言
第1章Linux入门
1.1Linux基础知识
1.2Linux系统安装
1.2.1做好安装前的准备工作
1.2.2安装Fedora Core Linux
1.3 Linux文件及文件系统
1.3.1 Linux中常见的文件类型
1.3.2Linux文件系统
习题一
第2章Linux基础命令
2.1系统基本操作
2.1.1系统登录和退出
2.1.2修改口令
2.2Linux常用操作命令
2.2.1文件和目录的基本概念
2.2.2文件和目录命令
2.2.3进程管理命令
2.2.4文件压缩命令
2.2.5网络命令
2.2.6联机帮助命令
2.2.7操作要点
2.3 Linux启动过程详解
2.3.1 启动GRUB/LILO
2.3.2加载内核
2.3.3执行init进程
2.3.4通过/etc/inittab文件进行初始化
2.4Linux系统服务
2.4.1 系统服务的作用
2.4.2Linux系统服务
2.5系统安全性
2.5.1系统管理员安全
2.5.2文件系统安全
2.5.3/etc/passwd文件
2.5.4/etc/group文件
2.5.5增加和删除用户
2.5.6系统检查命令
习题二
第3章Linux下的C编程基础
3.1 概述
3.1.1c语言简单回顾
3.1.2Linux下C语言编程环境概述
3.2vi编辑器
3.2.1vi的工作模式
3.2.2vi的启动和退出
3.2.3文本输入
3.2.4文本修改
3.2.5文件操作
3.3Emacs
3.3.1 Emacs的基本操作
3.3.2 Emacs的编译概述
3.4 Gcc编译器
3.4.1 Gcc简介
3.4.2 Gcc的基本用法和选项
3.4.3编译多个源文件
3.5Gdb调试器
3.5.1 启动Gdb
3.5.2设置断点
3.6Make工程管理器
3.6.1 Makefile的基本概念
3.6.2 Make管理器的使用
3.7使用autotools
习题三
第4章进程控制开发
4.1Linux下的进程概述
4.1.1进程的概念
4.1.2进程的结构
4.2Linux进程控制编程
4.2.1进程的创建
4.2.2进程的等待
4.2.3进程的终止
4.2.4进程映像的更换
……
第5章进程间通信
第6章多线程编程
第7章管理网络服务
第8章远程管理系统
第9章与Windows共享资源
第10章Linux内核机制
第11章嵌入式Linux
参考文献
书摘插图
第1章Linux入门
1.1Linux基础知识
Linux是专门为个人计算机设计的操作系统。它最早是由Linus T0rvalds设计的。当时Linux是他的一项个人研究项目,目的是为Minix用户设计一个比较有效的uNIx PC版本。Linus Torvalds称它为Linux。Minix是由Andrew Tannebaum教授开发的,发布在Internet上,免费给全世界的学生使用。Minix具有较多l-YNIX的特点,但与LJNIX不完全兼容,Linus打算为Minix用户设计一个较完整的uNIX PC版本,于1991年发行了Linux 0.11版本,并将它发布在Intemet上,免费供人们使用。以后几年,其他的Linux爱好者根据自己的使用情况,综合现有的UNIX标准和UNIX系统中应用程序的特点,修改并增加了一些内容,使得Linux的功能更完善。
Linux是在Internet开放环境中开发的,它由世界各地的程序员不断完善,而且免费供用户使用。尽管如此,它仍然遵循商业uNlx版本的标准,因为前几十年里,UNIX版本大量出现,电子电气工程师协会(IEEE)开发了一个独立的LJNIX标准,这个新的ANSI LINIX标准被称为计算机环境的可移植性操作系统界面(POSIX)。这个标准限定了LINIX系统如何进行操作,对系统调用也做了专门的论述。POSIX限制所有UNIX版本必须依赖大众标准,现有大部分UNIX和流行版本都是遵循POSIX标准的,而Linux从一开始就遵循POSIX标准。Linux设计了与所有主要窗口管理器的接口,提供了大量Intemet工具,如FTP、Telnet和sLIP等。
L,inux操作系统在短时间内得到了非常迅猛的发展,这与Linux具有的良好特性是分不开的。Linux包含了uNIx的全部功能和特性。简单地说,Linux具有以下主要特性:
(1)开放性。
开放性是指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。凡遵循国际标准所开发的硬件和软件都能彼此兼容,可方便地实现互连。
(2)多用户。
多用户是指系统资源可以被不同用户各自拥有使用,即每个用户对自己的资源(如文件、设备)有特定的权限,互不影响。Linux和uNIx都具有多用户的特性。
(3)多任务。
多任务是现代计算机最主要的一个特点。它是指计算机同时执行多个程序,而且各个程序的运行互相独立。Linux系统调度每一个进程平等地访问微处理器。由于CPU的处理速度非常快,其结果是,启动的应用程序看起来好像在并行运行。事实上,从处理器执行一个应用程序中的一组指令到Linux调度微处理器再次运行这个程序之间只有很短的时间延迟,用户是感觉不出来的。
……