(8分)某进程的虚拟地址空间如图,阴影部分为未占用区域,有C程序:
char * ptr;
void main() {
int length;
ptr = (char* ) malloc (100);
scanf( "%s" , ptr);
length = strlen (ptr);
printf ( "length= %d\n" , length);
free(ptr);
}
1) 上述程序执行时,PCB位于哪个区域,执行scanf ()等待键盘输入时,该进程处于什么状态?(2分)
2) main ()函数的代码位于哪个区域?其直接调用的哪些函数的功能需要通过执行驱动程序实现?(3分)
3) 变量ptr被分配在哪个区域?若变量length没有被分配在寄存器中,则会被分配在哪个区域? ptr 指向的字符串位于哪个区域?(3分)
登录后提交答案
暂无评论,来抢沙发