1. Before putting a message on the queue, the IFS file representation of the queue is consistent with the information contained in the journal
  2. After putting a message on the queue, a new journal entry defines the put operation
  3. The update is made to the queue
  4. After getting the message from the queue, a journal entry defines the get operation
  5. The update is made to the queue.