Đầu tiên tôi muốn đề cập rằng tôi là người mới trong lập trình hệ thống thời gian thực Đó là lý do tại sao tôi không chắc câu hỏi của mình có đúng không. Xin lỗi vì điều đó Nhưng tôi cần sự giúp đỡ
Câu hỏi ngắn gọn: Làm thế nào để thực hiện phần mềm thời gian thực cứng để đảm bảo nó đáp ứng thời hạn khó? Có cần thiết phải sử dụng một số tính năng QNX? Hoặc nó chỉ đủ để viết nó cho linux, port sang QNX và nó sẽ là thời gian thực theo mặc định?
Câu hỏi đầy đủ: Chúng tôi đã triển khai một số phần mềm đa xử lý đa nền tảng phức tạp với việc chuyển đổi liên quy trình cho Linux, Windows, Android và QNX. Ngôn ngữ lập trình là C ++, chúng tôi sử dụng Boost và planty của các lib khác. Phần mềm của chúng tôi hoạt động tốt và nhanh chóng nhưng nó vẫn là nguyên mẫu. Đối với mục đích sản xuất, chúng tôi cần thực hiện theo thời gian thực Một số tính năng của chúng tôi phải là thời gian thực và rất mạnh mẽ vì chúng rất quan trọng và an toàn cho những người sử dụng phần mềm của chúng tôi có thể phụ thuộc vào chúng. Chúng hoạt động khá nhanh - lên tới hàng trăm mili giây. Nhưng tôi không chắc rằng hệ thống của chúng tôi thực sự là thời gian thực vì thực tế này (tôi có đúng không?).
Vì vậy, có một câu hỏi chính: làm thế nào để sửa đổi phần mềm của chúng tôi thành thời gian thực? Tôi đã googled rất nhiều nhưng tôi vẫn không biết làm thế nào để làm điều đó.
Một số thông tin bổ sung về các nền tảng của chúng tôi: Linux và Windows chúng tôi hiện chỉ sử dụng cho mục đích thử nghiệm. Android - chúng tôi vẫn chưa quyết định liệu chúng tôi có cần nó hay không. QNX - là hệ điều hành mục tiêu của chúng tôi để sản xuất. Tôi đoán câu trả lời cho câu hỏi tiếp theo của tôi là "KHÔNG" :) Nhưng liệu có thể hoàn toàn cài đặt phần mềm thời gian thực đa nền tảng (cho HĐH thời gian thực (RTOS) cũng như cho các HĐH đa năng (GPOS)) không?
Có lẽ chúng ta cần nỗ lực để thực hiện tất cả các tính năng thời gian thực chỉ dành cho QNX? Nhưng tôi vẫn không hiểu làm thế nào để làm điều đó. Ai đó có thể làm sáng tỏ câu hỏi này?