[英]How expensive are kernel context switches compared to userspace context switches?
因為CPU不需要切換到內核模式並返回用戶模式。
主要是切換到內核模式。 IIRC,Linux中的內核模式和用戶模式的頁表相同,所以至少沒有TLB失效懲罰。
需要測量,並且可能因機器而異。 我想現在一台典型的桌面/服務器機器每秒可以進行幾十萬個上下文切換,可能只有幾百萬。
取決於內核調度程序如何處理這個問題。 AFAIK,在Linux中它非常高效,即使有大量的線程數,但更多的線程意味着更多的內存使用意味着更多的緩存壓力,因此可能會降低性能。 我還期望在處理數千個套接字時涉及一些開銷。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.