B. Tiempo de proceso
A la hora de contar el tiempo real que un proceso consume en la
ejecución de un conjunto de sentencias, se
considera únicamente el tiempo de ejecución de ese proceso y
el de sus hijos (y los hijos de sus hijos, etc.), para los que el
proceso padre está esperando su terminación mediante una
llamada a wait.
Este tiempo se mide en pulsos de reloj: para obtener la medida del
tiempo en segundos, se debe conocer el número de pulsos por
segundo que se encuentran en CLK_TCK. A partir de este
valor, los segundos que el proceso tarda en ejecutar un
conjunto de líneas de código se puede calcular como:
tiempo = número de pulsos / CLK_TCK
El tiempo contabilizado se divide en cuatro tipos distintos:
- Tiempo empleado por la CPU en ejecutar el
proceso en modo usuario.
- Tiempo empleado por la CPU en ejecutar el
proceso en modo kernel.
- Tiempo empleado por la CPU en ejecutar los
procesos hijo (y los hijos de los hijos, etc.) en modo
usuario.
- Tiempo empleado por la CPU en ejecutar los
procesos hijo (y los hijos de los hijos, etc.) en modo
kernel.
Existe una estructura en C que refleja estos cuatro tipos de
medidas:

donde clock_t se define para contar los pulsos de
reloj.
La función que permite rellenar esta estructura es:

donde buffer es la estructura que rellena la función
times. Si todo va bien, devuelve el número de pulsos
transcurridos desde un instante anterior elegido de modo
arbitrario; si, por el contrario, algo va mal, devuelve
-1 y el código de error correspondiente en errno.
El punto arbitrario al que hace referencia la función times
puede ser el momento de arranque del sistema o cualquier otro; lo
que importa es que ese momento no varía de una llamada a otra,
por lo que se puede calcular el tiempo transcurrido como la
diferencia entre los dos tiempos devueltos por dos llamadas
sucesivas a times.
Hay 1 opinión. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
Redacción eficaz de documentos de empresa ¿Sus memorandos son incomprensibles para sus compañeros de trabajo? ¿Su director no entiende sus informes? No se preocupe: con este sencillo curso gratis obtendrá las cla... [22/04/02] |
|
51.031 | ||
|
Introducción al Lenguaje C El lenguaje C apareció en 1972, en el diseño del sistema operativo UNIX. Este lenguaje, que en la actualidad está bajo el estandar ANSI C, se ha utilizado para diseñar ho... [10/05/04] |
|
25.607 | ||
|
PHP y MySQL. Aplicaciones Web: HTML II (tercera parte) Programación de aplicaciones Web con PHP y MySQL. Ahora continuaremos con el estudio de las páginas Web HTML. Estudiaremos las listas en HTML. ... [02/12/08] |
|
711 | ||
Publicar en
del.icio.us
digg
meneame