首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
试问下列同时运行多个进程Pi,可能会出现的错误是( )。 Pi(){ Lock(m mutex); //含义为获取互斥信号量 a=new int[100]; //开辟一个大小为100的整型数组空间, //并用全局指
试问下列同时运行多个进程Pi,可能会出现的错误是( )。 Pi(){ Lock(m mutex); //含义为获取互斥信号量 a=new int[100]; //开辟一个大小为100的整型数组空间, //并用全局指
admin
2019-07-18
95
问题
试问下列同时运行多个进程Pi,可能会出现的错误是( )。
Pi(){
Lock(m mutex); //含义为获取互斥信号量
a=new int[100]; //开辟一个大小为100的整型数组空间,
//并用全局指针变量a保存空间地址
UnLock(m_mutex);
free(a); //释放数组空间,且a的值不改变
}
有多个优先级相同的进程Pi。
选项
A、内存泄露
B、内存越界访问
C、内存泄露和内存越界访问
D、无
答案
C
解析
由于a为全局指针变量,即属于临界资源,访问a的代码都属于临界区,临界区应该在Lock(m mutex)和UnLock(m mutex)之间,使各个进程互斥访问a。但由于本题free(a)在Lock(m mutex)和UnLock(m mutex)之外,因此是会出现错误的。
举例:假设有进程P1和P2,P1进程申请的数组空间地址赋给a之后,还没有free掉。P2进程又申请了新的数组空间又把地址赋给a,导致P1进程申请的空间地址丢失(即内存泄露)。然后P1进程继续执行,P1进程执行free操作,将P2进程中请的空间释放掉了,P2进程继续执行,P2进程执行free操作,free操作访问了不属于P2进程的空间(之前已经被P1释放掉了),会发生内存越界访问。
知识点扩展 内存泄露:当以前分配的一片内存不再需要使用或无法访问时,但是并没有释放它,那么对于该进程来说,会因此导致总可用内存的减少,这时就出现了内存泄漏。
内存越界访问:简单地说,进程访问了不属于该进程的内存空间。
转载请注明原文地址:https://www.kaotiyun.com/show/vPCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
判断英国工业革命基本完成的主要依据是()
试析巴以冲突的历史根源。
美国主张建立国际联盟的主要目的是()。
在1875年宪法中关于法国立法权的叙述,不正确的是()。
下列关于马略军事改革的叙述,不正确的是()。
最早以立法的形式巩固大化改新成果的法令是()。
某机字长32位,主存容量32MB,按字节编址;该机的Cache采用4路组相联映射方式,Cache容量为16KB,块长为4个字,试回答下列问题:(1)主存地址位数为多少?(2)画出主存地址格式示意图,注明各字段名称及位数。(3)设该Ca
如果X为负数,则已知[X]补求[一X]补的方法是()。
设置当前工作目录的主要目的是____。
随机试题
在Excel2010中,要选定B2:E6单元格区域,可以先选择B2单元格,然后________。
高血压病患者,伴发心悸(HR.99次/分)和劳力性心绞痛时,应首选哪种药物
赵某,男,43岁,患慢性胆囊炎。护士嘱咐病人应用的饮食是
使用冰槽时,为防止冻伤需保护的部位是
一平面简谐波在x轴上传播,波速为8m/s,波源位于坐标原点O处,已知波源振动方程y0=2cos4πt(SI),那么在xp=-1m处的P点的振动方程为()。
在代建制的克服“三超”现象的作用中,“三超”不包括()。
Ctrl+Break键与Ctrl+Numlock键功能相同。()
唐朝僧人玄奘曾游学天竺,并以亲身见闻写成的一部重要书籍是()
从事某种社会活动所需要的自身基础和内在条件的素质决定于( )。
Thewriter’sgeneralattitudetowardstheworldleadersmeetingattheU.N.isTheword"deforestation"inParagraph3means
最新回复
(
0
)