E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
--->块设备驱动
块设备驱动
(用ram来虚拟disk进行操作)
前面的驱动大多都是字符类设备,而块设备是另一种设备类型,下面对它进行说明。块设备和字符类设备的区别,最重要的就是块设备的读写是以块为单位,不能对单个的字节进行读写,必须先读出整块的数据到buffer中去,然后在buffer中进行修改,再对原来的块进行擦除操作,然后把修改后的buffer中的数据再写到块中去。这就是块设备的读写。这里面涉及到优化问题,比如说硬盘的读写,消耗的时间大部分是在磁头对扇区的
Dreaming_My_Dreams
·
2012-08-16 20:00
优化
算法
struct
Module
buffer
disk
块设备驱动
程序
第1章+---------------------------------------------------+| 写一个
块设备驱动
|+----------
sooolo
·
2012-07-20 10:00
块设备驱动
之nandflash——支持分区
上一节里面我们分析的驱动程序并不支持分区,它只是可以识别到nandflash而已,本节我们来完善它,下面看代码:/*参考 *drivers\mtd\nand\s3c2410.c *drivers\mtd\nand\at91_nand.c */#include#include#include#include#include#include#include#include#include#inclu
RubyBoss
·
2012-07-10 18:00
块设备驱动
之nandflash——简单程序分析
本节里面我们实现一个简单的nandflash驱动程序,我们先来看代码:/*参考 *drivers\mtd\nand\s3c2410.c *drivers\mtd\nand\at91_nand.c */#include#include#include#include#include#include#include#include#include#include#include #include#i
RubyBoss
·
2012-07-10 18:00
块设备驱动
程序之nandflash——基本框架
我们先查看内核的启动信息,以搞清楚从哪个文件着手来分析:S3C24XXNANDDriver,(c)2004SimtecElectronicss3c2440-nands3c2440-nand:Tacls=3,30nsTwrph0=770ns,Twrph1=330nsNANDdevice:ManufacturerID:0xec,ChipID:0xda(SamsungNAND256MiB3,3V8-bi
RubyBoss
·
2012-07-10 18:00
list
struct
Flash
null
Class
磁盘
块设备驱动
程序之nandflash——基础知识
我们先来看一下原理图: 我们先来分析一下这个原理图:LDATA0——LDATA7:既传输数据,也传输地址,还传输命令。那么如何区分传输的是什么呢?不要担心,下面会说到控制引脚RnB:读写nandflash的状态标志位,0表示读写完成了,1表示还在忙。CLE:当CLE为高电平时表示传输的是命令ALE:当ALE为高电平时表示传输的是地址,当CLE和ALE都为低电平时表示传输的是数据,这就区分开了命令、
RubyBoss
·
2012-07-10 18:00
快设备驱动程序之是内存模拟的磁盘支持格式化
在
块设备驱动
程序分析之框架构建那一节里面已经提到过block_device_operations这样一个结构体。
RubyBoss
·
2012-07-10 18:00
块设备驱动
程序分析之内存模拟磁盘
#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includestaticstructgendisk*ramblock_disk;staticrequest_
RubyBoss
·
2012-07-10 18:00
块设备驱动
程序分析之框架构建
这一节里实际上是将
块设备驱动
程序的框架给勾勒出来,并不做具体的事情,下面看代码:#include#include#include#include#include#include#include#include
RubyBoss
·
2012-07-10 18:00
框架
struct
Module
null
disk
磁盘
块设备驱动
程序框架
韦东山老师帮我们把框架搭建起来了,我们先来看一下:框架:app: open,read,write"1.txt"--------------------------------------------- 文件的读写文件系统:vfat,ext2,ext3,yaffs2,jffs2 (把文件的读写转换为扇区的读写)-----------------ll_rw_block-------------
RubyBoss
·
2012-07-10 18:00
linux内核第二记
目录结构(一般修改Arch和Drivers目录中的文件)1.block目录部分
块设备驱动
程序2.crypto目录加密、压缩、CRC校验算法3.documentation内核的文档4.drivers目录设备驱动程序
hubi0952
·
2012-06-28 21:00
虚拟机
加密
linux
脚本
平台
linux内核
MMC 卡驱动分析
个人觉得理解LINUX 内核当中 MMC/SD 卡驱动程序构架是学习 MMC 卡驱动程序的重点,只有理解了它的基本框架或流程才能真正理解一个
块设备驱动
程序的写法,同时才能真正理解 LINUX 设备驱动模型是如何
Dybinx
·
2012-06-23 23:00
linux
工作
struct
disk
delay
linux内核
网络设备驱动基础笔记
网络设备驱动基础笔记网络设备驱动基础网络设备驱动和
块设备驱动
的功能比较类似,都是发送和接收数据包(数据请求)。
jiatingqiang
·
2012-06-23 10:00
网络
struct
api
第12章 写一个
块设备驱动
第12章+---------------------------------------------------+| 写一个
块设备驱动
|+
opendba
·
2012-06-20 14:00
struct
tree
insert
email
聊天
each
第15章(最终章) 写一个
块设备驱动
第15章(最终章)+---------------------------------------------------+| 写一个
块设备驱动
opendba
·
2012-06-13 18:00
struct
Module
tree
insert
任务
disk
第14章 写一个
块设备驱动
第14章+---------------------------------------------------+| 写一个
块设备驱动
|+
opendba
·
2012-06-13 18:00
struct
tree
存储
insert
disk
磁盘
第13章 写一个
块设备驱动
第13章+---------------------------------------------------+| 写一个
块设备驱动
|+
opendba
·
2012-06-13 18:00
struct
tree
null
delete
存储
insert
第11章 写一个
块设备驱动
第11章+---------------------------------------------------+| 写一个
块设备驱动
|+
opendba
·
2012-06-13 18:00
编程
工作
linux
struct
search
each
第10章 写一个
块设备驱动
第10章+---------------------------------------------------+| 写一个
块设备驱动
|+
opendba
·
2012-06-13 17:00
数据结构
工作
linux
struct
tree
insert
第9章 写一个
块设备驱动
第9章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 17:00
c
linux
存储
email
旅游
disk
第8章 写一个
块设备驱动
第8章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 17:00
Module
command
dos
table
disk
磁盘
第7章 写一个
块设备驱动
第7章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 17:00
linux
struct
tree
insert
任务
linux内核
第6章 写一个
块设备驱动
第6章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 16:00
linux
struct
Google
tree
insert
disk
第5章 写一个
块设备驱动
第5章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 16:00
第4章 写一个
块设备驱动
第4章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 16:00
第3章 写一个
块设备驱动
第3章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 11:00
数据结构
linux
struct
Google
each
disk
第2章 写一个
块设备驱动
第2章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 10:00
linux
struct
Google
null
disk
磁盘
第一章 写一个
块设备驱动
第1章+---------------------------------------------------+| 写一个
块设备驱动
|+-
opendba
·
2012-06-13 10:00
linux
struct
Module
makefile
disk
linux内核
Linux2.6
块设备驱动
程序
一、块设备的操作的处理体系结构1.VFS(虚拟文件系统)VFS位于块设备的处理体系结构的上层,提供一个通用的文件模型。VFS和块设备的关系见Linux2.6设备管理系统调用的服务例程调用一个合适的VFS函数,将文件描述符和文件内的偏移量传递给它。2.磁盘高速缓存VFS函数确定所请求的数据是否已经存在磁盘高速缓存中,若存在,就没有必须访问磁盘上的数据了。3.映射层(块设备文件系统)(1)把文件拆分成
mishifangxiangdefeng
·
2012-06-09 16:00
linux
算法
工作
存储
扩展
磁盘
dm-linux
DeviceMapper是Linux2.6内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的
块设备驱动
提供了一个高度模块化的内核架构,如图1。
cybertan
·
2012-06-01 14:00
linux
工作
IO
struct
table
工具
bio 与
块设备驱动
referenceto:http://hi.baidu.com/liu_bin0101/blog/item/8d3cfd2efb7725594ec22623.html在学习块设备原理的时候,我最关系块设备的数据流程,从应用程序调用Read或者Write开始,数据在内核中到底是如何流通、处理的呢?然后又如何抵达具体的物理设备的呢?下面对一个带Cache功能的块设备数据流程进行分析。1、用户态程序通过
wangkaiblog
·
2012-05-13 23:00
装载
块设备驱动
程序
原文地址----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
srw11
·
2012-04-28 15:00
工作
struct
buffer
disk
磁盘
写一个块linux设备驱动
-----------------------第1章+---------------------------------------------------+ | 写一个
块设备驱动
srw11
·
2012-04-26 11:00
linux
struct
tree
insert
disk
基于mini6410的linux驱动学习总结(一 驱动程序介绍)
2、驱动分类 1)字符设备驱动 2)网络接口驱动 3)
块设备驱动
2.1字符设备 字符设备是一种按字节来访问的设备,字符驱动则负责驱动字符设备,这样的驱动通常实现
yinjiabin
·
2012-04-24 09:00
linux内核研究-8-块设备I/O层
linux内核研究-8-块设备I/O层1,说在前面1》块I/O层介于文件系统层和
块设备驱动
之间2》此层的核心是I/O“请求列表”3》请求链表的节点是bio和HB(headerofbuffer),描述了扇区和块以及页的关系
rill_zhen
·
2012-04-19 15:00
算法
工作
header
buffer
linux内核
linux块设备8
总结结构:vfs->(磁盘高速缓存)->磁盘文件系统->通用块层->i/o调度程序->
块设备驱动
->hardware磁盘文件系统层是个maplayer,比如ext,fat等,将文件拆分成多块,根据索引节点
brucexu1978
·
2012-04-15 23:00
SD/MMC卡
块设备驱动
程序
SD/MMC卡组成的存储系统是许多嵌入设备的主要存储设备,相当于PC机的硬盘,在嵌入设备上的SD/MMC卡控制器通过MMC协议来解析命令控制SD/MMC卡的操作。SD/MMC卡上有一些寄存器来控制卡的状态及读写操作。MMC协议规定的寄存器有:CID寄存器,128位,是卡的鉴别寄存器,存有卡的鉴别信息;RCA寄存器是16位,存有卡的本地系统的相对地址,在初始化时由控制器动态指定。DSR寄存器是16位
wangyunqian6
·
2012-03-29 16:00
thread
struct
cmd
command
Semaphore
disk
Linux设备驱动--块设备(三)之程序设计
块设备驱动
注册与注销
块设备驱动
中的第1个工作通常是注册它们自己到内核,完成这个任务的函数是register_blkdev(),其原型为:intregister_blkdev(unsignedintmajor
myths_0
·
2012-03-22 20:00
linux
工作
struct
Module
buffer
linux内核
Linux设备驱动程序学习(0) -设备驱动介绍& Hello, world!模块
块设备:一个
块设备驱动
程序主要通过传输固定大小的数据来访问设备。块设备和字符设备的区别仅仅在于内核内部管理数据的方式,也就是内核及驱动程序之间的软件接口,而这些不同对用户程序是透明的。
jacobywu
·
2012-03-11 12:00
linux
网络
Module
Parameters
makefile
linux内核
块设备驱动
编写总结
前一段时间一直在Linux下搞
块设备驱动
的开发,实现了多个块设备模块,现将
块设备驱动
开发的一些方法总结一下。
heyustudent
·
2012-02-22 18:00
linux
cache
command
File
buffer
merge
linux 驱动入门程序,写一个
块设备驱动
(2)
+---------------------------------------------------+| 写一个
块设备驱动
|+-------------
saylerboxer
·
2012-02-20 17:00
linux 驱动入门程序,写一个
块设备驱动
(1)
+---------------------------------------------------+| 写一个
块设备驱动
|+-------------
saylerboxer
·
2012-02-20 17:00
linux
struct
Module
makefile
disk
linux内核
linux下omfs文件系统的硬盘布局
文件系统是linux内核的重要组成部分,涉及到vfs、块IO层的调度机制,
块设备驱动
以及具体文件系统所采用的数据结构。所使用linux内核版本是2.6.34.1。
dndxhej
·
2012-02-07 19:00
Linux设备驱动--块设备(三)之程序设计
块设备驱动
注册与注销
块设备驱动
中的第1个工作通常是注册它们自己到内核,完成这个任务的函数是register_blkdev(),其原型为:intregister_blkdev(unsignedintmajor
jianchi88
·
2012-01-20 19:00
linux
struct
Module
Flash
buffer
linux内核
块设备体系结构分析
所以Linux中
块设备驱动
往往为磁盘设备的驱动,但是由于磁盘设备的 IO性能与CPU相比很差,因此,块设备的数据流往往会引入文件系统的Cache机制。
dianhuiren
·
2012-01-09 20:00
linux
struct
IO
File
each
destructor
看
块设备驱动
部分的笔记
是内核(VFS和文件系统)传送数据的基本单位.段(Segments): 是若干相邻的块.是一个内存页或者内存页的一部分.一般由
块设备驱动
程序来处理.每个缓冲区与一个块对应,相当于磁盘块
fivedoumi
·
2011-12-09 18:00
数据结构
struct
BI
merge
磁盘
destructor
块设备驱动
注册和注销、加载与卸载、
块设备驱动
的I/O请求
块设备驱动
注册和注销
块设备驱动
的第一个任务就是将他们自己注册到内核中,其函数原型如下: int register_blkdev(unsigned int major, const char*
Linux_xiaomugua
·
2011-11-28 21:00
linux
制造
File
buffer
disk
磁盘
块设备驱动
注册和注销、加载与卸载、
块设备驱动
的I/O请求
块设备驱动
注册和注销
块设备驱动
的第一个任务就是将他们自己注册到内核中,其函数原型如下: int register_blkdev(unsigned int major, const char*
zplove003
·
2011-11-28 19:00
写一个
块设备驱动
(15)
第15章(最终章)+---------------------------------------------------+| 写一个
块设备驱动
|+---
newnewman80
·
2011-11-09 10:00
struct
tree
Module
insert
任务
disk
写一个
块设备驱动
(13)
第13章+---------------------------------------------------+| 写一个
块设备驱动
|+--------
newnewman80
·
2011-11-09 10:00
struct
tree
null
delete
存储
insert
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他