Mỗi chương trình đều có các phân vùng sau đây:

  • Entry section: là đoạn code trước khi vào vùng tranh chấp.
  • Critical section (vùng tranh chấp): là đoạn code thực hiện việc truy xuất các dữ liệu chia sẻ (có thể là một biến nào đó) và cần phải được thực thi bởi duy nhất một tác vụ tại một thời điểm nào đó.
  • Exit section: là đoạn code sau khi ra khỏi vùng tranh chấp.
  • Remainder: các đoạn code còn lại.