ChibiOS/RT
ChibiOS/RT개발자 | 조반니 디 시리오 |
---|---|
기입처 | C, 어셈블리 언어 |
OS 패밀리 | 실시간 운영 체제 |
동작 상태 | 현재의 |
소스 모델 | 오픈 소스 |
초기 릴리즈 | 전( |
최신 릴리즈 | 2021년 12월 8일, | 전
저장소 | |
마케팅 대상 | 임베디드 시스템 |
이용가능기간: | 영어 |
플랫폼 | 인텔 80386, ARM 7, 9, Cortex: M0, M3, M4, M7,[1] PowerPC, e200z, Atmel AVR, TI MSP430, STM8, 프리스케일 콜드파이어, Renesas H8S |
커널 타입 | 마이크로커널 |
면허증. | GPL3 또는 독자 사양 |
공식 웹사이트 | www |
ChibiOS/RT는 여러 아키텍처를 지원하는 작고 빠른[2] 실시간 운영 체제이며 GNU General Public License 버전 3(GPL3)과 Apache License 2.0(모듈에 따라 다름)의 혼합으로 출시됩니다.그것은 Giovanni Di Sirio에 의해 개발되었다.
상용 라이선스는 ChibiOS에서 이용할 수 있습니다.추가 제품에는 ChibiOS/RT와 호환되는 하드웨어 추상화 레이어인 ChibiOS/HAL과 Eclipse, GNU 컴파일러 컬렉션 및 OpenOCD 공동 테스트 액션 그룹(JTAG) 디버깅 포드에 기반한 무료 통합 개발 환경인 ChibiStudio가 포함됩니다.
측정 기준
ChibiOS/RT는 8비트, 16비트 및 32비트의 마이크로 컨트롤러에 내장된 애플리케이션용으로 설계되었습니다.규모와 실행 효율이 주요 프로젝트 [3]목표입니다.참고로 커널 사이즈는 최소 1.2KiB에서 최대 5.5KiB까지이며, 모든 서브시스템은 STM32 Cortex-M3 프로세서에서 활성화됩니다.커널은 초당 220,000개 이상의 생성/종료된 스레드를 실현할 수 있으며 STM32 @ 72MHz에서 1.2마이크로초 만에 컨텍스트스위치를 실행할 수 있습니다.지원되는 모든 플랫폼에 대한 유사한 메트릭이 소스 코드 배포에 테스트 보고서로 포함됩니다.
특징들
ChibiOS/RT 마이크로커널은 다음을 지원합니다.
- 프리엠프티브 멀티스레딩[4]
- 128 priority 큐레벨
- 동일한 우선순위 레벨의 스레드에 대한 라운드 로빈 스케줄링
- 소프트웨어 타이머
- 세마포 카운트
- 우선 순위 상속 알고리즘을 지원하는 뮤텍스
- 조건 변수
- 동기 및 비동기 메시지
- 이벤트 플래그 및 핸들러
- 큐
- 타임아웃 기능을 갖춘 동기 및 비동기 I/O
- 스레드 세이프 메모리 힙 및 메모리 풀 할당자.
- ADC, CAN, GPT(범용 타이머), EXT, I²C, ICU, MAC, MMC/SD, PAL, PWM, RTC, SDC, 시리얼, SPI 및 USB 드라이버를 지원하는 하드웨어 추상화 레이어.
- LwIP 및 uIP TCP/IP 스택 지원
- FatFs 파일 시스템 라이브러리 지원.
스레드, 세마포, 타이머 등의 모든 시스템 개체를 런타임에 생성 및 삭제할 수 있습니다.사용 가능한 메모리 이외에는 상한은 없습니다.시스템의 신뢰성을 높이기 위해 커널 아키텍처는 완전히 정적이며 메모리 할당기는 필요하지 않으며(옵션으로 사용 가능), 테이블이나 어레이와 같은 상한 크기를 가진 데이터 구조는 없습니다.System Application Programming Interface(API; 시스템어플리케이션프로그래밍 인터페이스)는 에러 코드나 예외등의 에러 조건을 가지지 않도록 설계되어 있습니다.
RTOS는 임베디드 시스템(디바이스)상의 애플리케이션용으로 설계되어 다양한 마이크로 컨트롤러용 데모 애플리케이션을 갖추고 있습니다.
- STM32F1xx, STM32F2xx, STM32F3xx, STM32F4xx, STM32L1xx, STM32F0xx, STM8S208x, STM8S105158X
- NXP 반도체– LPC11xx, LPC11Uxx, LPC13xx, LPC2148
- ATMel – AT91SAM7S, AT91SAM7X, 메가AVR
- 텍사스 인스트루먼트(TI) – MSP430x1611, TM4C123G, TM4C1294
- 마이크로칩 테크놀로지– PIC32MX
Coldfire 및 H8S [5]패밀리에 대해서도 기여 포트를 사용할 수 있습니다.
ChibiOS/RT도 Rasberry[6] Pi로 이식되어 다음과 같은 디바이스 드라이버가 구현되었습니다.포트(GPIO), 시리얼, GPT(General-Purpose Timer), I2C, SPI 및 PWM.
또한 소프트웨어 I/O 에뮬레이션 모드에서 Win32 프로세스에서 커널을 실행할 수 있으므로 물리적 하드웨어 없이도 애플리케이션을 쉽게 개발할 수 있습니다.MinGW 컴파일러의 예를 나타냅니다.
uGFX
ChibiOS/RT는 Graphical User Interface(GUI; 그래피컬사용자 인터페이스) 툴킷 「GFX」(이전의 ChibiOS/GFX)에 의해서 완전하게 서포트되고 있습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ Di Sirio, Giovanni. "The ARMv7-M Port". ChibiOS.org. Retrieved 20 August 2020.
This port includes support for all devices using one of the following cores: Cortex-M3, Cortex-M4, Cortex-M7
- ^ emb4fun.de의 RTOS 퍼포먼스 데이터 아카이브(archive.today) 2013-01-11
- ^ "ChibiOS/RT statistics on ohloh.net". Archived from the original on 2014-04-14. Retrieved 2010-01-30.
- ^ "A detailed explanation of multithreading in ChibiOS/RT". Archived from the original on 2018-04-23. Retrieved 2016-11-03.
- ^ emb4fun.de에서 지원되는 추가 아키텍처 아카이브 2013-01-11
- ^ "ChibiOS/RT on the Raspberry Pi".