소프트웨어에서 "내장"이라는 용어는 무엇을 의미합니까?


9

그래서 저는 임베디드 및 저수준 하드웨어 프로그래밍에 대한 지식을 넓히고 자했지만 "내장 된" 작업을 찾을 때마다 항상 높은 수준의 작업입니다. 나에게 그것은 그다지 의미가 없습니다.

"임베디드"에는 정확히 무엇이 포함됩니까? 임베디드를 생각할 때 저수준 마이크로 컨트롤러 프로그래밍 등을 생각합니다. 포함 된 제목이 해당 제목이 아닌 경우 무엇을 검색해야합니까?

답변:


4

더 높은 수준의 내용으로 의미하는 바를 정의하십시오. 하드웨어와 통신하는 드라이버 및 기타 유형의 소프트웨어를 작성하는 것은 아마도 임베디드 소프트웨어를 언급 할 때 대부분의 사람들이 생각하는 것입니다. 그것이 그것의 일부이지만, 그것은 단지 작은 부분입니다. 모든 설정이 완료되면 하드웨어와 실제로 직접 대화하지 않으며 대부분의 경우 이것이 개발 노력의 대부분 일 것입니다. 이것은 어떤 수준에서는 "높은"수준의 프로그래밍과 비교할 수 있습니다. 그러나 임베디드 세계에서는 아마도 계산 능력과 메모리 측면에서 일부 제약 조건 하에서 작업하고있을 것입니다. 다음은 대부분의 경우 높은 수준의 개발에서 덜 중요 할 것으로 생각되는 일일 목록입니다.

  • 스레드 동시성 (보호 및 타이밍 모두)
  • 메모리 할당 및 할당 해제 및 사용
  • 힙 관리 (단편화 방지)
  • 실시간 마감 시간 충족
  • 스레드 우선 순위
  • I / 0 성능
  • DMA 전송
  • 스택 크기
  • 도서관 성과
  • 언어 기능 (예외가 코드를 부풀려)

또한 임베디드 플랫폼은 일반 이기종 컴퓨팅을위한 플랫폼으로 설계된 PC와 달리 특정 목표를 달성하기 위해 고도로 전문화 된 경향이 있습니다. 즉, 이식 가능하거나 이식 불가능한 많은 사용자 정의 코드가있을 수 있습니다.


7

에서 위키 백과 / 임베디드 시스템 :

임베디드 시스템은 종종 실시간 컴퓨팅 제약 조건으로 하나 또는 몇 가지 전용 기능을 수행하도록 설계된 컴퓨터 시스템입니다.

간단히 말해서이 용어는 범용 PC가 아닌 모든 종류의 시스템에 적용될 수 있습니다. 간단한 마이크로 컨트롤러부터 네트워킹 하드웨어, 최신 게임 콘솔까지 다양합니다.

"높은 수준의 물건"을 "높은 수준의 프로그래밍 언어 사용"또는 "큰 객체 지향 프로젝트"로 간주하는 경우 물론 임베디드 시스템에서 매우 높은 수준의 소프트웨어를 가질 수 있습니다 .

일반적으로 소프트웨어가 "내장"시스템에 있도록 지정하면 소프트웨어가 어떤 식 으로든 임베디드 시스템에 연결되고 이식성이 떨어질 수 있습니다.

실제로 매우 광범위한 용어입니다. "Embedded"라고 들리지 않을 것으로 예상되는 것들은 일반적으로 PC 소프트웨어, 웹 응용 프로그램 및 서버 소프트웨어 일 것입니다. 그러나 임베디드 소프트웨어가 모든 종류의 고급 프로그래밍이나 디자인을 배제한다는 보장은 없습니다.


또한 소프트웨어가 포함되도록 지정하는 목적은 솔루션을 빌드하는 데 사용할 수있는 라이브러리 및 기존 솔루션이 적다는 것을 의미하기위한 것입니다.
ProdigySim

+1. 임베디드 시스템의 일반적인 예는 POS 또는 ATM 시스템의 컴퓨터입니다. Windows 또는 Linux와 같은 상용 OS를 실행하는 경우에도 마찬가지입니다.
nikie

1

"임베디드"가 "상자에 컴퓨터"를 의미하는 작업, 일반적으로 하나의 특정 작업을 수행하는 작업을보고있는 것 같습니다. 대부분의 Linux 배포판 또는 Microsoft OS를 실행하고있을 가능성이 높지만 상당히 완성되어 표준 GUI IDE 등을 사용할 수 있습니다. 내장 된 부분은 장치가 다중 채널 비디오 레코더, 미디어 스트리밍 장치 또는 도난 경보로 배송 될 때 실제로 제공됩니다.

요즘에는 1W 장치에서 많은 처리를 할 수 있으므로 임베디드의 정의가 커졌습니다. 그러나 20 년 전까지도 우리는 상당히 표준적인 DOS를 실행하는 배터리 전원 내장형 장치를 가지고 있었고 오늘날의 IDE를 사용하여이를위한 프로그램을 구축했습니다 (예를 들어 Symbol 바코드 스캐너에는 C 및 Pascal 용 라이브러리가 있으므로 Win3.1에서 Turbo Pascal을 사용했습니다). 실행 파일을 빌드하십시오). 그러나 우리는 또한 DOS를 부팅 한 다음 "산업용 PC"를 선적했고 소프트웨어는 스테인리스 스틸 박스에 장착 된 몇 개의 큰 방수 버튼으로 제한되었습니다. 그 상자에 들어있는 15 인치 LCD 뒤에는 많은 출력 옵션이 있었지만 키보드를 부착하면 상자를 여는 것을 의미했습니다 (식품 공장 내부). 일부 관점에서는 내장 된 것으로 간주 될 수 있습니다. 대부분 사용자는 오류 복구 옵션이 거의 없었습니다. -전원을 껐다 켜십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.