1, 임베디드 및 임베디드 운영 체제
1..1임베디드 시스템
임베디드 시스템은 임베디드 컴퓨터를 기반으로 하며 사용자, 제품 및 애플리케이션 지향적입니다. 하드웨어 및 소프트웨어는 기능, 신뢰성, 비용, 볼륨, 전력 소비 등 포괄적인 성능에 대한 엄격한 요구 사항을 가진 전용 컴퓨터 시스템에 맞게 자를 수 있습니다.
임베디드 시스템은 다음과 같은 특징을 가져야 합니다. 높은 신뢰성; 시스템은 열악한 환경이나 갑작스러운 정전에도 정상적으로 작동합니다. 많은 임베디드 어플리케이션에는 실시간 기능이 필요합니다. 이를 위해서는 임베디드 운영 체제에 실시간 처리 기능이 필요합니다. 임베디드 시스템은 특정 어플리케이션과 유기적으로 결합되며, 업그레이드도 특정 제품과 동기화됩니다. 임베디드 시스템의 소프트웨어 코드는 높은 품질과 신뢰성을 필요로 하며, 일반적으로 읽기 전용 메모리나 플래시 메모리에 경화됩니다. 즉, 소프트웨어는 디스크와 같은 캐리어가 아닌 솔리드 스테이트 스토리지를 필요로 합니다.
1.2 임베디드 운영 체제
EOS (임베디드 운영 체제) 는 널리 사용되는 시스템 소프트웨어입니다. 과거에는 주로 산업 통제와 국방 시스템에 사용되었습니다. EOS 는 시스템에 내장된 모든 소프트웨어 및 하드웨어 리소스를 할당 및 예약하고 동시 활동을 제어 및 조정합니다. 해당 시스템의 특성을 반영해야 하며 일부 모듈을 로드 및 언로드하여 시스템에 필요한 기능을 구현할 수 있어야 합니다. 비교적 성공적인 EOS 제품군이 출시되었습니다. 인터넷 기술의 발전, 정보 가전제품의 보급과 EOS 의 소형화와 전문화에 따라 EOS 는 하나의 약한 기능에서 고도로 전문화된 강력한 기능으로 발전하기 시작했다. 임베디드 운영 체제는 실시간, 하드웨어 의존성, 소프트웨어 경화성 및 애플리케이션 전용성 측면에서 두드러진 특징을 가지고 있습니다. EOS 는 범용 운영 체제에 상대적입니다. 작업 스케줄링, 동기화 메커니즘, 인터럽트 처리, 파일 처리 등 일반적인 운영 체제의 가장 기본적인 기능 외에도 다음과 같은 기능이 있습니다.
(1) 휴대성. 개방적이고 확장 가능한 아키텍처.
② 실시간 성능이 강하다. EOS 는 일반적으로 실시간이며 다양한 장치 제어에 사용할 수 있습니다.
③ 통합 인터페이스. 다양한 장치 구동 인터페이스를 제공합니다.
④ 조작이 쉽고 친숙한 그래픽 GUI 와 그래픽 인터페이스를 제공하여 배우기 쉽고 사용하기 쉬운 것을 추구한다.
⑤ TCP/IP 프로토콜과 같은 프로토콜을 지원하는 강력한 네트워크 기능을 제공하고 TCP/UDP/IP/PPP 프로토콜 지원 및 통합 MAC 액세스 레이어 인터페이스를 제공하여 다양한 모바일 컴퓨팅 장치에 대한 인터페이스를 확보합니다.
⑥ 강한 안정성과 약한 상호 작용. 임베디드 시스템이 가동되면 과도한 사용자 개입이 필요하지 않으므로 시스템 관리를 담당하는 EOS 의 안정성이 높아야 합니다. 임베디드 운영 체제의 사용자 인터페이스는 일반적으로 운영 명령을 제공하지 않고 시스템 호출 명령을 통해 사용자 프로그램에 서비스를 제공합니다.
⑦ 치료 코드. 임베디드 시스템에서 임베디드 운영 체제와 애플리케이션 소프트웨어는 임베디드 시스템 컴퓨터의 ROM 에 경화됩니다. 임베디드 시스템에서는 보조 메모리가 거의 사용되지 않으므로 임베디드 운영 체제의 파일 관리 기능을 쉽게 제거하여 다양한 메모리 파일 시스템에서 사용할 수 있어야 합니다.
⑧ 더 나은 하드웨어 적응성, 즉 좋은 이식성.
세계에는 정보 가전제품에 사용되는 약 40 가지의 임베디드 운영 체제가 있다. 현재 3Com 의 자회사인 Palm OS 를 포함하여 시장에서 매우 인기 있는 EOS 제품은 세계 시장의 50% 를 차지하고 있으며 Microsoft 의 Windows CE 는 29% 에 불과합니다. 미국 시장에서 Palm OS 는 Windows CE 를 80% 의 점유율로 훨씬 능가합니다. 오픈 소스 리눅스는 정보 가전제품의 발전에 매우 적합하다. 예를 들어 중과홍기 소프트웨어 기술유한공사가 개발한 홍기 임베디드 리눅스, 미국 인터넷 타이거사가 개발한 Linux 기반 임베디드 운영 체제' 쿼크' 등이 있다. Quark 는 현재 세계에서 가장 작은 Linux 입니다. 그것은 두 가지 두드러진 특징, 즉 작은 크기와 GCS 코딩을 가지고 있다.
2. 일반적으로 사용되는 3 가지 임베디드 운영 체제
2. 1 Palm 운영 체제
Palm 은 3Com 제품이고 운영 체제는 Palm OS 입니다. Palm OS 는 32 비트 임베디드 운영 체제입니다. Palm 은 다른 외부 장치와 쉽게 통신하고 데이터를 전송할 수 있는 직렬 및 적외선 전송 인터페이스를 제공합니다. 개방형 운영 체제 애플리케이션 인터페이스를 통해 개발자는 필요에 따라 자체 애플리케이션을 개발할 수 있습니다. Palm OS 는 매우 개방적인 시스템입니다. 현재 Palm OS 용으로 특별히 제작된 애플리케이션은 약 수천 가지가 있습니다. 프로그램 콘텐츠로 볼 때 Palm OS 는 개인 관리 및 게임에서 산업 솔루션에 이르는 모든 콘텐츠를 포괄합니다. 풍부한 소프트웨어 지원을 통해 Palm OS 기반 핸드헬드 기능이 지속적으로 확장되었습니다.
Palm OS 는 팜 파일럿을 위해 특별히 개발된 운영 체제이다. 프로그램을 작성할 때 Palm OS 는 PDA 가 비교적 작은 메모리를 충분히 고려하므로 메모리 사용량이 매우 적습니다. Palm OS 기반 어플리케이션은 매우 작은 공간 (보통 수십 킬로바이트) 을 차지하므로 Palm OS 기반 Palm PC (몇 메가바이트 RAM 만 있어도) 는 많은 어플리케이션을 실행할 수 있습니다.
팜 제품의 가장 큰 특징은 사용 편의성과 경량이기 때문에 팜 OS 는 다음과 같은 특징을 가져야 한다고 결정했습니다.
① 운영 체제의 에너지 절약 기능. 팜 파일럿은 전원 공급 장치가 작을수록 좋으므로 Palm OS 응용 프로그램에서 이벤트가 실행되지 않으면 시스템 장치가 반졸린 상태로 들어갑니다. 응용 프로그램이 일정 기간 동안 활동을 중지하면 시스템이 자동으로 절전 상태로 전환됩니다.
② 합리적인 메모리 관리. Palm 의 메모리는 PC 의 RAM 과 유사한 읽기 및 쓰기 빠른 RAM 으로, 글로벌 변수 및 영구 저장이 필요하지 않은 기타 데이터에 대한 임시 저장 공간을 제공합니다. RAM (스토리지 RAM 은 PC 의 하드 드라이브와 비슷하며 어플리케이션과 데이터를 영구적으로 저장할 수 있습니다.
③Palm OS 의 데이터는 데이터베이스 형식으로 저장됩니다. 데이터베이스는 레코드 세트와 일부 데이터베이스 헤더 정보로 구성됩니다. 프로그램 처리 속도와 메모리 공간을 보장하기 위해 Palm OS 는 데이터를 처리할 때 처리 전에 스토리지 힙에서 동적 힙으로 데이터를 복사하는 대신 스토리지 힙에서 직접 처리합니다. 메모리 주소가 잘못 호출되지 않도록 Palm OS 는 메모리 관리자에서 API 를 호출하여 이 모든 작업을 수행해야 한다고 규정하고 있습니다.
Palm OS 와 HotSync 를 결합하면 PDA 와 PC 의 정보를 동기화하고 데스크톱 PC 의 기능을 PDA 로 확장할 수 있습니다. Palm 은 연락처 및 워크시트 관리, e-메일 및 인터넷 통신, 영업 및 팀 자동화 등 다양한 애플리케이션을 갖추고 있습니다. Palm 의 주변 하드웨어도 디지털 카메라, GPS 수신기, 모뎀, GSM 무선 전화, 디지털 오디오 재생 장치, 휴대용 키보드, 녹음기, 바코드 스캔, 무선 페이징 수신기, 탐지기 등 매우 풍부합니다. 이 중 Palm 은 GPS 와 결합된 어플리케이션으로 탐색 포지셔닝뿐만 아니라 GPS 와 함께 기후 모니터링 및 지명 조사에도 사용할 수 있습니다.
2.2 Windows CE
Windows CE 는 Microsoft 에서 개발한 개방적이고 업그레이드 가능한 32 비트 임베디드 운영 체제로서 핸드헬드 등의 전자 장치를 기반으로 운영됩니다. 이것은 유선형 창 95 입니다. Windows CE 의 그래픽 사용자 인터페이스는 매우 뛰어나다. 여기서 CE 의 C 는 콤팩트, 소비, 연결 및 동반을 나타냅니다. E 는 전자학을 대표한다. Windows 95/98 및 Windows NT 와 달리 Windows CE 는 모든 소스 코드가 Microsoft 에서 개발한 새로운 임베디드 운영 체제입니다. 운영 인터페이스는 Windows 95/98 에서 제공되지만 Windows CE 는 Win32 API 재개발을 기반으로 하는 새로운 정보 장치 플랫폼입니다. Windows CE 는 모듈식, 구조화, Win32 기반, 프로세서 독립적인 제품입니다. Windows CE 는 기존의 Windows 그래픽 인터페이스뿐만 아니라 Windows 95/98 에서 Visual Basic, Visual C++ 등의 프로그래밍 도구를 사용할 수 있습니다. ), Windows CE 플랫폼에서 동일한 기능을 사용하고 동일한 인터페이스 그리드를 사용하여 대부분의 애플리케이션 소프트웨어를 간단히 수정하고 마이그레이션하면 Windows CE 플랫폼에서 계속 사용할 수 있습니다.
Windows CE 는 모듈식 및 확장성, 실시간 성능, 통신 기능, 멀티 CPU 지원을 목표로 설계되었습니다. 산업 컨트롤러, 통신 허브, 판매 단말기, 카메라, 전화, 홈 엔터테인먼트 장비 등 다양한 장비의 요구를 충족하도록 설계되었습니다. Windows CE 기반의 일반적인 임베디드 시스템은 일반적으로 특정 목적을 위해 설계되었으며 오프라인으로 작동합니다. 운영 체제가 작고 인터럽트 응답 기능이 내장되어 있어야 합니다.
Windows CE 의 기능은 다음과 같습니다.
① 즉각적인 절전/웨이크업 모드를 포함한 유연한 전력 관리 기능.
② 파일 시스템, 레지스트리 및 데이터베이스를 포함한 개체 스토리지 기술을 사용합니다. 주문형 페이지 변경, 공유 스토리지, 프로세스 간 동기화, 힙 지원 등 고성능의 효율적인 운영 체제 기능도 많이 있습니다.
③ 좋은 의사 소통 기술. 다양한 통신 하드웨어, 직접 로컬 연결 및 전화 접속 연결을 광범위하게 지원하고, PC, 인트라넷 및 인터넷에 대한 연결을 제공하며, Windows 9x/NT 와의 최적의 통합 및 통신을 제공합니다.
④ 중첩 인터럽트를 지원한다. 낮은 수준의 ISR 이 완료될 때까지 기다리지 않고 우선 순위가 높은 인터럽트가 먼저 응답하도록 허용합니다. 이를 통해 운영 체제는 임베디드 운영 체제에 필요한 실시간 기능을 제공합니다.
⑤ 더 나은 스레드 응답. 고급 IST (인터럽트 서비스 스레드) 의 최대 응답 시간은 더욱 엄격합니다. 스레드 응답성이 향상되어 개발자가 스레드 변환의 구체적인 시간을 파악하고 향상된 모니터링 및 하드웨어 제어 기능을 통해 새로운 임베디드 애플리케이션을 만들 수 있습니다.
⑥256 가지 우선 순위 수준. 이를 통해 개발자는 임베디드 시스템의 타이밍을 제어할 수 있는 유연성을 높일 수 있습니다.
⑦Windows CE 의 API 는 Win32 API 의 하위 세트이며 거의 1500 개의 Win32 API 를 지원합니다. 이러한 API 를 사용하면 복잡한 응용 프로그램을 작성할 수 있습니다. 물론, Windows CE 시스템에서 제공되는 API 는 특정 애플리케이션의 요구 사항에 따라 결정될 수 있습니다.
핸드헬드 장치의 Windows CE 에는 Pocket Outlook 및 해당 구성 요소, 녹음기, 모바일 채널, 원격 전화 접속 액세스, 세계 시계, 계산기, 다양한 입력기, GBK 문자 세트, 중국어 TTF 글꼴, 영어-중국어 양방향 사전, 포켓 브라우저 등의 주요 구성 요소가 포함되어 있습니다.
2.3 리눅스
Linux 는 Unix 와 유사한 운영 체제입니다. 핀란드의 Linus Torvalds 라는 취미에서 유래했지만 지금은 가장 인기 있는 오픈 소스 운영 체제입니다. 199 1 부터 지금까지 10 년 만에 Linux 는 강력하고 잘 설계된 운영 체제로 발전했습니다. 네트워크 기술이 발전함에 따라 Linux 운영 체제는 Microsoft 의 DOS 와 Windows 95/98 의 강력한 경쟁자가 되었습니다. Linux 시스템은 PC 플랫폼에서 실행될 수 있을 뿐만 아니라 임베디드 시스템에서도 빛을 발할 수 있습니다. 다양한 임베디드 Linux OS 의 급속한 발전에 따라 Linux OS 는 Windows CE 와 같은 EOS 와 경쟁할 수 있는 국면을 형성하고 있습니다. 현재 개발 중인 임베디드 시스템 중 49% 가 임베디드 운영 체제로 Linux 를 선택했습니다. 리눅스는 임베디드 작업에 이상적입니다.
중과홍기 소프트웨어 기술유한공사가 개발한 홍기 임베디드 리눅스 (Linux) 가 수많은 임베디드 장비 제조업체의 첫 번째 선택이 되고 있다. 1 년도 채 안 되어 홍기조사는 PDA, 셋톱 박스, 씬 클라이언트, 스위치를 위한 임베디드 리눅스 시스템을 출시하여 실제 응용에 투입했습니다. 레드 플래그 임베디드 리눅스를 예로 들어 임베디드 리눅스의 특징을 설명하겠습니다.
① 커널 단순화, 고성능, 안정성, 멀티태스킹.
② 다양한 CPU 에 적용되며 X86, ARM, MIPS, 알파, SPARC 등과 같은 다양한 아키텍처를 지원합니다.
③ 완벽한 임베디드 GUI 와 임베디드 X-Windows 를 제공합니다.
4 임베디드 브라우저, 메일 프로그램, MP3 플레이어, MPEG 플레이어, 메모장 등을 제공합니다.
⑤ 완벽한 개발 도구와 SDK 를 제공하고 PC 의 개발 버전도 제공한다.
⑥ 사용자는 그래픽 사용자 정의 및 구성 도구를 사용자 정의하고 제공 할 수 있습니다.
⑦ 일반적으로 사용되는 임베디드 칩의 드라이버 세트로, 다양한 주변 장치 하드웨어 장치를 지원하며 드라이버가 풍부합니다.
⑧ 임베디드 스토리지 솔루션을 위한 실시간 버전 및 완벽한 임베디드 솔루션을 제공합니다.
⑨ 완벽한 중국어 지원, 강력한 기술 지원, 전체 문서
⑩ 오픈 소스, 풍부한 소프트웨어 자원, 광범위한 소프트웨어 개발자 지원, 저렴한 가격, 유연한 구조, 광범위한 응용 프로그램.
3 개의 임베디드 운영 체제 비교
3. 1 Linux 운영 체제와 Windows Ce 비교
임베디드 Linux OS 는 Windows CE 에 비해 장점이 있습니다. 첫째, Linux 는 블랙 박스 기술이 없는 오픈 소스입니다. 전 세계 많은 Linux 애호가들은 Linux 개발자의 강력한 기술 지지자입니다. Windows CE 는 개방형 OS 가 아니므로 제 3 자가 제품을 사용자 정의하기가 어렵습니다. 둘째, Linux 의 소스 코드는 어디에나 있고, 주석이 풍부하고, 문서가 완전하며, 각종 문제를 쉽게 해결할 수 있다. 셋째, 리눅스 커널은 작고 효율적입니다. 하지만 Windows CE 는 이 방면에서 서툴고, RAM 을 너무 많이 사용하며, 응용 프로그램이 방대하다. 넷째, 리눅스는 오픈 소스 OS 로 가격이 경쟁력이 있어 중국에 적합하다. Windows CE 의 저작권 비용은 공급업체가 고려해야 할 요소입니다. 다섯째, Linux 는 x86 칩뿐만 아니라 플랫폼 간 시스템도 지원합니다. 지금까지 20 ~ 30 가지의 CPU 를 지원할 수 있었고, 가전제품 업계의 칩을 포함한 많은 CPU 업체들이 리눅스 플랫폼을 이식하기 시작했으며, 자바 개발 환경보다 훨씬 빠른 속도로 이식하고 있습니다. 오늘 리눅스 환경에서 제품을 개발하면 앞으로 Linux 를 교체하면 플랫폼 교체의 번거로움을 겪지 않을 것이다. 여섯째, 네트워크상의 Linux 커널은 10Mbit, 10Mbit, 기가비트 및 무선 네트워크, 토큰 링, 광섬유 및 심지어 위성을 포함한 이더넷을 지원하는 완벽한 구조를 갖추고 있습니다. 일곱째, Linux 는 커널 구조 설계에서 적응 시스템의 확장성을 고려하지만 Windows CE 는 커널 구조 설계에서 적응 시스템의 높은 확장성을 고려하지 않습니다.
Windows CE 에 비해 임베디드 Linux OS 의 약점은 개발이 어렵고 기술력에 대한 요구가 높다는 것입니다. 둘째, 핵심 디버깅 도구가 불완전하고, 디버깅이 불편하며, 좋은 사용자 그래픽 인터페이스가 없습니다. 셋째, 일부 상용 OS 와 마찬가지로 임베디드 Linux 는 많은 메모리를 사용합니다. 물론, 사람들은 쓸모없는 기능을 제거하여 사용되는 메모리를 줄일 수 있지만, 조심하지 않으면 새로운 문제가 생길 수 있다. 넷째, 일부 Linux 응용 프로그램에는 가상 메모리가 필요하지만 임베디드 시스템에는 가상 메모리가 없거나 전혀 없으므로 모든 Linux 응용 프로그램을 임베디드 시스템에서 실행할 수 있는 것은 아닙니다.
Palm OS 와 Windows CE 의 비교
3Com 의 Palm OS 는 핸드헬드 시장에서 우수한 임베디드 운영 체제로 이 시장을 위해 특별히 설계되었습니다. 오픈 운영체제 애플리케이션 인터페이스 (API) 를 통해 개발자가 필요에 따라 필요한 애플리케이션을 개발할 수 있도록 지원합니다. 애플리케이션은 매우 풍부합니다. 그것은 오랫동안 PDA 시장을 지배해 왔다.
기술적으로 Palm OS 는 팜 파일럿을 위해 특별히 개발된 운영 체제로서 Windows CE 와 비교할 수 없는 많은 장점을 가지고 있습니다. Windows CE 는 너무 비대해서 저렴한 핸드헬드에서 사용할 수 없습니다.
Palm OS 는 매우 개방적인 시스템입니다. 개발자는 사용자에게 Palm OS 를 기반으로 관련 소프트웨어를 쉽게 작성하고 수정할 수 있는 무료 Palm OS 개발 도구를 제공합니다. 이에 비해 Windows CE 의 개발 도구는 훨씬 복잡하여 일반 사용자가 파악하기가 어렵습니다. Palm OS 와 Windows CE 의 또 다른 주요 차이점입니다.
Dell 은 표 1 을 통해 일반적으로 사용되는 EOS 의 크기, 개발 가능한 맞춤형 구성, 상호 운용성, 공통성, 실시간 성능, 애플리케이션 영역을 다음과 같이 요약했습니다.
라벨
Palm OS, Windows CE, Linux 는 각각 특징이 있으며 용도도 다릅니다. 그러나 Linux 는 Palm OS 및 Windows CE 보다 작고 안정적이며 Linux 는 오픈 OS 로 가격 경쟁력이 있습니다. 현재 전체 시장은 아직 형성되지 않았고, 임베디드 운영 체제는 아직 통일된 국제 표준을 형성하지 못했고, Linux 의 다양한 기능은 국산 임베디드 운영 체제 개발을 용이하게 해 주기 때문에, 우리는 이 미성숙한 시장에서 자리를 차지할 수 있는 기회를 갖게 되었습니다.