GIỚI THIỆU HỆ ĐIỀU HÀNH LINUX, HỆ THỐNG NHÚNG

15/03/2012 0 9191

Hiện nay, cùng với sự phát triển mạnh mẽ của hệ điều hành Windows của hãng Microsoft, trong thế giới công nghệ thông tin chứng kiến sự ra đời và phát triển như vũ bão của hệ điều hành mã nguồn mở Linux. Hệ điều hành Linux có khả năng tương thích

với phần cứng cao, và hệ thống mã nguồn mở lớn cho phép người lập trình xây dựng ứng dụng “nhúng” một cách dễ dàng. Bên cạnh đó, người sử dụng có thể xây dựng một hệ điều hành cho riêng mình, đây là thế mạnh của Linux nó giúp cho mỗi cơ quan, tổ chức, hay một quốc gia có thể xây dựng những hệ thống chương trình cho riêng mình nhằm tăng tính bảo mật. Đây là một ý nghĩa thực tiễn rất lớn về việc ứng dụng Linux trong các hệ thống điều khiển của nhiều lĩnh vực như: quân sự, ngân hàng, và các hệ thống điều khiển nhúng, .v.v… 

1 Giới hệ điều hành Linux (Linux OS)

Linux là một hệ điều hành mã nguồn mở (open-source OS) chạy trên hầu hết các kiến trúc vi xử lý, bao gồm dòng vi xử lý ARM. Linux được hỗ trợ bởi một cộng đồng mã nguồn mở (GNU), chính điều này làm cho Linux rất linh hoạt và phát triển rất nhanh với nhiều tính năng không thua kém các hệ điều hành khác hiện nay. Tất cả các ứng dụng chạy trên hệ điều hành UNIX đều tương thích với Linux.

Hầu hết các bản Linux đều hỗ trợ rất nhiều ngôn ngữ lập trình, đặc biệt công cụ GCC cho phép người lập trình có thể biên dịch và thực thi ứng dụng viết bằng nhiều ngôn ngữ lập trình khác nhau: C/C++, Java, .v.v... Ngoài ra, Linux còn hỗ trợ ngôn ngữ lập trình để phát triển các ứng dụng đồ họa như: JTK+, Qt, .v.v...

Ngoài các thiết kế hệ điều hành dành cho máy tính desktop và máy chủ (server), các nhà cung cấp hệ điều hành linux còn thiết kế ra các bản chuyên biệt cho các mục đích khác nhau như: hỗ trợ kiến trúc máy tính, hệ thống nhúng (embedded Linux system), các hệ thống bảo mật, an ninh mạng, .v.v…

Do chi phí thấp, khả năng thay đổi tương thích với phần cứng dễ dàng, nên nhúng Linux thường được sử dụng rất nhiều trong các hệ thống nhúng (embedded system). Ngày nay, Linux đã trở thành một đối thủ cạnh tranh lớn về lĩnh vực hệ điều hành trong các dòng điện thoại thông minh (smartphone), các thiết bị PDA (personal digital assistant) và là một lựa chọn thay thế cho sự độc quyền của Windows CE và Palm OS.

2 Giới thiệu hệ thống nhúng (embeded system)

2.1 Hệ thống “nhúng” là gì?


Theo định nghĩa của IEEE (Hiệp hội kỹ sư điện và điện tử Hoa kỳ):

Hệ thống nhúng là một phần của hệ thống lớn hơn và thực hiện một số chức năng của hệ thống đó.

Nói một cách đơn giản khi một hệ tính toán (có thể là PC, PLC, vi xử lý, vi điều khiển, DSP, .v.v…) được nhúng vào trong một sản phẩm hay một hệ thống một cách “hữu cơ” và thực hiện một số chức năng cụ thể của hệ thống thì ta gọi đó là một hệ thống nhúng.

Các nhà thống kê trên thế giới đã thống kê được số vi xử lý ở trong các máy PC và các máy chủ (server), các mạng LAN, WAN, Internet chỉ chiếm không đầy 1% tổng số vi xử lý có trên thế giới. Hơn 99% số vi xử lý còn lại nằm trong các hệ thống “nhúng”.

Các hệ “nhúng” được tích hợp trong các thiết bị đo lường điều khiển, các sản phẩm điện tử và tự động hóa tạo nên đầu não và linh hồn của sản phẩm.

 

Trong các hệ “nhúng”, hệ thống điều khiển “nhúng” đóng một vai trò hết sức quan trọng. Hệ điều khiển “nhúng” là hệ thống mà chương trình máy tính được nhúng vào vòng điều khiển của sản phẩm nhằm điều khiển một đối tượng, điều khiển một quá trình công nghệ đáp ứng các yêu cầu đặt ra. Hệ thống điều khiển “nhúng” lấy thông tin từ các cảm biến, xử lý tính toán các thuật điều khiển và phát tín hiệu điều khiển cho các cơ cấu chấp hành.

Khác với các hệ thống điều khiển cổ điển theo nguyên lý cơ khí, thuỷ lực, khí nén, relay, mạch tương tự, v.v… Hệ điều khiển “nhúng” là hệ thống điều khiển số được hình thành từ những năm 1960 đến nay. Trước đây các hệ điều khiển số thường do các máy tính lớn đảm nhiệm, ngày nay chức năng điều khiển số này do các chip vi xử lý, các hệ nhúng đã thay thế. Phần mềm điều khiển ngày càng tinh xảo tạo nên độ thông minh của thiết bị và ngày càng chiếm tỷ trọng lớn trong giá thành của thiết bị.

Như vậy không phải tất cả các sản phẩm đo lường và điều khiển đều là các hệ nhúng. Hiện nay chúng ta còn gặp nhiều hệ thống điều khiển tự động hoạt động theo nguyên tắc cơ khí, thuỷ lực, khí nén, relay, hoặc điện tử tương tự, v.v…có các chương trình điều khiển được hình thành không cần sử dụng kỹ thuật “nhúng”.

Ngược lại phần lớn các sản phẩm điện tử, tự động hóa hiện nay đều có nhúng trong nó các chip vi xử lý hoặc một mạng nhúng. Ngày nay, các sản phẩm điện tử ngày càng tinh xảo và càng thông minh mà phần hồn của nó do các phần mềm nhúng trong nó tạo nên, và đó là xu hướng không thể đảo ngược của khoa học công nghệ ở thế kỷ 21.

Chức năng xử lý thông tin ở PC và ở các thiết bị “nhúng” có những nét khác biệt. Đối với PC và mạng Internet chức năng xử lý đang được phát triển mạnh ở các lĩnh vực như thương mại điện tử, ngân hàng điện tử, chính phủ điện tử, thư viện điện tử, đào tạo từ xa, báo điện tử, .v.v... Các ứng dụng này thường sử dụng máy PC để bàn, mạng WAN, LAN hoạt động trong thế giới ảo. Còn đối với các hệ nhúng thì chức năng xử lý tính toán được ứng dụng cụ thể cho các thiết bị vật lý (thế giới thật) như điện thoại di động, quần áo thông minh, các thiết bị điện tử cầm tay, thiết bị y tế, xe ô tô, tàu tốc hành, phương tiện vận tải thông minh, máy đo, đầu đo cơ cấu chấp hành thông minh, các hệ thống điều khiển, nhà thông minh, .v.v...

2.2 Cấu trúc hệ thống “nhúng”

Các hệ nhúng là những hệ kết hợp phần cứng và phần mềm một cách tối ưu. Một số đặc trưng cơ bản của hệ “nhúng”: 

                        –  Tính chuyên dụng cao.

                        –  Ràng buộc về hoạt động trong chế độ thời gian thực.

        Hạn chế về bộ nhớ, năng lượng, giá thành cao.

Tuy nhiên, đòi hỏi hoạt động với độ tin cậy cao và tiêu tốn ít năng lượng.

2.3 Hệ thống điều khiển tích hợp (SoC)

Ngày nay, công nghệ thiết kế chip có xu hướng chuyển từ linh kiện riêng rẽ sang chip vi hệ thống (SoC) có khả năng lập trình được phát triển rất mạnh mẽ.

Các chip vi hệ thống (SoC) trong tương lai sẽ có tới 1000 bộ xử lý và 100 MB memory, đồng thời được tích hợp rất nhiều khối như PSD, ADC, I2C, PWM, DAC, Wireless, SPI, USB, CAN, Ethernet, .v.v… Các chip SoC này sẽ là nền tảng của các sản phẩm có khả năng kết nối mạng WAN-LAN không dây cho các dịch vụ thông tin, giải trí, truyền thông, định vị ở bất cứ đâu, bất cứ thời gian nào cho tất cả công dân trên hành tinh này. Các vật dụng sẽ có khả năng nhìn, nghe, nói, có cảm xúc và nhạy bén thích nghi với yêu cầu của con người.

Hiện nay, các sản phẩm của hệ thống nhúng đa phần đều sử dụng chip SoC với tốc độ xử lý lên đến hàng GHz mà điển hình là chip ARM-CortexA8. Với tính linh hoạt trong lập trình phần mềm cho các hệ nhúng nên SoC sẽ là công cụ chủ chốt cho các sản phẩm điện tử.

2.4 Nhúng Linux (Embedded Linux) chạy trên vi xử lý ARM

Embedded Linux hiện đang phát triển mạnh và chiếm vị trí số 1. Hiện nay 40% các nhà thiết kế các hệ nhúng cân nhắc đầu tiên sử dụng Embedded Linux cho các ứng dụng mới của mình và sau đó mới đến các hệ điều hành nhúng truyền thống như Win CE. Các đối thủ cạnh tranh của Embedded Linux hiện nay là các hệđiều hành nhúng tự tạo và Windows CE. 

Hình 2.2 Embedded Linux chạy trên ARM9 kit

Embedded Linux có sự phát triển vượt bậc là do có sức hấp dẫn đối với các ứng dụng không đòi hỏi thời gian thực như; các hệ server nhúng, các ứng dụng giá thành thấp và đòi hỏi thời gian đưa sản phẩm ra thị trường nhanh. Mặt khác Linux là phần mềm mã nguồn mở nên bất kỳ ai cũng có thể hiểu và thay đổi theo ý mình. Linux cũng là một hệ điều hành có cấu trúc module và chiếm ít bộ nhớ trong khi Windows không có các ưu điểm này. 

Bên cạnh các ưu điểm trên thì Embedded Linux cũng có các nhược điểm sau:

                        - Embedded Linux không phải là hệ điều hành thời gian thực nên có thể không phù hợp với một số ứng dụng nhưđiều khiển quá trình, các ứng dụng có các yêu cầu xử lý khẩn cấp.

                        - Embedded Linux thiếu một chuẩn thống nhất và không phải là sản phẩm của một nhà cung cấp duy nhất nên khả năng hỗ trợ kỹ thuật chưa cao.

Do thị trường của các sản phẩm nhúng tăng mạnh nên các nhà sản xuất ngày càng sử dụng các hệ điều hành nhúng để bảo đảm sản phẩm có sức cạnh tranh và Embedded Linux đang là sản phẩm hệ điều hành nhúng có uy tín chiếm vị trí số 1 trên thế giới. Phần mềm nhúng là phần mềm tạo nên phần hồn, phần trí tuệ của các sản phẩm nhúng. Phần mềm nhúng ngày càng có tỷ lệ giá trị cao trong giá trị của các sản phẩm nhúng.

Hiện nay, phần lớn các phần mềm nhúng nằm trong các sản phẩm truyền thông và các sản phẩm điện tử tiêu dùng (consumer electronics), tiếp đến là trong các sản phẩm ô tô, phương tiện vận chuyển, máy móc thiết bị y tế, các thiết bị năng lượng, các thiết bị cảnh báo bảo vệ, các sản phẩm đo lường và điều khiển.

Trên phương diện phần mềm (software) thì Embedded Linux là một hệ điều hành chủ chốt trong việc phát triển các sản phẩm nhúng hiện nay. Đối với bộ xử lý trung tâm thì có khoảng 75% trong tổng các CPU nhúng 32 bit hiện nay dựa trên kiến trúc vi xử lý ARM.

 

Nguồn: armlinux.info

 

 

Đăng nhập