Linux内核中ioremap映射的透彻理解

原文来自http://blog.csdn.net/hustyangju/article/details/20467007 几乎每一种外设都是通过读写设备上的寄存器来进行的,通常包括控制寄存器、状态寄存器和数据寄存器三大类,外设的寄存器通常被连续地编址。根据CPU体系结构的不同,CPU对I...

2014-08-19 10:43:31

阅读数 292

评论数 0

Linux用户空间与内核空间详解

Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数据可能不在内存中。 Linux内核地址映射模型 x86...

2014-06-17 12:48:25

阅读数 360

评论数 0

Linux内核空间和用户空间详解

linux驱动程序一般工作在内核空间,但也可以工作在用户空间。下面我们将详细解析,什么是内核空间,什么是用户空间,以及如何判断他们。   Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G.Linux内核将这4G字节的空间分为两部分。将最...

2014-06-12 15:57:43

阅读数 285

评论数 0

写驱动时交叉编译之makefile编写模板(tiny6410)

ifneq ($(KERNELRELEASE),)      obj-m := mini6410_leds.o else  KERNELDIR := /opt/FriendlyARM/mini6410/linux/linux-2.6.38 PWD:=$(sh...

2014-06-10 21:15:32

阅读数 685

评论数 0

写Makefile

其实,很多人都想搞嵌入式的驱动开发,也会去买各种各样的书籍来研究;书上的驱动程序讲的有理有据、仅仅有条,说的你心悦诚服然后你就会跟别人说“没错一个led驱动就是这么写的,对不会有错的!“,哎,显然我也是这种人(呵呵....);所以,当我第一次尝试把我原来写好(写好的代码指并未编译;也就是说连Mak...

2014-06-10 21:08:32

阅读数 393

评论数 0

GPIO驱动相关笔记

打算跟着友善之臂的《mini2440 linux移植开发指南》来做个LED驱动,虽然LED的原理简单得不能再简单了,但是要把kernel中针对于s3c24**的GPIO的一些数据结构,还有函数搞清楚也不是那么轻松的事,所以本文主要简单地说明下LED驱动中的相关数据结构以及函数/宏的定义,并对驱动加...

2014-06-10 21:05:40

阅读数 315

评论数 0

驱动模块Makefile解析

作者:王老师,华清远见嵌入式学院讲师。 先看一下代码 ifeq ($(KERNELRELEASE),)         KERNELDIR ?= /home/linux/linux-2.6.22.6         PWD := $(shell pwd)         modu...

2014-06-10 20:24:46

阅读数 262

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭