Yanıtlar:
Sadece anketler saniyede yaklaşık bir kez yapılır. Son saniyenin ne kadarını kullandığınıza bakıyorsunuz.
Bir süre% 50'de oturan bir işlemci görüyorsanız, büyük olasılıkla bir cpu'nun% 100'ünü çift cpu sisteminde kullanmasıdır.
Teknik olarak haklısın. Herhangi bir zamanda, CPU ya kullanılmakta ya da kullanılmamaktadır. Ancak bunu bir grafikte göstermek çok yararlı olmaz, bu nedenle grafik, muhtemelen her saniye, belirli bir süre boyunca CPU kullanımının ortalamasını alıyor.
İşletim sistemi süreci belirli bir süre için zamanlar. Bu nedenle, işlem 10ms'den 1ms için planlanmışsa,% 10 CPU kullanacaktır.
Biraz mantıksızdır, çünkü (tek iş parçacıklı, tek CPU sisteminde), işlem ya çalışıyor ya da çalışmıyor. yani% 100 veya% 0 kullanıyor. Gördüğünüz yüzde, bir zaman penceresi üzerinden ölçülür ve işlem için çalıştırılacak zaman aralıklarını ayıran işletim sisteminin bir ölçüsüdür.
G / Ç'ye erişiyorsanız işleminizin buna katkıda bulunmayacağını unutmayın. Dolayısıyla, büyük bir hesaplama yapıyorsanız,% 100 kayıt edersiniz (başka hiçbir şeyin çalışmadığını varsayarsak). Daha sonra bir ağ paketi / disk erişimi vb. İçin beklerseniz, işleminizin hala çalışmasına rağmen CPU rakamınız düşecektir.
Çok düşük bir seviyede, temelde haklısınız. Herhangi bir anda, işlemci ya belirli bir işlem için bir talimat yürütüyor ya da değil.
Ancak işletim sisteminiz, işlemleriniz ve işlemci arasında oturuyor ve bu da zamanı paylaşmalarını sağlıyor. Gördüğünüz yüzde, işletim sisteminin bu işlemi verdiği son işlem süresinin yüzdesidir.
Ortalama süreye bağlıdır. Tüm iş parçacıkları aynı CPU zamanına sahip olmasına rağmen (önceliğe göre), iş parçacıkları sadece "teşekkürler ama boştayım" diyebilir ve sıradaki iş parçacığına geçebilir. Bu nedenle programlar her zaman aynı% zamanını kullanmaz ve çoğu program% 0 CPU tüketir ve gerçekten CPU'ya ihtiyaç duyan programlar kendi başına% 100 zaman alabilir.
Neden% 50 ile kaplanıyor? Muhtemelen iki CPU çekirdeğiniz var ve sadece bir tane kullanıyor.
Ya da, önerildiği gibi, hiper iş parçacığı kullanıyor, ancak bunun tam olarak nasıl davrandığını bilmiyorum.
Sistem kullanımı örneklenir ve ortalaması alınır, bu da yapılacak tek mantıklı şeydir.
Örneğin, bir işlemin / iş parçacığının 1 saniye boyunca çalışmak için ne kadar zaman harcandığının kaydı tutulur. CPU'da 1 saniye geçtiyse, bu% 100 CPU'dur (veya 2 CPU'nuz varsa% 50), 100 ms harcadıysa% 10 CPU kullanımıdır.