[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