当前位置: 技术问答>linux和unix
C语言内存分配问题。
来源: 互联网 发布时间:2015-04-13
本文导语: 在unix(sun solaris )下,分配内块存后如何取得这个内存块的物理地址。 比如: char *buff; 如果给这个buff分配一段内存,如何取这个内存段起始内存物理地址。 | ufxcom(mzcore)的理论都是DOS时...
在unix(sun solaris )下,分配内块存后如何取得这个内存块的物理地址。
比如:
char *buff;
如果给这个buff分配一段内存,如何取这个内存段起始内存物理地址。
比如:
char *buff;
如果给这个buff分配一段内存,如何取这个内存段起始内存物理地址。
|
ufxcom(mzcore)的理论都是DOS时代的东西,早就不用了,你在Solaris下如果不进入内核,是无法知道某个线性地址的物理地址的,建议你看看现代操作系统的教程吧。
|
同意CoolQ()的说法。
在应用层是不能得到物理地址,
但是在内核层可以通过函数转换来得到物理地址。
在应用层是不能得到物理地址,
但是在内核层可以通过函数转换来得到物理地址。
|
咦?
buff不就是么?
buff不就是么?
|
#include
buff=(char *)malloc(n);
buff就是这个字符串在内存中的起始物理地址
buff=(char *)malloc(n);
buff就是这个字符串在内存中的起始物理地址
|
意思是说如何取得段地址了呗?