24/05/2018, 14:45

Firmware

Thuật ngữ "firmware" đã được Ascher Opler đặt ra năm 1967 trong một bài báo ở tờ Datamation Ban đầu nó có nghĩa là nội dung vi mã của một phân khu điều khiển khả dĩ ghi liệu (một bộ phận nhỏ chuyên môn hóa của bộ nhớ truy xuất ngẫu nhiên), ...

Thuật ngữ "firmware" đã được Ascher Opler đặt ra năm 1967 trong một bài báo ở tờ Datamation Ban đầu nó có nghĩa là nội dung vi mã của một phân khu điều khiển khả dĩ ghi liệu (một bộ phận nhỏ chuyên môn hóa của bộ nhớ truy xuất ngẫu nhiên), định nghĩa và thi hành tập lệnh của bộ vi xử lý trung tâm. có thể được tái tải nếu cần để đặc trưng hóa hoặc chỉnh sửa tập lệnh của máy tính. Như được sử dụng ban đầu, từ firmware đối lập với từ hardware (bản thân CPU) và software (những chương trình chạy trên CPU). Nó không được hợp thành bởi những lệnh CPU, mà bởi những vi mã thấp cấp hơn tham gia vào sự thi hành những lệnh máy. Nó tồn tại ở biên giới của hardware và software, đó là thuật ngữ firmware.

Sau này thuật ngữ được mở rộng ra để bao gồm bất kỳ vi mã nào, cho dù trong RAM hay ROM.

Lại sau này, thuật ngữ lại một lần nữa mở rộng ra để chỉ bất kỳ thứ gì thường trú ở ROM, kể cả những lệnh của bộ xử lý cho BIOS, bộ tải khởi động, hoặc những ứng dụng chuyên hóa.

đã tiến tới mức chỉ gần như mọi nội dung khả dĩ lập trình của một thiết bị phần cứng, không chỉ là ngôn ngữ máy cho vi xử lý mà còn chỉ những tùy chọn và dữ liệu cho mạch tích hợp chuyên dụng, thiết bị logic khả dĩ lập trình, vân vân. Mặc dù những thiết bị hiện đại có thể được cập nhật bằng firmware thường bố trí những phương pháp bán tự động, thỉnh thoảng một bộ nhớ trung bình, như một bộ nhớ chỉ đọc lắp vào đế, vẫn phải thay thế (là một quy trình điển hình tới tận giữa những năm 1990).

Các thiết bị ngoại vi

Phần lớn những thiết bị ngoại vi đều rõ ràng là những máy tính có mục đích đặc biệt. Khi mà những thiết bị ngoại vi có firmware trữ sẵn bên trong, những thẻ ngoại vi máy tính hiện đại thường có một phần lớn firmware tải bởi hệ thống chủ vào lúc khởi động máy, vì như thế linh hoạt hơn. Những phần cứng như vậy do vậy sẽ không thể hoạt động hoàn toàn cho tới khi máy làm chủ đã cung cấp firmware cần thiết, thường là qua bộ lái thiết bị (hoặc, chính xác hơn, một phân hệ bên trong gói bộ lái thiết bị). Những bộ lái thiết bị hiện đại cũng có thể trình bày một giao diện người dung trực tiếp để tùy chỉnh bổ sung cho những cuộc gọi / giao diện căn bản và/hoặc giao diện chương trình ứng dụng ở tầng lập trình.

Những thách thức về firmware với máy tính cá nhân

Theo một số phương diện, nhiều thành phần firmware quan trọng ngang với hệ điều hành trong một chiếc máy tính đang hoạt động. Tuy nhiên, không giống như phần lớn hệ điều hành hiện đại, firmware hiếm khi có một cơ chế được phát triển tốt để tự cập nhật nhằm sửa lỗi chức năng được phát hiện sau khi hàng đã được giao.

BIOS khá đơn giản cập nhật trong một máy tính cá nhân hiện đại; những thiết bị như card đồ họa và modem thường dựa trên firmware được tải một cách linh động qua một bộ lái thiết bị và vì vậy có thể được cập nhật một cách rõ ràng qua cơ chế cập nhật của hệ điều hành. Ngược lại, firmware trong những thiết bị lưu trữ hiếm khi được cập nhật, cơ chế phát hiện những phiên bản firmware và cập nhật chúng không được tiêu chuẩn hóa. Những thiết bị này vì vậy có xu hướng có những vấn đề chức năng cao hơn, so với những bộ phận khác của một hệ thống máy tính hiện đại.

Máy nghe nhạc lưu động

Một số công ty sử dụng những cập nhật firmware để thêm những định dạng tập tin mới có thể chơi được (mã hóa) như Iriver đã thêm định dạng Ogg như thế. Những chức năng khác có thể thay đổi với những cập nhật firmware là giao diện người dùng đồ họa và thậm chí là tuổi thọ pin. Phần lớn những máy chơi nhạc hiện đại hỗ trợ cập nhật firmware.

Điện thoại di động

Phần lớn điện thoại di động đều có firmware có khả năng cập nhật với những lý do phần nhiều là tương tự như trên, nhưng một số thậm chí có thể được nâng cấp đề được tiếp nhận tốt hơn, hoặc cải thiện chất lượng âm thanh.

Định nghĩa IEEE

Từ điển chuyên ngành chuẩn về Thuật ngữ học Kỹ thuật máy tính của Học viện Điện và Điện tử (IEEE) Std 610.12-1990, định nghĩa firmware như sau:

"Sự kết hợp của thiết bị phần cứng và các lệnh máy tính và dữ liệu lưu trú dưới dạng phần mềm chỉ đọc trên thiết bị đó.

Ghi chú: Thuật ngữ này thường được sử dụng chỉ để nói về thiết bị phần cứng hoặc chỉ là những lệnh máy tính hoặc dữ liệu, nhưng những nghĩa này bị phản đối. (2) Sự rối loạn xung quanh thuật ngữ này đã khiến một vài người đề nghị rằng nên tránh dùng nó trên mọi phương diện."

Những thí dụ về firmware bao gồm:

* Hệ thống điều khiển và định giờ cho máy giặt

* BIOS trong những máy tính cá nhân tương thích với sản phẩm IBM;

* Những mã nền trong những hệ thống ITanium, những máy Mac OS X dựa trên sản phẩm Intel, và nhiều máy để bàn Intel có firmware tương thích EFI;

* mở, dùng trong những máy tính của Sun Microsystems, Apple Computer, và Genesi;

* ARCS, dùng trong những máy tính của Silicon Graphics;

* Kickstart dùng trong dòng máy Amiga , nó là một ví dụ hiếm thấy của một firmware trộn với những khả năng của BIOS (POST, khởi tạo phần cứng + Tự tùy biến của những thiết bị ngoại vi mang tính Cắm và chạy, vân vân.), lõi của AmigaOS bản thân nó và những thành phần bộ mã sử dụng trong hệ điều hành này (như những Giao diện đồ họa nguyên thủy và những thư viện)

* RTAS (Run-Time Abstraction Services hay Những dịch vụ trừu tượng hóa chạy thực), trong những máy tính của IBM;

* EPROM chíp dùng trong dòng máy Eventide H-3000 về những bộ xử lý nhạc số.

* Môi trường phổ thông

* Những thuộc tính điều khiển âm thanh và phim cũng như danh sách kênh trong những Ti vi hiện đại

Thỉnh thoảng một phiên bản mới hoặc được tùy chỉnh không chính thức của firmware được tạo nên bởi các tổ chức thứ ba để cung cấp những chức năng mới hoặc mở khóa những chức năng còn bị ẩn. Ví dụ như Rockbox về máy nghe nhạc kỹ thuật số. CHDK về những máy quay phim kỹ thuật số Canon, và OpenWRT cho những bộ định tuyến không dây, thoải mái vùng firmware cho những đầu DVD, không tự do cho vùng với những firmware chính thức, cũng như nhiều dự án hombrew với những máy chơi game. Những firmware này thường có thể mở khóa chức năng đa dụng của máy tính về tổng quát trên những thiết bị trước đây bị hạn chế (ví dụ, chơi Doom trên iPod). Phần lớn các bản hack của firmware cũng đều miễn phí và mã nguồn mở.

Những bản hack thường lợi dụng sự dễ dàng trong cập nhật firmware trên nhiều thiết bị để bản thân nó cài đặt và hoạt động. Một số, tuy nhiên, lại phải dựa vào lợi dụng lỗi để hoạt động được, bởi vì nhà sản xuất đã cố tình khóa phần cứng để nó không thể chạy mã không đăng ký

0