MicroC/OS-III

위키百科, 우리 모두의 百科事典.

MicroC/OS-III ( μC/OS-III 或은 μC/OS-III 로 通用')은 Micro-Controller Operating Systems Version 3의 略語이다. 이는 C 言語 基盤으로 作成된 마이크로프로세서를 위한 低費用 優先順位 基盤 先占型 實時間 運營體制 커널이다. 2009年에 紹介되었으며 主로 임베디드 시스템에 適用하기 위해 만들어졌다. 無制限의 태스크, 細麻布어, 뮤텍스, 이벤트 플래그, 메시지 큐, 타이머와 메모리 파티셔닝을 提供한다. 使用者는 모든 커널 오브젝트를 實行 時間에 割當한다.

追加된 機能 [ 編輯 ]

  1. μC/OS-III는 性能 및 擴張性을 위해 μC/TCP-IP, μC/GUI, μC/File System, μC/USB, μC/CAN, μC/Modbus, μC/Bluetooth等의 소프트웨어 패키지와의 結合을 許容한다.
  2. 태스크를 모니터링 하기 위해 스택 增加를 許容하는 機能을 提供한다. 태스크의 크기는 制限되지 않기 때문에 CPU 使用量을 바탕으로 最少의 사이즈를 가져야 한다.
  3. 多重 태스크가 同一한 優先順位 레벨에서 作動하는 것을 許容한다. 同一한 優先順位 태스크들이 實行 準備 狀態일때, μC/OS-III는 使用者가 指定한 時間에 맞춰 各各 實行한다. 各各의 태스크는 양자화된 時間을 定義할 수 있고, 태스크가 그 時間을 모두 채울 必要가 없을 땐 주어진 타임 슬라이스를 내어주게 된다.
  4. 소프트웨어 構造가 設計된 方式은 餘他 아키텍처에 쉽게 砲팅될 수 있게 했다.
  5. 태스크 스택들은 各各의 태스크마다 크기가 自由로운 스택을 提供하기에 더 나은 空間 管理를 許容한다.
  6. 커널은 255段階의 인터럽트를 管理한다.
  7. 細麻布어 없이 태스크를 시그널링 하는 것이 可能하다.
  8. 런타임에 設定 可能하다.

目標 [ 編輯 ]

μC/OS-III의 가장 重要한 目標는 應用 觀點에서 쓸모있는 運營體制가 되는 것이다. μC/OS 포트는 μC/OS-III에서 作動하기 위해 修正 加해야 할 지 모르나, 應用 코드는 最小限의 變化만 要求되어야 했다. 또한, μC/OS-III는 μC/OS-II와 同一한 코어에 基盤하고 있기 때문에 또한 信賴性있다. 이는 特히 資源이 制限된 製品에서 有用하다.

커널 [ 編輯 ]

커널은 태스크 管理와 태스크間의 通信을 위한 멀티태스킹 시스템의 一部分이다. 커널의 核心 機能은 바로 컨택스트 스위칭이다.

스케줄러 [ 編輯 ]

디스패처라고 불리기도 하는 스케줄러는 어떤 태스크가 다음에 作動하게 될지 決定하는 커널의 部分 要素이다. 大部分의 실-時間 커널은 優先順位 基盤이다. 各 태스크는 重要度에 따라 優先順位가 附與된다. 各 태스크의 優先順位는 應用에 따라 다르다. 優先順位-基盤 커널에서는 CPU의 制御權은 언제나 實行 準備가 된 最高-順位 태스크에게 附與된다. 最高-順位 태스크는 커널 타입이 非-先占型이냐 先占型이냐 따라 CPU를 받는 方式이 달라진다.

태스크 優先順位 [ 編輯 ]

優先順位는 各各의 태스크에 附與된다. 重要한 태스크 일수록, 더 높은 優先順位를 附與한다.