摘要: 第十二章 Linux 驱动程序中的 阻塞和非阻塞 I/O 等待队列是 Linux 内核的一种实现进程休眠的技术。在上一章介绍的自旋锁使用的是不断循环 的方式阻塞 Linux 驱动,这种方式很占 CPU 资源。而等待队列的你眠技术可以大大降低休眠进程对 CPU 资源的消耗,信号量就是利用等待队列实现了 阅读全文
posted @ 2016-07-07 21:17 杨洒洒 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 第十一章 Linux驱动程序中的 并发控制 并发(concurrency)指的是多个执行单元同时、并行被执行。而并发的执行单元对共享资 源〈如硬件资摞、程序中的全局变量、静态变量等〉的访问很容易导致竞态条件( race conditions)。 自旋锁并不关心锁定的|临界区究竟是怎样的操作,不管是读 阅读全文
posted @ 2016-07-07 21:16 杨洒洒 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 第十章 嵌入式 Linux 的调试技术 printk 函数的原型如下:asmlinkage int printk(const char * fmt, ... ) printk文件是一个简单的有 4 个数字组成的文本文件,6,4,1,7 6: 将消息输出到控制台的级别。只有商于该级别的输出信息才会输出 阅读全文
posted @ 2016-07-07 21:15 杨洒洒 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 第九章 硬件抽象层 HAL 在传统的Linux.系统中Linux驱动一般有两种类型的代码:访问硬件寄存器的代码和业务逻辑有码。对于访问硬件寄存器的代码,并没有什么秘密可言,因为这都是调用的 Linux 内核的标准函数进行的标准操作4 而Linux驱动的业务逻辑部分对击有些企业或个人并不想将源代码公开 阅读全文
posted @ 2016-07-07 21:14 杨洒洒 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 第八章 让开发板发出声音:蜂鸣器驱动 一.Linux驱动的代码重用。Linux驱动的代码重用有很多种方法。可以采用标准的C程序的方式,将要重用的代码放在其他的文件中。也可以使用另外一种动态重用的方式,也就是哟个Linux驱动可以使用另外一个Linux驱动中的资源。 二.强行卸载Linux驱动。如果编 阅读全文
posted @ 2016-06-03 11:38 杨洒洒 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 第七章 LED将为我闪烁:控制发光二极管 一.LED驱动的实现原理。尽管Linux驱动直接和硬件打交道,但并不是Linux驱动直接向硬件中的内存写数据,而是与本机的I/O内存进行交互。 二.编写LED驱动。Linux驱动提供了两种交互方式:命令和读写设备文件。LED驱动以动态驱动模块的形式提供,测试 阅读全文
posted @ 2016-06-03 11:37 杨洒洒 阅读(220) 评论(0) 推荐(0) 编辑
摘要: 第五章 搭建S3C6410开发板的测试环境 一.S3C6410开发板简介.S3C6410是三星公司推出的一款低功耗,高性价比的RISC处理器,它基于ARM11内核,可广泛应用于移动电话和通用处理器等领域。该处理器有一个非常先进的3D加速器,能实现4M/s的3D加速 二.安装串口调试工具:minico 阅读全文
posted @ 2016-06-03 11:36 杨洒洒 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 第五章 搭建S3C6410开发板的测试环境 一.S3C6410开发板简介.S3C6410是三星公司推出的一款低功耗,高性价比的RISC处理器,它基于ARM11内核,可广泛应用于移动电话和通用处理器等领域。该处理器有一个非常先进的3D加速器,能实现4M/s的3D加速 二.安装串口调试工具:minico 阅读全文
posted @ 2016-06-03 11:35 杨洒洒 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 第四章 源代码的下载和编译 这章主要介绍了如何下载和编译Android源代码和Linux内核源代码。 Android源代码包含了很多东西,如内嵌在Android系统中的应用程序的源代码;Android SDK带的各种工具的源代;Android NDK的源代码;HAL源代码。 一、配置Android源 阅读全文
posted @ 2016-04-27 19:15 杨洒洒 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 第三章 Git使用入门 Git的功能很复杂,为了使我们尽快了解到Git的基本用法。这章主要用一个完整的例子来演示如何创建版本库,提交源代码,创建分支,向远程服务器获取源代码等技术。 Linus以一个文件系统专家和内核设计者的视角对Git进行了设计,其独特的设计使让Git拥有非凡的性能和最优化的存储能 阅读全文
posted @ 2016-04-27 19:14 杨洒洒 阅读(137) 评论(0) 推荐(0) 编辑