搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
嵌入式Linux上的C语言编程实践
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787121079993
  • 作      者:
    韩超,魏治宇,廖文江等著
  • 出 版 社 :
    电子工业出版社
  • 出版日期:
    2009
收藏
编辑推荐
  《嵌入式Linux上的C语言编程实践》特点:
  以介绍C语言为主,同时阐述了“C语言”、 “嵌入式”和“Linux”三者的关系。
  所介绍的C语言编程知识和技巧是基于Linux开发环境,其实也适用于其他开发环境下的C语言编程。
  深入挖掘C语言与硬件的关系,突出嵌入式编程的基本理念。
  将“嵌入式”与“C语言”结合起来讲解,帮助读者提高嵌入式开发的基本功。
展开
作者简介
  韩超,毕业于北京交通大学电子学院,曾在北京亚嵌教育研究中心担任嵌入式ARM-Linux系统平台的开发和教学工作,重视完整的知识体系与工程技术相结合。
  魏治宇,毕业于北京交通大学电子学院,曾在北京亚嵌教育研究中心及其合作单位负责嵌入式Linux相关平台的教材编写、软件开发和实验教学工作,对嵌入式系统理论知识与产品快速开发之间的关联性有较深刻的理解。
  寥文江,工学硕士,毕业于北京交通大学电子信息学院,目前在北京联合大学自动化学院从事嵌入式及Linux教学工作。研究方向为嵌入式实时操作系统、FPGA、Soc等,参与完成多项国家级、省部级科研项目并发表多篇学术论文。
展开
内容介绍
  《嵌入式Linux上的C语言编程实践》的讲解由浅入深,知识点突出,其中的一些示例取自常见技术和项目中的精华,工程应用性强。《嵌入式Linux上的C语言编程实践》适合高校学生阅读,帮助其向具有研发能力的工程技术人员过渡,同样也适用于嵌入式软件开发人员补充知识、开阔眼界。目前嵌入式技术和Linux程序开发技术成为计算机界比较流行的两大技术。作为一种非常基础和常用的编程语言,C语言在嵌入式系统开发中体现了其强大的软硬件操控能力。《嵌入式Linux上的C语言编程实践》重点关注嵌入式Linux中的C语言编程,目的在于帮助读者在基本掌握C语言的基础上,逐渐掌握嵌入式 Linux中的C语言开发技术。《嵌入式Linux上的C语言编程实践》包含程序环境搭建、调试技术、库函数、高级编程、程序优化等方面的知识。
展开
精彩书摘
  1.2 在Linux中使用c语言开发
  在Linux操作系统中,c语言程序的开发和其他环境类似,程序生成主要分成编译、汇编、连接等几个步骤。在Linux中使用文本编辑工具编辑程序源代码也是程序开发的重要步骤。
  1.2.1 开发流程和开发工具
  c语言程序的开发过程是:使用编辑工具编写文本形式的c语言源文件,然后编译生成以机器代码为主的二进制可执行程序的过程。由源文件生成可执行程序的开发过程如图1-1所示。
  编译是指把用高级语言编写的程序转换成相应处理器的汇编语言程序的过程。从本质上讲,编译是一个文本转换的过程。对嵌入式系统而言,一般要把用c语言编写的程序转换成处理器的汇编代码。编译过程包含了C语言的语法解析和汇编语言的生成两个步骤。汇编一般是逐个文件进行的,对于每一个C语言编写的文件,可能还需要进行预处理。
  汇编是从汇编语言程序生成目标系统的二进制代码(机器代码)的过程。机器代码的生成和处理器有密切的联系。相对于编译过程的语法解析,汇编的过程相对简单。这是因为对于一款特定的处理器,其汇编语言和二进制的机器代码是一一对应的。汇编过程的输入是汇编代码,这个汇编代码可能来源于编译过程的输出,也可以是直接用汇编语言书写的程序。
展开
目录
第一部分 基础知识
第1章 Linux环境下C语言的开发
1.1 Linux下的C语言开发环境
1.2 在Linux中使用C语言开发
1.2.1 开发流程和开发工具
1.2.2 Linux中程序的运行原理

第2章 嵌入式环境中的C语言开发
2.1 嵌入式C语言的开发环境
2.2 嵌入式开发中C语言编程要点

第二部分 Linux环境中C语言的开发环境和工具
第3章 Linux的文本编辑工具VI
3.1 VI编辑器概述
3.1.1 VI简介
3.1.2 VI的工作模式和使用
3.1.2 之前的准备
3.1.3 进入和退出VI
3.2 VI的增强版VIM
3.3 VI编辑器的基本使用方法
3.3.1 在屏幕上移动光标
3.3.2 插入文本
3.3.3 删除文本
3.3.4 修改文本内容
3.3.5 替换文本内容
3.3.6 合并文本内容
3.3.7 移动文本内容
3.4 VI编辑器的命令和高级操作
3.4.1 VI常用命令的列表
3.4.2 VI的一些高级的操作和
3.1.2 使用技巧

第4章 GCC程序开发工具
4.1 GNU工具综述
4.2 GCC的编译和连接
4.2.1 工程示例
4.2.2 编译、汇编和连接
4.2.3 动态库
4.3 GCC的二进制工具
4.3.1 ar(归档工具)
4.3.2 readelf(读取ELF格式
3.1.2 文件信息)
4.3.3 strings(查看字符串)
4.3.4 nm(显示符号信息)
4.3.5 strip(删除符号)
4.3.6 objdump(显示目标文件信息)
4.3.7 objcopy(复制目标文件)

第5章 make工程管理工具
5.1 make和Makefile
5.1.1 make机制概述
5.1.2 make和Makefile的使用
5.2 Makefile使用示例
5.2.1 简单的Makefile
5.2.2 Makefile中的依赖关系
5.2.3 Makefile中使用隐含规则
3.1.2 来编译程序
5.2.4 Makefile中指定依赖关系的
3.1.2 编译
5.3 自动生成Makefile
5.3.1 自动生成Makefile的意义和
3.1.2 相关工具
5.3.2 自动生成Makefile的流程

第6章 GDB调试工具
6.1 GDB简介
6.2 使用GDB调试程序
6.2.1 基本操作
6.2.2 查看命令
6.2.3 高级命令
6.2.4 attach命令的使用
6.3 远程GDB调试
6.3.1 本地GDB调试和远程GDB调试的比较
6.3.2 远程GDB调试流程
6.3.3 远程GDB调试示例

第三部分 库函数
第7章 C语言标准库函数
7.1 ISO的C语言标准库函数分类
7.2 标准格式化输入/输出类函数
7.2.1 scanf函数:格式化输入字符串
7.2.2 pnntf函数:格式化输出字符串
7.2.3 putchar函数:输出字符到标准输出
7.2.4 getchar函数:从标准输入获取字符
7.2.5 putc函数:向文件输出字符
7.2.6 getc函数:从文件输入字符
7.2.7 gets函数:获得字符串
7.2.8.puts函数:输出指定字符串
7.2.9 ungetc函数:把字符写回流中
7.3 字符处理类函数
7.4 字符串处理及转换函数
7.4.1 sprintf函数:格式化输出字符串到一个缓冲区
7.4.2 strcat和stmcat函数:字符串连接
7.4.3 strcpy和strncpy函数:字符串复制
7.4.4 strcmp和strncmp函数:字符串比较
7.4.5 strlen函数:获取字符串长度
7.4.6 strchr和strrchr函数:字符/字符串定位
7.4.7 strstr函数:字符串查找
7.4.8 strrev函数:字符串逆序
7.4.9 strupr和strlwr函数:字母形式转换
7.4.1 0strdup和strndup函数:字符串复制
7.4.1 1memset函数:内存设置
7.4.1 2memmove函数:内存移动
7.4.1 3memcmp函数:内存比较
7.4.1 4memcpy函数:内存复制
7.5 数学计算类函数
7.6 数据结构和算法类函数
7.6.1 bsearch函数:二元搜索
7.6.2 lfind函数:线性搜索
7.6.3 lsearch函数:线性搜索
7.6.4 qsort函数:利用快速排序法排列数组
7.6.5 rand函数:产生随机数
7.6.6 stand函数:设置随机数种子
7.7 文件I/O操作类相关函数
7.7.1 fopen函数:打开文件
7.7.2 fclose函数:关闭文件
7.7.3 fgetc函数:从文件中读取一个字符
7.7.4 fputc函数:将一指定字符写入文件流中
7.7.5 fgets函数:从文件中读取一字符串
7.7.6 fputs函数:将一指定的字符串写入文件内
7.7.7 rewind函数:重设文件流的读写位置为文件开头
7.7.8 fiell函数:取得文件流的读取位置
7.7.9 fseek函数:移动文件流的读写位置
7.7.1 0fwrite函数:将数据写至文件流
7.7.1 1fread函数:从文件流读取数据
7.7.1 2remove函数:删除文件
7.7.1 3rename函数:更改文件名称或位置
7.7.1 4freopen函数:重新打开文件
7.7.1 5fflush函数:同步缓冲区
7.7.1 6fgetpos函数:获得文件位置
7.7.1 7fsetpos函数:设置文件位置
7.7.1 8mktemp函数:建立临时文件
7.7.1 9tmpfile函数:临时文件
7.7.2 0tmpnam:得到临时文件名
7.8 日期时间类函数
7.8.1 clock函数:获得CPU时间
7.8.2 time函数:获得当前日历时间
7.8.3 difftime函数:获得时间差值
7.8.4 gmtime函数:将日历时间转换成UTC时间
7.8.5 mktime函数:将UTC时间转换成日历时间
7.8.6 asctime函数:将UTC时间转换成字符串
7.8.7 crime函数:将日历时间转换成当地时间的字符串
7.8.8 localtime函数:将日历时间转换成本地时间
7.8.9 strfrime函数:转换日期和时间格式
7.9 国际化和本地化函数
7.9.1 setlocale函数:本地化控制函数
7.9.2 localeconv函数:本地化转换
7.1 0错误处理类函数
7.1 0.1 clearerr函数:清除流中的结束指示符和错误指示符
7.1 0.2 feof函数:指示文件结束
7.1 0.3 ferror函数:指示文件出错
7.1 0.4 perror函数:输出出错信息
7.1 0.5 errno函数:错误编号记录
7.1 1其他一些工具函数
7.1 1.1 assert函数:程序诊断
7.1 1.2 长跳转函数
7.1 1.3 可变长的参数控制函数
7.1 1.4 获取结构体成员函数(宏)
7.1 2一些标准库中有用的宏

第8章 Linux中C语言的扩展库函数
8.1 文件I/O操作函数
8.1.1 open函数:打开文件
8.1.2 close函数:关闭文件
8.1.3 read函数:读文件
8.1.4 write函数:写文件
8.1.5 lseek函数:文件定位
8.1.6 ioctl函数:文件控制
8.1.7 flock函数:锁定文件
8.1.8 mmap函数和munmap函数:内存映射
8.1.9 create函数:创建新文件
8.1.1 0dup函数和dup2函数:复制文件描述符
8.1.1 1fcntl函数:改变已打开的文件的属性
8.2 文件权限相关的操作函数
8.2.1 access函数:判断是否具有存取文件的权限
8.2.2 chown函数和fchown函数:改变文件的所有者
8.2.3 chmod函数和:fchmod函数:改变权限
8.2.4 unlink函数:删除文件
8.2.5 utime函数和utimes函数:改变文件时间
8.2.6 umask函数:设置建立新文件时的权限掩码
8.2.7 link函数:建立文件连接
8.2.8 stat函数、fstat函数和lstat函数:获取文件信息
8.3 用户组操作函数
8.3.1 getgid函数和setgid函数:获得/设置组识别码
8.3.2 getegid函数和setegid函数:获得,设置有效的组识别码
8.3.3 getuid函数和setuid函数:获得,设置真实的用户识别码
8.3.4 geteuid函数和seteuid函数:获得,设置有效的用户识别码
8.3.5 getgroups函数和setgroups函数:获得/设置组代码
8.4 信号类函数
8.4.1 kill函数:传送信号给指定的进程
8.4.2 raise函数:信号发送函数
8.4.3 alarm函数:设置超时函数
8.4.4 signal函数:信号安装函数
8.5 进程处理函数
8.5.1 getpid函数和getppid函数:获得进程ID和父进程ID
8.5.2 fork函数:建立子进程
8.5.3 sleep函数和usleep函数:让进程暂停执行一段时间
8.5.4 exec函数族:找到可执行文件
8.5 _exit函数和_Exit函数:结束进程执行
……
第四部分 C语言高级编程
第9章 动态内存的堆与栈
第10章 函数指针的使用
第11章 回调函数的使用
第12章 C语言实现对象编程

第五部分 在嵌入式环境下的C语言编程
第13章 C语言程序的内存布局
第14章 嵌入式C语言常用语法
第15章 嵌入式C语言编程的技巧
参考文献
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证