STMicroelectronics
  • HOME
  • News
  • Webinars

[연재]ST 유지 카와노 엔지니어⑬-“RTOS 지정된 시간 범위 내 처리 완료”

기사입력 2022.02.15 12:08
“RTOS 지정된 시간 범위 내 처리 완료”
사전 설정 우선순위 따라 태스크 처리
실시간 처리 성능외 다양한 기능 필요

[편집자주]일반적으로 반도체라 하면 컴퓨터의 CPU와 메모리처럼 일반인에게 익숙한 반도체를 떠올리기 마련이다. 반면에 전자제품 구동을 위해서 핵심 반도체로 쓰이는 MCU(Micro Controller Unit)의 경우 일반적으로 우리가 쉽게 접하는 모든 전자제품에서 사용되고 있으면서도 일반인에게는 아직 낯선 반도체다. 이런 MCU가 최근 반도체 부족 사태로 인해 언론에 오르내리며, 일반인들에게 주목받기 시작했다. 이에 본지는 MCU 반도체 전문기업인 ST마이크로일렉트로닉스의 유지 카와노 매니저의 연재기고를 통해 MCU에 대해 전문적으로 알아보는 자리를 마련했다.



이제 목적과 환경에 맞는 적당한 MCU 소프트웨어를 고르는 것이 얼마나 중요한지 알 수 있을 것이다. 오늘은 OS에 대한 이야기를 좀더 해보려고 한다. OS의 역할과 기능에 대한 이해를 높일 수 있을 것이다. 

지난 10회차에서 OS가 애플리케이션 소프트웨어와 미들웨어의 다양성(versatility) 향상을 위해 설치하는 소프트웨어의 일종이라고 설명했었다. 근본적으로 OS는 하드웨어를 추상화함으로써 시스템의 디바이스 의존성을 없애준다.

OS라는 단어를 들었을 때, 가장 먼저 머리속에 떠오르는 것이 무엇인가? 대부분의 사람들과 마찬가지로 당신 역시 윈도우(Windows)를 떠올릴 것이다. 이 대중적인 OS는 가정용 컴퓨터를 포함하여 많은 PC에 설치되어 있으며 TV 광고를 통해서도 많이 알려져 있다. 또한 여러분은 요즘 인기를 모으고 있는 스마트폰과 테이블릿PC를 지원하는 안드로이드(Android) 또는 iOS도 생각해 볼 수 있다. 임베디드 소프트웨어를 다루는 엔지니어들은 아마도 리눅스(Linux), ITRON, 심비안(Symbian), T-kernel, VxWorks와 같은 다른 많은 OS를 떠올릴 것이다. 

가용한 다양한 OS를 크게 두 가지 종류로 분류할 수 있다. 즉 범용 OS(universal OS)와 실시간 OS(RTOS, real-time OS)이다.

범용 OS와 실시간OS 간의 차이가 아래에 설명되어 있지만, 그 보다 우선 ‘실시간’이 무엇을 의미하는 지 고려해야 한다.

■ ‘실시간’의 의미

실시간 기능에 대해 보다 쉽게 이해할 수 있도록 다음 예제를 살펴보기로 하자. 실시간 컴퓨터와 비-실시간 컴퓨터를 가지고 있고, 모두 동일한 연산을 수행한다고 가정하자. 결과적으로 우리는 동일한 결과를 얻겠지만 차이점은 무엇인가? 차이는 비-실시간 컴퓨터의 경우에 정확한 결과를 얻은 것을 기준으로 태스크를 성공적으로 완료한 것으로 간주하지만, 실시간 컴퓨터의 경우에는 그렇지 않다. 실시간 컴퓨터는 정확한 결과를 생성하는 것 외에도 계산을 제한 시간 내에 완료해야만 한다. 이 예에서 제한 시간은 1분이기 때문에 실시간 컴퓨터는 1분 이내에 계산을 완료해야만 태스크를 성공적으로 완료한 것으로 간주한다. 

따라서 실시간 컴퓨터로 생각되는 컴퓨터는 제한 시간이 지정되어 있어야 하고, 이를 충족시켜야 한다(그림 1 참조).

이 설명을 기반으로, 범용 OS는 엄격한 처리 시간이 부과되어 있지 않지만, RTOS는 지정된 시간 범위 내에서 처리를 완료해야 한다는 것을 알 수 있다.

 

▲그림1 : 실시간 처리



■ 범용 OS의 특징

일반적으로 범용 OS는 멀티 태스크를 병렬로 수행할 때 시간-분할(time-sharing) 방식을 이용한다. 이 방식에서는 새로운 태스크 요청이 발생했는데 OS가 이미 다른 태스크를 수행하고 있었다면 지정된 시간이 될 때까지 새로운 태스크 처리에 착수하지 않는다(그림 2 참조). 라운드-로빈(round-robin) 방식이라고도 알려진 이 시간-분할 방식 하에서 OS는 특정 시간에만 하나의 태스크에서 다른 태스크로 전환한다.

윈도우와 리눅스와 같은 많은 PC OS가 범용 OS이다.

 

▲그림2 : 범용 및 실시간 OS

 

■ RTOS 기능

복수의 태스크를 병렬로 처리하기 위해서 RTOS는 범용 OS의 시간-분할 방식이 아닌 사전 설정된 우선순위(preset priorities)에 따라서 태스크를 처리해야 한다. 이를 통해 시스템은 지정된 제한 시간 내에 각각의 태스크를 끝낼 수 있다. 그림 2에 나타낸 바와 같이 범용 OS와 RTOS가 동일한 3개의 태스크를 각기 다른 순서로 끝낼 수 있다. RTOS는 다른 태스크를 완료하기 전에 우선순위가 더 높은 태스크를 완료한다.

MCU의 경우 일반적으로 RTOS를 선택한다. 전형적인 RTOS의 예로는uCOS-II나 embOS가 있으며, 이것은 ST마이크로일렉트로닉스의 32 비트 MCU인 STM32 시리즈의 여러 제품에 탑재되어 있다. 내장 플래시 메모리를 제공하는 MCU에 설치된 RTOS는 소형 OS 풋프린트(즉, 적은 용량의 ROM 및 RAM)를 지원해야만 한다

■ RTOS의 필요 기능

알고 있다시피 RTOS에서 가장 중요한 것은 실시간 처리 성능이지만, 실제적으로 다음과 같은 기능들 역시 필요하다.

▷병렬 처리 기능
그림 2는 3개의 태스크가 RTOS에 의해 처리되는 방법을 보여준다. 이들 3개의 태스크를 병렬로 동시에 처리하기 위해서, OS는 각 태스크의 상태를 결정하고 그에 맞춰 태스크 스위칭 및 태스크 스케줄링을 수행해야 한다. 이러한 프로세스를 수행하기 위한 RTOS 기능을 병렬 처리 기능(또는 태스크 제어 기능)이라고 한다. 다양한 태스크 상태로는 실행(executing), 휴식(resting), 준비(ready), 대기(waiting) 등이 있다.

▷동기화 기능
동기화 기능은 다른 태스크의 처리가 시작되기 전에 하나의 태스크가 완료되어야 할 경우와 같이 상호 연관된 처리 시간을 갖는 서로 다른 태스크들을 동기화한다. 동기화 방법은 세마포어(semaphore)와 이벤트 플래그 등이 있다.

▷통신 기능
통신 기능은 동기화 기능과 다소 유사하지만, 처리 시간 정보뿐만 아니라 하나의 태스크에서 처리된 데이터가 다음 태스크에서 사용되는 경우와 같이 관련된 태스크에 대한 태스크 데이터들을 교환한다. 통신 방법은 데이터 큐와 메일박스가 있다.

▷시간 제어 기능
RTOS는 시간 제어 기능을 사용하여 태스크의 일시 중단, 주기적인 태스크 호출 등과 같은 시간 관련 동작을 수행한다. 이 기능은 시스템 클록을 설정 및 참조할 뿐만 아니라 지연 태스크 처리, 타임-아웃 처리 등을 수행한다.

▷인터럽트 제어 기능
인터럽트가 태스크들 사이에 생성될 때, RTOS는 현재 태스크의 처리를 일시적으로 중단하고 인터럽트에 해당하는 프로세스로 전환해야 한다. 이러한 경우에 인터럽트 제어 기능이 실행 인터럽트 핸들러와 경로를 제어한다. 이러한 프로세스는 인터럽트 핸들러의 정의, 인터럽트 경로 생성 및 제거, 인터럽트 경로 상태 참조, 인터럽트 허가 및 금지, 인터럽트 마스킹 등이 있다.

▷메모리 제어 기능
메모리는 제한된 자원이기 때문에, 이 기능은 동적으로 각 태스크의 메모리 사용을 관리한다. 제어 방법은 고정-길이 메모리 풀과 가변-길이 메모리 풀이 있다.

다양한 OS는 RTOS 또는 범용 OS로 구분할 수 있다. 일반적으로 RTOS는 소형 OS 풋프린트가 요구되는 MCU에 설치된다. 또한 RTOS는 필요한 애플리케이션 소프트웨어를 구성하는 데 사용되는 특정 기본 기능들을 제공해야만 한다.
목록으로

관련뉴스

image

ST, 장 마크 셰리 CEO 1년 연임 추진

STMicroelectronics가 감독이사회의 요청에 따라 장 마크 셰리 CEO의 1년 임기 연임을 추진한다. 2027년 정기주주총회에서 최종 승인을 받을 예정이며, ST는 현 경영진 체제의 연속성을 통해 기존 경영 전략과 성장 동력을 유지하겠다는 의지를 드러냈다.

2026.10.21 by 배종인 기자

image

ST, 에어컨·히트펌프용 소형 지능형 전력 모듈 출시

ST마이크로일렉트로닉스가 에어컨·히트펌프·산업용 드라이브용 소형 지능형 전력모듈 SLLIMM 컴팩트 시리즈를 출시했다. 600V 3상 IGBT 인버터 브리지를 단일 패키지에 집적하면서 기존 DBC 기반 제품 대비 크기를 30% 이상 줄였다. STGI15C60S는 18....

2026.10.13 by 배종인 기자

image

[인터뷰] 마테오 마라비타 ST AICC 센터장, “저전력·고효율 임베디드 AI 플랫폼으로 엣지 AI 대중화 이끌 것”

최근 AI의 중심이 빠른 응답 속도, 전력 및 비용 절감, 보안성 향상 등을 이유로 클라우드에서 엣지로 이동하고 있다. 또한 임베디드 AI 개발에서는 제한된 메모리 환경에 맞춘 모델 최적화가 중요시 되고 있다. 이런 가운데 ST마이크로일렉트로닉스(STMicroelect...

2026.10.08 by 배종인 기자

image

ST, 지속가능 소재 적용한 6축 IMU 출시…드론·스마트기기 겨냥

ST마이크로일렉트로닉스(STMicroelectronics)가 컨슈머 및 산업용 시장을 겨냥한 신규 6축 IMU인 LSM6DSK320X와 ISM6HGK256X를 공개했다.

2026.09.30 by 배종인 기자

image

ST, 차량 실내 센싱용 1.1MP 이미지 센서 VD56GA 출시

ST마이크로일렉트로닉스가 차량 실내 모니터링용 1.1MP 이미지센서 VD56GA를 출시했다. 적외선 기반의 이 센서는 이전 세대 대비 선명도 35%, 적외선 감도 60%를 향상시켰으며, 저비용 광학 부품 활용으로 전체 카메라 모듈 비용 절감이 가능하다. 운전자·탑승자 ...

2026.09.15 by 배종인 기자

Copyright © 2026 Ch5 e4ds News. All Rights Reserved