0
$\begingroup$

I understand that MESI is a subset of the MOESI cache coherency protocol. But what does the Owned state in the MOESI protocol represent? What are the differences in state transition due to the extra Owned state in MOESI as compared to MESI?

For example consider same cache line in processor P1 is in OWNED state & processor P2 is in SHARED state. What happens when there is a write request to P2?

$\endgroup$
1
$\begingroup$

Owned state indicates that the data is shared between multiple caches/memory levels and is modified(by the owner) unlike modified state which indicates that only this cache has the only valid value and has modified the value. This eliminates the need for writing back to the main memory before sharing the data with anyone. Hope that helps.

$\endgroup$
0
$\begingroup$

For example consider same cache line in processor P1 is in OWNED state & processor P2 is in SHARED state. What happens when there is a write request to P2?

Owned means that the P1 has written to the cache line and it is dirty but not written back to memory. P1 will answer any requests for the current value instead of main memory answering them until it writes it back.

If P2 wants to write it needs to get the E (exclusive) state. So will will (usually) broadcast this on the bus and P1 will then need to write it's value back to main memory, all other processors will invalidate the line and then P1 will be free to take the exclusive state and modify the line.

New contributor
ed7coyne is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.