摘要: NAND Flash和NOR Flash是目前市场上两种主要的非易失闪存芯片。与NOR Flash相比,NAND Flash在容量、功耗、使用寿命等方面的优势使其成为高数据存储密度的理想解决方案。NOR Flash的传输效率很高,但写入和擦除速度较低;而NAND Flash以容量大、写速度快、芯片面积小、单元密度高、擦除速度快、成本低等特点,在非易失性类存储设备中显现出强劲的市场竞争力。 结构:NOR Flash为并行,NAND Flash为串行。 总线:NOR Flash为分离的地址线和数据线,而NANDFlash为复用的。 尺寸:典型的NAND Flash尺寸为NOR Flash尺 阅读全文
posted @ 2010-12-23 15:30 天不会黑 阅读(216) 评论(0) 推荐(0) 编辑
摘要: and Flash与Nor Flash经常在一些地方被提到,一直没认真去理解它们的区别,因此,今天花了一段时间仔细理解了一下,下面把我的笔记放在这里:)1、NOR的特点是芯片内执行(XIP,eXecute In Place),这样应用程序可以直接在flash闪存内运行,不必再把代码读到系统RAM中。优点是可以直接从FLASH中运行程序,但是工艺复杂,价格比较贵,NOR的传输效率很高,在1~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。  NAND结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也很快。应用NAND的困难在于flash的管理 阅读全文
posted @ 2010-12-23 15:29 天不会黑 阅读(309) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/diyunpeng/archive/2009/11/23/1608816.htmlhwclock(Linux) 在Linux中有硬件时钟与系统时钟两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的 时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之後系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。 hwclock实现了BIOS和linux的时间同步既然Linux有两个时钟系统,那么大家所使用的Linux默认使用哪种时钟系统呢?会不回出现两种系统时钟冲突的情 阅读全文
posted @ 2010-12-23 15:28 天不会黑 阅读(1192) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/abatei/archive/2008/12/17/1356565.html 红黑树是平衡二叉树的一种,它有很好的性质,树中的结点都是有序的,而且因为它本身就是平衡的,所以查找也不会出现非常恶劣的情况,基于二叉树的操作的时间复杂度是O(log(N))。Linux内核在管理vm_area_struct时就是采用了红黑树来维护内存块的。 先到include/linux/rbtree.h中看一下红黑树的一些定义,如下:structrb_node{ unsignedlong rb_parent_color;#defineRB_RED 0#defineRB 阅读全文
posted @ 2010-12-23 15:27 天不会黑 阅读(233) 评论(0) 推荐(0) 编辑
摘要: vold的全称是volume daemon。实际上是负责完成系统的CDROM, USB大容量存储,MMC卡等扩展存储的挂载任务自动完成的守护进程。它提供的主要特点是支持这些存储外设的热插拔。这里有GNU/Linux vold的介绍[http://vold.sourceforge.net/]。在Android上的这个vold系统和GNU/Linux的之间存在很大的差异,这里我们主要是分析Android上的vold系统的处理过程。Vold处理过程大致分为三步:1.创建链接:在vold作为一个守护进程,一方面接受驱动的信息,并把信息传给应用层;另一方面接受上层的命令并完成相应。所以这里的链接一共有两 阅读全文
posted @ 2010-12-23 15:27 天不会黑 阅读(591) 评论(0) 推荐(0) 编辑
摘要: 无论在dos下还是在windows下,所有磁盘文件的系统属性一般分为:系统属性(s),隐含属性(h),只读属性(r),存档属性(a),这些属性到底有什么特点呢?文件系统属性详解:1、系统属性(s),是表示文件是否为系统文件的属性。具有系统属性的文件是系统专用文件,也是区别非系统文件的标志。系统属性的特点:文件本身是隐藏起来的,不能用dos命令列出目录清单,也不能被删除、拷贝、更名。如果是可执行文件,设置了系统属性,也不能执行。2、隐含或隐藏属性(h),用来阻止文件在列表显示的属性,具有隐藏属性的文件,特点是:文件本身是隐藏的,dos系统命令不能列出清单,也不能删除,拷贝和更名。如果是可执行文件 阅读全文
posted @ 2010-12-23 15:26 天不会黑 阅读(2520) 评论(0) 推荐(0) 编辑
摘要: Android 的volume服务主要是用来管理usb/sd卡 等外部存储设备。平台可以对外部存储设备进行操作和轮询状态,当外部存储设备状态发生变化时,volume 服务也会即时报告平台。相关代码主要位于:system/core/voldframeworks/base/services/java/com/android/server/MountListener.javaframeworks/base/services/java/com/android/server/MountService.javaframeworks/base/core/java/android/os/IMountServi 阅读全文
posted @ 2010-12-23 15:25 天不会黑 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 百科名片PCI,经常用作缩写,比较常用的有外设组件互连标准、支付卡行业数据安全标准、医学名词、PCI遥感图像处理软件、喷吹煤和路面状况指数。外设组件互连标准简介PCI接口PCI(Peripheral Component Interconnect)  一种由英特尔(Intel)公司1991年推出的用于定义局部总线的标准。此标准允许在计算机内安装多达10个遵从PCI标准的扩展卡。最早提出的PCI总线工作在33MHz频率之下,传输带宽达到133MB/s(33MHz * 32bit/s),基本上满足了当时处理器的发展需要。随着对更高性能的要求,后来又提出把PCI 总线的频率提升到66MHz,传输带宽能 阅读全文
posted @ 2010-12-23 15:25 天不会黑 阅读(2649) 评论(0) 推荐(0) 编辑
摘要: sd卡驱动主要参照已有的文件即可,2410,9260都挺好。其实写驱动主要是搞清楚工作流程即可。我这里写一些心得与大家分享下,基于2.6.24:1、主要的结构体:static const struct mmc_host_ops my_mci_ops = { .request = my_mci_request, //命令数据请求 .set_ios = my_mci_set_ios, //设置时钟电源等 .get_ro = my_mci_get_ro, //判断卡是否写保护,readonly //新内核还有.set_ro};一般的电路板会用gpio来判断卡是否插入,卡是否可以关 阅读全文
posted @ 2010-12-23 15:24 天不会黑 阅读(533) 评论(0) 推荐(0) 编辑
摘要: DVFM: Dynamic Voltage and Frequency Management,动态电压和频率管理 dvfm 是marvell arm CPU省电的一个特色动态电压频率调整模块主要负责变频操作相关过程的控制,它定义和维护了一系列的操作点,用来描述和控制CPU核心频率,电压,各种总线频率等参数。同时它还负责维护和调用外设驱动向其注册的DVFM_notifier函数,在其完成变频操作前后,给外设提供一个机会执行相应的应对措施。设备驱动需要实现自己的DVFM_notifer函数,用来处理变频操作给自己带来的影响。或者用来通知DVFM禁止变频操作的执行。此外,一些设备驱动还要为电源管理状 阅读全文
posted @ 2010-12-23 15:24 天不会黑 阅读(1208) 评论(0) 推荐(0) 编辑
摘要: .tar  解包: tar xvf FileName.tar打包: tar cvf FileName.tar DirName  (注:tar是打包,不是压缩!)---------------------------------------------.gz  解压1:gunzip FileName.gz解压2:gzip -d FileName.gz  压缩: gzip FileName  .tar.gz 和 .tgz解压:tar zxvf FileName.tar.gz  压缩:tar zcvf FileName.tar.gz DirName  ------------------------ 阅读全文
posted @ 2010-12-23 15:23 天不会黑 阅读(434) 评论(0) 推荐(0) 编辑
摘要: How to add multi partition for SD/MMC card in Linux Driver之所以写这个,是因为,在这个过程中,自己明显感觉到了,做事情一定要有一定的方法,方法对了,事情做的才有效率,否则就是事倍功半。【过程】当前,Linux下sd/mmc卡的驱动已经实现。需要在此基础上实现,给这个mmc/sd块设备加多个分区。有人会问,那等系统启动后,通过fdisk工具去分区不也可以吗?回答是,除了我对此fdisk工具不熟悉之外,本身sd/mmc驱动加载后,只有一个区,而我tootfs就是放在sd卡中,然后kernel 通过sd挂载rootfs的,所以,系统启动后,s 阅读全文
posted @ 2010-12-23 15:22 天不会黑 阅读(1831) 评论(0) 推荐(0) 编辑
摘要: 在linux下比较常用的是lumaqq。lumaqq在界面上很像原来的qq。不过界面显然没有腾讯的那个那么好。而且功能比较少。另外一个推荐叫eva的qq应用程序。在linux下装软件没有像在windows下那么简单。具体过程为:把deb http://Ubuntu.cn99.com/ubuntu/ dapper main restricted universe multiversedeb http://Ubuntu.cn99.com/ubuntu/ dapper-updates main restricted universe multiversedeb http://Ubuntu.cn99. 阅读全文
posted @ 2010-12-23 15:22 天不会黑 阅读(212) 评论(0) 推荐(0) 编辑
摘要: 发信人: autoca (听姐一席话,胜读十年书.), 信区: Embedded标 题: SD卡文件系统设计(note)发信站: 郁金香BBS站 (2006年08月06日15:45:38 星期天), 站内信件 Common Sense of SD FS Design~~~~~~~~~~~~~~~~~~~~~~~~~~~~~闪存功耗低,密度高,体积小,可靠性高,可擦除,可重写,容量大,便宜(how... 阅读全文
posted @ 2010-12-23 15:21 天不会黑 阅读(576) 评论(0) 推荐(0) 编辑
摘要: 来自http://www.tl800.com/js_fat.html,感谢他!一、硬盘的物理结构: 硬盘存储数据是根据电、磁转换原理实现的。硬盘由一个或几个表面镀有磁性物质的金属或玻璃等物质盘片以及盘片两面所安装的磁头和相应的控制电路组成 ( 图 1) ,其中盘片和磁头密封在无尘的金属壳中。 硬盘工作时,盘片以设计转速高速旋转,设置在盘片表面的磁头则在电路控制下径向移动到指定位置然后将数据存储或读取出来。当系统向硬盘写入数据时,磁头中 “ 写数据 ” 电流产生磁场使盘片表面磁性物质状态发生改变,并在写电流磁场消失后仍能保持,这样数据就存储下来了;当系统从硬盘中读数据时,磁头经过盘片指定区域 阅读全文
posted @ 2010-12-23 15:20 天不会黑 阅读(527) 评论(0) 推荐(0) 编辑
摘要: 引 言 多媒体卡MMC(MultiMedia Card)是由美国SanDisk公司和德国Simens公司于1997年共同开发推出的一种多功能存储卡。内置控制电路,可以使用在手机、数码相机、MP3、PDA等多种数字设备上,可反复记录30万次。现在市场上的主流容量有128 MB~2 GB。 文中首先介绍单片机对SPI协议下的MMC卡的底层读写操作,然后分析MMC卡文件系统的结构,最后详细说明MMC卡文件的创建、读写、删除等操作。该方法可应用到与Windows有交互的嵌入式系统中,便于文件的统一管理。1 单片机与MMC卡的接口1.1 单片机与MMC卡的接口电路 接口电路采用的是Philips公司的增 阅读全文
posted @ 2010-12-23 15:20 天不会黑 阅读(615) 评论(0) 推荐(0) 编辑
摘要: 2010年出货量预计暴增224%作者:MICHAEL YANG据iSuppli公司,2010年用于手机的嵌入式多媒体卡(eMMC) NAND闪存将出现爆炸性增长,预计出货量增长224%。2007年eMMC面世的时候增长缓慢,但三年后的2010年,其出货量将增长到7000万个,占总体NAND闪存出货量的10%。未来五年将继续强劲增长,保持86.4%的复合年度增长率。到2014年,eMMC出货量将达到4.8亿个,占总体NAND闪存出货量的40%左右。eMMC的一个明显优势是在封装中集成了一个控制器,它提供标准接口并管理闪存,如纠错和均匀抹写。利用eMMC格式和标准接口,手机厂商就能专注于产品开发的 阅读全文
posted @ 2010-12-23 15:19 天不会黑 阅读(846) 评论(0) 推荐(0) 编辑
摘要: 初学编程,程序中很多地方都不够完备,望大家见谅。 #include iostream.h#include iomanip.h#include stdio.h#define m 20#define h(i,j) ((2*c+2-i)*(i-1)/2+j-i+1) //二维数组中元素在一维数组中的位置main(){ int i=1,j=0,s=0,k,n,c; int a[m*(m+1)/2+1]; a=1; printf("please input the number\n"); scanf("%d",&n); c=n; while(n0) { for(k=1;k=n;k++){ 阅读全文
posted @ 2010-12-23 15:18 天不会黑 阅读(228) 评论(0) 推荐(0) 编辑
摘要: ubuntu 下编译 linux fetion 应用程序demo 注:这里给出界面模块的源代码,而libfetion库(32位)则是以静态库的形式放进去了。 1:建立编译环境:在终端执行以下命令: sudo apt-get install automake sudo apt-get install libc-dev sudo apt-get install g++ sudo apt-get i... 阅读全文
posted @ 2010-12-23 15:18 天不会黑 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 一、FrameBuffer的原理 FrameBuffer 是出现在 2.2.xx 内核当中的一种驱动程序接口。 Linux是工作在保护模式下,所以用户态进程是无法象DOS那样使用显卡BIOS里提供的中断调用来实现直接写屏,Linux抽象出 FrameBuffer这个设备来供用户态进程实现直接写屏。Framebuffer机制模仿显卡的功能,将显卡硬件结构抽象掉,可以通过 Framebuffer的读写直接对显存进行操作。用户可以将Framebuffer看成是显示内存的一个映像,将其映射到进程地址空间之后,就可以直接进行读写操作,而写操作可以立即反应在屏幕上。这种操作是抽象的,统一的。用户不必关心物 阅读全文
posted @ 2010-12-23 15:17 天不会黑 阅读(1092) 评论(0) 推荐(0) 编辑