View Full Version : Nghiên cứu kit Linux
Hiện nay rất nhiều sản phẩm đã cài đặt hệ điều hành linux ở dạng embedded system, chứ không chỉ cài trên máy tính. Vd như những sản phẩm PDA, PNA,... Do vậy, việc nghiên cứu các sản phẩm có hệ điều hành trở thành một nhu cầu cấp thiết hiện nay đối với ngành điện tử ở Việt Nam.
Thực chất, đã và đang có nhiều nhóm nghiên cứu vấn đề này, vậy F mở ra luồng này để thảo luận về vấn đề thiết kế kit và cài đặt hệ điều hành uCLinux.
Chúc vui
Bước 1: Tìm hiểu các chip nào tương ứng và hỗ trợ các hệ điều hành nào.
Đồng chí nào có thể liệt kê các dòng chip có thể cài đặt hệ điều hành Linux, uLinux nhỉ?
Chúc vui
Bước 1: Tìm hiểu các chip nào tương ứng và hỗ trợ các hệ điều hành nào.
Đồng chí nào có thể liệt kê các dòng chip có thể cài đặt hệ điều hành Linux, uLinux nhỉ?
Chúc vui
http://duyhung.phan.free.fr/Embedded.Linux.System.Design.and.Development-0849340586.pdf
ví dụ trang 43.
:rose:
Bước 1: Tìm hiểu các chip nào tương ứng và hỗ trợ các hệ điều hành nào.
Đồng chí nào có thể liệt kê các dòng chip có thể cài đặt hệ điều hành Linux, uLinux nhỉ?
Chúc vui
Hầu như tất cả các dòng vi xử lý / vi điều khiển từ 32 bit trở lên đều được Linux hỗ trợ, trong đó tốt nhất ngoài x86 là ARM và PowerPC. (Dùng từ "hầu như" cho an toàn khỏi nói xằng, thực tế tất cả các loại >= 32 bit tôi biết đều chạy được Linux.) Xem thêm tại diễn đàn http://www.ucdot.org/
Trước đây nhân Linux được phân làm 2 nhánh chính: nhánh "chính thống" tại kernel.org do Linus Tovald lãnh đạo, phát triển nhân Linux cho những dòng vi xử lý thông thường như x86, PowerPC, Sparc ... ; nhánh "nhúng" phát triển nhân Linux cho những dòng vi điều khiển 32 bit nhưng ít tính năng phần cứng hơn (không có phần xử lý dấu chấm động, quản lý bộ nhớ ...) gọi là uClinux.
Bắt đầu từ phiên bản nhân Linux 2.6 gần đây, nhiều tính năng của uClinux đã được gộp ngược trở lại vào nhân Linux chính thống và với sự tái thống nhất này, có thể nói một cách an toàn hệ nhúng dùng nhân Linux mà không cần phân biệt Linux hay uClinux.
Bước 2: Một vài cấu hình cơ sở để có thể cài đặt linux lên chip?
Chúc vui.
Bước 2: Một vài cấu hình cơ sở để có thể cài đặt linux lên chip?
Chúc vui.
Cấu hình cơ sở để có thể chạy Linux không nhiều hơn một hệ vi điều khiển mấy. Tối thiểu là
_
Bộ vi xử lý / vi điều khiển 32 bit trở lên : 01 vi mạch
Bộ nhớ RAM 4 MB trở lên : 01
Bộ nhớ ROM 4 MB trở lên : 01
Phần logic để kết nối những thứ trên lại với nhau, thường dùng FPGA. Nếu dùng vi xử lý dòng ARM kiểu như XScale hoặc vi điều khiển đã có khả năng ghép nối sẵn thì không cần phần logic này.
Một phương thức nào đó để lập trình cho bộ nhớ, kiểu như JTAG
Một phương thức nào đó để kết nối ra bên ngoài: tối thiểu là RS232, có thể là Ethernet, không nhất thiết phải có giao tiếp màn hình bàn phím.
Bộ vi xử lý / vi điều khiển 32 bit trở lên : 01 vi mạch
Đó là lý thuyết, trên thực tế, tùy theo trình độ của người làm thế nào, kinh phí ra sao, ý muốn can thiệp vào hệ thống sâu đến đâu mà chọn cách thức cài đặt phù hợp
101. Mua máy tính để bàn thông thường đã cài đặt sẵn Linux (!)
102. Mua máy tính để bàn rồi về tự cài Linux cùng các trình điều khiển, phần mềm phù hợp yêu cầu
103. Tự xây dựng hệ thống Linux từ đầu hoàn toàn bằng mã nguồn để sử dụng hàng ngày (Gentoo (http://www.gentoo.org/), Linux from scratch (http://www.linuxfromscratch.org/))
201. Mua máy tính nhúng đã cài đặt sẵn một phiên bản embedded Linux nào đó (kiểu như MontaVista (http://www.mvista.com/), TimeSys (http://www.timesys.com/) ...) trên thẻ compact flash
202. Mua máy tính nhúng rồi về tự cài một phiên bản embedded Linux nào đó (như embedded Debian (http://www.emdebian.org/), embedded Gentoo (http://www.gentoo.org/proj/en/base/embedded/index.xml) ...)
203. Mua máy tính nhúng rồi tự biên dịch một hệ thống Linux từ đầu hoàn toàn bằng mã nguồn rồi tải vào thẻ nhớ / ROM bên trong máy tính
Có nhiều hãng sản xuất cái gọi là "embedded PC" này, đơn cử Axiom, Advantech, Kontron, Arcom, Moxa...
30x. Mua bo mạch dạng thô (có đủ các phần cứng như trên đề cập) rồi lần lượt làm qua các bước 201-203. Những sản phẩm điển hình mà tôi có dịp tìm hiểu là
_ Dựa trên nền AVR32 của Atmel: http://www.linuxdevices.com/news/NS2837651365.html giá 70$ cũng không phải đắt lắm
_ Dựa trên nền ARM: quá nhiều hãng, quá nhiều sản phẩm
_ Dựa trên nền những vi điều khiển ít thông dụng khác: H8 (Hitachi), BlackFin (Analog Device)... sẽ đề cập ở mục liền sau
40x. Tự thiết kế lấy một cái máy tính, cài đặt / tự biên dịch Linux cùng các trình điều khiển, phần mềm phù hợp yêu cầu. Viết thêm phần mềm cần thiết. Đã có một số người làm về cái này và chia xẻ cho cộng đồng toàn bộ thiết kế phần cứng lẫn phần mềm
ARM: http://www.dlharmon.com/sbc.html
BlackFin: http://blackfin.uclinux.org/gf/project/stamp
H8: http://www.azpower.com/H8-uClinux/
Như vậy không chỉ là phần mềm tự do mà phần cứng cũng được giải phóng nốt !
Vẫn còn một mức nữa phát triển tiếp từ 40x là sử dụng lõi vi điều khiển nạp trong FPGA (ví dụ lõi Nios trên nền FPGA của Atera hay lõi Microblaze trên nền Xilinx) - nhưng đây là cái tôi đang làm và chưa có nhiều kết quả đáng kể nên không dám "nổ". Và nó cũng thật sự khó.
Với người làm nhúng bình thường, đạt tới mức 203 đã là đủ.
em dang tim hiêu về mô hình tổng quát của hệ thống nhúng. có đại ca nao chỉ giáo giúp. xin cảm ơn.
Phát triển bởi DTVN Team