펑코스
FunkOS개발자 | 펑켄슈타인 소프트웨어 컨설팅 |
---|---|
OS 제품군 | 커스 |
작업 상태 | 현재 |
소스 모델 | 모든 용도로 사용 가능(일부 조건 포함) |
초기 릴리즈 | 2009 |
최신 릴리즈 | R3 - 선인장로[1] / 2010년 3월 20일 |
마케팅 대상 | 임베디드 시스템, 마이크로컨트롤러, 실시간 시스템 |
다음에서 사용 가능 | 영어 |
플랫폼 | AVR, ARM, 텍사스 인스트루먼트 MSP430 |
커널형 | 실시간 마이크로커널 |
체납 사용자 인터페이스 | 푸이 |
면허증 | 오픈 소스 소프트웨어, (수정된 슬리피캣 라이센스) |
공식 웹사이트 | funks.sourceforge.그물을 치다 |
펑코스는 펑켄슈타인 소프트웨어 컨설팅이 개발한 실시간 운영체제(RTOS)로, 다양한 마이크로컨트롤러 아키텍처를 대상으로 한다.그것은 거의 조건 없이 상업적이든 다른 것이든 어떤 프로젝트에서든 자유롭게 사용할 수 있다.커널이 새로운 대상에 포팅된 경우, 그 코드도 향후 릴리스에 포함될 수 있도록 해야 한다.또한 상업적 프로젝트에 사용되는 경우 귀인 명세서는 제품 설명서의 어떤 형태로든 포함되어야 한다.
설명
펑코스는 완전히 사전 예방적인 멀티태스킹 환경으로, 다양한 현대적인 마이크로컨트롤러 아키텍처에서 실행할 수 있다.
커널은 최대 255개의 서로 다른 우선 순위 수준에서 실행되는 프로그램 "태스크"를 무제한으로 지원한다.
태스크는 각각 스택이 있는 독립된 프로그램이다.각 RTOS 틱에서, 동일한 우선순위 수준의 여러 작업을 실행할 준비가 되었을 때 라운드 로빈 스케줄링이 사용되어, 가장 우선순위가 높은 작업을 실행할 수 있도록 선택한다.
유휴 작업은 모든 애플리케이션에 대해 정의되어야 하며 하드웨어 플랫폼의 절전 기능을 호출하는 데 사용될 수 있다.
커널의 주요 기능은 다음과 같다.
- 세마포레스
- 우선 순위 상속이 있는 개체 뮤텍스
- 주기적인 경량 나사산
- 프로세스 간 통신
- 라운드 로빈 작업에 대한 작업 시간 양자 지원
- 이벤트 대기열
- 고정 블록 동적 메모리 할당
- 소프트웨어 실시간 클럭을 포함한 "핵심 서비스"와 배관공 개념을 기반으로 한 분산 컴퓨팅 지원
- 장치 드라이버 HAL
- 작업 마감 모니터링(워치독) 모듈
- 소프트웨어 렌더링 및 하드웨어 가속을 지원하는 2D 디스플레이 드라이버 라이브러리
- GUI 프레임워크 및 위젯 라이브러리
- FAT16/32 읽기 전용 파일 시스템 지원
- 대체 C++ 커널(FunkOS++)
- 대체 라운드 로빈 전용 커널(Pipsqueak)
커널은 사용자 지정성이 뛰어나 개발자가 애플리케이션 요구사항에 따라 커널 기능을 포함하거나 제거할 수 있다.결과적으로 FunkOS는 매우 가볍다 - 가장 작은 유용한 커널과 애플리케이션은 AVR 마이크로컨트롤러에 2킬로바이트 이하의 코드 공간과 400바이트의 RAM으로 컴파일된다.
펑크OS++ 커널은 현재 C++로 작성된 8비트 마이크로컨트롤러를 위한 유일한 오픈소스, 선제적 RTOS이다.울프SSL 등 인기 SSL/TLS 라이브러리가 지원한다.
포트
아트멜:
- AVR(ATmega, Atxmega) (ATmega328P, Atmega644, Atxmega256A1)
암:
- 코텍스-M3 [테스트되지 않음]
다른 현대식 마이크로컨트롤러용 포트는 향후 출시를 위해 계획되어 있다.
로드맵
향후 릴리즈에는 다음과 같은 기능이 포함될 예정이다.
- 하이브리드 기본/가상 작업을 사용하도록 설정하는 가상 시스템
- PIC24 및 dsPIC 아키텍처 지원
- ARM Cortex-M3 포트 안정화
- 비트맵 글꼴 라이브러리 관리자 응용 프로그램