본문 바로가기
반응형

OS/FreeRTOS10

RTOS 이해하기 2-2[기초] 2장. 메모리 관리 메모리 할당체계 예시 1) Heap_1 소형 전용 임베디드 시스템은 스케줄러가 시작되기 전에 작업 및 기타 커널 개체만 만드는 것이 일반적입니다. 이 경우 메모리는 응용 프로그램이 실시간 기능을 수행하기 시작하기 전에 커널에 의해서만 동적으로 할당되며 메모리는 응용 프로그램의 수명 동안 할당된 상태로 유지됩니다. 이는 선택한 할당 체계가 결정성 및 조각화와 같은 더 복잡한 메모리 할당 문제를 고려할 필요가 없으며 대신 코드크기 및 단순성과 같은 속성만 고려할 수 있음을 의미합니다. Heap_1.c는 pvPortMalloc()의 매우 기본적인 버전을 구현하고 vPortFree()를 구현하지 않습니다. 작업 또는 기타 커널 개체를 삭제하지 않는 응용 프로그램은 heap_1을 사용할 가능성.. 2020. 12. 13.
RTOS 이해하기 2-1[기초] 2장. 메모리 관리 장 소개 및 범위 전제 조건 FreeRTOS는 C 소스 파일 세트로 제공되므로 유능한 C 프로그래머가 FreeRTOS를 사용하기위한 전제 조건이므로이 장에서는 독자가 다음과 같은 개념에 익숙하다고 가정합니다. 다양한 컴파일 및 연결 단계를 포함하여 C 프로젝트가 빌드되는 방법. 스택과 힙은 무엇입니까? 표준 C 라이브러리 malloc () 및 free () 함수. 동적 메모리 할당 및 FreeRTOS와의 관련성 FreeRTOS V9.0.0에서 커널 개체는 컴파일 타임에 정적으로 할당되거나 런타임에 동적으로 할당될 수 있습니다. 다음 장에서는 태스크, 큐, 세마포어 및 이벤트 그룹과 같은 커널 오브젝트를 소개합니다. FreeRTOS를 최대한 사용하기 쉽게 만들기 위해 이러한 커널 개체는.. 2020. 12. 12.
RTOS 이해하기 1-4[기초] 1장. FreeRTOS 배포 데이터 유형 및 코딩 스타일 가이드 데이터 유형 FreeRTOS의 각 포트에는 두 가지 포트 별 데이터 유형에 대한 정의가 포함된 고유 portmacro.h 헤더 파일이 있습니다. TickType_t 및 BaseType_t. 이러한 데이터 유형은 표 2에 설명되어 있습니다. macro or typedef 사용 실제 유형 TickType_t FreeRTOS는 틱 인터럽트라는 주기적 인터럽트를 구성합니다. FreeRTOS 애플리케이션이 시작된 이후 발생한 틱 인터럽트 수를 틱 수라고 합니다. 틱 수는 시간의 척도로 사용됩니다. 두 틱 인터럽트 사이의 시간을 틱 기간이라고 합니다. 시간은 틱 기간의 배수로 지정됩니다. TickType_t는 틱 수 값을 보유하고 시간을 지정하는 데 .. 2020. 12. 10.
RTOS 이해하기 1-3[기초] 1장. FreeRTOS 배포 FreeRTOS 프로젝트 생성 제공된 데모 프로젝트 중 하나 조정 모든 FreeRTOS 포트에는 오류나 경고없이 빌드해야하는 사전 구성된 데모 애플리케이션이 하나 이상 제공됩니다. 이러한 기존 프로젝트 중 하나를 조정하여 새 프로젝트를 만드는 것이 좋습니다. 이렇게 하면 프로젝트에 올바른 파일이 포함되고 올바른 인터럽트 핸들러가 설치되고 올바른 컴파일러 옵션이 설정됩니다. 기존 데모 프로젝트에서 새 애플리케이션을 시작하려면 : 1. 제공된 데모 프로젝트를 열고 예상대로 빌드되고 실행되는지 확인 2. 데모 작업을 정의하는 소스 파일을 제거합니다. Demo / Common 디렉토리에있는 모든 파일은 프로젝트에서 제거 할 수 있습니다. 3. 목록 1에 표시된대로 prvSetupHa.. 2020. 12. 10.
반응형