参考链接:http://zhuhaibobb.blog.163.com/blog/static/2744006720101049030606/ Linux内核提供了/dev/mem驱动,提供了一种直接访问内存物理地址的方法,具体实施有两种方法,一是设备驱动,二是系统调用的方法。 /dev/mem驱动...
分类:
系统相关 时间:
2014-08-05 10:54:59
阅读次数:
339
在C语言中的register修饰的变量表示将此变量存储在CPU的寄存器中,由于CPU访问寄存器比访问内存快很多,可以大大提高运算速度。但在使用register时有几点需要注意。1.用register修饰的变量只能是局部变量,不能是全局变量。CPU的寄存器资源有限,因此不可能让一个变量一直占着CPU寄...
分类:
编程语言 时间:
2014-07-24 10:00:53
阅读次数:
229
DOS用一种分段结构来寻址计算机的内存,每一个物理存储位置都有一个可以用段一偏移量方式来访问的相关地址。例如,下面就是一个典型的段式地址: A000:1234冒号左边的部分代表段地址(A000),冒号右边的部分代表相对于段地址的偏移量。DOS下的每个程序都是按这种方式访问内存的——尽管段一偏移量寻址...
分类:
编程语言 时间:
2014-07-02 14:19:12
阅读次数:
299
Linux内核编程时,内核代码执行只能直接访问内存上的数据,硬盘上的文件系统必须通过间接的方式才能被内核读写,本文结束一般内核操作文件读写三种方式,并做对比...
分类:
系统相关 时间:
2014-07-01 06:25:24
阅读次数:
218
ECMAScript变量可能包含两种不同数据类型的值:基本类型值和引用类型值。基本类型值指的是简单的数据段,而引用类型值指的是那些可能由多个值构成的对象。引用类型的值是保存在内存中的对象,与其他语言不同,JavaScript不允许直接访问内存中的位置,也就是说不能直接操作对象的内存空间。在操作对象时...
分类:
Web程序 时间:
2014-06-14 20:47:46
阅读次数:
312
内存对齐,memory
alignment.为了提高程序的性能,数据结构(尤其是栈)应该尽可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;然而,对齐的内存访问仅需要一次访问。内存对齐一般讲就是cpu
access memory的效率(提高运行速度)和准确性(在一些条...
分类:
其他好文 时间:
2014-06-12 19:25:28
阅读次数:
305
pg_data_t数据结构2.6.37这个数据结构用于非一致内存访问(NUMA)机器,表示比zone更高层次的内存区。关于NUMA的文章http://www.ibm.com/developerworks/cn/linux/l-numa/http://blog.chinaunix.net/uid-7295895-id-3076420.htmlNUMA有多个节点,而每个节点内,访问内存的时间是..
分类:
系统相关 时间:
2014-06-10 22:28:45
阅读次数:
478
当CPU访问某个地址,会首先将访问请求发给L1D内存控制器,如果在L1D cache或L1D SRAM(CPU直接访问L1D内存)中命中,则L1D内存控制器就向CPU直接返回访问内存,如果没有命中则需要L2内存控制器请求…
这样当CPU访问的地址是空地址(NULL)或者是DSP中reserved(DSP没有开放使用的内存地址)的地址,在L1D内存控制器中就会检测到CPU非法地址访问,就会通过L1...
分类:
其他好文 时间:
2014-06-08 15:26:04
阅读次数:
166
DMA,直接存储器访问。传输数据时,外设通过DMA控制器直接访问内存,不经过cpu直接控制传输数据。不需要像中断处理方式需要保留和恢复现场的过程。通过硬件为内存和I/O设备开辟一条直接传送数据的通道,提高CPU的效率。DMA的核心硬件是DMA控制器,来管理DMA方式的数据传送,一般包含多个通道,每个...
分类:
其他好文 时间:
2014-05-31 17:57:07
阅读次数:
181