FreeRTOS(튜토리얼은 매우 상세함)

개요:

      이전에 FreeRTOS에 대한 내용의 일부를 썼는데, 읽기의 편의를 위해 지금은 함께 정리했습니다. 모든 것을 학습한 후 FreeRTOS에 대해 더 깊이 이해하게 된 것을 축하합니다.

 1장 FreeRTOS를 STM32로 포팅

 2장 FreeRTOS 작업 생성

 3장 FreeRTOS 작업 관리

4장 FreeRTOS 메시지 대기열

5장 FreeRTOS 세마포어

6장 FreeRTOS 뮤텍스

7장 FreeRTOS 이벤트 그룹

8장 FreeRTOS 작업 알림

9장 FreeRTOS 소프트웨어 타이머

10장 FreeRTOS 메모리 관리

11장 FreeRTOS 인터럽트 관리

RTOS를 배우는 이유

      우리가 임베디드 분야에 들어갈 때 우리는 종종 단일 칩 프로그래밍을 처음 접하게 되며 단일 칩 프로그래밍은 51 단일 칩이 시작하는 첫 번째 선택입니다. 여기서 언급하는 마이크로 컨트롤러 프로그래밍은 일반적으로 RTOS(실시간 운영 체제 실시간 운영 체제)를 추가하지 않는 프로그램인 베어 메탈 프로그래밍을 말합니다. 일반적으로 사용되는 RTOS에는 해외 FreeRTOS, μC/OS, RTX 및 국내 FreeRTOS, Huawei LiteOS 및 AliOS-Things 등이 포함됩니다. 그 중 해외 오픈 소스 및 무료 FreeRTOS가 시장 점유율이 가장 높습니다.

      베어 메탈 시스템에서 모든 프로그램은 기본적으로 자체적으로 작성되며 모든 작업은 무한 루프로 구현됩니다. 실생활의 많은 중소형 전자 제품은 베어 메탈 시스템을 사용하며 요구 사항도 충족할 수 있습니다. 그런데 왜 우리는 여전히 RTOS 프로그래밍을 배워야 하지만 전체 운영 체제가 들어와야 합니다. 하나는 프로젝트의 요구 사항입니다.제품에서 구현해야 할 기능이 점점 더 많아짐에 따라 단순한 베어 메탈 시스템은 더 이상 문제를 완벽하게 해결할 수 없으며 프로그래밍을 더욱 복잡하게 만듭니다.난이도를 줄이고 싶다면 멀티태스킹 관리를 위해 RTOS를 사용하는 가장 큰 장점입니다. 두 번째는 학습의 필요성입니다.더 나은 경력 계획을 달성하기 위해 더 많은 고급 사항을 배우고 베어 메탈 프로그래밍을 맹목적으로 강타하는 대신 인생의 정점에서 Bai Fumei와 결혼하기 위해 미래를 준비해야 합니다. 자격을 갖춘 임베디드 소프트웨어 엔지니어로서 배움은 결코 멈출 수 없으며 항상 미래를 준비해야 합니다. 책을 쓰다보면 덜 싫고, 기회가 왔을 때 이런 기분이 되지 않았으면 좋겠습니다.

      RTOS 프로그래밍의 루틴을 명확히 하는 데 도움이 되도록 "베어메탈 시스템과 멀티태스킹 시스템" 장에서 이 두 가지 프로그래밍 방법의 차이점을 간략하게 분석하겠습니다. 저는 이 차이점을 RTOS 학습의 핵심이라고 부릅니다. Du Ermai, the future RTOS 학습은 쉽다고 할 수 있습니다. 이 두 가지 프로그래밍 방법의 차이점을 설명할 때 주로 방법론에 대해 이야기하고 주로 의사 코드를 통해 특정 코드 프로그래밍을 포함하지 않습니다.

RTOS를 배우는 방법

       베어 메탈 프로그래밍과 RTOS 프로그래밍의 스타일은 다소 다르며, 많은 사람들이 RTOS 학습이 어렵다고 말하며, 이로 인해 학습자들은 RTOS 프로그래밍을 들을 때 RTOS 프로그래밍을 두려워하게 됩니다.

      그렇다면 RTOS를 정확히 어떻게 배우나요? 가장 쉬운 방법은 다른 사람이 이식한 시스템의 RTOS에서 API 사용 지침을 보고 이러한 API를 호출하여 원하는 기능을 구현하는 것입니다. 전적으로 기본 포팅에 대해 신경쓰지 마십시오. 이것이 시작하는 가장 쉽고 빠른 방법입니다. 이 방식은 나름의 장단점이 있는데, 제품을 만든다면 장점은 빨리 기능을 실현하고 제품을 시장에 내놓을 수 있어 선점 기회를 잡을 수 있다는 점이다. 프로그램, RTOS에 대해 충분히 알지 못하기 때문에 디버깅을 어렵게 만들 것입니다. 학습 중이라면 단순히 API를 호출하는 것이 아니라 RTOS 중 하나를 깊이 있게 공부해야 합니다.

       현재 시장에 나와 있는 기존 RTOS는 비슷한 커널 구현 방법을 가지고 있으며 그중 하나만 깊이 연구하면 됩니다. 항상 똑같습니다.. 추후에 다른 종류의 RTOS로 전환하여 사용하시면 편리할 것 같습니다. 그렇다면 RTOS를 깊이 있게 배우는 방법은 무엇일까요? 여기서 가장 효과적이고 어려운 방법 중 하나는 RTOS의 소스 코드를 읽고 커널과 각 구성 요소의 구현을 파헤치는 것인데, 이 과정은 지루하고 고통스럽습니다. 하지만 RTOS의 본질을 배울 수 있으려면 지옥에 가지 않으면 누가 지옥에 갈까요?

      RTOS의 소스코드를 설명하는 책이 시중에 나와있긴 하지만 기초가 부족하고 이 RTOS를 사용해 본 적이 없다면 소스코드는 여전히 매우 지루해 보일 것이고 전체 RTOS의 구성과 구현을 파악할 수 없을 것입니다. 글로벌 관점에서.

FreeRTOS 저작권

      FreeRTOS는 2003년 미국의 Richard Barry에 의해 출시되었습니다. Richard Barry는 FreeRTOS의 소유자이자 유지관리자입니다. 지난 10년 동안 FreeRTOS는 9개의 버전을 거쳤으며 많은 반도체 제조업체와 긴밀하게 협력했습니다. 수백만 명의 개발자가 있습니다. 현재 시장점유율이 가장 높은 RTOS입니다.

      FreeRTOS는 2018년 Amazon에 인수되어 AWS FreeRTOS로 이름이 바뀌었고 버전 번호가 V10으로 업그레이드되었으며 오픈 소스 계약이 원래 GPLv2+에서 MIT로 변경되었습니다. 원하는 것은 무엇이든 자유롭게 할 수 있습니다. V9의 이전 버전은 동일하게 유지되며 V9와 비교하여 V10 버전은 일부 IoT 관련 구성 요소를 추가했으며 핵심은 기본적으로 변경되지 않았습니다. Amazon의 FreeRTOS 인수는 또한 뜨거운 사물 인터넷과 인공 지능에 진입하는 것입니다.

FreeRTOS 결제 문제

FreeRTOS

      FreeRTOS는 GPLv2+ 라이선스 계약을 따르는 "오픈 소스 및 무료" 실시간 운영 체제입니다. 여기에 언급된 오픈 소스란 FreeRTOS의 소스 코드를 무료로 얻을 수 있다는 것을 의미하며, 귀하의 제품이 FreeRTOS를 사용하고 FreeRTOS 커널 소스 코드를 수정하지 않을 때 귀하의 제품의 모든 코드는 오픈 소스 없이 클로즈 소스가 될 수 있지만, FreeRTOS 커널 소스 코드를 수정하면 수정된 부분을 소스로 공개하고 커뮤니티에 피드백해야 하며 다른 애플리케이션 부분은 오픈 소스일 필요가 없습니다. 무료란 개인이든 기업이든 한 푼도 내지 않고 무료로 사용할 수 있다는 뜻입니다.

OpenRTOS

FreeRTOS와 OpenRTOS는 코드는 같지만 공식적으로 제공되는 서비스는 다릅니다. FreeRTOS는 무료라고 주장하고 OpenRTOS는 유료라고 주장합니다.이들 사이의 구체적인 차이점은 표에 나와 있습니다.

.

SaveRTOS

      SaveRTOS도 FreeRTOS를 기반으로 하지만 SaveRTOS는 특정 특정 필드에 대한 보안 관련 설계를 했으며, SaveRTOS에서 얻은 보안 검증에 대한 자세한 내용은 표를 참조하십시오. 물론 SaveRTOS도 과금이 필요하고 이러한 보안 검증은 괜히 하는 것이 아니다.

.

 먼저 FreeRTOS를 STM32로 이식하여 멀티태스킹 운영체제와 베어메탈 개발의 차이를 경험해 보시기 바랍니다.튜토리얼은 이전에 이미 해봤고, C언어의 링크드 리스트와 큐, 포인터에 대한 심도 있는 연구가 있습니다. 나중에 공부가 매우 쉬워집니다.

C언어 연결리스트 상세설명

Supongo que te gusta

Origin blog.csdn.net/qq_61672347/article/details/125748646
Recomendado
Clasificación