Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Under which circumstances does the System process (PID 4) retain an open file handle?

My application running on a Windows server makes use of a Jet/Access database. For some reasons around every two weeks that database file gets locked by the System process (PID 4, seems to be fixed)

After some googling I found some other users having their files locked by that special process, but different files (of course).

  • What's the general reason for the System process to keep an open file handle?
  • Is my application the cause for this locking situation?
  • Are all handles implicitly opened by the System process? I could imagine that after a process has crashed, the handle may still be open and the System process somehow takes owernship of that handle.
  • Can I do something in my application to prevent it from happening?
like image 855
Daniel Rikowski Avatar asked Aug 18 '09 11:08

Daniel Rikowski


People also ask

What is System Process PID 4?

PID 4 is the Process ID for the Windows SYSTEM process. It's a lot like PID 1 on Unix systems, in fact. A lot of services run under PID 4. – sysadmin1138 ♦


1 Answers

Files accessed through a share will be locked by the system process (PID 4).

Try opening compmgmt.msc -> System Tools -> Shared Folders -> Open Files to see if the locked file is listed there

See also the sysinternals forum for a way to replicate this.
Not all applications lock files when they are opened, Excel however does. I don't know if Access does the same...

like image 79
janv8000 Avatar answered Oct 20 '22 17:10

janv8000