MicroC/OS

MicroC/OS(Micro-Controller Operating Systems, µC/OS)는 임베디드 소프트웨어 개발자 Jean J. Labrosse가 1991년에 설계한 실시간 운영 체제(RTOS)이다.

MicroC/OS-II 
MicroC/OS-II(uC/OS-II로도 쓴다.)는 Jean J. Labrosse라는 엔지니어가 비상용 목적으로 처음 개발된 것을 시초로 한다. uC/OS-II는 이후 상용화되었으며 상용화 버전과 공개 버전 두가지 형태를 가지고 있다. uC/OS-II는 RTOS의 성격을 그대로 가지되, 다른 OS들에 비하여 매우 경량화된 구조와 크기를 가지고 있다.

특징 
 간단한 구조
uC/OS, The Real-Time Kernel이라는 책은 uC/OS-II의 구조를 자세하게 나타낸 책으로서 그 내용만으로도 충분히 uC/OS-II의 구조를 파악하는 것이 가능하다.
 작은 크기
uC/OS-II는 OS가 가져야할 최소한의 것만을 갖추고 있으며 이마저도 옵션에 의해 일부 기능을 빼는 것이 가능하다. 따라서 OS 기능을 모두 사용한다고 하더라도 30kbyte 미만의 크기를 갖는다.
 우선순위 기준
uC/OS-II에서 두개 이상의 태스크가 특정 자원에 대하여 경쟁 상태에 놓여있다면, 어떤 상황이라고 할지라도 둘 중에서 우선순위가 높은 쪽이 항상 그 자원을 독점하도록 되어있다. 다른 OS들과 같이 먼저 기다린다거나 하는 식의 전환 방법은 존재하지 않는다. 또한 round robin을 지원하지 않기 때문에 같은 우선순위를 가진 태스크가 두개 이상 존재할 수도 없다.
 정적인 메모리 사용
uC/OS는 메모리 관리 기능을 가지고 있다. 하지만 이 메모리 관리 기능을 OS에서 직접 사용하지 않는다. 따라서 uC/OS-II는 내부적으로 동적인 메모리 관리가 전혀 이루어지지 않는다. uC/OS-II에서 사용되는 모든 메모리 자원들은 처음에 컴파일 시점에서 정해지거나 애플리케이션 쪽에서 할당된 메모리를 넘겨 받는 형태로만 운영이 가능하다.

MicroC/OS-III 

MicroC/OS-III는 Micro-Controller Operating Systems Version 3의 준말로, 2009년에 도입되었으며 µC/OS-II RTOS에 기능을 추가한 것이다.

관련서적 
 《MicroC/OS-II 실시간 커널》 

실시간 운영체제
임베디드 운영체제
마이크로커널
ARM 운영체제