Tôi hiểu sự nhất quán nghiêm ngặt và tuần tự độc lập khá tốt.
Strict C về cơ bản thực thi thứ tự thực tế trong đó các hướng dẫn chạy trên đồng hồ toàn cầu.
Tính nhất quán tuần tự về cơ bản thực thi lệnh chỉ trên một bộ xử lý.
Tôi đang gặp khó khăn để tập hợp một số tài liệu mặc dù. http://www.cs.nmsu.edu/~pfeiffer/groupes / 573 / notes / consistency.html mô tả tính nhất quán tuần tự như cho phép bộ nhớ 'lag'. Có thể mất thời gian để ghi để truyền trên tất cả các bộ xử lý. Nhưng khi nó làm, nó đạt đến tất cả chúng cùng một lúc là tốt. Do đó, những điều sau đây là hợp lệ theo Tính nhất quán tuần tự
P1: W(x)1
-----------------------
P2: R(x)0 R(x)1
Điều tôi quan tâm bây giờ là các quy trình sau, giống như thuật toán của Dekker.
P1: W(x)1 R(y)0
-----------------
P2: W(y)1 R(x)0
Điều này chắc chắn KHÔNG nên có thể theo tính nhất quán tuần tự ( http://portal.acm.org/citation.cfm?id=1787234.1787255 pg 2). Không có tổng thứ tự có thể cho kết quả này.
Nhưng nó có ý nghĩa từ ý tưởng rằng tính nhất quán tuần tự cho phép ghi lan truyền chậm và một luồng có thể không có ý tưởng nào về những gì các bộ xử lý khác đang làm.
Tôi đang thiếu gì ở đây?