표제지
목차
국문요약 11
제1장 서론 12
1.1. 연구 배경 및 목적 12
1.2. 연구의 방법과 구성 14
제2장 이론적 배경 15
2.1. TinyOS의 이론적 고찰 15
2.1.1. TinyOS의 개요 15
2.1.2. TinyOS의 특징 16
2.1.3. TinyOS의 부팅과 초기화 17
2.1.4. TinyOS의 스케쥴러 20
2.1.5. TinyOS의 디렉토리 구조 24
2.2. nesC에 대한 고찰 25
2.2.1. nesC의 특징 25
2.2.2. TinyOS의 프로그래밍 26
제3장 가전제어용 Real-Time Task Manager 47
3.1. 테스트 보드의 구성 47
3.1.1. 하드웨어 구성 47
3.1.2. Keypad의 기능 50
3.1.3. Keypad 컴포넌트의 설계 52
3.1.4. Fnd 컴포넌트의 설계 57
3.1.5. Real-Time Task Manager의 구현 63
3.2. 다른 응용프로그램 포팅하기 67
3.2.1. 포팅을 위한 시스템의 구성 67
3.2.2. 응용프로그램 포팅 단계 69
제4장 성능평가 81
4.1. 성능 평가를 위한 시스템 구성 81
4.2. 성능 평가 85
4.2.1. 성능평가 방법 85
4.2.2. 성능평가 진행 86
제5장 결론 90
참고 문헌 91
Abstract 92
[표 2-1] TinyOS의 하드웨어 추상화 3계층 43
[표 4-1] 가전센서노드와 비교센서노드 통신 에러율 비교 88
[표 4-2] 가전센서와 비교센서노드 통신 에러율(10회) 89
[그림 2-1] main함수의 분석 18
[그림 2-2] tos.h 파일 18
[그림 2-3] TinyOS의 스케쥴링 21
[그림 2-4] Task Queue에 태스크 넣기 23
[그림 2-5] TinyOS의 디렉토리 구조 24
[그림 2-6] TinyOS 프로그램의 컴파일 과정 26
[그림 2-7] 응용프로그램을 구성하는 파일 27
[그림 2-8] TinyOS의 Programming Model 28
[그림 2-9] 컨피그레이션 컴포넌트의 문법적 구조 28
[그림 2-10] 모듈 컴포넌트의 문법적 구조 29
[그림 2-11] 시스템에서 사용되는 인터페이스 31
[그림 2-12] 인터페이스의 문법적 구조 31
[그림 2-13] ToggleAppC 프로그램 33
[그림 2-14] ToggleAppC의 컴포넌트 그래프 33
[그림 2-15] 컴포넌트들 사이에서 함수호출 37
[그림 2-16] Makefile의 문법적 구조 38
[그림 2-17] ToggleC 프로그램 40
[그림 2-18] MainC 프로그램 41
[그림 2-19] LedsC 프로그램 45
[그림 2-20] LedsC의 컴포넌트 그래프 46
[그림 2-21] PlatformLedsC의 컴포넌트 그래프 46
[그림 2-22] HplMsp430GeneralIOC의 컴포넌트 그래프 46
[그림 3-1] 테스트 보드의 회로 구성도 49
[그림 3-2] 테스트 보드의 실제 조립도 49
[그림 3-3] Keypad 제어를 위한 상태도 50
[그림 3-4] 키패드를 위한 Keypad.h 파일 53
[그림 3-5] KeypadC 컨피그레이션 컴포넌트 54
[그림 3-6] KeypadC 컴피그레이션에 대한 컴포넌트 그래프 54
[그림 3-7] Keypad 인터페이스 54
[그림 3-8] KeypadM 컴포넌트 프로그램(1) 55
[그림 3-9] KeypadM 컴포넌트 프로그램(2) 56
[그림 3-10] Fnd.h 파일의 내용 57
[그림 3-11] Fnds 인터페이스 58
[그림 3-12] FndsC컴피그레이션에 대한 컴포넌트 그래프 59
[그림 3-13] FndsC 컨피그레이션 컴포넌트 59
[그림 3-14] FndsM 모듈 컴포넌트(1) 60
[그림 3-15] FndsM 모듈 컴포넌트(2) 61
[그림 3-16] FndsM 모듈 컴포넌트(3) 62
[그림 3-17] Real-time Task Manager의 스케쥴링 64
[그림 3-18] HomeApplC 컨피그레이션에 대한 컴포넌트 그래프 65
[그림 3-19] HomeApplC 컨피그레이션 컴포넌트 66
[그림 3-20] OscilloscopeAppC의 포팅을 위한 시스템 구성도 68
[그림 3-21] H2420_LightTestScope와 HomeAppl의 파일 구성 69
[그림 3-22] OscControl 인터페이스 70
[그림 3-23] OscilloscopeAppC 응용프로그램 수정 70
[그림 3-24] OscilloscopeAppC에 OscControl 추가 71
[그림 3-25] OscilloscopeC 모듈 수정 72
[그림 3-26] HomeApplC 컨피그레이션 컴포넌트 73
[그림 3-27] HomeApplC의 수정된 컴포넌트 그래프 74
[그림 3-28] 수정된 Makefile 74
[그림 3-29] HomeApplM 모듈 컴포넌트(1) 76
[그림 3-30] HomeApplM 모듈 컴포넌트(2) 77
[그림 3-31] HomeApplM 모듈 컴포넌트(3) 78
[그림 3-32] HomeApplM 모듈 컴포넌트(4) 79
[그림 3-33] HomeApplM 모듈 컴포넌트(5) 80
[그림 4-1] 성능평가를 위한 시스템 구성도 81
[그림 4-2] Oscilloscope 프로그램 실행시키기 83
[그림 4-3] 가전센서노드 128mS 샘플링 주기 84
[그림 4-4] 가전센서노드의 샘플링주기에 따른 통신 상태 86
[그림 4-5] 비교센서노드의 샘플링주기에 따른 통신 상태 87
[그림 4-6] 가전센서와 비교센서노드의 동시 통신 상태 보기 89