摘要:1、jiffies 又称时钟滴答,是一个全局变量,它的值在系统引导的时候初始化为0,在时钟中断初始化完成后,每次时钟中断发生,在时钟中断处理例程中都会将jiffies的值 +1。 jiffies_64:为了解决jiffies溢出问题,更重要的是通过jiffies_64可以知道自开机以来的时间间隔。 阅读全文
IOCTL函数用法
2017-09-27 16:41 by nigaopeng, 4661 阅读, 0 推荐, 收藏,
摘要:一、ioctl的简介: 虽然在文件操作结构体"struct file_operations"中有很多对应的设备操作函数,但是有些命令是实在找不到对应的操作函数。如CD-ROM的驱动,想要一个弹出光驱的操作,这种操作并不是所有的字符设备都需要的,所以文件操作结构体也不会有对应的函数操作。 出于这样的原 阅读全文
嵌入式中 ARM的几种工作模式 以及异常模式的优先级
2017-09-21 16:43 by nigaopeng, 3528 阅读, 0 推荐, 收藏,
摘要:一、Arm工作模式: Arm微处理器支持7种工作模式,分别为: 1. 用户模式(Usr) 用于正常执行程序 2. 快速中断模式(FIQ) 用于高速数据传输 3. 外部中断模式(IRQ) 用于通常的中断处理 4. 管理模式(SVC) 操作系统使用的保护模式(高权限),复位和软件中断进入 5. 数据访问 阅读全文
ARM 内核SP,LR,PC寄存器
2017-09-21 16:41 by nigaopeng, 3085 阅读, 0 推荐, 收藏,
摘要:深入理解ARM的这三个寄存器,对编程以及操作系统的移植都有很大的裨益。 1、堆栈指针r13(SP):每一种异常模式都有其自己独立的r13,它通常指向异常模式所专用的堆栈,也就是说五种异常模式、非异常模式(用户模式和系统模式),都有各自独立的堆栈,用不同的堆栈指针来索引。这样当ARM进入异常模式的时候 阅读全文
内核request_mem_region 和 ioremap的理解
2017-09-21 10:33 by nigaopeng, 850 阅读, 0 推荐, 收藏,
摘要:几乎每一种外设都是通过读写设备上的寄存器来进行的,通常包括控制寄存器、状态寄存器和数据寄存器三大类,外设的寄存器通常被连续地编址。根据CPU体系结构的不同,CPU对IO端口的编址方式有两种: (1)I/O映射方式(I/O-mapped) 典型地,如X86处理器为外设专门实现了一个单独的地址空间,称为 阅读全文
request_irq() | 注册中断服务
2017-09-21 10:15 by nigaopeng, 24099 阅读, 1 推荐, 收藏,
摘要:一、中断注册方法 在linux内核中用于申请中断的函数是request_irq(),函数原型在Kernel/irq/manage.c中定义: int request_irq(unsigned int irq, irq_handler_t handler, unsigned long irqflags 阅读全文
内核中的中断处理模型
2017-09-21 10:15 by nigaopeng, 714 阅读, 0 推荐, 收藏,
摘要:内核版本: Linux 2.6.19 Kernel中断处理模型结构图如下: 下面简单介绍一下: 1. Linux定义了名字为irq_desc的中断例程描述符表:(include/linux/irq.h) struct irqdesc irq_desc[NR_IRQS]; NR_IRQS表示中断源的数 阅读全文
linux中的阻塞机制及等待队列
2017-09-20 19:31 by nigaopeng, 686 阅读, 0 推荐, 收藏,
摘要:阻塞与非阻塞是设备访问的两种方式。驱动程序需要提供阻塞(等待队列,中断)和非阻塞方式(轮询,异步通知)访问设备。在写阻塞与非阻塞的驱动程序时,经常用到等待队列。 一、阻塞与非阻塞 阻塞调用是没有获得资源则挂起进程,被挂起的进程进入休眠状态,调用的函数只有在得到结果之后才返回,进程继续。 非阻塞是不能 阅读全文
access_ok | 检查用户空间内存块是否可用
2017-09-20 19:21 by nigaopeng, 923 阅读, 0 推荐, 收藏,
摘要:access_ok() 函数是用来代替老版本的 verify_area() 函数的。它的作用也是检查用户空间指针是否可用。函数原型:access_ok (type, addr, size);变量说明:type : 访问类型,其值可为 VERIFY_READ 或者 VERIFY_WRITE 。注意,V 阅读全文
BAT 批处理脚本教程
2017-09-19 17:27 by nigaopeng, 524 阅读, 0 推荐, 收藏,
摘要:第一章 批处理基础第一节 常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD。这些命令统称批处理命令。小知识:可以在键盘上按下Ctrl+C组合键来强行终止一个批处理的执行过程。了解了大概意思后,我们正式开始学习.先看 阅读全文
浙公网安备 33010602011771号