tzushky
Member level 3
- Joined
- May 21, 2007
- Messages
- 63
- Helped
- 10
- Reputation
- 20
- Reaction score
- 0
- Trophy points
- 1,286
- Location
- Sophia-Antipolis,France
- Activity points
- 1,819
Hello everyone,
My question should be simple in formulation but I have not been able to find a right answer so far so I'm bothering you people.
I am developing an application for debugging a wireless embedded equipment. You just need to know that it is interfaced by PCI with the computer, the driver for the PCI was created by others of my team but they have left for some time now. And I am using C to simply open a handler to the device, read and write packets to it.:
EMB <---(PCI) ----> C appli (on PC1) <- --(TCP/IP)----> Something else (on PC2)
<------Thread Listen PCI EMB & Thread Listen TCP/IP Other------->
Even more, the C application contains two threads (the packets I write come from another application, each thread waits for a packets on one interface and suspends the other for some time while treating the request) and I actually open 2 handlers for the PCI device because I noticed that if I suspend the thread while it's trying to read the device, the other thread won't be able to write on it...
Anyway, the problem with PCI is Windows Blue Screens. I have the impression that If it is not correctly read, and bits of info are left after closing the application, it corrupts something in SYS32...but nobody here knows details. All we know is it either freezes the PC sometimes, it causes reboot , etc.
So, the question is: Is there a way to know if PCI has corrupted something in the OS, do simple reads flush it completely and avoid freezes and blue screens?
Has any of you encountered this situation before (I suppose yes...)?
Thank you very much in advance and good luck in your work ,
T
My question should be simple in formulation but I have not been able to find a right answer so far so I'm bothering you people.
I am developing an application for debugging a wireless embedded equipment. You just need to know that it is interfaced by PCI with the computer, the driver for the PCI was created by others of my team but they have left for some time now. And I am using C to simply open a handler to the device, read and write packets to it.:
EMB <---(PCI) ----> C appli (on PC1) <- --(TCP/IP)----> Something else (on PC2)
<------Thread Listen PCI EMB & Thread Listen TCP/IP Other------->
Even more, the C application contains two threads (the packets I write come from another application, each thread waits for a packets on one interface and suspends the other for some time while treating the request) and I actually open 2 handlers for the PCI device because I noticed that if I suspend the thread while it's trying to read the device, the other thread won't be able to write on it...
Anyway, the problem with PCI is Windows Blue Screens. I have the impression that If it is not correctly read, and bits of info are left after closing the application, it corrupts something in SYS32...but nobody here knows details. All we know is it either freezes the PC sometimes, it causes reboot , etc.
So, the question is: Is there a way to know if PCI has corrupted something in the OS, do simple reads flush it completely and avoid freezes and blue screens?
Has any of you encountered this situation before (I suppose yes...)?
Thank you very much in advance and good luck in your work ,
T