임베디드 시스템은 하드웨어 계층, 드라이버 계층, 운영 체제 계층, 애플리케이션 계층의 4개 계층으로 구분됩니다.
1. 하드웨어 계층은 전체 임베디드 시스템의 기초입니다. 마이크로컨트롤러와 인터페이스에 익숙하고 C와 어셈블리 언어로 프로그래밍할 수 있다면 임베디드 시스템의 하드웨어 계층에서 시작하는 것이 비교적 쉽습니다. 하드웨어 계층은 또한 드라이버 계층의 기초입니다. 우수한 드라이버 엔지니어는 하드웨어 회로도를 이해하고 스스로 CPLD 논리 설계를 완료할 수 있어야 합니다. 동시에 운영 체제 커널과 그 스케줄링에 익숙해야 합니다. 그러나 하드웨어 플랫폼은 기초이며 부가가치는 소프트웨어에 달려 있습니다.
하드웨어 계층은 전자, 통신, 자동화, 메카트로닉스, 정보공학을 전공하는 사람들에게 더 적합합니다. 마스터해야 할 전문적 기본 지식에는 마이크로컨트롤러 원리와 인터페이스 기술, 마이크로컴퓨터 원리와 인터페이스 기술, C 언어가 포함됩니다.
2. 드라이버 계층. 이 부분은 더 어렵습니다. 드라이버 엔지니어는 회로도를 이해할 수 있어야 할 뿐만 아니라 운영 체제 커널에 매우 능숙해야 하므로, 그들이 작성하는 드라이버가 시스템 호출 시 운영 체제 시간 슬라이스를 독점하여 다른 작업이 이동하지 못하게 하지 않습니다. 그들은 운영 체제 커널 아키텍처와 실시간 스케줄링을 이해하지 못하고 드라이버 작성 스타일이 좋지 않습니다. 대부분 책에서 언급된 드라이버를 추가하는 방식에 따르면, 많은 사람들이 할 수 있지만, 주니어 드라이버 엔지니어 수준에는 도달하지 못할 수도 있습니다. 이런 식으로, 애플리케이션이 호출할 때 작성된 드라이버는 마치 윈도우에서 프로그램을 열어 실행한 다음 다른 프로그램을 열고 이전 프로그램을 중단하거나 잠시 기다렸다가 나중에 연 프로그램을 실행하는 것과 같습니다. 3~4년의 기초와 운영 체제 커널에 대한 몇 가지 연구 없이 좋은 드라이버가 되고 싶다면 성공하기 쉽지 않지만, 그 급여는 임베디드 시스템의 4개 계층 중에서 가장 높습니다.
드라이버 계층은 전자, 통신, 자동화, 메카트로닉스, 정보 공학, 특히 컴퓨터 아키텍처 전공자에게 더 적합합니다. 하드웨어 계층의 기본 분야 외에도 데이터 구조와 알고리즘, 운영 체제 원리, 컴파일 원리에 매우 능숙해야 합니다.
3. 운영 체제 계층. 현재 운영 체제 계층은 단순한 이식이라고만 말할 수 있습니다. 운영 체제를 작성한 사람이 거의 없거나, 누락된 부분이 있는 운영 체제를 작성한 사람이 거의 없습니다. 이 작업의 대부분은 드라이버 엔지니어가 수행합니다. 운영 체제는 시스템 작업 디버깅, 디스크 및 파일 관리를 담당하며 임베디드 시스템의 실시간 성능이 매우 중요합니다. Microsoft에서 XP 운영 체제를 완성하는 데 300명이 2년 걸렸다고 하며, 총 600명이 걸렸습니다. 중국 과학 아카데미 소프트웨어 연구소의 Nuwa Hopen 운영 체제를 완성하는 데 수백 명이 걸렸을 것으로 추정됩니다. 따라서 이 작업의 일부는 상대적으로 의미가 없습니다.
4. 애플리케이션 계층. 비교적 쉽습니다. Windows에서 프로그래밍 인터페이스 함수를 호출하는 방법을 알고 있다면 컴파일 및 개발 환경은 운영 체제에 따라 그에 따라 변경됩니다. Java 프로그래밍이 관련된 경우에도 마찬가지입니다. 임베디드 시스템에 관련된 알고리즘은 전문 알고리즘 담당자가 처리하며 임베디드 시스템의 범위에 속할 필요가 없습니다. 그러나 임베디드 시스템에서 임베디드 데이터베이스, 임베디드 시스템을 기반으로 하는 네트워크 프로그래밍, 특정 애플리케이션 수준(예: SIP, H.323, Astrisk 기반)을 기반으로 하는 프로토콜 애플리케이션 개발이 관련된 경우 더 복잡하고 어렵습니다.
May 09, 2024
산업용 임베디드 컴퓨터의 레이어링
문의 보내기
