跳到主要内容
按专业 / 地区找课 ↗
当前位置:新中华学习网 >> 公开课>> 职业技能 >> Linux字符设备的阻塞读取与就绪状态复查
Linux字符设备的阻塞读取与就绪状态复查
  • 上课地区:详询
  • 上课方式:详询
  • 开课时间:详询
  • 学习费用:详询
  • 课程安排:详询

报名咨询可确认单独参加方式和具体安排。

课程定位

应用从设备读取数据时,可能收到新值、立即得到暂不可读的状态,也可能一直等不到返回。这个专题从字符设备驱动与输入输出模型入手,练习区分设备数据是否就绪、读取方式是否符合约定,以及出现等待时应从哪一层定位。

课程内容与学习重点

先画出应用与设备的交互

用一个可模拟的输入设备记录打开、等待读取、数据到达和关闭几个状态。为有数据、无数据和设备暂不可用分别写下预期表现。把应用发起读取的时间、设备事件发生的时点与程序返回的结果分开记录。只有明确哪个环节决定可以继续,才便于判断长时间等待究竟来自设备、驱动还是应用。

对照不同读取模式

在隔离实验中用同一组输入分别观察阻塞和非阻塞读取。让一轮数据已经就绪,让一轮等待后再发送,最后让一轮始终没有输入。记录返回值、等待期间的可观察状态和是否存在不停重试的情况。再加入两个读取者的样例,核对可读取条件和实际拿到的数据,确认表现符合预先约定。

用测试证据定位等待问题

给每个异常场景留下打开方式、事件时序与能够重新运行的步骤。对设备关闭、请求被打断或等待超出预期的情况,分开检查应用表现和底层记录。修订处理后复查原本成功的路径,以及另一组此前未参与调整的输入。交接记录应让同事可以说清何时应等待、何时应返回和下一次从哪里取证。

适合人群

适合学习嵌入式 Linux 驱动、参与设备接入或维护读取程序的开发人员。有基本程序调试经验更便于从日志理解等待状态。

可用模拟的按键事件设备构造三种情况,先准备一条可立即读取的事件,再准备延时发生和始终不发生的两组数据。为每轮记下请求时间、事件到来及程序表现,确认没有只观察界面就误以为数据已经处理。之后更换读取方式,并保留相同输入时序对比。请另一位同学只看记录判断该用何种方式,核对复查是否能区分应用预期与设备实际。最后补一条关闭后再次打开的检查,确认同样的读取条件能否恢复。对长时间无输入的情况,可以另记应用使用何种结束条件。复查时核对该条件是否被触发,并让记录者写清实际观察的是设备事件、程序状态还是界面变化。

开课与报名咨询

本专题的开课时间、授课地点、授课老师、学制、费用和报名安排详询。咨询时可说明希望重点学习的场景。

一直读取不到是设备坏了吗?还需检查事件是否真正发生、应用打开方式和读取条件,宜先用已知可用的数据建立对照。

改为非阻塞就不用处理等待了吗?仍需规定无数据时应用怎样继续或何时再尝试,避免频繁重复读取增加负担。

温馨提示:课程内容为拟定,具体实际讲授内容由授课老师根据学员情况灵活调整,最终以课堂授课为准。

课程咨询:400-061-6586,咨询微信:pxbbaoming。

全国公开课需求咨询热线
400-061-6586

热门高校分类

学习需求咨询

课程咨询

留下你的学习安排

填写您的学习基础、意向课程和方便上课的时间,咨询课程安排与费用。

信息仅用于本次学习需求咨询联系,请勿填写身份证号、病历等敏感信息。

×关闭