제퍼 (운영체제)

제퍼(Zephyr)는 연결된 자원 제한 임베디드 장치 (특히 마이크로컨트롤러 중심)를 위한 작은 실시간 운영체제 (RTOS)로, 여러 아키텍처를 지원하며 아파치 라이선스 2.0으로 출시되었다. 제퍼에는 커널과 모든 구성 요소 및 라이브러리, 장치 드라이버, 프로토콜 스택, 파일 시스템, 펌웨어 업데이트가 포함되어 완전한 응용 소프트웨어를 개발하는 데 필요하다.

이름은 고대 그리스 서풍의 신인 제피로스에서 따왔다.

역사
제퍼는 디지털 신호 처리 장치 (DSP)용 Virtuoso RTOS에서 유래했다. 2001년, 윈드 리버 시스템스는 Virtuoso의 개발사인 벨기에 소프트웨어 회사 Eonic Systems를 인수했다. 2015년 11월, 윈드 리버 시스템스는 운영체제 이름을 Rocket으로 변경하고, 오픈 소스 및 로열티 프리로 만들었다. 윈드 리버의 다른 RTOS인 VxWorks와 비교할 때, Rocket은 훨씬 적은 메모리 요구 사항을 가졌으며, 특히 센서 및 단일 기능 임베디드 장치에 적합했다. Rocket은 4KB만큼 작은 메모리에도 들어갈 수 있었지만, VxWorks는 200KB 이상이 필요했다.

2016년 2월, Rocket은 리눅스 재단의 호스팅 협력 프로젝트가 되어 제퍼라는 이름으로 활동하게 되었다. 윈드 리버 시스템스는 Rocket 커널을 제퍼에 기여했지만, 여전히 고객에게 Rocket을 제공하며 클라우드 서비스에 대한 비용을 청구했다. 결과적으로 Rocket은 "본질적으로 제퍼의 상용 버전"이 되었다.

그 이후 제퍼의 초기 회원 및 후원자에는 인텔, NXP 반도체, 시높시스, 리나로, 텍사스 인스트루먼트, 노르딕 세미컨덕터, 오티콘, 보스가 포함된다.

 기준으로, 제퍼는 다른 RTOSes (Mbed, RT-Thread, NuttX, RIOT 포함)에 비해 가장 많은 기여자 수와 커밋 수를 기록했다.

특징
제퍼는 자원 제약적인 임베디드 또는 마이크로컨트롤러 기반 응용 프로그램을 개발하는 데 필요한 모든 구성 요소를 제공하는 것을 목표로 한다. 다음을 포함한다.
 소형 커널
 필요한 자원 및 모듈의 컴파일 시간 정의를 위한 유연한 구성 및 빌드 시스템
 프로토콜 스택 세트 (IPv4 및 IPv6, CoAP (CoAP), LwM2M, MQTT, 802.15.4, 스레드, Bluetooth Low Energy, CAN)
 비휘발성 저장 장치를 위한 여러 플래시 파일 시스템을 갖춘 가상 파일 시스템 인터페이스 (FatFs, LittleFS, NVS)
 관리 및 장치 펌웨어 업데이트 메커니즘

구성 및 빌드 시스템
제퍼는 리눅스 커널에서 상속받은 Kconfig와 devicetree를 구성 시스템으로 사용하지만, 비-유닉스 운영 체제에 대한 이식성을 위해 파이썬 프로그래밍 언어로 구현되었다. RTOS 빌드 시스템은 CMake를 기반으로 하여 Zephyr 응용 프로그램이 리눅스, macOS, 마이크로소프트 윈도우에서 빌드될 수 있도록 한다.

West 유틸리티 도구
제퍼는 저장소 관리, 하드웨어에 프로그램 다운로드 등을 위한 West라는 범용 도구를 가지고 있다.

커널
초기 제퍼 커널은 이중 나노커널과 마이크로커널 설계를 사용했다. 2016년 12월 제퍼 1.6부터 모놀리식 커널로 변경되었다.

커널은 다른 소형 OS와 구별되는 여러 기능을 제공한다.
 단일 주소 공간
 여러 스케줄링 알고리즘
 유연성을 위한 높은 구성 가능성과 모듈성, 컴파일 시간에 정의되는 자원
 메모리 보호 장치 (MPU) 기반 보호
 비대칭형 다중 처리 (AMP, OpenAMP 기반) 및 대칭형 다중 처리 (SMP) 지원

보안
보안 유지 및 개선에 전념하는 그룹이 있다. 또한 커뮤니티가 소유하고 지원한다는 것은 전 세계 오픈 소스 개발자들이 코드를 검토하여 보안을 크게 강화한다는 것을 의미한다.

 같이 보기 
 임베디드 운영체제

 각주 

분류:자유 소프트웨어 운영체제
분류:실시간 운영체제
분류:임베디드 운영체제
분류:X86-64 운영체제
분류:아파치 라이선스 소프트웨어
분류:ARM 운영체제
분류:IA-32 운영체제
분류:리눅스 재단 프로젝트
분류:MIPS 운영체제