펌웨어와 장치 드라이버의 차이점과 관계 모두 같아요? OS가 드라이버를

  1. 펌웨어와 장치 드라이버는 어떻게 다르고 관련이 있습니까? 두 제어 장치가 모두 같아요?
  2. OS가 드라이버를 실행 / 부팅해야하는 동안 펌웨어는 항상 자체 부팅됩니까?


답변

  1. 펌웨어 실행되는 소프트웨어 장치. 드라이버는 운영 체제에 장치와 통신하는 방법을 알려주는 소프트웨어입니다. 모든 장치에 펌웨어가있는 것은 아니며 일정 수준의 지능을 갖춘 장치 만 있습니다.

  2. 정확히 무엇을 의미하는지 잘 모르겠습니다. 일반적으로 펌웨어는 “부팅”과 아무 관련이 없습니다 … 아마도 여러분이 묻는 것은 펌웨어가있는 장치에 항상 펌웨어가 장치에 설치되어 있고, 또는 부팅 후로드 되었습니까? 그것이 당신이 요구하는 것이라면, 대답은 아니오입니다 …

가장 일반적으로 펌웨어가있는 장치에는 펌웨어가 장치에 프로그래밍되어 있지만 (ROM 칩 또는 프로그래밍 가능한 ROM 칩이 있음) 초기화시 펌웨어가 장치에로드되는 장치가 있습니다. 이런 식으로 작동하는 일부 네트워크 카드와 웹캠은 생각할 수 있지만 다른 네트워크 카드도 있습니다.


답변

펌웨어 는 하드웨어 작동에 필요한 하위 수준의 세부 정보를 구현하고 API / ABI를 더 높은 수준으로 제공합니다. 장치 드라이버는 펌웨어에 의해 노출 된 OS와 API / ABI 사이에 어댑터를 제공합니다.


답변

펌웨어 의 최신 정의 또는 일반적인 사용법은 특정 소프트웨어 기능과 관련이 없습니다. 펌웨어는 단순히 하드 드라이브와 같은 대용량 저장 장치가 아닌 비 휘발성 반도체 메모리 (예 : PROM, EEPROM 또는 플래시) 칩에 저장된 소프트웨어입니다. 저장된 소프트웨어는 모 놀리 식 링크 바이너리이거나 로더, 커널 및 응용 프로그램 모듈로 구성 될 수 있습니다. (OTOH 초기화를 완료하기 위해 Linux 커널에서 “펌웨어”를로드해야하는 PC 용 TV 튜너 카드를 보았습니다.)

이 용어의 기원은 프로세서 제어 논리 대 하드 와이어 논리와 관련이 있습니다. 하드 드라이브에 저장된 소프트웨어는 쉽게 수정하고 업데이트 할 수 있습니다. 하드 와이어 로직에 대한 개정 및 업데이트에는 보드 또는 모듈 재 설계 및 교체가 필요했습니다. 중간 단계는 하드웨어를 제어하기 위해 소프트웨어를 실행하는 프로세서였습니다. 이 소프트웨어는 호출 된 회사 사이의 중간 반영하기 위해 도자기 소프트 대 도자기 하드 유선 논리를. 원래 보드 모듈성을 유지하기 위해 펌웨어는 ROM, PROM 또는 EPROM 칩에 저장되었습니다. EEPROM 및 플래시 칩의 발전으로 펌웨어의 회로 내 및 온보드 업데이트가 가능했습니다.

프로세서 (및 주변 장치)가 점점 작아지고 전력 소비가 줄어들면서 모든 종류의 장치 / 기기에 프로세서를 내장 할 수있는 가능성이 확대되었습니다. 소프트웨어가 이러한 장치를 견고하고 안전하게 작동하게하기 위해 소프트웨어는 하드 드라이브가 아닌 플래시 메모리 칩에 저장됩니다. 또한 장치를 작고 저렴하게 만듭니다. 저장된 코드의 일부가 하드 와이어 로직을 대체하는 것과는 관련이 없지만 펌웨어라는 용어는 내장 프로세서가있는 장치 / 기기의 모든 소프트웨어를 포함하도록 확장되었습니다.


답변

누군가이 질문을 최근에 게시했습니다 .

펌웨어는 영구 메모리, 프로그램 코드 및 저장된 데이터의 조합입니다. 펌웨어가 포함 된 장치의 일반적인 예는 신호등, 가전 제품, 디지털 시계, 컴퓨터, 컴퓨터 주변 장치, 휴대폰 및 디지털 카메라와 같은 내장 시스템입니다. 이 장치에 포함 된 펌웨어는 장치에 대한 제어 프로그램을 제공합니다.

실제로 수퍼 유저 drivers태그는 다음과 같이 정의됩니다.

장치 드라이버 또는 소프트웨어 드라이버라고도하는 드라이버는 고급 컴퓨터 프로그램이 하드웨어 장치와 상호 작용할 수 있도록하는 소프트웨어입니다. 컴퓨터 프로그램이 특정 하드웨어 장치와의 상호 작용을 요청하면 드라이버는 장치와 드라이버를 호출하는 컴퓨터 프로그램 간의 명령 및 출력 변환을 처리합니다.

그리고, firmware태그는 정의된다 :

일반적으로 소프트웨어와 펌웨어의 차이점은 하드웨어와 상호 작용하는 수준입니다. 펌웨어는 매우 낮은 수준의 하드웨어에서 상호 작용하고 소프트웨어는 높은 수준에서 상호 작용합니다. 펌웨어는 일반적으로 하드웨어의 기본 타이밍, 제어 및 기능을 제어합니다.

원래 나는 그것이 firmware칩이나 보드에 직접 설치되어 거기에 살았다 고 생각했기 때문에 driver운영 체제 위에 설치하는 동안 “플래시”해야 합니다.

결론:

Firmware하드웨어가 물건을 “수행”하고 drivers소프트웨어가 하드웨어와 상호 작용할 수 있도록합니다.


답변