首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读下列说兑明和图、表,回答下列问题,将解答填入答题纸的对应栏内。 【说明】 某车载导航系统的结构如图1一1所示,由导航处理系统和显示系统两部分组成。导航处理系统安装在某型车的设备区,显示系统安装在某型车的前方,便于驾驶员观看和操作。
阅读下列说兑明和图、表,回答下列问题,将解答填入答题纸的对应栏内。 【说明】 某车载导航系统的结构如图1一1所示,由导航处理系统和显示系统两部分组成。导航处理系统安装在某型车的设备区,显示系统安装在某型车的前方,便于驾驶员观看和操作。
admin
2013-01-19
41
问题
阅读下列说兑明和图、表,回答下列问题,将解答填入答题纸的对应栏内。
【说明】
某车载导航系统的结构如图1一1所示,由导航处理系统和显示系统两部分组成。导航处理系统安装在某型车的设备区,显示系统安装在某型车的前方,便于驾驶员观看和操作。
导航处理系统由主处理机模块、电子盘模块、信号处理模块和电源模块组成,主处理机模块执行电了地图功能、导航控制功能等,生成的导航显示画面通过信号线在LCD液晶彩色显示屏显示给驾驶员;信号处理模块处理外部采集数据,将处理后的数据通过内部总线传输给主处理机模块;电子盘模块存储电子地图数据及导航数据。
显示系统由LCD液晶彩色显示屏、面板键盘(门定义键盘)和电源模块组成,主要是显示导航画面,也可通过面板键盘进行导航控制。
主处理机模块与信号处理模块间通过双端口存储器进行数据交换。李工设计时,将双端口存储器空间划分为两个缓冲区,两个缓冲区分别交替地接收信号处理机传输来的最新数据,然后按数据块方式提供给用户程序使用。
假设每个缓冲区的大小为512 KB,将512 KB数据写入当前空闲缓冲区接口服务为Write Buffer,将当前有效的512 KB数据读出缓冲区的接口服务为Read Buffer,假设双端口存储器中不提供硬件信号量,两个缓冲区间的互斥操作由软件标记实现,软件对双端口存储器的单次操作(读写一个字的操作)为原子操作。
下面是用C语言设计的一组对双缓冲区的管理程序代码,请填补该程序代码中的空缺,将答案填写在答题纸上。
int*BufferFlag[2]; /*0表示无有效数据,0xff表示有新数据 */
int*Mutex[2]; /*软件锁,0表示末锁定,0xff表示锁定 */
int Read_Buffer(int id,char *data); /* 从缓冲区读数据,用于数据处理模块,id表示缓冲的序列号,0表示缓冲区1,1表示缓冲区2,data为存放读取数据的缓冲,返回值表示读取到有效数据的长度*/
void write_Buffer(int id,char *data); /* 向缓冲区写数据,用于信号处理模块,id表示缓冲的序列号,0表示缓冲区1,1表示缓冲区2,data为待写入数据的缓冲*/
int INIT_PPC(){/*数据处理模块端的初始化,缓冲区起始地址为0xffffc000。*/
BufferFlag=(int*)0xffffc000;
Mutex= (int*)0xffffc010;
*BufferFlag[0]=0;
*BufferFlag[1]=0;
*Mutex[0]=0;
*Mutex[1]=0;
return(0);
}
int PPC_Read_Data(char*Data)( /* 数据处理模块读数据程序段*/
int len=0;
if((!(*BufferFlag[0]))&&(!(*BufferFlag[1]))){
return(0); /*无新数据*/
}
if(*BufferFlag[0]){
if (
(1)
){
*Mutex[0]=0xff;
len=Read Buffer(0,Data);
*BufferFlag[0]=0x00;
(2)
;
}
}
else{
if(*BufferFlag[1]){
if(!(*Mutex[1])) {
*Mutex[1]=0xff;
(3)
;
*BufferFlag[1]=0x00;
*Mutex[1]=0x00;
}
}
}
return(len);
}
int DSP_Write_Data() {
/*信号处理模块鸯数据程序段,初始化与数据处理模块端类似,同样以BufferFlag表示与数据处理模块端的对应的标志,即两端操作的是相同的地址空间; 同样Mutex也表示与数据处理模块端的对应的软件锁,即两端操作的是相同的地址空间。这里就略去双口在DSP上的起始地址说明和初始化部分。*/
char Data[1024*512];
while(1) {
//等待信号处理模块产生新的数据并存入数据缓冲Data中;
if (!(*Mutex[0])) {
*Mutex[0]=0xff;
Write_Buffer(0, Data);
*BufferFlag[0]=0xff;
*Mutex[0]=0x00;
}
else if (!(*Mutex[1])) {
*Mutex[1]=0xff;
Write_Buffer(1, Data);
*BufferFlag[1]=0xff;
*Mutex[1]=0x00;
}
}
renurn(0);
}
选项
答案
(1)!(*Mutex[0])或者*Mutex[0]==0x00或者*Mutex[0]==0 (2)*Mutex[0]=0x00或者*Mutex[0]=0 (3)len=Read Buffert(1,Data)
解析
本题考查嵌入式系统中的C程序设计,要求考生正确使用软件锁。
在本题中主处理机模块与信号处理模块间通过双端口存储器进行数据交换。由信号处理模块发送数据,主处理机模块接收数据。
在本题中给出了很多假设条件,如将双端口存储器空间划分为两个缓冲区,两个缓冲区分别交替地接收信号处理机传输来的最新数据;再如假设双端口存储器中不提供硬件信号量,两个缓冲区间的互斥操作由软件标记实现,软件对双端口存储器的单次操作(读写一个字的操作)为原了操作。同时本题也给出了软件程序的架构,BufferFlag为缓冲区有无新数据的标志,Mutex为软件锁。
在数据处理模块端的初始化程序INIT PPC()中,、BufferFlag和Mutex被分配在缓冲区的前端,并被初始化为无数据和未锁定。
信号处理模块写数据程序DSP_Write_Data()中,初始化与数据处理模块端类似,同样以BufferFlag表示与数据处理模块端的对应的标志,即两端操作的是相同的地址空间;同样.Mutex也表示与数据处理模块端的对应的软件锁,即两端操作的是相同的地址空间。信号处理模块写数据程序DSP_Write_Data()是一个无限循环程序,在等待信号处理模块产生新的数据,之后就将数据写入双缓冲Data中。具体过程如下:
1)循环等待新数据;
2)如果缓冲区0未被锁定,则:
(1)缓冲区0加锁;
(2)写数据到缓冲区0;
(3)标记缓冲区0未有数据:
(4)缓冲区0解锁。
3)如果缓冲区0已被锁定,则对缓冲区1重复上述步骤。
在数据处理模块端读数据程序PPC_Read_Data()首先判断双缓冲有无数据,如果缓冲区0有数据,再判断缓冲区0是否加锁,如果未加锁,则先加锁,再读数据,再解锁。对缓冲区1同样如此处理。
转载请注明原文地址:https://jikaoti.com/ti/YOI7FFFM
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续天数,则完成该项目的最少时间为(27)________________天。活动EH和IJ的松弛时间分别为(28)________________天。
计算机运行过程中,遇到突发事件,要求CPU暂时停止正在运行的程序,转去为突发事件服务,服务完毕,再自动返回原程序继续执行,这个过程称为(1)________________,其处理过程中保存现场的目的是(2)________________。
主域名服务器在接收到域名请求后,首先查询的是(32)________________。
I/0设备管理软件一般分为4个层次,如下图所示。图中①②③分别对应(21)________________。
在索引改进中,一般的调整原则是:当(62)是性能瓶颈时,则在关系上建立索引;当(63)是性能瓶颈时,则考虑删除某些索引;管理人员经常会将有利于大多数据查询的所以设为(64)。(62)
在索引改进中,一般的调整原则是:当(62)是性能瓶颈时,则在关系上建立索引;当(63)是性能瓶颈时,则考虑删除某些索引;管理人员经常会将有利于大多数据查询的所以设为(64)。(63)
在索引改进中,一般的调整原则是:当(62)是性能瓶颈时,则在关系上建立索引;当(63)是性能瓶颈时,则考虑删除某些索引;管理人员经常会将有利于大多数据查询的所以设为(64)。(64)
在数据库系统运行中,经常会找出频繁执行的SQL语句进行优化。常见的优化策略有:尽可能减少多表查询或建立(65);用带(66)的条件子句等价替换OR子句;只检索需要的属性列等。(65)
以下关于系统原型的叙述中,不正确的是()。
随机试题
甲公司购买未税矿产品支付款项30万元,另外支付了矿产品资源税6万元,矿产品加工成为产成品又发生了生产车间职工薪酬费用12万元,管理人员薪酬8万元,加工费用8万元,其他材料费用6万元,则产成品的账面成本是()万元。
患者,女性,55岁。因侵蚀性葡萄胎收入院治疗。查体:BP100/60mmHg,R18次/分,P98次/分,双合诊检查提示子宫丰满、质软。血hCG明显高于正常值。患者用药第5天后,出现口腔溃疡,以下做法不正确的是
女性,28岁,出现进行性背痛、下肢乏力,食欲减退3个月。检查:见第6胸椎轻度后突,有叩痛,X线摄片第6、7胸椎间隙狭窄,该处椎旁线轻度膨出,血沉60mm/h。该患者经全身药物治疗1个月后出现脊髓受压症状,一般下列哪一项最早发生
下列哪种氨基酸是必需氨基酸
以下是药物对胚胎和胎儿的不良影响A.溶血B.畸形C.肾脏损害D.甲状腺功能异常E.神经中枢抑制和神经系统损害碘剂可能导致()。
银行的房地产金融业务具体可划分为()。
“中国模式”作为一种独特的发展道路,引起了越来越多的关注和讨论。下列有关“中国模式”的说法不正确的是()。
毛泽东强调工农武装割据的思想,其基本内容有()
区位码输入法的最大优点是()。
Youwillhearanopeningkeynoteatthe2ndITOutsourcingConference&Expo.Asyoulisten,forquestions1—12,completetheno
最新回复
(
0
)