FreeRTOS란 무엇입니까? - FreeRTOS

FreeRTOS란 무엇입니까?

15년간 세계 유수의 칩 회사와 협력하여 개발되었으며, 현재 175초마다 다운로드 FreeRTOS는 마이크로컨트롤러 및 소형 마이크로프로세서를 위한 시장을 선도하는 실시간 운영 체제입니다. MIT 오픈 소스 라이선스에 따라 자유롭게 배포되는 FreeRTOS는 모든 산업 분야에서 사용하기에 적합한 커널과 증가하는 라이브러리 세트가 포함되어 있습니다. FreeRTOS는 안정성과 사용 편의성에 중점을 두고 빌드되었습니다.

FreeRTOS에는 연결, 보안 및 OTA(Over-the-Air ) 업데이트용 라이브러리가 포함되어 있습니다. 또한 FreeRTOS에는 적격 보드에서 FreeRTOS 기능을 보여주는 데모 애플리케이션도 포함되어 있습니다.

FreeRTOS는 오픈 소스 프로젝트입니다. GitHub 사이트 https://github.com/aws/amazon-freertos에서 소스 코드를 다운로드하거나 변경 사항 또는 기능 향상에 기여하거나 문제를 보고할 수 있습니다. MIT 오픈 소스 라이선스 하에서 FreeRTOS 코드를 릴리스하므로, 상용 및 개인 프로젝트에서 코드를 사용할 수 있습니다.

FreeRTOS 설명서(FreeRTOS 사용 설명서, FreeRTOS 포팅 안내서FreeRTOS 검증 안내서)에 대한 기여도 환영합니다. https://github.com/awsdocs/aws-freertos-docs에서 설명서에 대한 마크다운 소스를 사용할 수 있습니다. 이 소스는 Creative Commons(CC BY-ND) 라이선스 하에서 릴리스됩니다.

FreeRTOS 커널과 구성 요소는 개별적으로 릴리스되며 의미 체계 버전 관리를 사용합니다. 통합 FreeRTOS 릴리스는 주기적으로 이루어집니다. FreeRTOS 릴리스의 세 가지 유형은 메이저, 마이너 및 장기 지원(LTS)입니다. 메이저라는 명칭은 여러 라이브러리에 새로운 기능 또는 중요한 업데이트가 추가됨을 나타냅니다. 모든 릴리스는 YYYYMM.NN 형식의 날짜 기반 버전 관리를 사용합니다. 여기서

  • Y는 연도를 나타냅니다.

  • M은 월을 나타냅니다.

  • N은 지정된 월 내의 릴리스 순서를 나타냅니다(00은 첫 번째 릴리스).

예를 들어, 2019년 6월의 두 번째 릴리스는 201906.01이 됩니다.

이전에 FreeRTOS는 의미 체계 버전 관리를 메이저 릴리스에 사용했습니다. Amazon FreeRTOS는 날짜 기반 버전 관리로 이동했지만(FreeRTOS 1.4.8에서 FreeRTOS 201906.00으로 업데이트됨), FreeRTOS 커널 및 각 개별 FreeRTOS 라이브러리는 여전히 의미 체계 버전 관리를 그대로 유지하고 있습니다. 의미 체계 버전 관리에서는 버전 번호(X.Y.Z) 자체가 릴리스가 메이저 릴리스인지, 마이너 릴리스인지, 또는 포인트 릴리스인지를 나타냅니다. 이로 인해 의미 체계 버전 관리가 개별 애플리케이션에 영향을 미치지 않는 변경 사항을 기반으로 메이저 릴리스를 표시하는 상황이 발생할 수 있습니다. 라이브러리의 의미 체계 버전을 사용하여 새 릴리스의 범위와 애플리케이션에 미치는 새 릴리스의 영향을 평가할 수 있습니다.

LTS 릴리스는 다른 릴리스 유형과 다르게 유지 관리됩니다. 메이저 릴리스와 마이너 릴리스는 결함 해결뿐 아니라 새 기능으로 자주 업데이트됩니다. LTS 릴리스는 중요한 결함과 보안 취약성을 해결하기 위한 변경 사항으로만 업데이트됩니다. 시작 후 특정 LTS 릴리스에는 새로운 기능이 도입되지 않습니다. 이 유형의 릴리스는 릴리스 후 최소 3역년 동안 유지 관리 되며, 메이저 릴리스와 마이너 릴리스가 나타내는 동적 기준과는 대조적으로 안정적인 기준을 사용할 수 있는 옵션을 디바이스 제조업체에게 제공합니다.

FreeRTOS 아키텍처

FreeRTOS일반적으로 디바이스 애플리케이션에 필요한 모든 구성 요소와 함께 디바이스의 플래시 메모리에 단일 컴파일 이미지로 저장됩니다. 이 이미지는 내장형 개발자에 의해 작성되는 애플리케이션을 위한 기능, Amazon에서 제공되는 소프트웨어 라이브러리, FreeRTOS 커널, 하드웨어 플랫폼용 드라이버와 BSP(Board Support Package) 등을 결합합니다. 사용 중인 개별 마이크로 컨트롤러에 상관없이 내장형 애플리케이션 개발자는 FreeRTOS 커널과 모든 FreeRTOS 소프트웨어 라이브러리에 대해 동일한 표준 인터페이스를 기대할 수 있습니다.

FreeRTOS 커널

FreeRTOS 커널은 다양한 아키텍처를 지원하는 실시간 운영 체제이며, 임베디드 마이크로 컨트롤러 애플리케이션을 빌드하기에 적합합니다. 이 커널은 다음을 제공합니다.

  • 멀티태스킹 스케줄러

  • 여러 가지 메모리 할당 옵션(정적으로 할당되는 시스템 생성 가능)

  • 작업 간 조정 프리미티브(작업 알림, 메시지 대기열, 각종 세마포어, 스트림 및 메시지 버퍼 등)

FreeRTOS 커널에 대한 최신 문서는 FreeRTOS.org를 참조하십시오. FreeRTOS.org에서는 Quick Start Guide 및 상세한 Mastering the FreeRTOS Real Time Kernel을 비롯하여, FreeRTOS 커널 사용에 대한 자세한 자습서와 안내서를 다양하게 제공합니다. 이 안내서의 FreeRTOS 커널에 대한 자세한 내용은 FreeRTOS 커널 기초 단원을 참조하십시오.

FreeRTOS 라이브러리

FreeRTOS에는 다음을 위한 라이브러리가 포함되어 있습니다.

  • MQTT 및 디바이스 섀도우를 사용하여 AWS IoT 클라우드에 디바이스를 안전하게 연결합니다.

  • AWS IoT Greengrass 코어를 검색하고 연결합니다.

  • Wi-Fi 연결을 관리합니다.

  • FreeRTOS 무선(OTA) 업데이트를 수신하고 처리합니다.

자세한 내용은 FreeRTOS 라이브러리 항목을 참조하십시오.

FreeRTOS 소스 코드 다운로드

FreeRTOS 콘솔에서 FreeRTOS 검증 플랫폼에 대해 구성된 FreeRTOS 버전을 다운로드할 수 있습니다. 검증 플랫폼 목록은 FreeRTOS 적격 하드웨어 플랫폼 또는 FreeRTOS 파트너 웹 사이트를 참조하십시오.

GitHub에서 FreeRTOS를 복제하거나 다운로드할 수도 있습니다. 자세한 내용은 README.md 파일을 참조하십시오.

FreeRTOS 콘솔

FreeRTOS 콘솔에서 마이크로 컨트롤러 기반 디바이스용 애플리케이션을 작성하는 데 필요한 모든 것을 담은 패키지를 구성하고 다운로드할 수 있습니다.

  • FreeRTOS 커널

  • FreeRTOS 라이브러리

  • 라이브러리 지원 플랫폼

  • 하드웨어 드라이버

자세한 내용은 FreeRTOS 콘솔 단원을 참조하십시오.

개발 워크플로우

FreeRTOS를 다운로드하여 개발을 시작합니다. 패키지의 압축을 풀고 IDE로 가져옵니다. 이제 선택한 하드웨어 플랫폼에서 애플리케이션을 개발하고, 해당 디바이스에 적합한 개발 프로세스를 사용하여 디바이스를 제작하고 배포할 수 있습니다. 배포된 디바이스는 전체 IoT 솔루션의 한 부분으로 AWS IoT 서비스나 AWS IoT Greengrass에 연결할 수 있습니다.

추가 리소스

다음은 유용한 리소스입니다.

  • FreeRTOS 엔지니어링 팀에 FreeRTOS에 대한 질문이 있는 경우 FreeRTOS GitHub 페이지에서 문제를 개설할 수 있습니다.

  • FreeRTOS에 대한 기술 관련 질문이 있는 경우 FreeRTOS 커뮤니티 포럼을 방문하십시오.

  • AWS에 대한 기술 지원을 받으려면 AWS 지원 센터를 방문하십시오.

  • AWS 결제, 계정 서비스, 이벤트, 침해 또는 기타 AWS 관련 문제를 문의하려면 문의처 페이지를 방문하십시오.