Việc sử dụng cho mức độ ưu tiên của thời gian thực trực tuyến trên đường cao tốc cho một quy trình là gì?


12

Theo kinh nghiệm của tôi, đặt bất kỳ quy trình nào thành thời gian thực sẽ khiến máy tính của bạn chạy chậm lại theo tốc độ của ốc sên. Việc sử dụng cài đặt này là gì, nếu nó làm cho máy tính của bạn không thể sử dụng được?


2
Nếu bạn có bộ xử lý đa lõi hoặc hệ thống đa bộ xử lý, bạn có thể đặt mối quan hệ chỉ với một lõi. Bằng cách đó, phần còn lại của hệ thống sẽ vẫn đáp ứng và bạn có thể tận hưởng phần còn lại của lợi ích của quy trình thời gian thực. Điều này tất nhiên chỉ hoạt động tốt cho các quy trình chỉ cần một lõi để hoạt động.
AndrejaKo

Câu trả lời:


7

Chính xác như những gì bạn mô tả, với chi phí làm chậm phần còn lại của máy tính xuống để thu thập dữ liệu, nó sẽ chạy quy trình trong thời gian thực, ưu tiên cao hơn mọi thứ khác. Điều này chỉ cần thiết cho các ứng dụng quan trọng về thời gian, hầu hết mọi người không nhìn thấy những ứng dụng này trong cuộc sống hàng ngày của họ ...


Một số chương trình rất phổ biến, chẳng hạn như máy chủ âm thanh (PulseAudio và JACK là hai ví dụ về Linux), sử dụng các luồng ưu tiên theo thời gian thực.
dùng1686

@grawity: JACK không phải là một máy chủ, mà chỉ là một bộ công cụ phát triển. Cả hai đều đa nền tảng. Điểm hay là mặc dù công cụ âm thanh yêu cầu mức độ ưu tiên theo thời gian thực, nhưng tôi đã nói từ quan điểm của Windows 7 trong đó các quy trình bạn chỉ định không được ưu tiên theo thời gian thực. Windows có một thứ gọi là Bộ lập lịch lớp đa phương tiện cho các loại quy trình này ...
Tamara Wijsman

Vậy jackdthì, nếu không phải là một máy chủ âm thanh là gì? (Từ những gì tôi hiểu cho đến nay, cả PA và JACK làm việc cùng một cách trong đó họ cung cấp cả một máy chủ âm thanh và thư viện / bộ để truy cập nó ...)
user1686

Điều đó không làm cho bộ công cụ đột nhiên trở thành một máy chủ. Chúng ta đang nói về các quy trình ở đây, không phải chủ đề ...
Tamara Wijsman

1
Các ví dụ khác về ứng dụng thời gian thực là các ứng dụng y tế và robot được điều khiển trực tiếp. Điều mà 10 cảm nhận là sự khác biệt giữa vận hành chính xác và thất bại (trong đó thất bại có thể liên quan đến việc một số robot lái xe ra khỏi một vách đá hoặc một bệnh nhân bị phơi nhiễm quá nhiều phóng xạ).
ligos

2

Điều này có vẻ không cần thiết nhưng khi một quy trình được bắt đầu, các tham số có thể được thông qua để thiết lập quy trình chạy ở các mức độ ưu tiên khác nhau. Trình quản lý tác vụ hiển thị đây là một cài đặt tùy chọn vì đây là tùy chọn có thể được đặt cho quy trình bởi phần mềm đã khởi tạo nó. Hầu hết các phần mềm chạy ở mức "Bình thường", nhưng đôi khi bạn có thể thấy một số phần mềm đang chạy ở mức thấp hơn theo mặc định. Tôi chưa bao giờ thấy phần mềm bắt đầu ở trạng thái bình thường.

Một điều đáng nói nữa là có một trường hợp khi một tiến trình có thể chạy ở cài đặt ưu tiên cao nhất và dường như nó không ảnh hưởng lớn đến hiệu suất hệ thống của bạn. Chẳng hạn, nếu một tiến trình được bắt đầu và nó được chỉ định hoạt động trên 1 trong số 8 lõi CPU, đặt mức ưu tiên của tiến trình thành "thời gian thực" có nghĩa là nó sẽ tiêu thụ một bộ xử lý, còn lại 7 được sử dụng bởi Hệ điều hành và bất kỳ phần mềm nào khác. Trong trường hợp này, việc thực thi theo thời gian thực có thể hầu như không ảnh hưởng đến hệ thống nhưng lại mang lại hiệu quả hợp lý cho quy trình ưu tiên cao.

Tôi gần như không bao giờ khuyên bạn nên thiết lập thủ công để chạy trong "thời gian thực" từ bên trong Trình quản lý hệ thống. Điều này là do bạn đang thay đổi cài đặt thực thi cho một quy trình có thể đã được thiết kế để hoạt động theo một trạng thái thực thi cụ thể. Trong một số trường hợp, việc thay đổi mức ưu tiên thực thi có thể làm sập ứng dụng và nếu đó là thao tác ghi dữ liệu, có thể làm hỏng dữ liệu của bạn!

Tuy nhiên, có một số trường hợp sử dụng cài đặt ưu tiên thực thi tối đa cho một quy trình có thể là điều nên làm, nhưng ngay cả khi đó, các cài đặt ưu tiên đó phải được cài đặt bởi ứng dụng điều khiển chứ không phải bởi người dùng cuối thông qua hộp thoại quản lý hệ thống.

Cá nhân tôi sẽ khuyên bạn KHÔNG BAO GIỜ thay đổi mức độ ưu tiên của nhiệm vụ trừ khi bạn thực sự không quan tâm nếu nó gặp sự cố và nhiệm vụ này HOÀN TOÀN không quan trọng. Nếu tài liệu phần mềm tuyên bố rõ ràng rằng bạn có thể nâng cao quy trình để chạy với tốc độ nhanh hơn để đẩy nhanh công việc xử lý rất lớn, thì điều đó cũng có thể chấp nhận được, tuy nhiên, tôi sẽ hơi nghi ngờ nếu một cơ chế từ trong ứng dụng không được cung cấp.

Là một giai thoại cá nhân, chỉ có một quá trình mà tôi thỉnh thoảng thay đổi bằng tay - các ứng dụng nén phần mềm. Tôi đã không phải giải nén một tập tin lớn trong một thời gian dài, nhưng tôi đã thấy rằng nếu tôi đang vội vàng ( ahem thiếu kiên nhẫn) tôi có thể vượt qua mức ưu tiên của quy trình và đạt được hiệu suất vừa phải. Vì các ứng dụng này bắt đầu một tác vụ công việc và sau đó đóng khi chúng kết thúc, tôi không phải lo lắng về việc bỏ cài đặt bộ xử lý của mình vì khi ứng dụng kết thúc trích xuất dữ liệu, nó sẽ tự dừng. Đây là lần duy nhất tôi thấy nó hữu ích để kiểm soát tốc độ bộ xử lý thông qua quản lý hệ thống.


1
Là một lập trình viên, tôi không thể nghĩ đến tình huống cung cấp cho chương trình nhiều tài nguyên hơn sẽ làm hỏng nó
TheLQ

Là một lập trình viên, vâng, nhưng việc thiết lập một quy trình để chạy ở một mức cụ thể có thể gây ra vấn đề, đặc biệt là nếu phần mềm được viết (thậm chí có thể kém) để chạy đồng thời với các quy trình khác. Đề xuất của tôi đến từ cả kinh nghiệm và với sự hiểu biết rằng không phải tất cả người dùng đều là nhà phát triển. Đặt mức độ ưu tiên của các quy trình đang chạy mà bạn chưa phát triển chắc chắn có thể gợi ra hành vi bất ngờ. Tôi không muốn làm bất cứ ai sợ hãi, tuy nhiên, tôi cũng không muốn khuyến khích những người dùng khác gây rối với cài đặt quy trình nếu có khả năng những thay đổi của họ có thể gây hại.
RLH

0

Tôi sử dụng ưu tiên Thời gian thực để tăng tốc trò chơi trên máy tính xách tay không chơi game của mình. Tôi không quan tâm đến quá trình nền khi tôi tham gia trò chơi và tôi có được trải nghiệm thú vị hơn nhiều khi phân bổ sức mạnh xử lý của mình theo cách này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.