Deluge 2.0
- Goals :
• robustness & useability가 강화된 network programming
- Features :
• Multihop 지원 : multihop 네트워크 안의 모든 노드에 무선으로 프로그램 적재
• Epidemic propagation : 모든 노드에 의한 연속적인 전파 전달로, 통신율이 낮은 노드에도 전파 전달이 되도록 기여함.
• Redundant data integrity checks : CRC계산으로, 모든 노드의 프로그램 이미지 무결성을 보장하도록 기여함.
• Store multiple program images : 프로그램 이미지를 여러 개 저장함으로써, 계속되는 다운로드 없이도, 프로그램을 빠르게 교환.
• Golden image : 최소한의 network programming을 지원하는 프로그램 이미지로 외부 flash의 안전한 위치에 저장된다. 복구에 필요한 코드 부분이 있다.
• Isolated bootloader : TinyOS 어플리케이션의 리셋 후에 실행을 보장하는 코드. bootloader는 마이크로컨트롤러 프로그래밍과 관련되어 있으며, 프로그래밍 에러시 Golden Image를 읽어서 복구한다.
• Rollback gesture : 노드 고장시, 리셋 스위치를 여러 번 누르면, Golden image로 전환되어 새로운 프로그램을 받아들일 수 있도록 준비됨.
• Small RAM foot print : 150byte 미만의 메모리 차지.
- Improvement :
• 프로그래밍 전에 이미지가 유효한가에 대한 이미지 검증
• 프로그래밍 실패시 자동으로 Golden Image로 rollbak
• 어플리케이션의 의한 Golden image의 수정을 방지
• 프로그램에 대한 다양한 정보(program name, compile time, host name ...)
• CRC를 포함한 metadata 데이터구조를 사용
• Deluge나 TOSBase node 연결시 자동으로 감지
• 불완전한 이미지 자동 재시작
• 동일한 이미지 자동 감지
- Compatible platform :
• Mica2, Mica2-doc, MicaZ, Telos Rev.A, Telos Rev.B, TmoteSky
- Deluge Testing :
•
• Formatting the Flash ; Flash 메모리의 FAT를 위한 formatting
1) tinyos-1.x/apps/TestDeluge의 FlashFormat 어플리케이션 install
2) reset후 자동으로 포맷 시작(Yellow On), Success종료(Green On), Fail종료(Red On)
• Installing Deluge ; 기본 Deluge 어플리케이션과 TOSBoot 인스톨
1) tinyos-1.x/apps/TestDeluge의 DelugeBasic 어플리케이션 install(must set node ID)
• Pinging the Node ; Deluge java tool chain으로 현재 노드의 Deluge확인
1) Deluge가 적용된 노드를 UART로 연결한다.(SerialForwarder 혹은 MOTECOM 환경변수 설정)
2) java net.tinyos.tools.Deluge --ping
3) result screen
• Installing the Golden Image ; Deluge를 지원하는 최소 기능을 포함한 TinyOS application
1) application compile
2) build/telosb/tos_image.xml 생성 확인
3) java net.tinyos.tools.Deluge -i -in=0 -ti=./build/telosb/tos_image.xml 명령으로 Golden Image 생성 및 업로드(Golden image는 특별한 어플리케이션으로 직접연결로만 다운로드 가능)
4) 다른 노드에도 1~3의 과정으로 Golden image 다운로드 할 것.
• preparing your code : deluge 사용을 위해 사용자 어플리케이션에 deluge적용
1) top level configuration에서 DelugeC Component 추가, Main과 DelugeC wiring
• injecting a New Program image
1) java net.tinyos.tools.Deluge -i -in=1 -ti=./build/telosb/tos_image.xml
• reprogramming with a New program image
1) java net.tinyos.tools.Deluge -r -in=1(1번 image가 프로그래밍되어 동작됨. (GroupID, NodeID 유지됨))
- Deluge command :
• Ping
# java net.tinyos.tools.Deluge --ping
• Inject
# java net.tinyos.tools.Deluge --inject --tos_image=
• Reboot
# java net.tinyos.tools.Deluge --reboot --imgnum=
• Erase
# java net.tinyos.tools.Deluge --erase --imgnum=
• Reset
# java net.tinyos.tools.Deluge --reset --imgnum=
• Dump(extract)
# java net.tinyos.tools.Deluge --dump --imgnum=
댓글 없음:
댓글 쓰기