niusouti.com

请根据本题要求完善任务Task1和任务Task2的程序代码,填补图中的空缺。

题目

请根据本题要求完善任务Task1和任务Task2的程序代码,填补图中的空缺。


相似考题
参考答案和解析
正确答案:(1)OSSemPend(emptySemO&err) (2)Buffer=readc (3)ret=OSSemPost(fullSem) (4)OSSemPend(fullSemO&err) (5)ret=OSSemPost(emptySem) (6)Printc(wntec)
(1)OSSemPend(emptySem,O,&err) (2)Buffer=readc (3)ret=OSSemPost(fullSem) (4)OSSemPend(fullSem,O,&err) (5)ret=OSSemPost(emptySem) (6)Printc(wntec) 解析:本问题是信号量应用实例。
μC/OS-II操作系统提供了操作信号量的若干系统调用,任务Task1为了实现从键盘读入一个字符并写到buffer的功能,就必须在读完字符后调用OSSemPend()和OSSemPost()对写buffer缓冲的动作加锁和解锁。
Task2为了完成将该字符输出到屏幕,也必须在读buffer缓冲的动作时加锁和解锁。这样就避免任务Task1和Task2同时操作buffer缓冲的资源冲突。
因此,任务Task1的代码如下:
voidTask1(void*#pdata)
{
INT8U readc;
INT8U err;
INT8U ret;
while(1){
readc=scanc();
OSSemPend(emptySem,0,&err);
Buffer=readc;
ret=OSSemPost(fullSem);
}
}
任务Task2的代码如下:
voidTask2(void*#pdata)
{
INT8U writec;
INT8U err;
INT8U ret;
while(1){
OSSemPend(fullSem,0,&err);
writec=buffer;
ret=OSSemPost(emptySem);
Printc(writec);
}
}
更多“ 请根据本题要求完善任务Task1和任务Task2的程序代码,填补图中的空缺。 ”相关问题
  • 第1题:

    【问题3】(6分)

    请根据本题要求完善任务Taskl(图5-4)和任务Task2(图5-5)的程序代码,填补图中的空缺,将答案填写在答题纸的对应栏中。

    图 5-4 任务1 的程序

    图 5-5 任务2 的程序


    正确答案:
    (1)OSSemPend(emptySem,0,&err)(1分)(2)Buffer=readc(1分)(3)ret=OSSemPost(fullSem)(1分)(4)OSSemPend(fullSem,0,&err)(1分)(5)ret=OSSemPost(emptySem)(1分)(6)Printc(writec)(1分)

  • 第2题:

    根据题目要求完成下列任务。用中文作答。
    任务型教学法是新课标所倡导的教学方法之一。请解释“任务”的基本内涵,并简述英语教学中任务的设计应遵循的原则。


    答案:
    解析:
    英语教学中的任务指有利于学生用英语做事情的各种语言实践活动。
    任务的设计一般应遵循下列原则:
    (1)任务应有明确的目的;
    (2)任务应具有真实意义,即接近现实生活中的各种活动;
    (3)任务应涉及信息的接收、处理和传递等过程;
    (4)学生应在完成任务的过程中使用英语:
    (5)学生应通过做事情完成任务:
    (6)完成任务后一般应有一个具体的成果。

  • 第3题:

    请各位同学根据本周学习任务的要求,上交课堂笔记。看好作业提交的截至时间,不要错过了。


    图文清晰

  • 第4题:

    图4-2为控制软件的数据流程关系,请根据本题给出的各个功能模块,填补其中的空缺处。


    正确答案:[解答要点] (1)数据采集 (2)交叉对比 (3)同步 (4)同步 (5)交叉对比 (6)输出
    [解答要点] (1)数据采集 (2)交叉对比 (3)同步 (4)同步 (5)交叉对比 (6)输出 解析:本问题包含两个问题,其一是根据本题给出的两余度数据处理流程的关系,以填空方式,给出流程中默认的处理功能及数据流关系。本题主要考验考生对余度管理的具体处理步骤的熟悉程度;其二是说明在系统发生失步的情况下,如何继承性地处理余度数据。
    第二步:根据问题要点,仔细阅读正文,找出相应的段落。
    (1)本题第二段描述了问题的所在,从图中可以看出,本题的余度方案是两余度系统,输入是从一个数据源进入计算机系统,在系统内一分为二,分别输入到不同的计算机中;而输出仅有一路,这说明,两个计算机分别处理完后,通过交叉对比,选择最为接近的数据作为输出数据。理解了这一点,对余度系统的设计具有一定的帮助。
    (2)本题的第一段值得关注,尤其是文中提到的“要求控制软件能够精确地按事先预定的时间顺序完成数据的采集、处理和输出”,是本题关键所在,也是回答[问题2]的基础。
    (3)本题的第三段主要通过“10ms工作周期内的时间分配表”间接地描述余度管理的重要功能流程,考生可根据本题上述描述的内容,确定性描绘出本题的控制流程。而失步问题值得关注,本题中没有明确提出,但是,作为余度系统,失步是重要的处理环节,考生必须知道。
    第三步:分析试题的内容,构思答案的要点。
    通过前两步的分析与归纳,余度问题将是本题首要关注内容之一,也是提高系统可靠性极为重要的考虑内容。通过组织管理、在消化了余度管理核心思想的基础上,主要对任务调度管理、同步设计等关键技术进行解决,就可以设计出较为完善的余度系统。因此,问题1和问题2是通过对本题的理解而形成答案;问题3是基于考生对余度系统理解,完成本命题的流程设计。

  • 第5题:

    若定义任务task1的优先级为12,则不能再定义其他任务的优先级也为12。


    正确