(和《ARM嵌入式应用技术基础》186-190页一模一样)
scatter文件编写
今天拿了被同事扔一边的ARM培训资料翻阅,读至scatter一节,发现写得甚是精辟。之前看的很多国人写得文章,未免有简单问题复杂化之嫌。而ARM的RVCT手册又偏冗长,不易让人立刻看到重点。今归纳如下:
scatter基本点:
1. 编译后输出的映像文件中各段是首尾相连的,中间没有空闲的区域,它们的先后关系是根据链接时参数的先后次...
网上搜scatter IO,一大堆中文的说什么效率高。真他妈扯淡
一个以太网帧最大才1.5KB,还不到一个内存页面的一半,谁他妈没事找抽非要把这个包拆开存放到几个缓冲区里!
wiki上说了一个vecter IO,那是进程有这种需求,不过肯定用的少
baidu百科说了句实话, scatter/gather并不会带来性能上的好处,但是会简化设备驱动程序。
还经常搜到这句话
例如,当用户用sendmsg分送一个数组结构的数据时,这些数据在物理可能是不连续的(大...
硬盘的每次读写都会牵涉到DMA的过程,而文件系统对硬盘的I/O请求不是连续的,数据所在的物理内存页也是不连续的,如果能够将这些不连续的内存页组合到一起,再启用DMA操作,那么这些数据就能够一次传输完成,这样也就能高效的传输数据。以Silicon Image 3114为例,可以将不连续的物理内存页和该页的长度组合放到physical region descriptor table 里,physical region descriptor table 结构如下:
Befor the controller start...
scatter/gather方式是与block dma方式相对应的一种dma方式。
在dma传输数据的过程中,要求源物理地址和目标物理地址必须是连续的。但在有的计算机体系中,如IA,连续的存储器地址在物理上不一定是连续的,则dma传输要分成多次完成。
如果传输完一块物理连续的数据后发起一次中断,同时主机进行下一块物理连续的传输,则这种方式即为block dma方式。
scatter/gather方式则不同,他是用一个链表描述物理不连续的存储器,然后把链...
Some applications may need to read or write data to multiple buffers, which are separated in memory. Although this can be done easily enough with multiple calls to read and write, it is inefficient because there is overhead associated with each kernel call.
Instead, many platforms provide special high-speed primitives to perform these scatter-gather operations in a single kernel call. The GNU C ...
看见内核代码里有一些注释提到scatter/gather I/O,或者scatter/gather操作,这是什么呀?谢谢指点.
mtk生成库(ARM) 过程
第一步,生成真机的obj文件
第二步,找到相关的obj文件 D:\LongCheer\build\LC6225_GEMINI\gprs\MT6225o\mmi_app
第三步,把相关的obj文件拷贝到一个目录下面 D:\lib_temp
第四步,打开命令窗口,输入命令 armar -r temp.lib *.obj 生成 temp.lib 库
第五步,输入命令armar -tv temp.lib 可以看到加入的库
&n...