[Tinyos-2-commits] CVS: tinyos-2.x/tos/lib/net/Deluge/FlashVolumeManager FlashVolumeManagerC.nc, 1.6, 1.7 FlashVolumeManagerP.nc, 1.11, 1.12

Razvan Musaloiu-E. razvanm at users.sourceforge.net
Thu Jan 17 13:51:54 PST 2008


Update of /cvsroot/tinyos/tinyos-2.x/tos/lib/net/Deluge/FlashVolumeManager
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv24068/tos/lib/net/Deluge/FlashVolumeManager

Modified Files:
	FlashVolumeManagerC.nc FlashVolumeManagerP.nc 
Log Message:
Improve the speed of locking for FlashVolumeManager.


Index: FlashVolumeManagerC.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-2.x/tos/lib/net/Deluge/FlashVolumeManager/FlashVolumeManagerC.nc,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** FlashVolumeManagerC.nc	14 Jan 2008 04:22:01 -0000	1.6
--- FlashVolumeManagerC.nc	17 Jan 2008 21:51:51 -0000	1.7
***************
*** 38,41 ****
--- 38,42 ----
    components NoLedsC, LedsC;
    components BlockStorageLockC;
+   components new BlockStorageLockClientC();
  
    components new BlockReaderC(VOLUME_GOLDENIMAGE) as BlockReaderGoldenImage;
***************
*** 59,67 ****
    FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE3]     -> BlockWriterDeluge3;
  
!   FlashVolumeManagerP.Resource[VOLUME_GOLDENIMAGE] -> BlockWriterGoldenImage;
!   FlashVolumeManagerP.Resource[VOLUME_DELUGE1] -> BlockWriterDeluge1;
!   FlashVolumeManagerP.Resource[VOLUME_DELUGE2] -> BlockWriterDeluge2;
!   FlashVolumeManagerP.Resource[VOLUME_DELUGE3] -> BlockWriterDeluge3;
! 
    FlashVolumeManagerP.ArbiterInfo -> BlockStorageLockC;
   
--- 60,64 ----
    FlashVolumeManagerP.BlockWrite[VOLUME_DELUGE3]     -> BlockWriterDeluge3;
  
!   FlashVolumeManagerP.Resource -> BlockStorageLockClientC;
    FlashVolumeManagerP.ArbiterInfo -> BlockStorageLockC;
   

Index: FlashVolumeManagerP.nc
===================================================================
RCS file: /cvsroot/tinyos/tinyos-2.x/tos/lib/net/Deluge/FlashVolumeManager/FlashVolumeManagerP.nc,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** FlashVolumeManagerP.nc	15 Jan 2008 20:33:46 -0000	1.11
--- FlashVolumeManagerP.nc	17 Jan 2008 21:51:51 -0000	1.12
***************
*** 30,34 ****
      interface BlockRead[uint8_t imgNum];
      interface BlockWrite[uint8_t imgNum];
!     interface Resource[uint8_t imgNum];
      interface ArbiterInfo;
      interface AMSend as SerialAMSender;
--- 30,34 ----
      interface BlockRead[uint8_t imgNum];
      interface BlockWrite[uint8_t imgNum];
!     interface Resource;
      interface ArbiterInfo;
      interface AMSend as SerialAMSender;
***************
*** 195,200 ****
  	case CMD_ERASE:
  	case CMD_WRITE:
! 	  if (!call Resource.isOwner[imgNum]()) {
! 	    error = call Resource.immediateRequest[imgNum]();
  	  }
        }
--- 195,200 ----
  	case CMD_ERASE:
  	case CMD_WRITE:
! 	  if (!call Resource.isOwner()) {
! 	    error = call Resource.immediateRequest();
  	  }
        }
***************
*** 259,265 ****
    {
      // Release the resource.
!     if (state == S_IDLE && call Resource.isOwner[currentImgNum]()) {
        call Leds.led1Off();
!       call Resource.release[currentImgNum]();
      }
      if (state == S_IDLE && !call ArbiterInfo.inUse()) {
--- 259,265 ----
    {
      // Release the resource.
!     if (state == S_IDLE && call Resource.isOwner()) {
        call Leds.led1Off();
!       call Resource.release();
      }
      if (state == S_IDLE && !call ArbiterInfo.inUse()) {
***************
*** 269,273 ****
  
    event void SerialAMSender.sendDone(message_t* msg, error_t error) {}
!   event void Resource.granted[uint8_t imgNum]() {}
  
    default command error_t BlockWrite.write[uint8_t imgNum](storage_addr_t addr, void* buf, storage_len_t len) { return FAIL; }
--- 269,273 ----
  
    event void SerialAMSender.sendDone(message_t* msg, error_t error) {}
!   event void Resource.granted() {}
  
    default command error_t BlockWrite.write[uint8_t imgNum](storage_addr_t addr, void* buf, storage_len_t len) { return FAIL; }
***************
*** 277,282 ****
    default command error_t BlockRead.computeCrc[uint8_t imgNum](storage_addr_t addr, storage_len_t len, uint16_t crc) { return FAIL; }
  
!   default async command error_t Resource.immediateRequest[uint8_t imgNum]() { return FAIL; }
!   default async command error_t Resource.release[uint8_t imgNum]() { return FAIL; }
!   default async command bool Resource.isOwner[uint8_t imgNum]() { return FAIL; }
  }
--- 277,282 ----
    default command error_t BlockRead.computeCrc[uint8_t imgNum](storage_addr_t addr, storage_len_t len, uint16_t crc) { return FAIL; }
  
!   default async command error_t Resource.immediateRequest() { return FAIL; }
!   default async command error_t Resource.release() { return FAIL; }
!   default async command bool Resource.isOwner() { return FAIL; }
  }



More information about the Tinyos-2-commits mailing list