ionOS™

Overview | Features

유연한 Task
Task 우선 순위 및 IPC를 이용한 Task 동기화를 지원함으로써 멀티태스킹이 가능하게 합니다. 또한 생성되는 Task의 수에 제한을 두지 않으며, 이들은 동적으로 생성되고 삭제됩니다.

동적 메모리 할당
세 가지 동적 메모리 할당 기법을 지원하여 여러 상황에 따라 효율적으로 메모리를 사용할 수 있습니다. 고정 길이 방식의 동적 메모리 할당 기법인 B-Allocation과 가변 길이 방식의 동적 메모리 할당 기법인 Linked-List system과 Buddy system 지원합니다.
다음 표는 ionOS™에서 제공하는 동적 메모리 할당 기법의 특징입니다.

Mechanism Qualification
B-Allocation 1. 할당할 Block의 크기가 고정되어 있는 Block을 할당
2. 항상 일정한 Allocation과 Free time
Linked-List Allocation 1. 요청한 Block의 크기 만큼의 Block을 할당
2. 비교적 느린 Allocation과 Free time
Buddy Allocation 1. 요청한 Block 크기보다 큰 Block 중 가장 작은 Block을 할당
2. 모든 Block을 2의 누승으로 관리
3. 비교적 빠른 Allocation과 Free time

작은 코드 및 데이터 사이즈
작은 코드 사이즈 및 데이터 사이즈를 갖고 있어서 임베디드 시스템의 OS로서 적합합니다.

효율적인 자원 공유
Inter-Process Communication(IPC)를 통해 Task 간의 통신이 가능하여 Task 간에 효율적으로 자원을 공유하고 관리할 수 있습니다.

Shell Prompt 기능 제공
편리한 테스트 및 디버깅 환경을 위해 Shell prompt 기능을 제공함으로써 시스템 전반의 안정성 확보를 용이하게 합니다.

다양한 동기화 모듈
Semaphore, Mutex, Message, Mailbox, Pipe, Signal의 다양한 동기화 및 통신 모듈을 제공하며, 이를 통해 멀티태스킹이 안정적으로 실행됩니다.

Timer interface 제공
Timer 기능을 제공함으로써 실시간 어플리케이션은 주기적인 Interval time을 처리하는 성능을 제공합니다.