임베디드 시스템과 Windows CE
- 최초 등록일
- 2009.06.22
- 최종 저작일
- 2009.06
- 14페이지/ MS 워드
- 가격 2,000원
소개글
임베디드 시스템과 그 대표적인 예인 Windows CE에 대한 리포트 입니다.
목차
1. Prologue - Embedded System
2. RTOS (Real Time Operating System)
3. Windows CE ( Windows Mobile )
4. 마치며
본문내용
1. Prologue - Embedded System
Embedded System의 사전적 정의는 특정한 제품이나 솔루션에서 주어진 작업을 수행할 수 있도록 추가로 탑재되는 솔루션이나 시스템 이라고 되어있다. 여기에서 특정한 제품이나 솔루션이라 함은 흔히 알고 있는 PDA는 핸드폰 등에 내장되어 있는 운영체제만을 말하는 것이 아니라 냉장고에서 전기밥솥까지 등의 각종 가정기기에서부터 자동차에 쓰이는 것까지 매우 폭넓다. 여기에서 우리는 RTOS 즉, 실시간 운영체제를 중심으로 임베디드 시스템에 대하여 알아보도록 하자.
2. RTOS (Real Time Operating System)
RTOS (Real Time Operating System), 즉 실시간 운영체제는 실시간으로 사용하는 응용프로그램을 위해 개발되어 온 운영체제이다. RTOS는 전형적으로 임베디드 시스템에서 쓰이게 된다.
RTOS는 반드시 높은 처리율을 가지지 않는다. 다시 말하자면, 특성화된 스케쥴링 알고리즘과 높은 클록 대 인터럽트 비율(High Clock-Interrupt Rate)은 둘 다 처리율에 방해가 된다. 즉, RTOS의 스케쥴링 알고리즘이나 작은 인터럽트가 처리율을 낮게 한다는 것이다. 그렇기 때문에 실제 운영체제 없이 시스템을 운영하는 것이 처리율 면에서 가장 유리할 수 있다.
2.1. 설계 철학
RTOS의 두 가지 기본적인 설계 철학은 다음과 같다.
이벤트 구동 방식(event-driven)의 운영 체제에서는 특정 이벤트가 서비스를 요청할 때에만 변화가 일어난다.
CPU 시간을 나누어 처리하는(time-sharing) 설계는 타이밍 인터럽트 또는 이벤트가 발생했을 때, 작업 중인 태스크에서 다른 태스크로 CPU를 전환한다.
시간을 나누어 처리하는 방식의 설계일 경우, 필요 없는 작업 전환으로 CPU 시간을 더 많이 낭비한다. 그럼에도 불구하고 이러한 방식이 보다 나은 멀티 태스킹 방식처럼 보일 수 있다.
2.2. 스케쥴링
전통적인 설계 방식에서, 태스크는 수행, 준비, 블록의 세 가지 상태(state)를 갖는다. 대부분의 작업들이 거의 항상 블록된 상태로 있고, 특정 시간에 한 CPU마다 하나의 태스크만이 수행되고 있다. 준비 목록은 대개 짧으며, 많으면 2~3개의 태스크만이 등록된다.
진정한 기술은 스케줄러를 설계하는 것이다. 대개 스케줄러 상의 준비 목록 자료 구조는 검색과 삽입, 삭제에서 단지 매우 짧은 시간 동안의 인터럽트 잠금을 요구하도록 설계되어 있다. 이는 목록 안에 있는 다른 태스크들은 리스트를 찾는 동안 비동기로 수행될 수 있음을 뜻한다. 전통적으로 성공적인 스케줄링 모델은 준비된 작업들을 이중 연결 목록으로 우선 순위에 따라 정렬하는 방식이다. 이 방식은 검색에는 시간이 좀 걸리지만, 걸리는 시간은 유동적이지 않고 결정적(deterministic)이다
참고 자료
Microsoft Windows CE 공식 홈페이지
LiMo Foundation(Linux Mobile)