방법 1) 함수 정의 찾기

함수 우클릭 > Open Declaration

 

 

방법 2) 모든 파일에서 문자열 검색

Search > Search > File Search

마우스 휠을 돌려보시면 확대/축소가 됩니다

이렇게 칩을 입력인지 출력인지

gpio 인지 인터럽트인지  클럭핀인지

다 설정할 수 있어요 

핀 컴플레이션은 하지만 지금은 그대로 둡시다.

 



ioc 파일을 저장하는 순간 코드가 다시 만들어집니다.

우리가 한 설정에 따라 자동으로 코드를 생성해주는 겁니다.

 

 

여기 미들웨어라고 하는거 눌러보세요.

누르시면 여기에 FreeRTOS가 있습니다.


눌러보시면 이런게 떠요!


CMSIS V1을 선택해주세요

 

미들웨어라고 하는게 자동으로 생성됩니다.


세이브 코드를 생성할까요?
물어보면 yes 를 누릅니다.


미들웨어라고 하는게 자동으로 들어가 버립니다
세이브 코드를 생성할까요?
물어보면 yes 를 누릅니다.

middleware, third-party, PR2S, source 쭉 다 들어갔죠.


코드가 자동으로 들어왔죠.

간단한 테스트 코드까지 만들어주었네요.

 

Config Parameters를 살펴봅시다.

우선순위가 현재는 7로 되어있네요.

프로젝트OS의 우선순위는 0부터 6까지 쓸 수 있습니다.

 

 

0, 1, 2, 3, 4, 5, 6

우선순위가 가장 높은 게 6입니다.

원하면 바꿀 수도 있어요.

 

 

이걸  20으로 바꾼다면,

우선순위는 0부터 19까지가 사용 가능한 우선순위가 됩니다.

수정한 후 저장하면 코드가 다시 만들어집니다.

 

포팅이라고 이야기하기 민망하죠.

5분만에 끝나는 포팅.

너무 쉬운 포팅이죠.

 

main.c 를 열어보면 

간단한 데모 프로그램이 만들어져있습니다.

 

프로젝트명은 원하는 이름으로 결정 후 > Finish

 

Initialize all peripherals with their default Mode?

에 Yes

 

 

Open Associated Perspective? 에도

Yes

 

 

SDK로드가 완료되면 아래와 같이 칩인

STM32F103RBTx 를 확인할 수 있다.

이 SDK 파일은 
CMSIS 라이브러리, HAL 라이브러리 등으로 구성돼있습니다.

 

우리가 사용하고 있는 보드는 Nucleo-F103RB입니다.

이 보드의 중앙부에 Cortex-M3 칩이 들어있습니다.

 

https://www.mouser.kr/ProductDetail/STMicroelectronics/NUCLEO-F103RB?qs=fK8dlpkaUMs2W6dqxUbL2w%3D%3D&mgh=1&utm_id=17722985420&utm_source=google&utm_medium=cpc&utm_marketing_tactic=apaccorp&gad_source=1&gclid=Cj0KCQjwna6_BhCbARIsALId2Z0YKGy8BpGw326LlRS5Ura_0tFq7AhbcvSuXP0VcbcFdaxYEY6SYMIaAlMuEALw_wcB

 

STM Cube IDE에서 보드를 선택하면

이 보드에 맞는 라이브러리들(CMSIS, HAL)을 알아서 다운받아줍니다.

 

라이브러리는 소프트웨어를 쉽게 만들 수 있게 도와주는 코드모음입니다.

HAL 라이브러리를 이용하면 아두이노만큼 쉽게 LED를 켤 수 있습니다.

 

CMSIS
https://blog.domski.pl/spl-vs-hal-which-one-should-you-use/
- 코어텍스 마이크로 컨트롤러 소프트웨어 인터페이스 표준
- CMSIS는 ARM CORTEX 프로세서 기반 마이크로 컨트롤러 벤더 독립 하드웨어 추상화 계층이다

-  CMSIS는 일반 도구 인터페이스를 정의하고 일관된 장치 지원을 가능하게 한다

-  CMSIS 소프트웨어 인터페이스는 소프트웨어 재사용을 단순화하고 
마이크로컨트롤러 개발자의 학습 곡선을 줄이며 
새로운 장치 의 출시 시간을 단축한다

-  CMSIS는 프로세서 및 주변 장치, 실시간 운영 체제 및 
미들웨어 구성요소에 대한 인터페이스를 제공한다. 


-  CMSIS에는 장치, 보드 및 소프트웨어에 대한 전달 메커니즘이 포함되어 있으며 
여러 공급 업체의 소프트웨어 구성 요소를 결합할 수 있다.

 

HAL
- SPL(Standard Peripheral Library)의 중단에 대한 대안으로 등장

- HAL 드라이버는 풍부한 API 세트를 제공하고 
애플리케이션 상위 계층과 쉽게 상호 작용하도록 설계 되었다

- 각 드라이버는 가장 일반적인 주변 장치 기능을 포함하는 기능 세트로 구성된다. 
각 드라이버의 개발은 드라이버 구조, 기능 및 매개변수 이름을 표준화하는 
공통 API에 의해 주도된다

- HAL의 가장 큰 장점은 이식성

- 클럭 설정, 핀 muxing, 주변 장치 설정 등을 위한 
코드 생성을위한 STM32CubeMX 도구와 결합하여 
장치 전체에 표준화 된 API를 제공과 동시에 자연스럽게 연동이 된다

HAL 라이브러리는 내부 주변 장치를 위한 라이브러리 일뿐만 아니라 
또한 FreeRTOS, FatFS 및 SD 카드 지원을 구성 할 수 있다.

주어진 주변기기 (USART1, USART2...)의 여러 인스턴스에 대한 
동시 API 호출을 허용하는 주변기기 다중 인스턴스 지원

프로젝트를 동일한 제품군 또는 다른 Cortex를 사용하여 
다른 MCU로 마이그레이션하려는 경우 
HAL이 최선의 선택


HAL의 주요 기능
- 특정 주변 장치 기능의 경우 확장 API뿐만 아니라 
공통 주변 장치 기능을 포괄하는 교차 제품군 휴대용 API 집합

- 세 가지 API 프로그래밍 모델: 폴링, 인터럽트 및 DMA
- APIs are RTOS compliant. reentrant API

 

File > New > STM32 Project

 

Board Selector 에서 

Commercial Part Number에 보드 이름 검색

 

우리 보드 이름은 NUCLEO-F103RB

 

보드를 선택하고 Next 버튼 클릭

File > New > Create a STM32 Project

 

 

 

Board Selector 에서 STM 제품들을 확인할 수 있다.

 

나의 보드인 NucleoF103RB 를 검색

 

 

Next를 클릭해줍시다.

 

 

포팅이란?

포팅(porting; 이식; 移植)은 소프트웨어

다른 플랫폼(CPU  운영체제)에서도 동작할 수 있도록 변환하는 것을 말한다.

 

예를 들어 Windows 한컴오피스 한글 

이나 리눅스에서도 쓸 수 있게 프로그램을 수정하는 것을 포팅이라고 부른다.

 

원뜻은 항구(Port)를 뜻하며

다른 선착장(Platform)으로 짐을 옮긴다고 해서

포팅(Porting)이라는 표현이 생긴 것으로 추정된다.



처음부터 여러 플랫폼에서 사용할 수 있도록 만드는 크로스 플랫폼과는 다르다.

쉽게 말해 오픈오피스는 처음부터 PC, 매킨토시 등에서 돌아가게 만든 크로스 플랫폼이지만 

Microsoft Office는 윈도우용으로만 나왔다가

이후 맥 버젼도 개발해 출시하고 있는 이식 케이스.

 

소프트웨어

컴퓨터, 통신, 자동화 등의 장비와 그 주변장치에 대하여 명령·제어·입력·처리·저장·출력·상호작용이 가능하게 하는

namu.wiki

 

 

// [유형 1] 무한루프 함수
void Your_Task( void *pvParameters)
{
    for(;;) {
    /* USER CODE Is here */
    // Call one of FreeRTOS's services:
    vTaskDelay();
    vTaskSuspend();
    vTaskPrioritySet();
    vTaskResume();
    /* USER CODE is here */
}

// [유형 2] 실행 후 스스로를 삭제하는 함수
void YourTask(void *pvParameters)
{
    /* USER CODE is here */
    vTaskDelete(NULL);
}


무한루프 함수스스로를 삭제하는 형태의 함수가 가능
  태스크는 절대 리턴하면 안되므로 항상 'void' 로 리턴형을 사용
예) void userTask(void *pvParameters)

테스크가 있다고 하면 그 테스크의 이름은 아래와 같은 형태여야 됩니다.

uart_task.c

http_task.c

mqtt_task.c

...



테스크의 return은 무조건 void 입니다.

전달인자는 void pointer나 아무 포인터 형태 입니다.

 

 


테스크를 만들 때 이렇게 Kernel API 를 이용해서

태스크화 시킬 수 있습니다.

    // TASK CREATE
    xTaskCreate(
    	Task1,
        "Task1",
        1024,
        NULL,
        TASK_1_PRIO
    	&xHandle
    );

 


근데 좀 헷갈리실 만한 게 있어요.
Task1 이건 함수명이죠. "Task1" 이것도 함수명이잖아요.
근데 "Task1" 은 이름의 성격이에요.
간단하게 description 할 수 있어요.
이 함수가 어떤 함수다라고 하는 것을 description 하게끔 하는 것입니다.
태그, 하나의 식별자를 넣는거에요.
이게 Task1이라는 이름의 task다 라고 하는 식으로.

 

 

FreeRTOS는 2003년 Richard Barry 가 만든 실시간 운영체제
35개 이상의 마이크로 컨트롤러에 이식됨
아마존에서 AWS IOT 엣지 서비스 확장을 위해 2017년 11월 인수
MIT License
용도 : 각종 장비 개발이 가능
공식 사이트 http://www.freertos.org (소스 다운로드 가능)
MIT 라이센스에 따라 소스코드 공개 등의 조건없이 상업적인 목적에도 사용 가능

 


FreeRTOS는 2003년 리차드 배리가 만든 실시간 운영체제 입니다.

비즈니스 모델은 뭐냐면 처음에는 무료로 풀었죠.

무료로 풀었으니 수익은 어디에서 얻을까요? (비즈니스 모델)

처음에는 어떻게 비즈니스를 운영했냐면

홈페이지를 하나 만들었어요.

 

https://www.freertos.org/


홈페이지에 들어가보면 지금은 없는데

예전에는 좌측 사이드 패널에

FreeRTOS하고 같이 조합해서 사용할 상품들이 쭉 진열되어 있었어요.

소프트웨어 상품들이죠.

 

소프트웨어 상품들이 진열되어 있고 

사용자들은 여기 있는 상품을 구입하는 방법 그래서 여기서 수수료를 받았겠죠.

수수료 상품 진열하는 대가로 수익을 내던 회사죠.

그래서 FreeRTOS 자체는 계속 처음부터 계속 지금까지 무료로 유지하고 있기 때문에

여기서 수익이 안 날 거고

첫번째는 좌측에 상품들 리스트를 만들어서 거기서 이제 구매가 일어나도록 수수료를 받았고,

 

 

 

두번째는 사용자 매뉴얼입니다.

FreeRTOS 매뉴얼, 이 매뉴얼을 돈 받고 팔았습니다.

우리나라 돈으로 한 2만원 정도로 pdf 문서로 수익을 냈었고 

또 기타 어떤 식으로 수익을 내는지는 모르겠습니다.


겉으로 봤을 때는 수익을 내는 모델은 그 정도로 추측할 수 있습니다.
지금은 이제 아마존에 인수됐기 때문에

FreeRTOS는 이런 수익성 상품들은 없앤 것 같습니다.

인수한 이후엔 그럴 필요성도 없었겠죠.

 

 


아마존에서 이 FreeRTOS라고 하는 회사를 인수한 목적은 어디 있을까요?

https://www.scribd.com/document/719282227/IOT-on-aws

 

IOT On Aws | PDF | Internet Of Things | Amazon Web Services

The document discusses how AWS IoT can help customers solve problems across various industries by connecting devices, collecting and analyzing data, and taking intelligent actions. It outlines the fundamentals of AWS IoT including connectivity and analytic

www.scribd.com

 

아마도 IoT를 장악하기 위해서 ,선점하기 위해서 아닐까요?

 

 


IoT 사물인터넷 시장을 아마존이 가져가기 위해서

어떤 식으로 IoT 서비스를 하는 거냐면


FreeRTOS 자체가 무료인 것은 지금도 여전히 무료죠.
그래서 무료인 정체성을 유지하고 

 

기존에 FreeRTOS의 플러그인 방식으로

아마존 클라우드 서비스 IoT 서비스를 연결할 수 있는 코드를

같이 결합시킬 수 있게끔.

 

그래서 이미 결합되어 있어요.

IoT하고 FreeRTOS가 결합된 형태로 배포를 하는 거죠.

 

 

 

그래서 이거를 무료로 배포하고 

클라우드 IoT 기기를 하려고 하는 기업이나 개인들은

FreeRTOS를 공짜로 쓰면서

보너스로 아마존 클라우드로 연결할 수 있는 코드도

같이 결제해서 가져올 수 있게 되죠.

 

이건 결코 나쁜 게 아닌 게

아마존에 연결하기 위해서

개발자가 별도의 많은 노력을 기울이지 않아도 되게 해준거죠.

 


그래서 IoT 소프트웨어를 이미 결합시켜놨다. FreeRTOS 하고.


그래서 RTOS 기반에서 아마존 클라우드 서비스를 바로 연결할 수 있는 것을 

쉽게 하게끔 설계되어 있다.

 


그래서 그런 서비스를 함으로 해서

아마존 클라우드 서비스를 더 많은 사용자들이 사용할 수 있게끔 하고 

그 다음에 좀 더 아마존이라고 하는 브랜드를 

더 굳건히 하고, 더 많은 소비자층에 더 인식시킬 수 있는 기회로 삼았다. 

라고 할 수 있지 않을까요?

 


아마존에서 AWS IoT Edge 서비스 확장을 위해서 2017년 11월 인수했고 

MIT 라이센스 형태를 취하고 있습니다 

예전에는 GPL이었죠. 

초기의 라이센스 형태는 아마존 인수되기 전에는 GPL 라이센스였어요.

근데 이제 이게 MIT 라이센스로 바뀐 거죠.


아마존 인수되면서 좀 더 라이센스의 부담으로부터 더 자유로워졌습니다.

 

 


FreeRTOS 을 이용한 상용 RTOS

SafeRTOS

SafeRTOS는 무료 RTOS로 유명한 Amazon FreeRTOS의

Functional model을 기반으로 개발된 RTOS로,

FreeRTOS로는 만족할 수 없는 안전-결정적 요구사항을 만족하기 위해서 등장하였다.

의료기기, 철도, 비행기 등 안전-결정적(safety-critical) 시스템에

바로 적용가능한 안정적이고 효율적인 RTOS 이다.

 


OpenRTOS

OpenRTOS는 간단히 말해서 FreeRTOS의 상용 버전이다. 

소스코드 및 기능이 FreeRTOS와 100% 동일하다. 

다만 비용을 지불하고 정식 상용 라이선스를 구매해야 하므로 

정식으로 기술지원을 받을 수 있다는 점이 FreeRTOS와 가장 큰 차 이점이다. 

또한 IP 침해 주장에 대한 보호를 제공받을 수 있다.


위 두 제품 모두 WITTENSTEIN high integrity systems 사에서 상용 제품으로서 공급

FreeRTOS를 이용해서 상용으로 사용하는 OS들입니다. 

SafeRTOS는 내부적으로는 FreeRTOS인데 이것을 상업화 시킨 것입니다. 

 

 

https://www.linux.com/news/linux-and-open-source-move-embedded-says-survey/

 

Linux and Open Source on the Move in Embedded, Says Survey - Linux.com

AspenCore has released the results of an embedded technology survey of its EETimes and Embedded readers. The survey indicates that open source operating systems like Linux and FreeRTOS continue to dominate, while Microsoft Embedded and other proprietary pl

www.linux.com

 

FreeRTOS가 가진 시장 임베디드 시스템 마켓에서의 비율입니다.

2017년도 조사인데요.

FreeRTOS가 무료인 만큼 거의 이런 통계를 잡으면 

항상 무료가 탑 랭크로 나옵니다. 

이건 어쩔 수 없는 거예요.


그렇기 때문에 약간 허수도 많이 끼어 있다고 봐도 될 것 같습니다.


숫자만 보고 FreeRTOS가 진짜 최고로 인기가 있는 OS이다-

라고 생각하시면 안됩니다.

단순히 무료만이 가질 수 있는 장점인 거죠.

탑 랭크에 오를 수 있는 장점. 

 

기존에 이름만 들어도 알만한 상업용 OS 회사들이 다 하위에 있습니다.
이것도 마이크로-C OS도 굉장히 유명한 OS인데 한참 밀렸네요.
그만큼 무료의 힘이 막강하네요.


근데 항상 이제 1위의 자리를 놓치지 않고 있는게 있는데, 바로 임베디드 리눅스죠.
임베디드 리눅스는 항상 10년 전에 조사한 것도 그렇고, 20년 전에 조사한 것도 그렇고, 항상 상위에 랭크됩니다.

 


그 다음에 윈드리버의 RTOS가 가장 유명한데 지금 점유율은 항상 이 정도입니다.
10년 전에 조사할 때도 한 5% 밖에 안 나왔어요. 별 차이 없죠. 

 

이 FreeRTOS을 쓰는 이유를 꼭 이제 이게 좋아서만 쓴다고 볼 수는 없고요. 

많은 부분이 로얄티가 없기 때문에 많은 사용자들 층을 가지고 있다
그것도 중요한 이유가 될 수 있다고 생각합니다.



 

FreeRTOS의 특징 (1)

  Portable
35개 이상의 마이크로컨트롤러에 이식. 

커널 코드의 대부분이 이식 가능한 ANSI C를 기반

 (일부 마이크로프로세서에 국한된 부분은 어셈블러로 코딩)


  ROMable
해당 C 컴파일러, 어셈블러, 링커, 로더가 필요, 

설정이나 응용프로그램에 따라 메모리의 크기를 자유로이 결정할 수 있다.

 

  커널 바이너리 이미지는 4K에서 9K 바이트 영역


  Preemptive Scheduling

높은 우선 순위 작업이 먼저 수행된다.

 

  Round Robin Support

  Real-Time
빠른 응답성을 갖는다.

  Multitasking
독자적 우선순위를 가지는 무제한으로 생성 가능한 태스크

 


Free RTOS의 특징입니다.
Free RTOS는 기존에 상용OS를 가지고 있는 여러가지 특징을 그대로 다 가지고 있습니다.
그래서 35개 이상의 마이크로컴퓨터를 인식할 수 있고 

롬화가능합니다.
롬의 사이즈에 최적화 시킬 수가 있습니다
kernel binary 기준으로 4k나 9k 정도로 작게 만들 수가 있어요!

선점 스케줄이 되구요.
round robin도 지원되고
round robin은 그 서로 번갈아가면서 실행될 수 있는 것입니다.
time quantum을 가지고 서로의 time quantum을 가지고 실행될 수 있는 걸
round robin이라고 합니다.


리얼타임 당연히 되구요, 멀티태스킹이 되구요.

또, 태스크를 이제 이론적으로 메모리만 문제없다면 
무제한으로 만들 수 있다라고 하는게 장점이죠 .

뭐 이게 왜 장점이 되느냐고 할 수 있지만 
기존에 마이크로 C-OS 와 비교하면 장점입니다.

예전에 MicroC-OS는 무제한으로 만드는 게 안됐거든요.
버전 2까지만 해도 이거는 유한한 태스크의 개수를 지원할 수 있었거든요
근데 Free RTOS는 무제한입니다.

 

 

FreeRTOS의 특징 (2)

  임베디드 운영체제로써 대표적인 공개형 소스코드 기반 커널


● 신뢰성과 안정성을 가진다.

작은 사이즈 - 많은 시스템에 적용가능

작은 임베디드 시스템에 탑재 가능하며 임베디드 시스템 중에서도

강력한 네트워크가 필요한 곳과 높은 성능 시스템에 사용하는 것이 적합


  프로젝트에 따른 소스 코드의 절약이 가능


  스택오버플로우체크, 처리시간 체크, 후크(HOOK), Queue, Semaphore, 5가지 Heap memory 등의 시스템 서비스 제공


  저전력 애플리케이션을위한 틱리스 (tickless) 모드 지원


  효율적인 소프트웨어 타이머


  인터럽트 관리
태스크의 수행을 일시 중지하거나 재개가 가능하다. 

인터럽트 중첩

 

 

임베디드 운영체제로서 대표적인 공개형 소스코드 기반 커널 입니다.

프로젝트 소스 코드를 이제 최적화시켜 작게 만들 수 있고, 
사용자가 원하는 스타일로 힙 메모리를 스타일링 할 수 있어요.
저전력 tickless 모드를 지원하고요.
효율적인 소프트웨어 타이머를 지원합니다.
마이크로C-OS에서는 없었는데, 소프트웨어 타이머도 지원해요.
그 다음에 인터넷 중첩도 시킬 수 있습니다.

 

FreeRTOS의 특징(3)


● 강력한 실행 추적 기능
  스택 오버플로 감지 옵션
  단점
디바이스 드라이버 부재
멀티코어 지원 안됨


다만 이제 디바이스 드라이버 없는 것은

FreeRTOS라서 없는 게 아니고

대부분의 RTOS가 디바이스 드라이버가 없습니다.


멀티코어 지원 안되는 점도 Free RTOS 만의 문제가 아닙니다.
많은 상용 RTOS도 마찬가지입니다.


근데 VxWorks 는, 디바이스 드라이버도 있고, 멀티코어 지원도 다 됩니다.

몇몇 OS들은 지원합니다만 손에 꼽을만한 열 손가락에 꼽을만한 OS 정도만 지원하고
대부분의 RTOS들은 디바이스 드라이버라고 하는게 아예 없습니다.

멀티코어도 지원하지 않구요 


이런 두 가지를 구현하려면 기술력도 있어야 되고

애초에 OS가 설계될 때부터 이런 점을 고려해서 OS가 만들어졌어야 돼요.
근데 FreeRTOS는 처음부터, 디바이스 드라이브나 멀티코어 지원을 만들 생각 없이 만들었습니다.
그렇기 때문에 다른 OS들처럼 지원하지 않아요.

'[2025~] Embedded > Free RTOS' 카테고리의 다른 글

[Free RTOS_022] 포팅 - 시작  (0) 2025.03.07
[Free RTOS_021] 태스크 형태  (0) 2025.03.07
[Free RTOS_019] RTOS의 종류  (0) 2025.03.07
[Free RTOS_018] RTOS의 특징  (0) 2025.03.07
[Free RTOS_017] RTOS란?  (0) 2025.03.07


RTOS로 유명한 것들 몇 가지를 알아봅시다.

 

 

FreeRTOS는 아마존이 인수하여, 아마존의 회사가 됐습니다.

FreeRTOS 뿐만이 아니고 많은 RTOS 회사들이

새 주인한테 많이 가있습니다. 

 

 

 


가장 유명한 RTOS 라면 윈드리버 사의 VxWorks라는 제품이 있죠.
가장 유명한 RTOS가 어떤 거냐 물어보면 이게 1등입니다.

 

 

Micro-C/OS 는 거의 30년 다 되었습니다.
Micro-C/OS는 다른 경쟁 os와 차별점이

소스코드 방식이라는 점입니다.

상업용 OS로, 소스 코드 형태를 취한 가장 최초의 OS였습니다.

 

1991년에 설계된 Micro-C/OS 와

2003년에 개발된 FreeRTOS는

약 10여 년 정도의 세월차가 있을 거에요.

 

 

FreeRTOS는 마이크로 OS 시장을 겨냥해서 나온 OS라고 보입니다.

 

 

왜냐하면 기존에 많은 상업용 OS들은

권투 경기로 비교하자면 큰 물에서 노는 선수들입니다.

짧게는 20년 길게는 30년 동안 유지해온 회사들입니다.

 

 

이 회사들이 상업용 OS로서

바이너리 형태의 RTOS를 제공하고 있었거든요.

소스코드하고 바이너리는 다릅니다.

 

바이너리의 첫번째 특징이

커널 소스가 어떻게 동작하는지를 알 수가 없다는 것입니다.

커널 내부에서 어떻게 동작하는지를 알 수가 없어요.

 

바이너리의 두번째 특징은

우리가 수정하고 싶어도 수정할 수 없는 것입니다.

 


하지만 소스코드는 그 이름에서 잘 알 수 있다시피

우리가 소스코드를 통해서 커널이 어떻게 동작하는지도 알 수 있을 뿐더러 

우리가 능력만 되면 코드를 수정할 수 있다는 장점이 있습니다.

 

그렇게 마이크리움(Micrium) OS 시장을 겨냥해서 나온게

FreeRTOS라고 저는 생각합니다


왜냐하면 FreeRTOS가

소스코드 지향과 무료라고 하는 것을 내세웠거든요.

기존의 상업용 OS 시장은 무료에 크게 영향을 받지 않는 시장입니다.
왜냐하면 이전에도 이제 무료 OS는 있었어요
예전에도 FreeRTOS 말고도 있었는데 크게 영향을 안 받았거든요.

그래서 FreeRTOS가 등장하면서 많이 타격을 입은 곳이 

MicroC/OS의 Micrium(마이크리움)이라는 회사였을 것 같습니다.

 

 

 

 

 

 

Wind River의 제품은 나사 미항공우주국의

많은 우주탐사 프로젝트에서 이 제품을 쓰고 있습니다.

 

https://www.jpl.nasa.gov/missions/mars-pathfinder-sojourner-rover/

 

오랜 기간 동안 걸쳐서 진행된,

패스파인더라고 하는 화성 탐사 프로젝트가 있었는데,

그 화성탐사선에 내장되어 있는 OS가 바로 윈드리버사의 제품이었죠.

(영화 마션)

 

 


OS 회사는 아니지만, Texas Instruments는 반도체 회사입니다.
TI 에서도 자체적으로 OS를 제공하고 있습니다.

 

 

 

 


eCos 회사도 유명하고

 

 

그린힐즈소프트웨어도 오래된 회사입니다.

서드 파티 소프트웨어 개발사로 오래된 회사입니다.

 

 

 

https://www.altreonic.com/content/rosetta-rendez-vous-comet-virtuoso-rtos-board
Altronic은 프랑스와 유럽연합에서 혜혜성에 탐사선을 보냈었어요.
해성 탐사선에 탑재된 OS가 알트리오닉이라고 합니다.
혜성에 처음으로 인류가 탐사선을 창조시키는 데 성공했다고 해서 화제가 됐었죠.

 

 

 


ThreadX도 20년 넘은 OS입니다.

'[2025~] Embedded > Free RTOS' 카테고리의 다른 글

[Free RTOS_021] 태스크 형태  (0) 2025.03.07
[Free RTOS_020] FreeRTOS 소개  (0) 2025.03.07
[Free RTOS_018] RTOS의 특징  (0) 2025.03.07
[Free RTOS_017] RTOS란?  (0) 2025.03.07
[Free RTOS_016] 커널의 시계  (0) 2025.03.07

+ Recent posts