首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
Pi(){ Lock(m_mutex); //含义为获取互斥信号量 a=new int[100]; //开辟一个大小为100的整型数组空间, //并用全局指针变量a保存空间地址 UnLock (m_mutex); free (a); //
Pi(){ Lock(m_mutex); //含义为获取互斥信号量 a=new int[100]; //开辟一个大小为100的整型数组空间, //并用全局指针变量a保存空间地址 UnLock (m_mutex); free (a); //
admin
2017-04-28
95
问题
Pi(){
Lock(m_mutex); //含义为获取互斥信号量
a=new int[100]; //开辟一个大小为100的整型数组空间,
//并用全局指针变量a保存空间地址
UnLock (m_mutex);
free (a); //释放数组空间,且a的值不改变
}
有多个优先级相同的进程Pi。试问下列同时运行多个进程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,Pl进程申请的数组空间地址赋给a之后,还没有free掉。P2进程又申请了新的数组空间又把地址赋给a,导致Pl进程申请的空间地址丢失(即内存泄露)。然后P1进程继续执行,P1进程执行free操作,将P2进程申请的空间释放掉了,P2进程继续执行,P2进程执行free操作,free操作访问了不属于P2进程的空间(之前已经被P1释放掉了),会发生内存越界访问。
知识点扩展:
内存泄露:当以前分配的一片内存不再需要使用或无法访问时,但是并没有释放它,那么对于该进程来说,会因此导致总可用内存的减少,这时就出现了内存泄漏。
内存越界访问:简单地说,进程访问了不属于该进程的内存空间。
转载请注明原文地址:https://www.kaotiyun.com/show/vHRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
荷马时代的社会管理制度和经济生活。
关于希腊古风时代和古典时代的叙述不正确的是()。
关于垄断组织的积极作用,不正确的说法是()。
在阿拉伯()统治时期,阿拉伯军队曾与当时中国的唐朝军队发生冲突。
唐代在广州设立管理对外商务的是()。
下列著作被人们称为17世纪物理学、数学的百科全书,并标志着经典力学体系的完成的是()。
16世纪中期,德意志资产阶级迫切要求实现国家的统一,其首要的目的是()。
1628年出版了《心血运动论》一书,论证了血液在全身的循环运动,使生理学发展为科学的是()。
以下()协议完成了从网卡到IP地址的映射。
已知一个带有表头结点的单链表,结点结构为:假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data值,并返回1;否则,只返回0。要求:描述算
随机试题
糖尿病引起的眼部并发症包括
A.求异法B.共变法C.求同法D.类比法E.排除法从某病在不同时间、地区发病率的变化中,找出哪些因素也在发生变化,揭示和核实发病率的变动与这些因素在人群中的暴露率的变动相一致,分析有无剂量-反应关系,从而可以形成病因假设()
患者,女性,60岁,近一周来夜间出现行为紊乱,伴幻听、幻视,表情紧张,恐惧,白天卧床,自发言语较少,对夜间行为难以回忆,生活自理差。头颅CT示:顶枕叶片状梗死灶。考虑目前患者处于
某甲多次向特务机关写挂钩信,出谋献策预谋推翻人民政府,建立反动政权。下列对某甲的行为性质的认定错误的有?
根据《保险法》的规定,保险事故发生后,对于保险合同各方的责任,下列表述中正确的是()。
教育的“生物起源说”和“心理起源说”的共同缺陷是都否定了()。
XX市出台禁止在公交车上吃东西这一行为,违者罚款100元或给予严重警告,对此你怎么看?
丢勒
根据社会心理学来解释各种社会现象,这里运用的思维是()。
(1)Asunpleasantemotionsgo,anxietyisthesketchiest.It’savague,pit-of-the-stomachdreadthatsneaksuptoyou—thatuneas
最新回复
(
0
)