我的程序会同时被多个程序调用,这时我应该怎么区分访问是来自于哪个程序的呢?可以用句柄吗?该怎么做呢?
回复(17) 2002-07-25 16:16 来自版块 - 内核编程
表情
Ares多谢!(2002-08-05 09:08)
zdhe对于一个具体的设备,系统只为你维护一个device object. 但是对于每次访问,系统会为你生成一个file object(irp_create时产生). 所有这些信息都可以从irp数据结构中取得。 而且ipr->overley-tail里有具体的proce...(2002-08-03 01:10)
Ares比如说吧,在一个线程时打开多个文件,FS驱动程序是怎么识别对不同的文件的访问需求的?(2002-07-30 09:11)
longge非要用线程吗?不明白?(2002-07-29 12:36)
gung读写也可以通过ioctrl实现吧,传给驱动一个结构,包括读写缓冲区和线程标志就可以了吧,或者干脆就在每一个读写数据包前面插入一个标志,读写时在将它去掉好了 答错了请指正, :D :D :D(2002-07-29 11:19)
Ares那么在读、写数据时怎么传送线程标志呢?(2002-07-29 08:58)
longge驱动一般都写成单线程的,多个设备访问是在上层应用调用,驱动只负责提供接口,这样驱动会好写些,但在缓冲区调度那部分,需要好的算法。至于上层调用,不管是多进程也好,多线程也好,这由操作系统去调度,你就不用管了,如果是在Linux下,在驱动中也可调用schedule内核调度进程去写,驱...(2002-07-26 11:48)
gung开启一个线程时驱动给线程一个标示,县城写数据时将标示带上就可以了吧(2002-07-25 19:32)
guardee你不是说区分的是程序嘛?怎么又跑出线程来啦?(2002-07-25 18:22)
Aresto zydcat: 因为一个数据块必须连续存放到设备,所以可能会搞错。 to guardee: 不好意思,顺便问一下如果是一个线程中多次打开再访问呢?(2002-07-25 18:07)

返回顶部