加急见刊

Win32应用程序介绍

来源:华文易迅 时间:2023-06-23 09:00:02

1.异步输入输出模式。

Win32应用程序首先调用CreateFile()功能来装载设备驱动。当函数被调用时,将倒数2/2参数设置为FI_ATTRIBUTE_NORMAL|FI_FLAG_OVERLAPPED,这意味着稍后可以重叠I/O操作。在成功创建了设备驱动程序文件之后,创建了一个没有信号、需要手动复位的事件,并将此事件传递到Overlapped类型的数据结构(比如Overlapped)。Overlapped随后作为参数传递给DeviceIoControl()函数。装置驱动程序会将这个I/O请求包(IRP)设置为挂起,并设置一个取消程序。假设目前的IRP团队为空,那么将该IRP发送给StartIo()例程;否则,将其放到IRP队列。在设备驱动程序完成这些工作之后,结束对DeviceIoControl()的处理,这样,Win32应用程序就可以返回DeviceIoControl(),而不必等待IRP完成处理。对返回值进行判别,获得对IRP的处理。假设当前IRP处于挂起状态,那么主程序首先完成其他工作,接下来,将调用WaitForSingleObject()或WaitForMultipleObject()功能,等待Overlapped中的事件变成有信号状态。当队列中的IRP出现时,设备驱动程序会被调用(IoCompleteRequest)函数。这个函数在Overlapped中将事件设置为信号状态。Win32应用程序可以立即响应该事件,退出等待状态,将事件恢复为无信号状态,然后调用GetOverlappedResult()

得到IRP处理结果的功能。

2.事件模式(WDM)

Win32应用程序从创建事件开始,然后将事件句柄传递到设备驱动程序,然后再创建一个辅助线程,等待事件的有信号状态,自己就会继续做其他事情。在设备驱动程序得到事件句柄之后,将其转化为能够使用的事件指针,并将其存放在以后使用。有了条件之后,设备驱动程序就会将事件设置为“有信号”状态,以便应用程序的次要线程立即知道这条消息,然后进行相应的处理。在此事件不再被设备驱动程序使用时,应取消其指针。

设备驱动是当今流行的Windows操作系统中控制硬件最底层的软件接口。向上端提供与硬件无关的用户界面,直接向下执行I/O、硬件中断、DMA、存储器存取等操作。该工具屏蔽了应用程序和硬件细节,使得软件不再依赖于硬件,并可以在多种不同平台间移植。该文介绍了5种设备驱动程序通知应用程序的方法,前3种主要是VxD,后2种主要是WDM。所有的五个方法都经过了实际测试。实验表明,它们均能实现设备驱动程序通知应用程序的目的。

杂志推荐


常见问题

Q:论文发表的时候可以一稿多投吗?
A:一稿多投的行为是典型的学术不端的行为,是国内外学术界都明令禁止的行为,原因主要在于涉及到文章版权归属的问题,如果作者的文章已经被某个杂志社录用,或者同时被两家杂志社录用,就会涉及到版权纠纷,作为杂志社都会保护本社的合法权益,到这时作者就会比较麻烦,吃官司都是小事儿了,被打入黑名单降级降职影响可就太大了。
Q:职称论文发表对时间有限制吗?
A:职称论文发表并没有明确规定截止时间,需要作者结合自己所在地区的具体规定自己安排发表时间,一般职称评审,各地区都会明确规定申报材料的最后期限和截止日期,我们结合这个日期来考虑何时发表文章就可以,大部分地区职称评审都集中在每年的8-10月之间,有的地区要求7月中旬开始交材料,最晚8月底之前,有的则是要求8月中旬交,还有部分地区要求截止时间为申报时间上年的12月31日,所以,各个地区的具体要求并不同,申报者需要在提交材料前确保自己的文章已经见刊并且被相应的数据库检索即可。
Q:网上发表论文如何防骗?可靠网站与可疑网站如何区分?
A:由于发表论文的需求远远多于杂志版面的供应,再加上众所周知的审稿难!审稿慢!选择论文发表网站发表表论文确实能解决以上问题。卖方市场的出现加之发表论文的刚性需求,就导致出现先付款后发表的现状。论文发表网站正规与否是通过网站从始至终所提供服务体现出来的,任何交易只要存在时间差都会有风险,但这个风险是可以通过您的智慧来避免的。因为不是所有论文网站都是骗子,你要做的就是过滤掉没保障的网站,选择可靠的论文发表网站!
Q:一般期刊需要提前多久准备?
A:省级、国家级期刊建议至少提前6个月准备。一般来讲,杂志社为了确保每期杂志正常出刊,都会提前将当期之后1-3个月的稿件提前安排好,而一些创刊较早,认可度更高的热门期刊,来稿量较大,发表周期可能就会更久。提前准备,意味着杂志的可选择性更多。
Q:核心期刊需要提前多久准备?
A:核心期刊建议至少提前12个月准备,核心期刊正常的审稿周期为1-3个月,且审核严格,退稿、返修几率更大,这意味着在流程上耗费的时间更久,且核心期刊版面有限,投稿竞争更加激烈,即使被录用,排刊也比普通期刊晚很多,因此需要更早准备。