최상의 답변
스톡 ROM / 펌웨어는 제조업체에서 특정 장치 용으로 설계 한 공식 소프트웨어입니다.
Truly Stock ROM 은 하드웨어 제조업체에서 코드의 외관 / 기능적 변경을 거치지 않는 유형입니다.
예 : Google Pixel, Nexus 휴대 전화에서 실행되는 Android.
제조업체 또는 이동 통신사 브랜드 Stock ROM 은 재고 펌웨어가 인터페이스 개선, 수정 및 제조업체 별 애플리케이션 설치를 거치는 또 다른 종류입니다.
예 : Android 실행 Samsung (TouchWiz UI + Samsung Apps), Xiaomi (MIUI + 앱), HTC (HTC Sense + 앱), Asus (ZenUI + 앱)…
일반적으로 Stock 펌웨어는 여러 테스트를 거치기 때문에 Custom 펌웨어보다 가장 많이 선택됩니다. 배포 전에 더 나은 보안, 안정성 및 버그없는 패키지를 보장하는 단계
답변
펌웨어는 본질적으로 소프트웨어이지만 하드웨어와 인터페이스하는 것입니다. 우리가 알고있는 소프트웨어는 범용 CPU에서 실행되도록 작성되었지만 펌웨어는 특수 프로세서에서 실행되도록 작성되었습니다. 펌웨어는 소프트웨어와 크게 다르지 않습니다. 소프트웨어에서는 표준 입력 (키보드)에서 읽고 표준 출력 (화면)에 쓰고 펌웨어에서는 핀 (예 : 전압 레벨)에서 읽고 핀에 쓰기 (예 : 전압 레벨 변경) 할 수 있습니다. 또는 소프트웨어에서는 텍스트 파일에서 읽고 텍스트 파일에 쓰고 펌웨어에서는 메모리 블록에서 읽고 메모리 블록에 씁니다.
펌웨어는 일반적으로 어셈블리, C / C ++로 작성됩니다. . 펌웨어의 한 가지 큰 차이점은 프로그램 실행이 매우 결정적이라는 것입니다. 펌웨어는 프로그램 만 실행하도록 작성할 수 있습니다. 백그라운드 작업이 없습니다. 코드와 코드 만 실행합니다. 이것은 대부분의 펌웨어에 매우 중요합니다. 예를 들어 자동차에서와 같이 코드 조각이 지연없이 실행되어야 할 때 실행된다는 것을 절대적으로 알아야하는 경우입니다. 펌웨어에서는 코드 만 실행되기 때문에 특정 작업을 실행하는 데 걸리는 시간을 정확히 알 수 있습니다. 코드 디스 어셈블리를보고, 지침을 세고, 특정 작업을 수행하는 데 걸리는 시간을 정확히 알 수 있습니다. 이것은 OS 위에있는 범용 CPU에서 실행되는 소프트웨어로는 할 수없는 일입니다. 물론 펌웨어 용 OS 인 RTOS (실시간 OS)는 일반 PC OS처럼 작동하지만 여전히 오버 헤드가 매우 낮습니다.하지만 정밀도와 타이밍이 중요한 경우 베어 본 펌웨어를 작성합니다.