Introduction to NI Linux Real-Time

개요

NI는 수년간의 연구 개발, 오픈 소스 커뮤니티와의 협력과 파트너 기업과의 공조를 바탕으로 Linux 기반의 Real-Time OS (RTOS)인 NI Linux Real-Time을 개발하였습니다. 이 RTOS는 모든 NI 리얼타임 하드웨어에 기본으로 사용됩니다. NI Linux Real-Time은
LabVIEW Real-Time 모듈과 함께 LabVIEW 프로그래밍 환경에서 완벽히 지원됩니다.

 

이 백서는 NI Linux Real-Time의 주요 장점, 성능, 함께 사용할 수 있는 하드웨어 제품에 대해 설명합니다. NI는 익숙한 LabVIEW 소프트웨어 어플리케이션 개발 경험을
NI Linux Real-Time을 지원하는 하드웨어 타겟에서도 동일하게 제공한다는 점을 잊지 마십시오. 고급 하위 레벨 세부 사항은 NI Linux Real-Time의 내부 문서를 참조하십시오.

 

Contents

NI Linux Real-Time의 발전

Linux는 무료로 제공되는 오픈 소스이며 커뮤니티를 통해 지원되는 운영 체제이기 때문에 임베디드 시스템 디자인에 주로 사용되어 왔습니다. 사용 초기에 임베디드 소프트웨어 개발자들은 Linux가 RTOS가 될 수 없다고 단정하였으나, 시간이 지나면서 임베디드 어플리케이션에 사용하기 위해 Linux를 전용 RTOS와 병합하는 하이브리드 기술이 대거 등장하였습니다.

임베디드 시스템 디자인에 Linux를 사용하는 사례가 빈번해짐에 따라, 개발자들은 하이브리드 솔루션에 그치지 않고 Linux 커널 자체의 결정성을 개선하기 위한 기능을 추가하였습니다. 보다 최근에는 Linux 커널을 개선하고자 하는 노력의 결과로 PREEMPT_RT 패치 세트가 Linux로 리얼타임 성능을 구현하기 위한 솔루션으로 각광받고 있습니다. 내쇼날인스트루먼트는 PREEMPT_RT 패치를 사용하여 Linux 기반 RTOS를 구축하고자 노력해 왔으며 이제 cRIO-9068 컨트롤러에서 가능하게 되었습니다. PREEMPT_RT 패치 세트에 대한 보다 자세한 정보는 A Real-Time Preemption Overview를 확인하십시오.

NI Linux Real-Time의 사용 장점

지금까지 리얼타임 성능을 얻기 위해서는 사용성을 포기해야 했습니다. 그러나 NI Linux Real-Time의 경우, Linux가 제공하는 사용성 이점이 대부분 Linux 커널에서 기인하고 Linux 커널은 대체로 그대로 보존되기 때문에 사용성 혜택을 누릴 수 있습니다. 따라서 NI Linux Real-Time은 전용 RTOS와 대등한 리얼타임 성능을 제공하면서 사용성에는 영향을 주지 않습니다. RTOS가 제공하는 사용성의 예로는 일반 Linux에서 차용된 안정적인 검증된 네트워크 스택을 들 수 있습니다. 개선된 네트워크 스택을 통해, 새로운 Linux 기반 RTOS를 지원하는 Real-Time 타겟은 듀얼 DHCP 네트워크 인터페이스 카드 (NICs)를 지원하며, 네트워크나 시간 설정의 변경을 적용하기 위해 재부팅할 필요가 없습니다. 또한, IPv6 및 SNMP와 같은 통신 프로토콜과 보다 우수한 통신을 제공합니다. 또 다른 강점으로는 새로운 CompactRIO 고성능 컨트롤러를 통해 NI Linux Real-Time이 제공하는 로컬 HMI의 디스플레이를 들 수 있습니다.

또한, Linux가 시중의 가장 일반적인 전용 RTOS 보다 더 보편적으로 사용되기 때문에, 본 새로운 RTOS는 보다 광대한 에코시스템을 통해 IP, 툴 및 RTOS의 잠재력을 활용할 수 있는 고급 사용자 기반을 제공합니다. NI Linux Real-Time OS를 지원하는 리얼타임 타겟을 사용하면, Linux가 제공하는 에코시스템을 통해 솔루션의 기능을 확장하기가 수월하며 사내에 인력이 부족할 때 경험 많은 Linux 사용자 기반을 활용할 수도 있습니다. 특수 센서와 같은 타사 주변 하드웨어 지원을 편리하게 추가할 수 있고, C/C++ 코드를 보다 편리하게 통합할 수 있는 NI Linux Real-Time은 사용자들을 위한 만능 시스템입니다.

사용성과 에코시스템 이외에도 NI Linux Real-Time은 여러 전용 RTOS와 달리 듀얼 모드 OS 입니다. 듀얼 모드 OS인 NI Linux Real-Time을 사용하면 보다 나은 유연함을 경험할 수 있습니다. 즉, 어플리케이션 충돌시에도 시스템은 지속적으로 실행되며, 별다른 어려움 없이 어플리케이션 충돌로부터 회복됩니다. 또한, 새로운 Linux 기반 RTOS는 멀티태스킹을 지원하므로, 여러 프로그램을 병렬로 실행할 수 있습니다. 예를 들어, LabVIEW Real-Time 어플리케이션과 함께 리얼타임 타겟에서 데이터베이스를 직접 실행할 수 있습니다.

마지막으로, Linux에서 기인한 본 새로운 RTOS는 사용자 계정 컨트롤 및 사용자 파일 시스템 허용 관리 기능이 보다 강화되었습니다. 사용자의 활동이 NI Linux Real-Time을 지원하는 임베디드 디바이스에 보다 편리하게 로깅됩니다. 또한, 새로운 Linux 기반 RTOS에는 VPN 및 방화벽과 같은 보안 기능이 있으므로, 네트워크 보안 개선을 이유로 외부 하드웨어를 추가할 필요가 없습니다.

성능

NI Linux Real-Time은 현 세대 CompactRIO 타겟의 전용 RTOS와 동등한 리얼타임 성능을 제공합니다. NI Linux Real-Time 타겟의 지터는 현재 NI에서 제공하는 리얼타임 시스템의 지터와 규모가 비슷합니다. 실제 컨트롤 및 스트리밍 어플리케이션의 경우, 새로운 Linux Real-Time 기반 CompactRIO 9068은 컨트롤 및 스트리밍 루프가 프로세서를 적게 사용하면서 보다 빠른 루프 속도로 실행되기 때문에 성능이 증대됩니다. Linux 기반 RTOS의 성능에 대한 보다 자세한 정보는 NI cRIO-9068: 성능 및 처리량 벤치마크NI CompactRIO 고성능 컨트롤러: 성능 및 처리량 벤치마크 문서를 참조하십시오.

보다 개선된 기능

NI Linux Real-Time은 리얼타임 어플리케이션에 중요한 성능을 지속적으로 제공하면서 대폭적으로 개선된 기능을 제공합니다. 성능 벤치마크에서 볼 수 있듯이, NI Linux Real-Time의 지터는 현 리얼타임 시스템의 지터와 유사하며 시스템 레벨 성능은 전용 RTOS 보다 상당히 개선되었습니다.

또한, LabVIEW 재구성가능한 I/O (RIO) 아키텍처가 제공하는 시스템 간소화, 휴대성 및 생산성을 NI Linux Real-Time을 지원하는 타겟에서도 경험할 수 있습니다. 새로운 RTOS와 상관없이, LabVIEW 소프트웨어 개발은 NI의 임베디드 타겟에서 동일하며, 다른 NI 임베디드 하드웨어의 NI Linux Real-Time에 기반한 타겟간에 코드를 원활하게 이동할 수 있습니다. NI Linux Real-Time 타겟으로 업그레이드하여 본 새로운 기술이 제공하는 여러 장점을 활용하십시오.

NI Linux Real-Time에 대해 더 알아보기

Linux is the registered trademark of Linus Torvalds in the U.S. and other countries.