
linux 文档
zhaoercheng1201
这个作者很懒,什么都没留下…
展开
-
linux 队列用法
最近没事总结一下linux中队列的用法和自己在代码中遇到的原创 2014-07-28 22:40:42 · 608 阅读 · 0 评论 -
内核驱动系列--中断和定时器
一、中断1 概述: Linux 的中断处理分为顶半部和底半部,顶半部完成尽可能少得的比较紧急的功能,往往只是简单的完成“登记中断”的工作, 就是就是将底半部处理程序挂到该设备的底半部处理队列中去。但是,也不能僵化的认为linux设备驱动中的中断处理一定分 为两个半部,如果中断要处理的工作本身就很少,则完全可以在顶半部全部完成。查看/proc/interrupts文件可以获得系转载 2014-02-18 17:11:41 · 617 阅读 · 0 评论 -
Linux 系统内核空间与用户空间通信的实现与分析
多数的 Linux 内核态程序都需要和用户空间的进程交换数据,但 Linux 内核态无法对传统的 Linux 进程间同步和通信的方法提供足够的支持。本文总结并比较了几种内核态与用户态进程通信的实现方法,并推荐使用 netlink 套接字实现中断环境与用户态进程通信。1 引言Linux 是一个源码开放的操作系统,无论是普通用户还是企业用户都可以编写自己的内核代码,再加上对标准内核的裁转载 2014-02-28 15:26:16 · 456 阅读 · 0 评论 -
DMA 工作原理
1.DMA请求CPU对DMA控制器初始化,并向I/O接口发出操作命令,I/O接口提出DMA请求。2.DMA响应 DMA控制器对DMA请求判别优先级及屏蔽,向总线裁决逻辑提出总线请求。当CPU执行完当前总线周期即可释放总线控制权。此时,总线裁决逻辑输出总线应答,表示DMA已经响应,通过DMA控制器通知I/O接口开始DMA传输。3.DMA传输 DMA控制器获得总线控制权转载 2013-11-13 15:09:02 · 2786 阅读 · 0 评论 -
内核的 工作队列 使用方法,struct work_struct
工作队列一般用来做滞后的工作,比如在中断里面要做很多事,但是比较耗时,这时就可以把耗时的工作放到工作队列。说白了就是系统延时调度的一个自定义函数。1、定义struct work_struct irq_queue;2、初始化INIT_WORK(&irq_queue,do_irq_queuework);3、调用方法:schedule_work(&rq_queue);注,转载 2013-11-27 14:19:19 · 1256 阅读 · 0 评论 -
嵌入式Linux内核与驱动面试要点:
1. 实际经验:所开发驱动程序或内核模块的来龙去脉(需求、设计思想、实现方法、要点难点,特别是硬件调试过程中所遇到的特殊情况),所修复BUG的现象、调试手段、原因分析和解决方案。2. 驱动调试:内核的调试手段、应用程序的调试手段(内核Panic所dump的信息以及Panic的分析、应用程序core dump的分析)。3. 驱动基础:mknod与udev,module相关API,内核Make转载 2013-11-11 21:16:57 · 1399 阅读 · 0 评论 -
Linux内核驱动模块
Linux设备驱动会以内核模块的形式出现,因此,学会编写Linux内核模块编程是学习Linux设备驱动的先决条件。4.1~4.2节讲解了Linux内核模块的概念和结构,4.3~4.8节对Linux内核模块的各个组成部分进行了展现,4.1~4.2与4.3~4.8节是整体与部分的关系。4.9节说明了独立存在的Linux内核模块的Makefile文件编写方法和模块的编译方法。4.1 Linu转载 2013-11-08 16:13:22 · 637 阅读 · 0 评论 -
libata模块解释
进来分析libata模块,颇有所感,记录如下,希望能对大家有所帮助,同时也对自己的理解进一步深入。linux版本:linux-2.6.24.3注:因完全是个人理解,理解不当难免,恳请批评指正!!!!大家知道驱动程序在初始化sata controller后, 并初始化ata_host结构体后,会调用函数ata_host_activate进入libata的初始化,我们从这里开始分析。转载 2013-11-04 14:16:27 · 1379 阅读 · 0 评论 -
中断控制---工作队列
中断控制---Tasklet 中断控制---任务队列中断控制---工作队列 2012-05-29 11:37:29| 分类:Kernel | 标签:|字号大中小 订阅1、工作队列描述:工作队列(work queue)是将任务推后执行的另外一种手段;它的使用方法与Tasklet非常相似,最大的不同就是工作队转载 2013-11-07 19:19:19 · 450 阅读 · 0 评论 -
Linux下PCI设备驱动程序开发
PCI是一种广泛采用的总线标准,它提供了许多优于其它总线标准(如EISA)的新特性,目前已经成为计算机系统中应用最为广泛,并且最为通用的总线标准。Linux的内核能较好地支持PCI总线,本文以Intel 386体系结构为主,探讨了在Linux下开发PCI设备驱动程序的基本框架。一、PCI总线系统体系结构PCI是外围设备互连(Peripheral Component Interconne转载 2013-11-09 19:06:24 · 1034 阅读 · 0 评论 -
linux查看硬件信息及驱动设备相关整理
在LINUX环境开发驱动程序,首先要探测到新硬件,接下来就是开发驱动程序。常用命令整理如下:用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart)查看CPU信息:cat /proc/cpuinfo查看板卡信息:cat /proc/pci查看PCI信息:lspci (相比cat /proc/pci更直观)查看内存信息:cat /转载 2013-10-31 16:18:01 · 938 阅读 · 0 评论 -
insmod: no symbol version for module_layout
insmod: no symbol version for module_layout 2011-03-21 11:24:25| 分类:操作系统 | 标签:|字号大中小 订阅解决方法汇总:The package kernel-default-devel was missing. To install it, run this command as ro转载 2013-11-21 16:59:18 · 4379 阅读 · 0 评论