自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (11)
  • 收藏
  • 关注

转载 linux分配内存

一、kmalloc函数内幕    kmalloc的使用已经比较熟悉了,它的函数原型是: 1: #include 2: void *kmalloc(size_t size, int flags);其中size表示要分配的块的大小, flags是分配标志。下面分别详细说明这两个参数: * size参数    实际上内核能分配的最小内存大小不是任意的,而

2013-08-30 09:56:07 830

转载 linux设备和驱动加载的先后顺序

Linux驱动先注册总线,总线上可以先挂device,也可以先挂driver,那么究竟怎么控制先后的顺序呢。Linux系统使用两种方式去加载系统中的模块:动态和静态。静态加载:将所有模块的程序编译到Linux内核中,由do_initcall函数加载核心进程(/init/main.c)kernel_inità do_basic_setup()àdo_initcalls()该函数中会将在_

2013-08-29 16:52:10 1399

转载 Linux 设备和驱动加载的先后顺序

Linux驱动先注册总线,总线上可以先挂device,也可以先挂driver,那么究竟怎么控制先后的顺序呢。Linux系统使用两种方式去加载系统中的模块:动态和静态。静态加载:将所有模块的程序编译到Linux内核中,由do_initcall函数加载核心进程(/init/main.c)kernel_inità do_basic_setup()àdo_initcalls()该函数中会将在_

2013-08-29 16:49:34 639

转载 FLV文件格式解析

FLV(Flash Video)是现在非常流行的流媒体格式,由于其视频文件体积轻巧、封装播放简单等特点,使其很适合在网络上进行应用,目前主流的视频网站无一例外地使用了FLV格式。另外由于当前浏览器与Flash Player紧密的结合,使得网页播放FLV视频轻而易举,也是FLV流行的原因之一。    FLV视频格式是Adobe公司设计开发的,目前已经免费开放,现在的版本是v10。下面我们

2013-08-26 16:57:21 1095

转载 FLV视频封装格式详解

简介:        FLV(Flash Video)是现在非常流行的流媒体格式,由于其视频文件体积轻巧、封装播放简单等特点,使其很适合在网络上进行应用,目前主流的视频网站无一例外地使用了FLV格式。另外由于当前浏览器与Flash Player紧密的结合,使得网页播放FLV视频轻而易举,也是FLV流行的原因之一。可以通过Adobe公司的RTMP(Real Time Messaging Pr

2013-08-23 17:03:59 6144 2

转载 总线地址、物理地址、虚拟地址相关概念澄清

Now, on normal PCs the bus address is exactly the same as the physicaladdress, and things are very simple indeed. However, they are that simplebecause the memory and the devices share the same address

2013-08-21 17:55:34 1169

转载 异步通知fasync

linux设备驱动归纳总结(三):7.异步通知fasyncxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx异步通知fasync是应用于系统调用signal和sigaction函数,下面我会使用signal函数。简单的说,signal函数就是让一个信

2013-08-21 14:56:51 723

转载 Linux设备驱动之Ioctl控制

Linux设备驱动之Ioctl控制  大部分驱动除了需要具备读写设备的能力之外,还需要具备对硬件控制的能力。 一、在用户空间,使用ioctl系统调用来控制设备,原型如下:int ioctl(int fd,unsigned long cmd,...);/*fd:文件描述符cmd:控制命令...:可选参数:插入*argp,具体内容依赖于cmd*/  用户程

2013-08-20 10:31:34 759

转载 linux-2.6.26内核中ARM中断实现详解(1)

看了一些网络上关于linux中断实现的文章,感觉有一些写的非常好,在这里首先感谢他们的无私付出,然后也想再补充自己对一些问题的理解。先从函数注册引出问题吧。一、中断注册方法在linux内核中用于申请中断的函数是request_irq(),函数原型在Kernel/irq/manage.c中定义:int request_irq(unsigned int irq, irq_han

2013-08-19 16:43:04 752

转载 linux之DMA动态映射指南

DMA动态映射指南translated by JHJ(jianghuijun211@gmail.com)本文通过伪代码指导驱动开发者如何正确使用DMA API。关于API更精确的描述,请参考DMA-API.txt。大多是64位平台有一些特殊硬件可以将总线地址(DMA地址)转换为物理地址。这个和CPU如何利用页表或TLB将虚拟地址转换成物理地址有点像。这种地址转换是有必要的,

2013-08-13 15:40:50 7212 1

转载 [内存管理] linux kernel内存映射实例分析

引子现在android智能手机市场异常火热,硬件升级非常迅猛,arm cortex A9 + 1GB DDR似乎已经跟不上主流配置了。虽说硬件是王道,可我们还是不禁还怀疑这么强大的硬件配置得到充分利用了吗?因此以后我都会正对ARM平台分析kernel的内容。 正文在linux内存管理中,有两个资源非常重要,一个是虚拟地址,一个是物理地址。听起来似乎是废话,实际上内存管理主要

2013-08-09 12:01:41 2201

转载 Linux内存管理之mmap详解

Linux内存管理之mmap详解一. mmap系统调用1. mmap系统调用        mmap将一个文件或者其它对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。munmap执行相反的操作,删除特定地址区域的对象映射。当使用mmap映射文件到进程后,就可以直接操作这段虚拟地址进行文件的读写等操作

2013-08-08 14:14:22 798

转载 旧方式映射

#include #include #include #include #include #include #include #include #include #include #include #include #include #define SHARE_MEM_COUNT 4#define SHARE_MEM_SIZE (PAGE_SIZE*SHARE_MEM_

2013-08-08 09:31:49 705

转载 内存映射nopage()

struct vm_operations_struct①在2.6.23之前struct vm_operations_struct中只有struct page * (*nopage)(struct vm_area_struct * area, unsigned long address, int *type)从2.6.24后在struct vm_operations_st

2013-08-08 09:26:07 4343 2

转载 Linux设备驱动之内存映射

1. 内存映射所谓的内存映射就是把物理内存映射到进程的地址空间之内,这些应用程序就可以直接使用输入输出的地址空间,从而提高读写的效率。Linux提供了mmap()函数,用来映射物理内存。在驱动程序中,应用程序以设备文件为对象,调用mmap()函数,内核进行内存映射的准备工作,生成vm_area_struct结构体,然后调用设备驱动程序中定义的mmap函数。 2. 映

2013-08-07 16:02:33 816

转载 vm_area_struct (vm_pgoff没看懂)

原文:http://blog.csdn.net/ywf861029/article/details/6114794Linux内核中,关于虚存管理的最基本的管理单元应该是struct vm_area_struct了,它描述的是一段连续的、具有相同访问属性的虚存空间,该虚存空间的大小为物理内存页面的整数倍。  下面是struct vm_area_struct结构体的定义

2013-08-07 14:19:12 7580

转载 linux 内存映射 remap_pfn_range操作

mmap 理解的总不是太好,又做了一个读写例子,大部分都是在网找的源代码#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #i

2013-08-06 10:14:55 5618 1

visual_assist_VC6.0破解版

这个vc 和vs2010都能用,在网上找了好多都是vs2010能用,vc不能用

2014-07-30

USB 2.0 协议

中文全的USB2.0协议规范 在网上找了很久的肯定能满足你的需求 全的

2013-04-09

SD卡协议 规范

SD卡规范,其中包括1.00,2.00.3.00,英文的,2011年最新规范

2011-09-08

SQL+Server数据库开发经典案例解析.pdf

SQL+Server数据库开发经典案例解析.pdf

2010-12-31

bash+shell+入门+第三版.rar

bash+shell+入门+第三版.rar

2010-12-10

lcd驱动更改,不太详细

LCD显示器通常与Frame Buffer设备结合使用,系统定时将Frame Buffer中的内容写道LCD显示器中,在驱动的编写过程中,需要根据实现LCD的大小来调整CPU寄存器中相关寄存器中保存LCD大小的参数,即x,y坐标的最大值,同时根据CPU的时钟频率来修改LCD的刷新频率,保证lcd的刷新频率在50~60hz即可。

2010-05-19

Windows驱动编程基础教程.doc

第一章驱动编程基础 第二章磁盘设备驱动 第三章磁盘还原与加密 第四章传统文件系统过滤 第五章小端口文件系统过滤 第六章文件系统保护与加密 第七章协议网络驱动 第八章物理网络驱动 第九章网络防火墙与安全连接 第十章打印机驱动与虚拟打印 第十一章视频驱动与过滤

2010-05-10

SJ1000波特率计算器

SJ1000波特率计算器can sj1000

2010-04-01

ascII0000000表

ascII表,有任何10,16进制很全的

2010-04-01

Btr01 CAN波特率计算.exe

基于SJ1000的波特率计算工具,很好有用的。周立功的

2010-04-01

空空如也

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

TA关注的人

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