runDrand.py
上传用户:joranyuan
上传日期:2022-06-23
资源大小:3306k
文件大小:1k
源码类别:

网络

开发平台:

Others

  1. import os, sys, string, time
  2. tosRoot = '/home/acwarrie/tinyos-1.x'
  3. clearMotePath = tosRoot + '/apps/Blink'
  4. #progPath = tosRoot + '/contrib/zmac/apps/MultiHopThroughput'
  5. progPath = tosRoot + '/contrib/zmacDrand/apps/TestBedTopology'
  6. resultPath = '/home/acwarrie/research/TestBedDrand/results'
  7. loadAllMotes = 'loadlistTB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43'
  8. allMotes = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43]
  9. drandMotes = [ 2, 3, 9, 10, 39, 1, 24, 27, 28, 21, 37, 38, 36, 31, 32, 15,
  10.               17, 40, 41, 42, 43, 5, 14, 18, 19]
  11. loadDrandMotes = 'loadlistTB 2 3 9 10 39 1 24 27 28 21 37 38 36 31 32 15 17 40 41 42 43 5 14 ' +
  12.     '18 19'
  13. expTime = 500
  14. def clearMotes():
  15.     os.chdir(clearMotePath)
  16.     os.system(loadAllMotes)
  17.     time.sleep(10) #sleep for 10s
  18. os.system('rm -rf ' + resultPath + '/*')
  19. for run in range(2):
  20.     clearMotes()
  21.     time.sleep(10)
  22.     os.chdir(progPath)
  23.     os.system(loadDrandMotes)
  24.     time.sleep(10)
  25.     #create run result directory
  26.     runPath = resultPath + '/run' + str(run)
  27.     os.mkdir(runPath)
  28.     for mote in drandMotes:
  29.         pid = os.spawnlp(os.P_NOWAIT, 'telmoteTB', 'telmoteTB', 'h' + str(mote),
  30.                          runPath + '/h_' + str(mote))
  31.     time.sleep(expTime)
  32.     os.system('killall -s 9 telnet')
  33.     os.system('kill -s 9 ' + str(pid))