Can you summarize the following document?
        
  在雙埠記憶體中,可以有許多方式來實作這指令。其中列出兩種方式說明對於一個提供兩個埠的雙埠記憶體要如何允許二個不同的電子元件(如兩個中央處理器)存取記憶。

  當處理器一要在某個記憶體位置引發執行TSL指令時,DPRAM先在特定記憶體區域記下此位置,代表標上了一個 "內部記號"。如果處理器二在同一個位置引發了TSL指令,DPRAM會先檢查 "內部記號",若確認是時,則會產生一個 "忙碌" 的中斷以告訴處理器它須要等待後重試。這是一種利用中斷機制來實作忙等待或自旋鎖。因為這是發生在硬體層,處理器要等待的時間很短。  不管處理器二是否重試著存取這個記憶體位置,DPRAM完成了處理器一的測試。如果測試成功,記憶體會先此位置設成處理器一所指定的值。然後記憶體會清掉內部記號,此時,處理器二可以再次引發的檢查並設定,並能成功執行。

  CPU 1發出test-and-set指令,表示寫回"記憶體位置A"。DPRAM並不立即寫入記憶體位置A,而是放到一個特殊暫存器中,並在記憶體位置A設為"flag value"。

  某些CPU架構直接提供了test-and-set指令。如x86與IBM System/360及其後繼(包括 z/Architecture)。沒有這種機器指令的,需要用read-modify-write或 compare-and-swap指令來實現。  C語言實現:  int TestAndSet(int* lockPtr) {

  一種實現互斥鎖的辦法: as follows:

  enter_region: ; A "jump to" tag; function entry point.  leave_region:

  鎖的效能評價可分為四個方面:  Test-and-set在匯流排流量與公平上較差。
在電腦科學中,檢查並設定(test-and-set-lock,TSL)是一種不可中斷的原子運算。TSL對某個記憶體位置寫入1(set)並返回其舊值。