Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

My computer takes a lot of time to boot into Windows 7. So I run Process Monitor and I found some activity that I do not understand. process monitor activity IRP_MJ_DIRECTORY_CONTROL

  • What exactly is IRP_MJ_DIRECTORY_CONTROL?
  • Why is it running on startup in the different Windows folders?
  • Why is it taking so long?
share|improve this question
up vote 1 down vote accepted

These are operations to watch a directory to see if it changes (notice the NotifyChangeDirectory?). They take a long time because the directory isn't changing, so they keep watching until they are cancelled. They're not intended to complete rapidly but to leave an operation in progress that can complete as a way of sending a message to the application that posted the operation.

Here's an excerpt from a discussion of someone else's similar log:

"The filter you applied only includes requests that take more than 30 seconds. The only requests that take so long are requests that block while waiting for something to happen, like NotifyChangeDirectory.

It is quite normal for a NotifyChangeDirectory to take a very long time - it actually just represents the time between modifications to the monitored directory." -- The Case of Slow Logons

share|improve this answer

According to Microsoft:

The IRP_MJ_DIRECTORY_CONTROL request is sent by the I/O Manager and other operating system components, as well as other kernel-mode drivers.

It's a file system filter driver of some sort.

As for why it's slow, that depends on what it is. You may be on a wild goose chase, because that could just be Windows building up the Start Menu, and something else is slow.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .