Bir yazılımı eniyilemeye ya da verimliliğini ölçmeye çalışıyorsanız, ne kadar işlemci süresi kullanıldığını bilmek iyidir. Bunun için, mutlak zaman ve süreler kullanışsızdır, çünkü bir süreç işlemciyi kullanırken arada bazı G/Ç işlemlerini veya başka süreçleri bekleyebilir. Buna karşın, bu bölümdeki işlevleri kullanarak işlemci kullanımı ile ilgili bilgi alabilirsiniz.
İşlemci zamanı (bkz.
Zaman Kavramları),
saat tikleri'nin sayısı olarak
clock_t türünde bir veridir. İşlemci bazı keyfî ancak belli başlı olaylarda kullanıldığından bir sürecin işlemciyi etkin olarak kullandığı sürelerin toplamı hesaplanabilir. GNU sistemlerinde sürecin oluşturulması böyle bir olaydır. Keyfîlik yanında genelde, sürecin belli bir parçası için olay daima aynı olaydır, bu durumda işlemci zamanını hesaplamanın başlangıcında ve bitişinde saptayarak belli bir hesaplama için ne kadar işlemci süresi kullanıldığı ölçülebilir.
GNU sisteminde,
clock_t ile
long int eşdeğerdir ve
CLOCKS_PER_SEC bir tamsayı değerdir. Fakat diğer sistemlerde,
clock_t ve
CLOCKS_PER_SEC birer tamsayı ya da birer gerçek sayı türü olabilir. Önceki bölümdeki örnekte olduğu gibi, işlemci zamanı değerlerinin
double'a yükseltgenmesi, aritmetik ve gösterim işlemlerinin düzgün olarak yapılmasını sağlarken sistemlerin olası farklı türlerdeki gösterimlerinden etkilenmemesini de sağlar.
Saat tikleri sayısının, sayı türlerinin genişliklerine bağlı olarak belli bir sınırı olduğunu unutmayın. CLOCKS_PER_SEC'in bir milyon olarak atandığı 32 bitlik bir sistemde bu işlev yaklaşık 72 dakikada bir aynı değeri döndürecektir.
Bir sürecin kullandığı işlemci süresini incelemek ve denetlemek için de işlevler vardır, bunlar hakkında
Özkaynak Kullanımı ve Sınırlaması bölümünde bilgi verilmiştir.