-
第一章Linux系统概述
本章将介绍Linux系统基本概念及其特点;介绍Linux系统内核版本命名规则;介绍Linux系统常见发行版本;分析Linux系统、UNIX系统和GNU的基本关系;介绍系统调用和库函数的基本关系;介绍C语言标准头文件和库文件的存储路径;重点介绍CentOS系统的安装方法。
-
●1.1Linux系统基本概念
本节主要介绍Linux系统内核及发行版本,重点讲解Linux系统特点。
-
●1.2Linux系统发展简史
本节按照时间的顺序,重点介绍Linux的起源与发展。
-
●1.3Linux系统的安装
本节主要介绍虚拟机的基本概念和学习环境,并重点讲述在虚拟机中安装CentOS6.7操作系统。
-
第二章Linux基本操作与开发环境搭建
本章重点介绍终端和Shell的概念、VIM文本编辑器的使用、以及Linux文件系统结构;重点讲解目录操作、文件内容的查看、文件的复制与移动、文件的权限设置、文件的打包与压缩、用户和用户组操作、重定向和管道等CentOS基本命令和基本工具;介绍Linux C程序开发流程,着重介绍GCC程序编译器的使用和Makefile自动化编译工具的使用。
-
●2.1终端与Shell
本节为大家介绍终端与Shell的概念、终端中运行命令和UI程序的方法、Shell命令查询和安装软件的方法等内容。
-
●2.2文本编辑器vim
本节重点介绍vim在运行过程中的三种基本模式;着重讲解vim新建、编辑、保存和退出文件的基本操作;介绍复制、粘贴、删除等vim命令。
-
●2.3文件系统结构
本节重点介绍Linux文件类型、Linux文件系统结构、以及Linux中文件相对和绝对路径的写法。
-
●2.4目录操作
本节重点介绍Linux中的5个目录操作命令:mkdir、cd、rmdir、ls、pwd。简单而言,我们可以把这5种目录操作总结为一句话:建、进、删、查、列。
-
●2.5文件内容的查看
本节段重点介绍查看文件内容的5种命令:cat、more、less、head、tail。这5个命令,Linux工程师在设计时在功能上各有侧重,避免了同质化和重复。
-
●2.6文件的复制与移动
本节重点介绍cp命令的基本用法:复制多个文件、文件夹;着重讲解复制文件必须具有的相应权限;重点介绍mv命令的基本用法:移动及重命名。
-
●2.7文件的权限
本节重点介绍文件权限概念,讲解文件的权限设置方法。
-
●2.8文件的打包与压缩
本节重点介绍使用gzip命令实现对文件的压缩和解压;使用tar命令实现对文件或目录的打包和拆包。
-
●2.9用户和用户组
本节重点介绍用户和组的概念,以及用户和组的管理命令,包括用户创建、用户删除、用户属性修改、口令设置、组创建、组删除等。
-
●2.10重定向和管道
本节重点介绍重定向和管道的概念、以及重定向和管道操作。
-
●2.11Linux C程序开发流程
本节主要介绍Linux编程概况;重点介绍Linux C程序开发流程;着重讲解编译工具gcc。
-
●2.12make工具
本节重点介绍“自动编译管理器”make工具,以及Makefile文件中make规则的写法。
-
第三章文件编程
本章主要为大家介绍Linux系统文件IO/标准IO基本概念、Linux系统文件IO/标准IO常用函数、Linux系统文件属性常用函数、Linux系统目录文件常用函数、Linux系统硬链接和软链接常用函数和Linux系统临时文件常用函数。
-
●3.1Linux文件系统概述
本节段重点为大家介绍文件管理系统的相关知识、对比介绍文件IO和标准IO、重点讲解文件描述符以及流和FILE对象、介绍缓冲机制。
-
●3.2文件IO基本操作-open( )、close( )
本节段简要介绍Linux系统文件IO的常用操作、主要介绍open()函数和close( )函数的函数原型、重点介绍open()函数的参数flags。
-
●3.3文件IO基本操作-read( )、write( )
本节段重点学习read()-读取文件,write()-写文件这两个文件IO接口函数。
-
●3.4文件IO基本操作-lseek( )
本节段首先重点讲解文件流和文件指针的概念、而后重点讲解lseek( )函数的函数原型和基本用法。
-
●3.5文件IO基本操作-stat( )
本节段简要介绍stat命令的用法,而后重点介绍stat( )函数的函数原型、struct stat结构体的格式、函数基本用法。
-
●3.6标准IO基本操作
本节段首先比较标准IO和文件IO,而后重点介绍常见的标准IO库函数fopen、fclose、fwrite、fread的函数原型和基本用法。
-
●3.7链接文件基本操作
本节段首先重点讲解链接文件的意义,而后简要介绍ln命令的用法,最后重点介绍软硬链接的函数原型的基本用法、并比较其不同。
-
第四章进程编程
本章主要介绍Linux系统进程的基本概念、Linux系统进程的基本状态、Linux系统进程的内存布局、Linux系统进程的创建、Linux系统进程体的替换、Linux系统进程间的通信方式。
-
●4.1Linux下C程序的内存映像(上)
本节段主要介绍计算机程序的本质、程序存储空间布局。
-
●4.2Linux下C程序的内存映像(下)
本节段主要介绍虚拟地址空间的管理和内存映射、程序的开始与结束、以及程序运行环境。
-
●4.3 Linux系统进程概述
本节段主要介绍进程及其特点、进程和程序的区别与联系、进程控制块PCB与进程ID、进程创建与终止、进程状态变迁、以及进程生命周期。
-
●4.4进程创建
本节段主要介绍进程控制块、fork()函数、fork()函数特点、fork()函数使用、以及父子进程对文件的操作。
-
●4.5进程资源回收
本节段重点介绍进程资源管理、进程资源回收原理、wait()函数、waitpid()函数、以及演示代码示例。
-
●4.6进程间通信----匿名管道和命名管道
本节段主要进行进程间通信简介;介绍匿名管道、匿名管道实现步骤、匿名管道常用函数;介绍命名管道、命名管道的创建、命名管道的读写;最后进行匿名管道与命名管道的比较。
-
●4.7进程间通信----信号量、消息队列和共享内存
本节段重点介绍信号量的概念、使用信号量的原因、信号量工作原理、信号量常用API、信号量编程;消息队列的概念、消息队列的特点、消息队列常用函数;共享内存的特点、共享内存实现步骤。
-
●4.8进程间通信----信号
本节主要介绍信号的概念、信号的发送者、信号处理、常见信号、以及常用信号函数。
-
第五章线程编程
本章主要介绍Linux系统线程基本概念、Linux系统线程与进程的差别、Linux系统线程的创建、Linux系统线程的取消和Linux系统线程的同步。
-
●5.1Linux线性编程概述
本节段主要介绍线程的基本概念、讲解线程和进程的区别。
-
●5.2线程控制-线程创建
本节段主要介绍线程的创建方法,介绍几个相关的函数:pthread_self ()、pthread_create ()、pthread_equal ()。
-
●5.3线程控制-线程终止
本节段主要介绍线程退出的3种方式、介绍相关函数 pthread_exit()和pthread_join()的用法。
-
●5.4线程同步-互斥量
本节段主要介绍线程同步的一种方法-互斥量。通过实例介绍互斥量的作用。
-
第六章网络编程
本章主要介绍计算机网络的基本概念及其分类、OSI参考模型和TCP/IP网络模型、IP地址分类方法和子网的划分方法、Socket基本概念和通信原理的实现、UNIX Domain的报文和流式Socket编程模型、UDP和TCP编程模型。
-
●6.1计算机网络基础
本节段主要介绍计算机网络的概念、计算机网络的起源和发展、以及计算机网络的分类和拓扑结构。
-
●6.2计算机网络体系结构
本节段主要介绍计算机网络的体系结构、OSI参考模型和TCP/IP网络模型。
-
●6.3TCP和UDP协议
本节段主要介绍用户数据报协议UDP和传输控制协议TCP。
-
●6.4IP协议
本节段主要介绍IP协议的相关知识、以及地址分类方法和子网的划分方法。
-
●6.5网络编程基础
本节段主要介绍Socket编程的基础知识和相关的函数。
-
●6.6套接字编程基础
本节段主要介绍Socket编程的基础知识、以及Socket编程相关的函数。