自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 调试设备驱动程序

linux内核没有集成对调试器的支持。指令级的KDB(kernel debudgger 内核调试器)源代码级调试器kgdb(kernel GNU DEBUGGER) 内核GNU调试器udev 工作1.内核中的sysfs支持,sysfs是Linux设备模型的重要组成部分。位于内存中,在启动时被挂载在/SYS目录下2.一套用户空间守护程序和实用工具 ,如udevd 和udeinfo

2016-06-30 15:31:55 266

原创 用户空间的驱动程序

大部分设备驱动程序倾向于工作在拥有特权的内核模式。但是有些无所谓的,如SCSI,USB,I2C等内核子系统在一定程序上支持用户模式驱动程序,可以不写就可以控制这些设备。从用户空间驱动1.访问IO区域linux上用户访问IO端口受到两个函数控制ioperm()iopl()2. 访问内存区域对于一个文件进行内存映射(mmaping )将使它与用户空间的一段虚拟内存区

2016-06-30 14:32:44 1529

原创 嵌入式Linux基础知识

目标设备与主机开发平台不同,需要使用交叉编译器bootlader设计是嵌入式软件开发的起点。bootstapp代码,,用于将bootloader放置到启动设备。 嵌入式引导程序中,分为两个阶段1. IPL:   initial program loader   初始化加载器2. SPL:  secondary  program loader 程序加载器

2016-06-30 10:38:08 532

原创 存储设备

MTD子系统提供了一个称为MTDblock的块驱动程序,它在闪存上模拟一块磁盘。可以将任何文件系统放在模拟的闪存磁盘上。mtdblock建立的设备节点dev/mtdblock/x 其中X是分区号字符设备模拟 mtdchar建立的设备节点/dev/mtd/x jffs2:journaling flash file sysytem 日志结构闪存文件系

2016-06-30 09:40:26 377

原创 linux存储技术设备

linux-mtd 子系统                 原始io      MTD 工具MTD核心  又库例程和数据结构组成    映射MAP驱动程序nor芯片驱动程序NAND芯片驱动程序用户模块用户空间       文件IO内核空间 VFS 层mtdblockNANd芯片驱动程序 核心MTD 层NOR芯片驱动程序硬件NAND

2016-06-29 19:15:47 440

原创 linux无线设备驱动

1.蓝牙OSI 模型  蓝牙栈应用层                                      profile表示层 RFcomm/bnep/sdp会话层 L2CAP L2CAP  logical link control and adapation protocol传输层 主机控制接口(HCI)硬件读、写数据的协议网络层 链接管理器数据链路层

2016-06-29 16:39:15 1456

原创 network interface card 网络接口卡

NIC: network interface card  网络接口卡ATS:asynchrounous transfer mode 异步传输总线套接字:源IP地址和目的IP地址以及源端口号和目的端口号的组合称为套接字。其用于标识客户端请求的服务器和服务。它是网络通信过程中端点的抽象表示,包含进行网络通信必须的五种信息:连接使用的协议,本地主机的IP地址,本地进程的协

2016-06-29 14:54:59 2692

原创 块设备驱动程序

块设备是一种能随机访问的存储介质,与字符设备不同,块设备能够保存文件系统数据。linux块IO层存储介质包含了驻留于文件系统中的文件,用户应用程序唤醒IO系统调用来访问这些文件,相关文件系统操作在到达各自文件系统驱动程序前,会先经过通用VFS(virtual file system)虚拟文件系统,高速缓冲区通过缓冲磁盘块来加速文件系统对块设备的访问。如果能够再高速缓冲区中找到块,就可以通过

2016-06-28 17:09:09 286

原创 音频驱动程序

PCM; pulse code modulation 脉冲编码调制ALSA: advanced linux sound  architecture 高级linux声音架构/dev/snd/controlco   控制节点/dev/snd/pcmc0dop     播放设备/dev/snd/pcm/pcmcodoc              录音设备mp3 音频软件1

2016-06-28 17:04:33 1040

原创 视频驱动程序

显示器接口方式1. 模拟2.LVDS3.DVI4.HDMI显示单元frame buffer 是linux视频系统的核心用户空间fbset 内核空间显卡驱动(intelfb)硬件底层显示驱动程序中间层帧缓冲控制台高层虚拟终端驱动程序X  windows 的用户模式驱动程序和配置显示参数程序显示参数D:datacl

2016-06-28 14:00:56 1209

原创 usb

HCD ; host controller drivers 主机控制器驱动传送模式:1. 控制传输模式,用来传送外设和主机之间的控制,转态,配置等信息。2.批量传输模式,传输大量时延要求不高的数据3.中断传输模式,传输数据量小,但是对传输时延敏感,要求马上响应。4.等时传输模式,传输实时数据,传输速率要预先可知。USB和I2C协议采用主从结构设备地址不占用CPU寻址范围

2016-06-28 09:13:48 405

原创 PCI-peripheral component interconnect 外围组件互联

DMA: direct memory access 直接内存访问数据结构pci_dev    include/linux/pci.h                              pci设备结构体pci_driver    include/linux/pci.h                               pci驱动程序pci_device_id

2016-06-27 20:43:10 814

原创 pcmcia和CF

PCMCIA: personal computer memory card international association PC 机内存卡国际联合会CF: compact flash  紧凑型闪存linux -pcmcis 子系统用户空间                     XX应用程序内核空间PCMCIA核心硬件

2016-06-27 19:56:35 578

原创 i2c驱动程序

用户空间       用户应用程序内核空间    /sys, /devI2C客户驱动程序硬件  I2C设备  I2C控制器数据结构i2c_driver     include/linux/i2c.h                                      代表一个I2C驱动程序i2c_client

2016-06-27 17:59:44 779

原创 字符驱动程序内核编程小结

数据结构cdev      include/linux/cdev.h     子符设备的内核抽象file_operations         include/linux/fs.h         字符设备驱动程序操作集dev_t          include/linux/types.h    主/次设备号 poll_table      include/l

2016-06-27 16:11:08 273

原创 中断上下文

ISR是直接与硬件交互的非常重要的代码片段。他们拥有立即执行的特权,以提高系统性能。为了对粗暴打断当前执行线程的行为进行补偿,ISRT不得不礼貌执行于受限制的环境下,即中断上下文(原子上下文).中断上下文的注意事项1.中断上下文代码可以停在运行。中断处理函数不能通过调用schemdule_timeout()等睡眠函数放弃处理器,在从中断处理函数中调用一个内核API之前,确保内部不会发会触发阻塞

2016-06-27 14:35:45 748

转载 进程上下文和中断上下文

进程上下文和中断上下文是操作系统中很重要的两个概念,这两个概念在操作系统课程中不断被提及,是最经常接触、看上去很懂但又说不清楚到底怎么回事。造成这种局面的原因,可能是原来接触到的操作系统课程的教学总停留在一种浅层次的理论层面上,没有深入去研究。处理器总处于以下状态中的一种:1、内核态,运行于进程上下文,内核代表进程运行于内核空间;2、内核态,运行于中断上下文,内核代表硬件运行于内核空间

2016-06-27 09:30:47 344 1

原创 linux 内核源代码根目录

1.      arch :与体系结构相关的文件2.      block: 包含块存储设备IO调度算法的实现3.      crypto: 密码操作有关4.      Documention: 内核中各个子系统5.      Drivers: 大量设备类和外设控制器的驱动6.      Fs:文件系统7.      Include: 内核头文件8.      Init

2016-06-25 20:34:50 1615

转载 Linux EMMC子系统分析-初始化流程(转载)

最近在解EMMC的一个bug,发现Linux EMMC有点小复杂,先整理个文档出来吧用的是TI 平台,仅分析MMC,不分析SD和SDIOmmc_init[html] view plain copy 2769 static int __init mmc_init(void)  2770 {  2774   

2016-06-25 14:08:13 3298

转载 repo的小结

repo只是google用Python脚本写的调用Git的一个脚本,主要是用来下载、管理Android项目的软件仓库。1. 下载 repo 的地址: http://android.git.kernel.org/repo ,可以用 wget http://android.git.kernel.org/repo 或者 curl http://android.git.kernel.org/r

2016-06-07 13:59:46 257

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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