✨Hệ thống nhúng

Hệ thống nhúng

thumb|right|Một hệ thống nhúng trên thẻ trình cắm có bộ xử lý, bộ nhớ, nguồn điện và giao diện bên ngoài Hệ thống nhúng () là một thuật ngữ để chỉ một hệ thống có khả năng tự trị được nhúng vào trong một môi trường hay hệ thống mẹ. Đó là các hệ thống tích hợp cả phần cứng và phần mềm phục vụ các bài toán chuyên dụng trong nhiều lĩnh vực công nghiệp, tự động hoá điều khiển, quan trắc và truyền tin. Đặc điểm của các hệ thống nhúng là hoạt động ổn định và có tính năng tự động hoá cao.

Hệ thống nhúng thường được thiết kế để thực hiện một chức năng chuyên biệt nào đó. Khác với các máy tính đa chức năng, chẳng hạn như máy tính cá nhân, một hệ thống nhúng chỉ thực hiện một hoặc một vài chức năng nhất định, thường đi kèm với những yêu cầu cụ thể và bao gồm một số thiết bị máy móc và phần cứng chuyên dụng mà ta không tìm thấy trong một máy tính đa năng nói chung. Vì hệ thống chỉ được xây dựng cho một số nhiệm vụ nhất định nên các nhà thiết kế có thể tối ưu hóa nó nhằm giảm thiểu kích thước và chi phí sản xuất. Các hệ thống nhúng thường được sản xuất hàng loạt với số lượng lớn. Hệ thống nhúng rất đa dạng, phong phú về chủng loại. Đó có thể là những thiết bị cầm tay nhỏ gọn như đồng hồ kĩ thuật số và máy chơi nhạc MP3, hoặc những sản phẩm lớn như đèn giao thông, bộ kiểm soát trong nhà máy hoặc hệ thống kiểm soát các máy năng lượng hạt nhân. Xét về độ phức tạp, hệ thống nhúng có thể rất đơn giản với một vi điều khiển hoặc rất phức tạp với nhiều đơn vị, các thiết bị ngoại vi và mạng lưới được nằm gọn trong một lớp vỏ máy lớn.

Các thiết bị PDA hoặc máy tính cầm tay cũng có một số đặc điểm tương tự với hệ thống nhúng như các hệ điều hành hoặc vi xử lý điều khiển chúng nhưng các thiết bị này không phải là hệ thống nhúng thật sự bởi chúng là các thiết bị đa năng, cho phép sử dụng nhiều ứng dụng và kết nối đến nhiều thiết bị ngoại vi.

Lịch sử

Hệ thống nhúng đầu tiên là Apollo Guidance Computer (Máy tính Dẫn đường Apollo) được phát triển bởi Charles Stark Draper tại phòng thí nghiệm của trường đại học MIT. Hệ thống nhúng được sản xuất hàng loạt đầu tiên là máy hướng dẫn cho tên lửa quân sự vào năm 1961. Nó là máy hướng dẫn Autonetics D-17, được xây dựng sử dụng những bóng bán dẫn và một đĩa cứng để duy trì bộ nhớ. Khi Minuteman II được đưa vào sản xuất năm 1996, D-17 đã được thay thế với một máy tính mới sử dụng mạch tích hợp. Tính năng thiết kế chủ yếu của máy tính Minuteman là nó đưa ra thuật toán có thể lập trình lại sau đó để làm cho tên lửa chính xác hơn, và máy tính có thể kiểm tra tên lửa, giảm trọng lượng của cáp điện và đầu nối điện.

Từ những ứng dụng đầu tiên vào những năm 1960, các hệ thống nhúng đã giảm giá và phát triển mạnh mẽ về khả năng xử lý. Bộ vi xử lý đầu tiên hướng đến người tiêu dùng là Intel 4004, được phát minh phục vụ máy tính điện tử và những hệ thống nhỏ khác. Tuy nhiên nó vẫn cần các chip nhớ ngoài và những hỗ trợ khác. Vào những năm cuối 1970, những bộ xử lý 8 bit đã được sản xuất, nhưng nhìn chung chúng vẫn cần đến những chip nhớ bên ngoài.

Vào giữa thập niên 80, kỹ thuật mạch tích hợp đã đạt trình độ cao dẫn đến nhiều thành phần có thể đưa vào một chip xử lý. Các bộ vi xử lý được gọi là các vi điều khiển và được chấp nhận rộng rãi. Với giá cả thấp, các vi điều khiển đã trở nên rất hấp dẫn để xây dựng các hệ thống chuyên dụng. Đã có một sự bùng nổ về số lượng các hệ thống nhúng trong tất cả các lĩnh vực thị trường và số các nhà đầu tư sản xuất theo hướng này. Ví dụ, rất nhiều chip xử lý đặc biệt xuất hiện với nhiều giao diện lập trình hơn là kiểu song song truyền thống để kết nối các vi xử lý. Vào cuối những năm 80, các hệ thống nhúng đã trở nên phổ biến trong hầu hết các thiết bị điện tử và khuynh hướng này vẫn còn tiếp tục cho đến nay.

Cho đến nay, khái niệm hệ thống nhúng được nhiều người chấp nhận nhất là: hệ thống thực hiện một số chức năng đặc biệt có sử dụng vi xử lý. Không có hệ thống nhúng nào chỉ có phần mềm.

Các đặc điểm

Hệ thống nhúng thường có một số đặc điểm chung như sau:

• Các hệ thống nhúng được thiết kế để thực hiện một số nhiệm vụ chuyên dụng chứ không phải đóng vai trò là các hệ thống máy tính đa chức năng. Một số hệ thống đòi hỏi ràng buộc về tính hoạt động thời gian thực để đảm bảo độ an toàn và tính ứng dụng; một số hệ thống không đòi hỏi hoặc ràng buộc chặt chẽ, cho phép đơn giản hóa hệ thống phần cứng để giảm thiểu chi phí sản xuất.

• Một hệ thống nhúng thường không phải là một khối riêng biệt mà là một hệ thống phức tạp nằm trong thiết bị mà nó điều khiển.

• Phần mềm được viết cho các hệ thống nhúng được gọi là firmware và được lưu trữ trong các chip bộ nhớ ROM hoặc bộ nhớ flash chứ không phải là trong một ổ đĩa. Phần mềm thường chạy với số tài nguyên phần cứng hạn chế: không có bàn phím, màn hình hoặc có nhưng với kích thước nhỏ, dung lượng bộ nhớ thấp Sau đây, ta sẽ đi sâu, xem xét cụ thể đặc điểm của các thành phần của hệ thống nhúng.

Giao diện

Các hệ thống nhúng có thể không có giao diện (đối với những hệ thống đơn nhiệm) hoặc có đầy đủ giao diện giao tiếp với người dùng tương tự như các hệ điều hành trong các thiết bị để bàn. Đối với các hệ thống đơn giản, thiết bị nhúng sử dụng nút bấm, đèn LED và hiển thị chữ cỡ nhỏ hoặc chỉ hiển thị số, thường đi kèm với một hệ thống menu đơn giản.

Còn trong một hệ thống phức tạp hơn, một màn hình đồ họa, cảm ứng hoặc có các nút bấm ở lề màn hình cho phép thực hiện các thao tác phức tạp mà tối thiểu hóa được khoảng không gian cần sử dụng; ý nghĩa của các nút bấm có thể thay đổi theo màn hình và các lựa chọn. Các hệ thống nhúng thường có một màn hình với một nút bấm dạng cần điểu khiển (joystick button). Sự phát triển mạnh mẽ của mạng toàn cầu đã mang đến cho những nhà thiết kế hệ nhúng một lựa chọn mới là sử dụng một giao diện web thông qua việc kết nối mạng. Điều này có thể giúp tránh được chi phí cho những màn hình phức tạp nhưng đồng thời vẫn cung cấp khả năng hiển thị và nhập liệu phức tạp khi cần đến, thông qua một máy tính khác. Điều này là hết sức hữu dụng đối với các thiết bị điều khiển từ xa, cài đặt vĩnh viễn. Ví dụ, các router là các thiết bị đã ứng dụng tiện ích này.

Kiến trúc CPU

Các bộ xử lý trong hệ thống nhúng có thể được chia thành hai loại: vi xử lý và vi điều khiển. Các vi điều khiển thường có các thiết bị ngoại vi được tích hợp trên chip nhằm giảm kích thước của hệ thống. Có rất nhiều loại kiến trúc CPU được sử dụng trong thiết kế hệ nhúng như ARM, MIPS, Coldfire/68k, PowerPC, x86, PIC, 8051, Atmel AVR, Renesas H8, SH, V850, FR-V, M32R, Z80, Z8 ... Điều này trái ngược với các loại máy tính để bàn, thường bị hạn chế với một vài kiến trúc máy tính nhất định. Các hệ thống nhúng có kích thước nhỏ và được thiết kế để hoạt động trong môi trường công nghiệp thường lựa chọn PC/104 và PC/104++ làm nền tảng. Những hệ thống này thường sử dụng DOS, Linux, NetBSD hoặc các hệ điều hành nhúng thời gian thực như QNX hay VxWorks. Còn các hệ thống nhúng có kích thước rất lớn thường sử dụng một cấu hình thông dụng là hệ thống on chip (System on a chip – SoC), một bảng mạch tích hợp cho một ứng dụng cụ thể (an application-specific integrated circuit – ASIC). Sau đó nhân CPU được mua và thêm vào như một phần của thiết kế chip. Một chiến lược tương tự là sử dụng FPGA (field-programmable gate array) và lập trình cho nó với những thành phần nguyên lý thiết kế bao gồm cả CPU.

Thiết bị ngoại vi

Hệ thống nhúng giao tiếp với bên ngoài thông qua các thiết bị ngoại vi, ví dụ như:

• Serial Communication Interfaces (SCI): RS-232, RS-422, RS-485...

• Synchronous Serial Communication Interface: I2C, JTAG, SPI, SSC và ESSI

• Universal Serial Bus (USB)

• Networks: Controller Area Network, LonWorks...

• Bộ định thời: PLL(s), Capture/Compare và Time Processing Units

• Discrete IO: General Purpose Input/Output (GPIO)

Công cụ phát triển

Tương tự như các sản phẩm phần mềm khác, phần mềm hệ thống nhúng cũng được phát triển nhờ việc sử dụng các trình biên dịch (compilers), chương trình dịch hợp ngữ (assembler) hoặc các công cụ gỡ lỗi (debuggers). Tuy nhiên, các nhà thiết kế hệ thống nhúng có thể sử dụng một số công cụ chuyên dụng như:

• Bộ gỡ rối mạch hoặc các chương trình mô phỏng (emulator)

• Tiện ích để thêm các giá trị checksum hoặc CRC vào chương trình, giúp hệ thống nhúng có thể kiểm tra tính hợp lệ của chương trình đó.

• Đối với các hệ thống xử lý tín hiệu số, người phát triển hệ thống có thể sử dụng phần mềm workbench như MathCad hoặc Mathematica để mô phỏng các phép toán.

• Các trình biên dịch và linker (trình liên kết) chuyên dụng được sử dụng để tối ưu hóa một thiết bị phần cứng.

• Một hệ thống nhúng có thể có ngôn ngữ lập trình và công cụ thiết kế riêng của nó hoặc sử dụng và cải tiến từ một ngôn ngữ đã có sẵn.

Các công cụ phần mềm có thể được tạo ra bởi các công ty phần mềm chuyên dụng về hệ thống nhúng hoặc chuyển đổi từ các công cụ phát triển phần mềm GNU. Đôi khi, các công cụ phát triển dành cho máy tính cá nhân cũng được sử dụng nếu bộ xử lý của hệ thống nhúng đó gần giống với bộ xử lý của một máy PC thông dụng.

Độ tin cậy

Các hệ thống nhúng thường nằm trong các cỗ máy được kỳ vọng là sẽ chạy hàng năm trời liên tục mà không bị lỗi hoặc có thể khôi phục hệ thống khi gặp lỗi. Vì thế, các phần mềm hệ thống nhúng được phát triển và kiểm thử một cách cẩn thận hơn là phần mềm cho máy tính cá nhân. Ngoài ra, các thiết bị rời không đáng tin cậy như ổ đĩa, công tắc hoặc nút bấm thường bị hạn chế sử dụng. Việc khôi phục hệ thống khi gặp lỗi có thể được thực hiện bằng cách sử dụng các kỹ thuật như watchdog timer – nếu phần mềm không đều đặn nhận được các tín hiệu watchdog định kì thì hệ thống sẽ bị khởi động lại.

Một số vấn đề cụ thể về độ tin cậy như:

• Hệ thống không thể ngừng để sửa chữa một cách an toàn, ví dụ như ở các hệ thống không gian, hệ thống dây cáp dưới đáy biển, các đèn hiệu dẫn đường,... Giải pháp đưa ra là chuyển sang sử dụng các hệ thống con dự trữ hoặc các phần mềm cung cấp một phần chức năng.

• Hệ thống phải được chạy liên tục vì tính an toàn, ví dụ như các thiết bị dẫn đường máy bay, thiết bị kiểm soát độ an toàn trong các nhà máy hóa chất,... Giải pháp đưa ra là lựa chọn backup hệ thống.

• Nếu hệ thống ngừng hoạt động sẽ gây tổn thất rất nhiều tiền của ví dụ như các dịch vụ buôn bán tự động, hệ thống chuyển tiền, hệ thống kiểm soát trong các nhà máy ...

Các kiến trúc phần mềm hệ thống nhúng

Một số loại kiến trúc phần mềm thông dụng trong các hệ thống nhúng như sau:

Vòng lặp kiểm soát đơn giản

Theo thiết kế này, phần mềm được tổ chức thành một vòng lặp đơn giản. Vòng lặp gọi đến các chương trình con, mỗi chương trình con quản lý một phần của hệ thống phần cứng hoặc phần mềm.

Hệ thống ngắt điều khiển

Các hệ thống nhúng thường được điểu khiển bằng các ngắt. Có nghĩa là các tác vụ của hệ thống nhúng được kích hoạt bởi các loại sự kiện khác nhau. Ví dụ, một ngắt có thể được sinh ra bởi một bộ định thời sau một chu kỳ được định nghĩa trước, hoặc bởi sự kiện khi cổng nối tiếp nhận được một byte nào đó.

Loại kiến trúc này thường được sử dụng trong các hệ thống có bộ quản lý sự kiện đơn giản, ngắn gọn và cần độ trễ thấp. Hệ thống này thường thực hiện một tác vụ đơn giản trong một vòng lặp chính. Đôi khi, các tác vụ phức tạp hơn sẽ được thêm vào một cấu trúc hàng đợi trong bộ quản lý ngắt để được vòng lặp xử lý sau đó. Lúc này, hệ thống gần giống với kiểu nhân đa nhiệm với các tiến trình rời rạc.

Đa nhiệm tương tác

Một hệ thống đa nhiệm không ưu tiên cũng gần giống với kỹ thuật vòng lặp kiểm soát đơn giản ngoại trừ việc vòng lặp này được ẩn giấu thông qua một giao diện lập trình API. Các nhà lập trình định nghĩa một loạt các nhiệm vụ, mỗi nhiệm vụ chạy trong một môi trường riêng của nó. Khi không cần thực hiện nhiệm vụ đó thì nó gọi đến các tiến trình con tạm nghỉ (bằng cách gọi "pause", "wait", "yield" ...).

Ưu điểm và nhược điểm của loại kiến trúc này cũng giống với kiểm vòng lặp kiểm soát đơn giản. Tuy nhiên, việc thêm một phần mềm mới được thực hiện dễ dàng hơn bằng cách lập trình một tác vụ mới hoặc thêm vào hàng đợi thông dịch (queue-interpreter).

Đa nhiệm ưu tiên

Ở loại kiến trúc này, hệ thống thường có một đoạn mã ở mức thấp thực hiện việc chuyển đổi giữa các tác vụ khác nhau thông qua một bộ định thời. Đoạn mã này thường nằm ở mức mà hệ thống được coi là có một hệ điều hành và vì thế cũng gặp phải tất cả những phức tạp trong việc quản lý đa nhiệm.

Bất kỳ tác vụ nào có thể phá hủy dữ liệu của một tác vụ khác đều cần phải được tách biệt một cách chính xác. Việc truy cập tới các dữ liệu chia sẻ có thể được quản lý bằng một số kỹ thuật đồng bộ hóa như hàng đợi thông điệp (message queues), các phương thức truyền tin thị giác (semaphores)... Bởi những phức tạp nói trên, giải pháp thường được đưa ra đó là sử dụng một hệ điều hành thời gian thực. Lúc đó, các nhà lập trình có thể tập trung vào việc phát triển các chức năng của thiết bị chứ không cần quan tâm đến các dịch vụ của hệ điều hành nữa.

Vi nhân (Microkernel) và nhân ngoại (Exokernel)

Khái niệm vi nhân (microkernel) là một bước tiếp cận gần hơn tới khái niệm hệ điều hành thời gian thực. Lúc này, nhân hệ điều hành thực hiện việc cấp phát bộ nhớ và chuyển CPU cho các luồng thực thi. Còn các tiến trình người dùng sử dụng các chức năng chính như hệ thống file, giao diện mạng lưới,... Nói chung, kiến trúc này thường được áp dụng trong các hệ thống mà việc chuyển đổi và giao tiếp giữa các tác vụ là nhanh.

Còn nhân ngoại (exokernel) tiến hành giao tiếp hiệu quả bằng cách sử dụng các lời gọi chương trình con thông thường. Phần cứng và toàn bộ phần mềm trong hệ thống luôn đáp ứng và có thể được mở rộng bởi các ứng dụng.

Nhân khối (monolithic kernels)

Trong kiến trúc này, một nhân đầy đủ với các khả năng phức tạp được chuyển đổi để phù hợp với môi trường nhúng. Điều này giúp các nhà lập trình có được một môi trường giống với hệ điều hành trong các máy để bàn như Linux hay Microsoft Windows và vì thế rất thuận lợi cho việc phát triển. Tuy nhiên, nó lại đòi hỏi đáng kể các tài nguyên phần cứng làm tăng chi phí của hệ thống. Một số loại nhân khối thông dụng là Embedded Linux và Windows CE. Mặc dù chi phí phần cứng tăng lên nhưng loại hệ thống nhúng này đang tăng trưởng rất mạnh, đặc biệt là trong các thiết bị nhúng mạnh như Wireless router hoặc hệ thống định vị GPS. Lý do của điều này là:

• Hệ thống này có cổng để kết nối đến các chip nhúng thông dụng

• Hệ thống cho phép sử dụng lại các đoạn mã sẵn có phổ biến như các trình điều khiển thiết bị, Web Servers, Firewalls, ...

• Việc phát triển hệ thống có thể được tiến hành với một tập nhiều loại đặc tính, chức năng còn sau đó lúc phân phối sản phẩm, hệ thống có thể được cấu hình để loại bỏ một số chức năng không cần thiết. Điều này giúp tiết kiệm được những vùng nhớ mà các chức năng đó chiếm giữ.

• Hệ thống có chế độ người dùng để dễ dàng chạy các ứng dụng và gỡ rối. Nhờ đó, quy trình phát triển được thực hiện dễ dàng hơn và việc lập trình có tính linh động hơn.

• Có nhiều hệ thống nhúng thiếu các yêu cầu chặt chẽ về tính thời gian thực của hệ thống quản lý. Còn một hệ thống như Embedded Linux có tốc độ đủ nhanh để trả lời cho nhiều ứng dụng. Các chức năng cần đến sự phản ứng nhanh cũng có thể được đặt vào phần cứng.

👁️ 4 | 🔗 | 💖 | ✨ | 🌍 | ⌚
thumb|right|Một _hệ thống nhúng_ trên thẻ trình cắm có bộ xử lý, bộ nhớ, nguồn điện và giao diện bên ngoài **Hệ thống nhúng** () là một thuật ngữ để chỉ một hệ thống có
phải|nhỏ|280x280px|Kỹ thuật hệ thống được áp dụng trong các hệ thống phức tạp: Thiết kế tàu vũ trụ, Thiết kế chip máy tính, Rô bốt, Phần mềm tích hợp, xây dựng cầu đường. Kỹ thuật
phải|nhỏ|Một nhà máy thủy điện tại [[Amerongen, Hà Lan.]] Một **hệ thống điều khiển **quản lý, ra lệnh, chỉ dẫn hoặc điều khiển các hành vi của các thiết bị hoặc hệ thống khác. Nó
**Hệ thống bầu cử** cho phép cử tri chọn một trong các giải pháp, thường để chọn ứng viên cho việc quản trị công (Tiếng Anh: public administration hay public office) trong một cuộc bầu
**Quản trị viên hệ thống** hay **quản trị viên CNTT** (tiếng Anh: **system administrator**, **IT administrator**, **sysadmin**), là người chịu trách nhiệm bảo trì, cấu hình và vận hành đáng tin cậy của hệ thống
**Hệ thống trên một vi mạch** (còn gọi là hệ thống trên chip, hay hệ thống SoC, tiếng Anh: _system-on-a-chip_, viết tắt là **SoC** hay **SOC**) là một vi mạch (IC) được tích hợp các
Hệ thống nhúng là một môn chuyên ngành ở một số trường kỹ thuật. Tại các trường, hai bo mạch được sử dụng nhiều nhất trong hệ thống nhúng là Arduino và raspberry Lập Trình
[[KDE 3.5]] [[GNOME 2.12.0]] Trong khoa học máy tính, **Hệ thống X Window** (còn được gọi tắt là **X11** hay **X**) là một windowing system dùng để hiển thị đồ họa bitmap. Nó cung ứng
The X Window System logo Trong vi tính, **Hệ thống X Window** (thường được gọi tắt là **X11** hoặc **X**) là một hệ thống cửa sổ xuyên dụng mạng dùng để hiển thị đồ họa
nhỏ|Tòa Hoàng gia, biểu tượng cho Hệ thống pháp luật Anh quốc **Pháp luật Anh** là hệ thống pháp luật được áp dụng cho toàn xứ Anh và xứ Wales được xây dựng cơ sở
Trong điện toán, khái niệm **hệ thống tập tin** hoặc **hệ thống tệp** () được dùng để chỉ các phương pháp và cấu trúc dữ liệu mà một hệ điều hành sử dụng để theo
Trong máy tính, một **hệ thống kế thừa** (tiếng Anh: **legacy system**) là một phương pháp cũ, công nghệ, hệ thống máy tính, hoặc chương trình ứng dụng, "của, liên quan đến, hoặc là một
**Hệ thống thông tin địa lý** (_Geographic Information System_ - gọi tắt là **GIS**) được hình thành vào những năm 1960 và phát triển rất rộng rãi trong 10 năm lại đây. GIS ngày nay
**Hệ thống thông tin quản lý** là hệ thống cung cấp thông tin cho công tác quản lý của tổ chức. Hệ thống bao gồm con người, thiết bị và quy trình thu thập, phân
[[Cung điện Westminster|Nghị viện Anh, thường được biết đến với tên Cung điện Westminster ở Luân Đôn.]] **Hệ thống Westminster** là một dạng dân chủ nghị viện, lần đầu tiên phát triển ở Anh, với
phải|nhỏ|Một đoạn đường vùng quê thuộc [[Xa lộ Liên tiểu bang 5 nằm trong tiểu bang California có hai làn xe mỗi chiều, được phân cách bởi một dãy đất cỏ rộng. Xe cộ lưu
nhỏ|Hệ thống xử lý giao dịch Xử lý giao dịch là một cách tính toán, chia làm việc vào cá nhân không hoạt động được gọi là giao dịch. Một **hệ thống xử lý giao
**Hệ thống Kinh tế So sánh** là một nhánh phụ của kinh tế học liên quan đến việc nghiên cứu so sánh các hệ thống tổ chức kinh tế khác nhau, chẳng hạn như chủ
**Hệ thống địa chỉ của Nhật Bản** được sử dụng để xác định một địa điểm cụ thể tại Nhật Bản. Khi được viết bằng các ký tự tiếng Nhật, các địa chỉ bắt đầu
= Giới thiệu = Cùng với sự phát triển của thương mại điện tử cũng như tương tác trực tuyến của con người trong giai đoạn hiện nay, **hệ thống gợi ý** đã được nghiên
phải|nhỏ|350x350px|Hình minh họa các "con đường" mà mỗi nhóm Baltimore trải qua để tổng hợp mRNA. **Hệ thống phân loại Baltimore** là một hệ thống được sử dụng để phân loại virus dựa trên cách
**Hệ thống xã hội chủ nghĩa** là thể chế chính trị mà được các nước có các đảng Cộng sản nắm quyền lãnh đạo tuyên bố sẽ đưa đất nước và dân tộc mình đi
**Hiệp hội Điện ảnh Hoa Kỳ** - Motion Picture Association of America (MPAA) đưa ra **Hệ thống phân loại phim của MPAA** và áp dụng trên toàn lãnh thổ Hoa Kỳ để phân loại phim
nhỏ|Hệ thống vi khuẩn E.Coli **Sinh học hệ thống** là một lĩnh vực nghiên cứu sinh học khá mới mẻ tập trung vào việc nghiên cứu một cách có hệ thống các tương tác phức
**Hệ thống Quốc lộ Hoa Kỳ** (tiếng Anh: _National Highway System_ hay viết tắt là **NHS**) là một hệ thống xa lộ chiến lược bên trong Hoa Kỳ. Hệ thống này gồm có Hệ thống
**Hệ thống giao dịch tự động** (**ATS**) là một hình thức của giao dịch thuật toán, sử dụng phần mềm máy tính để tạo và gửi các lệnh mua bán trực tiếp đến thị trường
Trong ngôn ngữ lập trình, **hệ thống kiểu** (tiếng Anh: _type system_) là một tập các quy tắc gán một thuộc đặc tính gọi là kiểu cho các cấu trúc khác nhau của một chương
**Hệ thống Tín dụng Xã hội** (; ) là một hệ thống danh tiếng quốc gia đang được phát triển bởi chính phủ Trung Quốc. năm 2020, nó được dự kiến sẽ tiêu chuẩn hóa
**Hệ thống quản lý lực lượng bán hàng **(cũng là **hệ thống tự động hóa lực lượng bán hàng**) là hệ thống thông tin được sử dụng trong quản lý vàtiếp thị quản lý quan
**Hệ thống** là một nhóm các yếu tố có sự tương tác hoặc liên quan lẫn nhau, hoạt động theo một bộ quy tắc để tạo thành một tổng thể thống nhất. Một hệ thống,
nhỏ|300x300px|[[AK-630 – hệ thống vũ khí đánh gần đầu tiên trên thế giới do Liên Xô phát triển]] **Hệ thống vũ khí đánh gần** (tiếng Anh: _Close-in weapon system_ – **CIWS** ) là hệ thống
Trong xã hội học, một **hệ thống xã hội** là mạng lưới các mối quan hệ khuôn mẫu tạo thành một tổng thể thống nhất tồn tại giữa các cá nhân, nhóm và tổ chức.
**Hệ thống phân giải tên miền** (hay được viết tắt là **DNS** do tên tiếng Anh **_Domain Name System_**) là một hệ thống cho phép thiết lập tương ứng giữa địa chỉ IP và [https://google.com
**Dân luật** là một hệ thống pháp luật trên thế giới có nguồn gốc từ châu Âu và được áp dụng tại hầu hết các quốc gia trên thế giới. Hệ thống dân luật được
**Hệ thống đa đảng** là hệ thống mà ở đó có hai hoặc nhiều hơn các đảng phái chính trị có khả năng giành quyền điều hành chính phủ một cách độc lập hay liên
**Hệ thống quản lý năng lượng (EMS)** là một hệ thống các công cụ hỗ trợ máy tính được sử dụng bởi các nhà khai thác tiện ích điện, lưới điện theo dõi, kiểm soát
**DTS, Inc.** (có nguồn gốc là **Digital Theater Systems**) là một công ty Mỹ sản xuất các công nghệ âm thanh đa kênh cho phim và video. Có trụ sở tại Calabasas, California, công ty
**Hệ thống canh tác** (Farming system) là một phần của hệ thống nông nghiệp; bao gồm sự sắp xếp phối hợp rất năng động các hoạt động của nông hộ mà trong đó việc tận
**Hệ thống phân loại các chương trình truyền hình**, hoặc **Hệ thống phân loại phim truyền hình**, là một hệ thống đánh giá và xếp loại các chương trình truyền hình theo nội dung mà
nhỏ|phải|Các máy móc phục vụ cho hệ thống thanh toán **Hệ thống thanh toán** (_Payment system_) là bất kỳ hệ thống nào được thiết lập, sử dụng để xử lý các giao dịch tài chính
**Lập trình hệ thống** là công việc viết những phần mềm cho hệ thống (máy tính). Điểm khác biệt chủ yếu của lập trình hệ thống đối với lập trình ứng dụng là lập trình
Canadarm2 **Hệ thống phục vụ di động** là một đóng góp của Canada vào trạm không gian quốc tế, đóng một vai trò then chốt trong việc lắp ghép và bảo trì trạm. Hệ thống
**Hệ thống thông tin di động toàn cầu** (tiếng Anh: _Global System for Mobile Communications_; tiếng Pháp: _Groupe Spécial Mobile_; viết tắt: **GSM**) là một công nghệ dùng cho mạng thông tin di động. Dịch
**Hệ thống chăn nuôi** _(Livestock systems)_ là một tập hợp con của hệ thống canh tác; là một tổng thể những kỹ thuật, thực hành nhằm khai thác nguồn tài nguyên thực vật cho phép
**Hệ thống quản lý kho** (tiếng Anh: **warehouse management system - WMS**) là một phần mềm ứng dụng được thiết kế để hỗ trợ việc quản lý kho hàng của doanh nghiệp nhằm thực hiện
nhỏ|[[Mahatma Gandhi|Gandhi đến thăm Madras (nay là Chennai) vào năm 1933 trong một chuyến du lịch khắp Ấn Độ vì Dalit (ông sử dụng Harijan). Các bài phát biểu của ông trong các chuyến công
**Hệ thống sông Hồng** là một mạng lưới các con sông, tập hợp quanh con sông chính là sông Hồng, góp nước cho sông Hồng hoặc nhận nước của con sông này đổ ra Biển
**Hệ thống AGP III** là một hệ thống phân loại thực vật đối với thực vật có hoa hiện đại. Nó được Angiosperm Phylogeny Group (APG) công bố tháng 10 năm 2009 trong _Botanical Journal
Cùng với sự phát triển của kỹ thuật, chiếc xe ngày nay ngày một tiện nghi và hiện đại hơn. Những phát triển gần đây trên ô tô chủ yếu liên quan đến phần điện.
**Hệ thống trồng trọt** (Cropping system) là một hệ thống phụ trong hệ thống canh tác, bao gồm việc thực hiện mô hình canh tác cây trồng và sự liên quan giữa những cây trồng