Amazon FreeRTOS
사용 설명서

Amazon FreeRTOS란 무엇입니까?

Amazon FreeRTOS는 연결, 보안, OTA(Over-the-Air) 업데이트용 라이브러리를 사용하여 FreeRTOS 커널을 확장하는 실시간 운영 체제입니다. 또한 Amazon FreeRTOS는 적격 보드에서 Amazon FreeRTOS 기능을 보여 주는 데모 애플리케이션을 제공합니다.

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

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

Amazon FreeRTOS 릴리스의 세 가지 유형은 메이저, 마이너 및 장기 지원(LTS)입니다. 메이저라는 명칭은 여러 라이브러리에 새로운 기능 또는 중요한 업데이트가 추가됨을 나타냅니다. 모든 릴리스는 YYYYMM.NN 형식의 날짜 기반 버전 관리를 사용합니다. 여기서

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

  • M은 월을 나타냅니다.

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

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

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

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

Amazon FreeRTOS 아키텍처

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

FreeRTOS 커널

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

  • 멀티태스킹 스케줄러

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

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

FreeRTOS 커널에 대한 자세한 내용은 FreeRTOS 커널 기초 단원을 참조하십시오.

Amazon FreeRTOS 라이브러리

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

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

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

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

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

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

Amazon FreeRTOS 소스 코드 다운로드

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

GitHub에서 Amazon FreeRTOS를 다운로드할 수도 있습니다.

Amazon FreeRTOS 콘솔

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

  • FreeRTOS 커널

  • Amazon FreeRTOS 라이브러리

  • 라이브러리 지원 플랫폼

  • 하드웨어 드라이버

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

개발 워크플로우

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

추가 리소스

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

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

  • AWS 커뮤니티에서 AWS 및 Amazon FreeRTOS에 대한 기술적 질문을 하려면 AWS 토론 포럼을 방문하십시오.

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

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