Hệ điều hành thời gian thực (RTOS) là gì và nó hoạt động như thế nào?

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Khi chúng ta nghe đến từ hệ điều hành, đầu tiên chúng ta nghĩ đến hệ điều hành được sử dụng trong máy tính xách tay và máy tính. Nói chung, chúng tôi sử dụng các loại hệ điều hành khác nhau như windows XP, Linux, Ubuntu, Windows 7,8.8.1 và 10. Trong điện thoại thông minh, các hệ điều hành như KitKat, Jellybean, marshmallow và Nougat. Trong một thiết bị điện tử kỹ thuật số, có một số loại hệ điều hành được phát triển bởi chương trình vi điều khiển . Có các loại hệ điều hành khác nhau để phát triển cho bộ vi điều khiển, nhưng ở đây chúng ta đã thảo luận về hệ điều hành thời gian thực.

Hệ điều hành thời gian thực là gì?

RTOS là một hệ điều hành, nó là bộ não của hệ thống thời gian thực và phản ứng của nó với các đầu vào ngay lập tức. Trong RTOS, nhiệm vụ sẽ được hoàn thành theo thời gian quy định và các phản ứng của nó theo cách có thể dự đoán được trước các sự kiện không thể đoán trước. Cấu trúc của RTOS được hiển thị bên dưới.




Cấu trúc của RTOS

Cấu trúc của RTOS

Các loại RTOS

Có ba loại RTOS khác nhau sau



  • Hệ điều hành thời gian thực mềm
  • Hệ điều hành thời gian thực cứng
  • Hệ điều hành thời gian thực vững chắc
Các loại RTOS

Các loại RTOS

Hệ điều hành thời gian thực mềm

Hệ điều hành thời gian thực mềm có thời hạn nhất định, có thể bị bỏ lỡ và chúng sẽ thực hiện hành động tại thời điểm t = 0 +. Hệ điều hành thời gian thực mềm là một loại hệ điều hành và nó không bị ràng buộc bởi các quy tắc cực đoan. Thời gian quan trọng của hệ điều hành này bị trì hoãn ở một mức độ nào đó. Các ví dụ của hệ điều hành này là máy ảnh kỹ thuật số, điện thoại di động và dữ liệu trực tuyến, v.v.

Hệ điều hành thời gian thực mềm

Hệ điều hành thời gian thực mềm

Hệ điều hành thời gian thực cứng

Đây cũng là một loại hệ điều hành và nó được dự đoán trước thời hạn. Các thời hạn dự đoán sẽ phản ứng tại thời điểm t = 0. Một số ví dụ về hệ điều hành này là kiểm soát túi khí trong ô tô, chống bó cứng phanh và hệ thống kiểm soát động cơ, v.v.

Hệ điều hành thời gian thực vững chắc

Trong thời gian thực, một hệ điều hành có những ràng buộc về thời gian nhất định, chúng không chặt chẽ và nó có thể gây ra những tác động không mong muốn. Ví dụ về hệ điều hành này là kiểm tra trực quan trong tự động hóa công nghiệp.


Làm việc với hệ điều hành thời gian thực

Sau đây là các loại chức năng cơ bản khác nhau của RTOS

  • Bộ lập lịch dựa trên mức độ ưu tiên
  • Quy trình ngắt đồng hồ hệ thống
  • Hành vi xác định
  • Đồng bộ hóa và nhắn tin
  • Dịch vụ RTOS

Bộ lập lịch dựa trên mức độ ưu tiên

Trong bộ lập lịch dựa trên mức độ ưu tiên, hầu hết RTOS nằm trong khoảng từ 32 đến 256 mức ưu tiên có thể cho các tác vụ hoặc quy trình riêng lẻ. Bộ lập lịch này sẽ chạy quá trình với mức ưu tiên cao nhất. Nếu tác vụ đang chạy trên CPU, thì tác vụ có mức ưu tiên cao nhất tiếp theo sẽ chạy và liên tục các quá trình.

Trong hệ thống, quy trình ưu tiên cao nhất sẽ có CPU

  • Nó chạy để đóng
  • Nếu tác vụ ban đầu được làm trước bởi tác vụ mới thì một quy trình ưu tiên cao sẽ sẵn sàng.

Có ba trạng thái của các tác vụ hoặc quy trình giống như sẵn sàng chạy và trạng thái còn lại bị chặn và mô tả về từng trạng thái được đưa ra bên dưới.

Sẵn sàng để chạy

Sẵn sàng chạy được cho là khi tiến trình có tất cả tài nguyên để chạy, nhưng nó không nên ở trạng thái đang chạy. Sau đó, nó được gọi là sẵn sàng chạy.

Đang chạy

Nếu tác vụ đang thực thi thì nó được cho là có trạng thái đang chạy.

Bị chặn

Ở trạng thái này, nếu nó không có đủ tài nguyên để chạy, thì nó sẽ được chuyển đến trạng thái bị chặn.

Ba kỹ thuật được sửa đổi để lập lịch trình cho nhiệm vụ, có những phần sau với mô tả của chúng.

Lập lịch hợp tác

Trong kiểu lập lịch này, tác vụ sẽ chạy cho đến khi hoàn thành việc thực thi

Lên lịch Round Robin

Trong lập lịch này, mỗi tiến trình được ấn định một khoảng thời gian cố định và tiến trình cần phải hoàn thành việc thực thi, nếu không thì tác vụ sẽ mất luồng và tạo dữ liệu.

Lập lịch trước

Lập lịch trước liên quan đến việc phân bổ thời gian phụ thuộc vào thời gian ưu tiên. Nói chung, 256 mức ưu tiên được sử dụng và mỗi nhiệm vụ có một mức ưu tiên duy nhất. Có một số hệ thống hỗ trợ mức độ ưu tiên cao hơn và nhiều tác vụ có một số mức độ ưu tiên.

Quy trình ngắt đồng hồ hệ thống

Để thực hiện hoạt động nhạy cảm với thời gian, RTOS sẽ cung cấp một số loại đồng hồ hệ thống. Nếu có đồng hồ hệ thống 1ms, thì bạn phải hoàn thành nhiệm vụ trong 50ms. Thông thường, có một API theo sau bạn để nói 'Trong 50ms, hãy đánh thức tôi'. Do đó, nhiệm vụ sẽ ở tư thế ngủ cho đến khi RTOS thức dậy. Chúng tôi có hai lưu ý rằng việc đánh thức sẽ không đảm bảo chạy chính xác tại thời điểm đó, nó phụ thuộc vào mức độ ưu tiên và nếu mức độ ưu tiên cao hơn đang chạy hiện tại thì nó sẽ bị trì hoãn.

Hành vi xác định

RTOS di chuyển đến độ dài lớn để bảo vệ rằng dù bạn đã thực hiện 100 tác vụ hay 10 tác vụ, nó không tạo ra bất kỳ sự khác biệt nào về khoảng cách chuyển đổi ngữ cảnh và nó xác định tác vụ có mức ưu tiên cao nhất tiếp theo. Trong khu vực chính xác định RTOS là xử lý ngắt, khi dòng ngắt được báo hiệu chúng RTOS ngay lập tức thực hiện hành động của quy trình dịch vụ ngắt chính xác và ngắt được xử lý mà không có bất kỳ độ trễ nào.

Chúng tôi phải nói rằng các nhà phát triển của dự án sẽ viết ISR của phần cứng cụ thể. Trước giờ RTOS cung cấp ISR cho các cổng nối tiếp, đồng hồ hệ thống và nó có thể là phần cứng mạng, nhưng nếu có bất kỳ thứ gì chuyên biệt như tín hiệu máy điều hòa nhịp tim, thiết bị truyền động, v.v., thì không phải là một phần của RTOS.

Đây là tất cả về những khái quát chung và có một triển khai đa dạng trong RTOS. Một số RTOS được vận hành theo cách khác và mô tả ở trên có khả năng cho một phần lớn RTOS hiện có.

Đồng bộ hóa và nhắn tin

Đồng bộ hóa và nhắn tin cung cấp giao tiếp giữa nhiệm vụ của hệ thống này với hệ thống khác và các dịch vụ nhắn tin đang theo sau. Để đồng bộ hóa các hoạt động nội bộ, cờ sự kiện được sử dụng và để gửi tin nhắn văn bản, chúng ta có thể sử dụng trong hộp thư, đường dẫn và hàng đợi tin nhắn. Trong các vùng dữ liệu chung, các semaphores được sử dụng.

  • Semaphores
  • Cờ sự kiện
  • Hộp thư
  • Đường ống
  • Hàng đợi tin nhắn

Dịch vụ RTOS

Phần quan trọng nhất của hệ điều hành là Kernel. Để giám sát phần cứng, nhiệm vụ phải được giảm bớt và hạt nhân trách nhiệm quản lý & phân bổ tài nguyên. Nếu tác vụ không thể thu hút sự chú ý của CPU mọi lúc, thì có một số dịch vụ khác do nhân cung cấp. Sau đây là

  • Dịch vụ thời gian
  • Dịch vụ xử lý gián đoạn
  • Dịch vụ quản lý thiết bị
  • Dịch vụ quản lý bộ nhớ
  • Dịch vụ đầu vào - đầu ra

Ưu điểm của RTOS

  • Khi tất cả các tài nguyên và thiết bị không hoạt động, RTOS sẽ cho mức tiêu thụ tối đa của hệ thống và nhiều đầu ra hơn.
  • Khi một tác vụ đang thực hiện, sẽ không có cơ hội gặp lỗi vì RTOS không có lỗi.
  • Cấp phát bộ nhớ là loại tốt nhất để quản lý trong loại hệ thống này.
  • Trong loại hệ thống này, thời gian chuyển dịch là rất ít.
  • Do kích thước nhỏ của chương trình, RTOS được sử dụng trong hệ thống nhúng như vận tải và những thứ khác.

Trong bài viết này, chúng ta đã thảo luận về cách hệ điều hành thời gian thực hoạt động. Tôi hy vọng bằng cách đọc này bạn đã có được một số thông tin cơ bản. Nếu bạn có bất kỳ câu hỏi nào liên quan đến bài viết này hoặc thực hiện các dự án điện , xin vui lòng bình luận trong phần dưới đây. Đây là câu hỏi dành cho bạn, các chức năng của RTOS là gì?