컴퓨터 임베디드 운영 체제의 특징 정보
2 단계: 임베디드 CPU 기반 단순 운영 체제 기반 임베디드 시스템. 다양한 CPU, 낮은 다용성; 시스템 오버헤드가 적고 효율이 높습니다. 일반적으로 시스템 에뮬레이터가 장착되어 있으며 운영 체제는 호환성과 확장성이 있습니다. 응용 프로그램이 비교적 전문적이어서 사용자 인터페이스가 충분히 친숙하지 않다. 시스템은 주로 시스템 로드를 제어하고 응용 프로그램 실행을 모니터링하는 데 사용됩니다. < P > 3 단계: 범용 임베디드 실시간 운영 체제 단계, 임베디드 운영 체제를 핵심으로 하는 임베디드 시스템. 다양한 유형의 마이크로프로세서에서 실행할 수 있어 호환성이 좋습니다. 커널은 작고 효율적이며 높은 모듈화와 확장성을 갖추고 있습니다. 파일 및 디렉터리 관리, 장치 지원, 멀티태스킹, 네트워크 지원, 그래픽 창, 사용자 인터페이스 등의 기능을 갖추고 있습니다. 많은 APL (응용 프로그램 인터페이스) 이 있습니다. 임베디드 애플리케이션 소프트웨어가 풍부합니다.
4 단계: 인터넷 기반 임베디드 시스템. 이것은 빠르게 발전하고 있는 단계이다. 현재 대부분의 임베디드 시스템은 lnlemet 외부에서 고립되어 있지만, 인터넷의 발전과 인터넷 기술과 정보 가전, 산업 제어 기술 등의 결합이 점점 더 가까워지면서 임베디드 장치와 인터넷의 결합은 임베디드 기술의 진정한 미래를 대표할 것입니다. < P > 둘째, 실시간 운영 체제 사용의 필요성 < P > 내장형 실시간 운영 체제는 현재 임베디드 애플리케이션에서 점점 더 널리 사용되고 있습니다. 특히 기능이 복잡하고 시스템이 방대한 애플리케이션에서는 더욱 중요해지고 있습니다.
1. 임베디드 실시간 운영 체제는 시스템 신뢰성을 향상시킵니다. 제어 시스템에서는 보안상의 이유로 시스템이 최소한 붕괴될 수 없으며 자가 치유 능력이 있어야 합니다. 하드웨어 설계 측면에서 시스템의 신뢰성과 내성을 높여야 할 뿐만 아니라 소프트웨어 설계 측면에서도 시스템의 내성을 높이고 보안 취약점과 신뢰할 수 없는 위험을 최소화해야 합니다. 오랜 기간 동안 전방 및 후방 시스템 소프트웨어 설계는 강한 간섭이 발생할 때 실행 중인 프로그램이 이상, 오류, 날기, 심지어 사순환까지 발생시켜 시스템 붕괴를 초래했습니다. 실시간 운영 체제 관리 시스템의 경우, 이러한 간섭은 시스템이 실행 중인 시스템 모니터링 프로세스를 통해 복구할 수 있는 여러 프로세스 중 하나만 손상될 수 있습니다. 일반적으로 이 시스템 모니터링 프로세스는 각 프로세스의 상태를 모니터링하는 데 사용되며, 비정상적인 상황이 발생할 경우 문제가 있는 작업을 제거하는 것과 같이 안정적이고 신뢰할 수 있는 조치를 취합니다.
2. 개발 효율성을 높이고 개발 주기를 단축합니다. 임베디드 실시간 운영 체제 환경에서 복잡한 응용 프로그램을 개발하면 일반적으로 소프트웨어 엔지니어링의 디커플링 원칙에 따라 전체 프로그램을 여러 작업 모듈로 분할할 수 있습니다. 각 작업 모듈의 디버깅, 수정은 다른 모듈에 거의 영향을 주지 않습니다. 상용 소프트웨어는 일반적으로 우수한 멀티태스킹 디버깅 환경을 제공합니다.
3. 내장형 실시간 운영 체제는 32 비트 CPU 의 멀티태스킹 잠재력을 최대한 발휘합니다. 32 비트 CPU 는 8 비트, 16 비트 CPU 보다 빠르며, 멀티 유저, 멀티 태스킹 운영 체제를 실행할 수 있도록 설계되었으며, 특히 멀티 태스킹 실시간 시스템 실행에 적합합니다. 32 비트 CPU 는 시스템 안정성과 안정성을 향상시킬 수 있도록 설계되어 충돌 없이 쉽게 수행할 수 있습니다. 예를 들어 CPU 작동 상태는 시스템 상태와 사용자 상태로 구분됩니다. 시스템 스택과 사용자 스택을 분리하고 CPU 의 작동 상태를 실시간으로 제공하는 등 사용자가 시스템 설계에서 하드웨어와 소프트웨어 모두에서 실시간 커널의 작동을 보호할 수 있도록 합니다. 이전의 전면 및 후면 방식으로는 32 비트 CPU 의 장점을 활용할 수 없습니다. 어떤 의미에서 운영 체제가 없는 컴퓨터 (베어 메탈) 는 소용이 없다. 임베디드 응용 프로그램에서는 CPU 를 시스템에 내장하고 운영 체제를 내장하는 것만이 진정한 컴퓨터 임베디드 응용 프로그램입니다. < P > 3, 임베디드 운영 체제 선택 < P > 정보 기기, 디지털 의료 장비 등 임베디드 제품을 설계할 때 임베디드 운영 체제를 선택하는 것이 중요합니다. 일반적으로 임베디드 운영 체제를 선택할 때 다음 지침을 따를 수 있습니다. 전반적으로 말하자면,' 덧셈을 할 것인지 빼기를 할 것인지' 의 문제이다.
(a) 시장 진입 시간
제품 일정 수립은 운영 체제 선택과 관련이 있으며 실제 제품과 일반 데모는 다릅니다. 현재 Windows 프로그래머는 아마도 인적 자원이 가장 풍부할 것이다. 기성 자원이 가장 많은 것도 WinCE 일 수 있다. WinCE 를 사용하면 곧 시장에 진출할 수 있다. WinCE+X86 제품을 만드는 것은 실제로 빼기를 하고 있기 때문에 원하지 않는 기능을 제거하고 빨리 제품을 나올 수 있지만, 비용이 많이 들고 핵심 경쟁력이 떨어지는 것이 동반될 수 있기 때문이다. (윌리엄 셰익스피어, 윈스+X86, Northern Exposure (미국 TV 드라마), 스포츠명언) 일부 고효율 운영 체제는 프로그래머가 부족하거나 이 분야의 기술 축적이 부족해 개발 진행에 영향을 미칠 수 있습니다.
(b) 이식성
운영 체제 종속성. 이식성은 임베디드 소프트웨어 개발을 할 때 중점적으로 고려해야 할 문제이다. 좋은 소프트웨어 이식성은 운영 체제와 상관없이 서로 다른 플랫폼, 다른 시스템에서 실행할 수 있는 것이 좋습니다. 소프트웨어의 공통성과 소프트웨어의 성능은 일반적으로 모순된다. 즉, 일반화는 특정 상황에서 최적의 성능을 잃는 것을 대가로 합니다. 임베디드 브라우저 개발을 상상하기 어렵고 특정 환경에서만 적용할 수 있습니다. 반대로, 제품이 플랫폼 및 운영 체제와 긴밀하게 결합될 때, 종종 당신의 제품의 특색이 함축되어 있습니다. < P > (3) 자원 활용 < P > 제품 개발은 학술 과제 연구와는 달리 사용자 요구에 맞는 제품을 빠르고 저렴하며 고품질의 출시를 목적으로 합니다. 제품의 특색을 개발하는 데 집중하고, 기타 기능은 가능한 운영 체제에서 타사 제품을 첨부하거나 채택하기 때문에, 운영 체제의 이용 가능한 자원은 선택형 선택에 중요한 참고 조건이다. (존 F. 케네디, Northern Exposure (미국 TV 드라마), 제품명언) Linux 와 WinCE 는 모두 이용할 수 있는 대량의 자원을 가지고 있는데, 이것이 그들이 잘 보이는 중요한 이유이다. 기타 일부 실시간 운영 체제는 폐쇄적이어서 개발 시 이용할 수 있는 자원이 적기 때문에 대부분의 기능을 독립적으로 개발해야 합니다. 개발 진행에 영향을 줍니다. 최근의 시장 수요에 따르면 점점 더 많은 임베디드 시스템이 모든 기능을 갖춘 웹 브라우저를 요구하고 있습니다. 이를 위해서는 고성능의 신뢰할 수 있는 GUI 지원이 필요합니다. < P > (4) 시스템 맞춤형 기능 < P > 정보 제품은 기존 PC 의 Wintel 구조와 달리 사용자의 요구는 천차만별이며 하드웨어 플랫폼도 다르므로 시스템의 맞춤형 기능에 대한 요구 사항을 제시했습니다. 제품이 시스템 밑바닥에 대한 변경 수요가 있는지 분석하기 위해, 이런 변경은 제품 특색을 동반합니까? 리눅스는 소스 코드 개방의 타고난 매력으로 커스터마이징 능력 면에서 우세하다. WinCE3. 소스 코드가 개방되고 Microsoft 가 임베디드 분야에서 강화됨에 따라 맞춤형 기능이 향상될 것입니다.
(e) 비용
비용은 모든 제품이 고려해야 할 문제입니다. 운영 체제 선택이 비용에 어떤 영향을 미칩니까? Linux 무료, WinCE 등의 상용 시스템은 라이센스 사용료를 지불해야 하지만, 이것은 모두 문제의 답이 아니다. 비용은 종합적으로 따져보고 고려해야 한다. 한 시스템을 선택하면 하드웨어 장비 선택, 인력 투입, 회사 관리 및 다른 파트너와의 * * * 개발 간 커뮤니케이션 등 다양한 다른 요소에 영향을 미칠 수 있다.
(6) 중국어 커널 지원
국내 제품에는 중국어에 대한 지원이 필요합니다. 운영 체제는 대부분 서양식 방식, 더블바이트 인코딩 지원 여부, GBK, GBl83 등 다양한 국가 표준 준수 여부, 중국어 입력 및 처리 지원 여부, 제 3 자 중국어 입력 인터페이스 제공 여부 등이 국내 사용자를 위한 임베디드 제품의 필수 고려 사항입니다. < P > 위에서 언급한 WinCE+x86 제품을 사용하는 것은 빼기입니다. 이것은 실제로 PC 가전화라고 합니다. 또 다른 방법은 가전제품 업계의 하드웨어 솔루션 (대부분 비 x86) 을 이용하여 개선한 다음 임베디드 운영 체제와 애플리케이션 소프트웨어를 추가하는 것입니다. 가전제품 PC 화 (가전제품 PC 화) 라고 불리는데, 이 덧셈의 장점은 비용이 낮고 특색이 뛰어나며, 제품 R&D 주기가 길고 난이도가 높다는 단점이 있다 (하드웨어와 운영 체제에 대한 심층적인 이해가 필요함). 만약 이 방법을 선택한다면, Linux 는 당신이 원하거나 할 수 있다면, 시스템의 하단으로 깊이 들어갈 수 있는 좋은 선택이다. (토마스 A. 에디슨, 자신감명언)
4, 몇 가지 대표적인 임베디드 운영 체제 비교
(1) VxWorks
VxWorks 운영 체제는 1983 년 미국 WindRiver 가 개발한 RTOS (임베디드 실시간 운영 체제) 로 Tornado 임베디드 개발 환경의 핵심 구성 요소입니다 지속적인 발전 능력, 고성능 커널 및 친숙한 사용자 개발 환경은 임베디드 실시간 운영 체제 분야에서 점차 자리를 차지하고 있습니다.
VxWorks 는 자를 수 있는 마이크로 커널 구조를 가지고 있습니다. 효율적인 작업 관리 유연한 임무 간 통신 마이크로 초 인터럽트 처리; POSIX 13.1b 실시간 확장 표준 지원 : 다양한 물리적 미디어와 표준, 완벽한 TCP/IP 네트워크 프로토콜 등을 지원합니다.
그러나 가격이 비싸다. 운영 체제 자체와 개발 환경은 독점적이기 때문에 가격은 일반적으로 비교적 높으며, 일반적으로 사용 가능한 개발 환경을 구축하는 데 1 만 위안 이상이 소요되며, 각 애플리케이션마다 로열티가 추가로 부과됩니다. 일반적으로 소스 코드는 통하지 않고 이진 코드만 제공한다. 이들은 모두 전용 운영 체제이며 개발 기술 및 유지 보수를 숙지하는 전문 기술자가 필요하기 때문에 소프트웨어 개발 및 유지 보수 비용이 매우 높습니다. 지원되는 하드웨어 수가 제한되어 있습니다.
(b) Windows CE
Windows CE 가 Windows 제품군과 잘 호환된다는 것은 Windows CE 프로모션의 큰 이점입니다. 여기서 WinCE3. 은 소용량, 모바일, 지능, 32 비트, 이해 장치를 위한 모듈식 실시간 임베디드 운영 체제입니다. 핸드헬드, 무선 장치를 위한 동적 어플리케이션 및 서비스를 구축하기 위한 다양한 기능을 갖춘 운영 체제 플랫폼을 제공합니다. 이 플랫폼은 다양한 프로세서 아키텍처에서 실행되며 일반적으로 메모리 점유 공간에 제한이 있는 장치에 적합합니다. 전체적으로 한정된 자원 플랫폼을 위해 설계된 멀티 스레드, 완전 우선 순위, 멀티 태스킹 운영 체제입니다. 모듈식 설계를 통해 핸드헬드 컴퓨터에서 전용 산업 컨트롤러에 이르는 사용자 전자 장치를 사용자 정의할 수 있습니다. 운영 체제의 기본 커널에는 최소 2KB 의 ROM 이 필요합니다. 임베디드 제품의 볼륨, 비용 등에 대한 엄격한 요구 사항으로 인해 프로세서 부분 설치 공간은 가능한 한 작아야 합니다. 시스템의 가용 메모리와 외부 메모리 양도 제한되고 임베디드 운영 체제는 제한된 메모리 (일반적으로 ROM 또는 플래시 메모리) 에서 실행되므로 운영 체제의 규모, 효율성 등에 대한 요구가 높아지고 있습니다. 기술적으로 Windows CE 는 임베디드 운영 체제로서 많은 결함이 있습니다. 오픈 소스 없이 애플리케이션 개발자가 제품을 사용자 정의하기가 어렵습니다. 효율성, 전력 소비량 면에서 그다지 뛰어나지 않으며, Windows 와 같은 시스템 메모리를 사용하며, 응용 프로그램이 방대하다. 저작권 허가비도 제조사가 고려해야 할 요소이다. < P > (3) 임베디드 Linux
는 임베디드 운영 체제의 새로운 멤버이며, 소스 코드 공개 및 GPL 프로토콜 준수가 가장 큰 특징으로 최근 1 년여 동안 연구 핫스팟이 되었으며, IDG 에 따르면 임베디드 Linux 는 향후 2 년간 임베디드 운영 체제 점유율의 5% 를 차지할 것으로 예상됩니다. < P > 소스 코드 공개로 인해 사람들은 자신의 애플리케이션에 맞게 임의로 수정할 수 있으며, 또한 오류를 쉽게 확인할 수 있습니다. GPL 을 준수하면 각 응용 프로그램에 대한 라이센스 비용을 지불 할 필요가 없습니다. 대량의 앱을 사용할 수 있다. 그 중 대부분은 GPL 을 따르며 오픈 소스와 무료입니다. 약간 수정하여 사용자 시스템에 적용할 수 있습니다. 대량의 무료 우수한 개발 도구가 있고, 모두 GPL 을 준수하는 것은 오픈 소스 코드이다. 방대한 개발자 집단이 있다. 전문 인력은 필요 없고 유닉스/리눅스, C 언어만 알면 된다. 리눅스가 중국에서 보급됨에 따라 이런 인재가 갈수록 많아지고 있다. 따라서 소프트웨어 개발 및 유지 보수 비용은 매우 낮습니다. 우수한 네트워크 기능, 이것은 인터넷 시대에 특히 중요하다. 안정성-Linux 자체의 큰 장점 중 하나입니다. 코어는 강력하고, 실행에 필요한 자원이 적으며, 임베디드 어플리케이션에 적합합니다.
지원되는 하드웨어 수가 많습니다. 임베디드 Linux 와 일반 Linux 는 본질적으로 다르지 않으며 PC 에 사용되는 하드웨어 임베디드 Linux 가 거의 모두 지원됩니다. 또한 다양한 하드웨어에 대한 드라이버 소스 코드를 사용할 수 있어 사용자가 전용 하드웨어에 대한 드라이버를 쉽게 작성할 수 있습니다.
임베디드 시스템에서 Linux 를 실행하는 한 가지 단점은 Linux 시스템이 실시간 성능을 제공하기 위해 실시간 소프트웨어 모듈을 추가해야 한다는 것입니다. 이러한 모듈이 실행 중인 커널 공간은 운영 체제 구현 일정 정책, 하드웨어 인터럽트 예외 및 실행 프로그램의 일부입니다. 이러한 실시간 소프트웨어 모듈은 커널 공간에서 실행되므로 코드 오류로 인해 운영 체제가 손상되어 전체 시스템의 안정성에 영향을 줄 수 있으므로 실시간 애플리케이션에 심각한 약점이 될 수 있습니다.
(4)? C/OS 1 ⅱ
? C/OS I ⅱ 유명한 소스 코드 공개