Hi all,
When I specify FILE_SYNCHRONOUS_IO_NONALERT in ZwCreateFile and call ZwWriteFile, the system performance degrade tempestuously, and some applications do not respond. Why did this happen and how can I avoid this?
This only happen when ZwWriteFile is called frequently and a large number of IO.
Thanks & regards.
Will it be better if I create a thread to do the WriteFile, and waite the WriteFile return?
I’m sure people would like to help, but you haven’t asked anything
meaningful yet.
Which files are you setting this bit to read from? Is this a filter? A file
system? A Minifilter? What are you trying to achieve? How does this ZwWrite
affect the applications which hang? Is this just an application issuing
reads?
My driver is a disk upperfillter. I need to write a log file in my driver and I hope the data is written to disk synchronously. The file is created by myself. Many applications will hang, it seems that my driver has blocked disk IO.
Without this flag it will cause a system crash.
If this log is not written, I will not handle the disk IO. But I find many file system drivers are useing this flag, and they seems to perform well.