嵌入式Linux C语言应用开发教程 超清第2版

  • 更新时间:
  • 2183人关注
  • 点击下载

嵌入式Linux C语言应用开发教程》是一本关于Linux相关的电子书资源,介绍了关于嵌入式、Linux、C语言方面的内容,本书是由人民邮电出版社出版,格式为,资源大小240 MB,华清远见嵌入式学院,刘洪涛,苗德行,高明编写,目前豆瓣、亚马逊、当当、京东等综合评分为:8.1分,一起来看下具体内容。

资源详情相关推荐
《嵌入式Linux C语言应用开发教程》封面
  • 出版社:人民邮电出版社
  • 作者:华清远见嵌入式学院,刘洪涛,苗德行,高明
  • 大小:240 MB
  • 类别:Linux
  • 热度:907
  • Linux宝典
  • Linux系统架构和应用技巧
  • Linux系统添加服务或修改服务
  • Linux shell学习笔记+Shell脚本常用命令
  • Linux Shell脚本攻略(第3版)
  • 嵌入式Linux C语言应用开发教程(移动学习版 第2版)》重点介绍嵌入式Linux应用开发的基本概念和核心理论。全书分为10 章,包括嵌嵌入式系统基础、嵌入式Linux C语言程序开发工具、嵌入式Linux C语言基础、嵌入式Linux开发环境的搭建、嵌入式Linux文件I/O编程、嵌入式Linux多任务编程、嵌入式Linux网络编程、嵌入式Linux设备驱动编程、Qt图形编程和综合案例——仓库信息处理系统。本书在讲解中给出了翔实的实例,并在部分章节后详细设计并分析了实验内容。 本书可作为高等院校计算机类、电子类、电气类、控制类专业高年级本科生、研究生学习嵌入式Linux应用开发的教材,也可供希望转入嵌入式领域的科研和工程技术人员参考使用。

    目录

    • 第1章 嵌入式系统基础
    • 1.1 嵌入式系统概述
    • 1.1.1 嵌入式系统的基本概念
    • 1.1.2 嵌入式系统的体系结构
    • 1.1.3 几种常用的嵌入式操作系统
    • 1.1.4 嵌入式系统发展趋势
    • 1.2 ARM处理器硬件开发平台
    • 1.2.1 嵌入式处理器简介
    • 1.2.2 ARM处理器简介
    • 1.2.3 Exynos4412处理器简介
    • 1.3 嵌入式软件开发流程
    • 1.3.1 嵌入式系统开发概述
    • 1.3.2 嵌入式软件开发概述
    • 1.4 实验内容:使用SD-CARD 烧写EMMC
    • 小结
    • 思考与练习
    • 第2章 嵌入式Linux C语言程序开发工具
    • 2.1 嵌入式Linux下C语言概述
    • 2.2 编辑器vim
    • 2.2.1 vim的基本模式
    • 2.2.2 vim的基本操作
    • 2.3 编译器gcc
    • 2.3.1 gcc的简介
    • 2.3.2 gcc的编译流程
    • 2.3.3 gcc的常用编译选项
    • 2.4 调试器gdb
    • 2.4.1 gdb的使用流程
    • 2.4.2 gdb的基本命令
    • 2.4.3 gdbserver的远程调试
    • 2.5 make工程管理器
    • 2.5.1 makefile的基本结构
    • 2.5.2 makefile的变量
    • 2.5.3 makefile的规则
    • 2.5.4 make管理器的使用
    • 2.6 实验内容
    • 2.6.1 vim使用练习
    • 2.6.2 用gdb调试程序的bug
    • 2.6.3 编写包含多文件的makefile
    • 第3章 嵌入式Linux C语言基础
    • 3.1 预处理
    • 3.1.1 预定义
    • 3.1.2 文件包含
    • 3.1.3 条件编译
    • 3.2 C语言中的内存分配
    • 3.2.1 C语言程序所含内存分类
    • 3.2.2 堆和栈的区别
    • 3.3 程序的可移植性考虑
    • 3.3.1 字长和数据类型
    • 3.3.2 数据对齐
    • 3.3.3 字节顺序
    • 3.4 C和汇编的接口
    • 3.4.1 内嵌汇编的语法
    • 3.4.2 编译器优化
    • 3.4.3 C语言关键字volatile
    • 3.5 ARM Linux内核常见数据结构
    • 3.5.1 链表
    • 3.5.2 树、二叉树、平衡树
    • 3.5.3 哈希表
    • 第4章 嵌入式Linux开发环境的搭建
    • 4.1 构建嵌入式Linux开发环境
    • 4.1.1 嵌入式交叉编译环境搭建
    • 4.1.2 主机交叉开发环境配置
    • 4.2 Bootloader
    • 4.2.1 Bootloader的种类
    • 4.2.2 U-Boot编译与使用
    • 4.2.3 U-Boot移植
    • 4.3 Linux内核与移植
    • 4.3.1 Linux内核结构
    • 4.3.2 Linux内核配置与编译
    • 4.3.3 Linux设备树文件
    • 4.3.4 Linux内核移植
    • 4.4 嵌入式文件系统构建
    • 第5章 嵌入式Linux文件I/O编程
    • 5.1 Linux系统调用及用户编程接口
    • 5.1.1 系统调用
    • 5.1.2 用户编程接口
    • 5.1.3 系统命令
    • 5.2 Linux文件I/O系统概述
    • 5.2.1 虚拟文件系统
    • 5.2.2 通用文件模型
    • 5.2.3 Linux中文件及文件描述符
    • 5.3 底层文件I/O操作
    • 5.3.1 基本文件操作
    • 5.3.2 文件锁
    • 5.3.3 多路复用
    • 5.4 标准I/O编程
    • 5.4.1 基本操作
    • 5.4.2 其他操作
    • 5.4.3 目录操作
    • 5.5 实验内容
    • 第6章 嵌入式Linux多任务编程
    • 6.1 Linux下多任务概述
    • 6.1.1 任务
    • 6.1.2 进程
    • 6.1.3 线程
    • 6.2 进程控制编程
    • 6.2.1 进程编程基础
    • 6.2.2 Linux守护进程
    • 6.3 进程间通信
    • 6.3.1 Linux下进程间通信概述
    • 6.3.2 管道通信
    • 6.3.3 信号通信
    • 6.3.4 信号量
    • 6.3.5 共享内存
    • 6.3.6 消息队列
    • 6.4 多线程编程
    • 6.4.1 线程基本编程
    • 6.4.2 线程之间的同步与互斥
    • 6.4.3线程属性
    • 6.4.4 线程私有数据
    • 6.5 实验内容
    • 6.5.1 编写多进程程序
    • 6.5.2 编写守护进程
    • 6.5.3 有名管道通信实验
    • 6.5.4 共享内存实验
    • 6.5.5 线程池实验
    • 第7章 嵌入式Linux网络编程
    • 7.1 TCP/IP概述
    • 7.1.1 TCP/IP的分层模型
    • 7.1.2 TCP/IP分层模型特点
    • 7.1.3 TCP/IP核心协议
    • 7.2 网络编程基本知识
    • 7.2.1 套接字概述
    • 7.2.2 地址及顺序处理
    • 7.2.3 套接字编程
    • 7.2.4 编程实例
    • 7.3 网络高级编程
    • 7.3.1 非阻塞和异步I/O
    • 7.3.2 使用多路复用
    • 7.4 实验内容:NTP的客户端实现
    • 第8章 嵌入式Linux设备驱动编程
    • 8.1 设备驱动编程基础
    • 8.1.1 Linux设备驱动概述
    • 8.1.2 Linux内核模块编程
    • 8.2 字符设备驱动编程
    • 8.2.1 字符设备驱动编写流程
    • 8.2.2 重要数据结构
    • 8.2.3 设备驱动程序主要组成
    • 8.2.4 字符设备驱动程序框架
    • 8.3 基于设备树的字符驱动程序实例
    • 8.4 GPIO驱动程序实例
    • 8.4.1 GPIO工作原理
    • 8.4.2 GPIO驱动程序
    • 8.5 按键驱动程序实例
    • 8.5.1 中断编程
    • 8.5.2 按键工作原理
    • 8.5.3 按键驱动程序
    • 8.5.4 中断信息的编写
    • 第9章 Qt图形编程
    • 9.1 嵌入式GUI简介
    • 9.1.1 Qt/Embedded
    • 9.1.2 其他嵌入式图形用户界面开发环境
    • 9.2 Qt/Embedded开发入门
    • 9.2.1 Qt/Embedded介绍
    • 9.2.2 Qt/Embedded信号和插槽机制
    • 9.2.3 搭建Qt/Embedded-5.8.0开发环境
    • 9.2.4 Qt/Embedded窗口部件
    • 9.2.5 Qt/Embedded图形界面编程
    • 9.2.6 Qt/Embedded对话框设计
    • 9.3 实验内容:使用Qt编写 “Hello,World”程序
    • 第10章 综合实例——仓库信息处理系统
    • 10.1 仓库信息处理系统概述
    • 10.1.1 系统组成
    • 10.1.2 前端数据中心(Cortex-A9)
    • 10.1.3 显示中心
    • 10.2 基本数据结构
    • 10.3 功能实现
    • 10.3.1 数据接收模块
    • 10.3.2 数据处理模块
    • 10.3.3 共享内存刷新模块
    • 10.3.4 显示中心
    • 10.3.5 线程相关
    • 参考文献
    展开阅读

    Linux相关资源

    • Linux驱动程序开发实例

      Linux驱动程序开发实例

      本书使用了较新的Linux内核,基于Linux4.5内核,提供了丰富的实例代码和详细的注释,实例丰富,讲解细致。强烈建议嵌入式开发人员阅读

      大小:138.8 MBLinux

      立即下载
    • RHCSA/RHCE 红帽Linux认证学习指南

      RHCSA/RHCE 红帽Linux认证学习指南

      《RHCSA/RHCE 红帽Linux认证学习指南(第7版)EX200 EX300》 包含数百道自测题和实验题,涵盖备考RHCSA和RHCE这两门极富挑战性的考试需要掌握的所有内容。这本综合性指南针对Red Hat Enterprise Linux7做

      大小:147.3 MBLinux

      立即下载
    • Linux就是这个范儿

      Linux就是这个范儿

      Linux就是这个范儿 内容源自淘宝技术大学的培训实战。由来自阿里巴巴集团的资深Linux系统专家赵鑫磊和同样来自阿里巴巴集团的支付宝网络技术有限公司的高级专家Jie Zhang(张洁)共同著写。

      大小:181 MBLinux

      立即下载
    • Linux C程序设计王者归来

      Linux C程序设计王者归来

      《 Linux C程序设计王者归来 》由浅入深,全面细致地讲述了Linux环境C程序设计从基本概念到实际操作,从核心原理到具体实践,再到实际案例开发等内容,涵盖了Linux C程序设计的所有重要知识

      大小:147.9 MB程序设计

      立即下载
    • 深入Linux内核架构

      深入Linux内核架构

      这书探讨了Linux内核的定义、构造和保持。主题思想包含任务管理、调度和进程管理,物理内存的管理方法及其内核与相关硬件设备的互动,客户室内空间的系统进程怎样浏览虚拟内存,怎样撰

      大小:108.5 MBLinux

      立即下载
    • Linux就该这么学

      Linux就该这么学

      大小:19.2 MBLinux

      立即下载

    学习笔记

    7小时42分钟前回答

    用C语言操作MySQL数据库的通用方法

    在我们的web应用中,虽然PHP、JSP等脚本均提供了MySQL的接口,但是显然直接使用C语言具有更好的安全性和性能,在这篇文章中能够有所体现。 先看结构体: 以下代码块是用来连接数据库的通讯过程,要连接MYSQL,必须建立MYSQL实例,通过mysql_init初始化方能开始进行连接. typedef struct st_mysql { NET net; /* Communication parameters */ gptr connector_fd; /* ConnectorFd for SSL */ char *host,*user,*passwd,*unix_socket, *server_version,*host_info,*info,*db; unsigned int port,client_flag,server_capabilities; unsigned int protocol_version; unsigned int field_count; unsigned int server_status; unsigned long thread_id; /* Id for connection in server */ my_ulonglong affected_rows; my_ulonglong insert_id; /* id if……

    5小时48分钟前回答

    python中赋值与c语言区别

    python中赋值与c语言区别?先来看看简单的 Python 代码在内存中是什么样子的: b = 3b = b + 5 它在内存中的操作示意图是这样的: 然而,从代码的的字面意思上看,“把 3 赋给 b,把 b 加 5 之后再赋给 b。” 也就是把代码看成这个样子: b ← 3b ← b + 5 所以下面这张在内存中的操作图可能更符合我们的直觉: 也即 b + 5 的值又写回到 b 中。典型的 C 程序就是这样的。为变量 b 分配一个 int 型的内存单元,然后将整数 3 存放在该内存单元中。b 就代表了该块内存空间,不再移动,可以更新 b 的值,但 b 在内存中的地址就不再变化了。所以我们说 b = b + 5,就等于 b ← b + 5,把 b 的值加 5 之后还依然放入 b 中。 变量……