I have a question about how the message loop works in a windows application

while ( GetMessage(&msg, NULL, 0, 0) )  {

Does the windows o/s maintain a message queue that the app retrieves a message from the front of then dispatch it bck to the o/s which calls the appropriate function or leaves it for default handling
Does the application maintain its own message queue and then then dispatch messages back to the o/s

I think its the first one but i just wanted to make sure i fully understand what is happening

Hi Check this article.
It explain how the windows messaging in win32 ..

shine joseph