当前位置: 技术问答>linux和unix
linux加载地址问题
来源: 互联网 发布时间:2016-06-03
本文导语: #include int main() { int a; int b; printf("the first address : %xn", &a); printf("the second address: %xn", &b); } 这段程序为什么每次得到的结果都不一样呢,程序使用的是用户地址空间,为什么每次加载...
#include
int main()
{
int a;
int b;
printf("the first address : %xn", &a);
printf("the second address: %xn", &b);
}
这段程序为什么每次得到的结果都不一样呢,程序使用的是用户地址空间,为什么每次加载会发生变化呢
int main()
{
int a;
int b;
printf("the first address : %xn", &a);
printf("the second address: %xn", &b);
}
这段程序为什么每次得到的结果都不一样呢,程序使用的是用户地址空间,为什么每次加载会发生变化呢
|
程序每次加载到内存中去以后,都会有一个动态刻画程序行为的叫进程的模型。而进程模型所需要的资源,比如
时间片,优先级,内存,IO外设等,都是由OS内核来分配的。而OS又会根据一定的算法来分配,所以每次运行的
时候,分配给你的地址空间可能就不同了,这是正常现象
时间片,优先级,内存,IO外设等,都是由OS内核来分配的。而OS又会根据一定的算法来分配,所以每次运行的
时候,分配给你的地址空间可能就不同了,这是正常现象