Provided by: manpages-es_4.27.0-1_all bug

NOMBRE

       time - visión general del tiempo y los temporizadores

DESCRIPCIÓN

   Tiempo real y tiempo de proceso
       El  Tempo  real se define como el tiempo medido desde algún punto fijo, ya sea desde un punto estándar en
       el pasado (véase la descripción del Inicio (Epoch) y el tiempo del calendario a  continuación),  o  desde
       algún momento (por ejemplo, el comienzo) en la vida de un proceso (tiempo transcurrido).

       Tempo  de  proceso  se define como la cantidad de tiempo de CPU utilizado por un proceso. Esto a veces se
       divide en dos componentes: usuario y sistema. El tiempo de CPU del usuario es  el  tiempo  que  se  gasta
       ejecutando  código  en  modo  de  usuario.  El  tiempo de CPU del sistema es el tiempo que el núcleo está
       ejecutando en modo sistema en nombre del proceso , por ejemplo ejecutando  llamadas  del  sistema.  Puede
       emplearse la orden time(1) para determinar la cantidad de tiempo de CPU consumido durante la ejecución de
       un  programa. Un programa puede determinar la cantidad de tiempo de CPU que ha consumido usando times(2),
       getrusage(2) o clock(3).

   El reloj de hardware
       La mayoría de los equipos tienen un reloj de hardware (alimentado por batería) que el núcleo lee  durante
       el inicio para iniciar el reloj del software. Para más información, consulte rtc(4) y hwclock(8).

   El reloj de software, HZ, y jiffies
       La  exactitud  de  muchas  llamadas  del  sistema  que establecen los intervalos de tiempo, (por ejemplo,
       select(2) o sigtimakawit(2)) y miden el tiempo de la CPU (por ej., getrusage(2)), está  limitada  por  la
       resolución  del reloj de software gestionado por el núcleo que mide el tiempo en jiffies. El tamaño de un
       jiffy se determina por el valor de la constante del núcleo HZ.

       El valor de HZ varía entre las versiones del kernel y las arquitecturas  de  hardware.  Por  ejemplo,  en
       i386:  en  los  núcleos  a  partir de Linux 2.4.x, HZ tenía un valor de 100, dando un valor jiffy de 0.01
       segundos; a partir de Linux 2.6.0, el HZ se elevó a 1000, dando un jiffie de 0.001 segundos.  Desde Linux
       2.6.13, el valor HZ es un parámetro configurable del núcleo que puede valer 100, 250 (el  predeterminado)
       o  1000,  dando  un  valor  de  jiffies  de, respectivamente, 0.01, 0.004, y 0.001 segundos.  Desde Linux
       2.6.20, también puede configurarse a 300, un número que se divide uniformemente para las tasas de  cuadro
       de vídeo comunes (PAL, 25 Hz; NTSC, 30 Hz).

       La llamada de sistema times(2) es un caso especial. Proporciona tiempos con una granularidad definida por
       la  constante  de  núcleo  USER_HZ.  Las aplicaciones de espacio de usuario pueden determinar el valor de
       esta constante mediante sysconf(_SC_CLK_TCK).

   Relojes de sistema y de proceso; espacios de nombres de tiempo
       El núcleo incluye soporte para una gama de relojes que  miden  varios  tipos  de  tiempo  transcurrido  y
       virtual  (es decir, CPU consumido). Estos relojes se describen en clock_gettime(2), algunos de los cuales
       son ajustables mediante clock_settime(2). Los valores de ciertos relojes son virtualizados  por  espacios
       de nombres de tiempo; véase time_namespaces(7).

   Temporizadores de alta resolución
       Antes  de  Linux 2.6.21, la precisión de las llamadas de temporizador y de las pausas de las llamadas del
       sistema (véase a continuación) también estaba limitada por el tamaño del jiffy.

       Desde la versión de 2.6.21, Linux admite temporizadores de alta resolución (HRTs), configurables a través
       de CONFIG_HIGH_RES_TIMERS. En un sistema que soporta HRTs, la precisión de las pausas de las llamadas del
       sistema y temporizador ya no están restringida por el jiffy, sino que  puede  ser  tan  precisa  como  el
       hardware  permita  que,  en  equipos  modernos,  es  habitual  ver  precisiones  de  microsegundos. Puede
       comprobarse que los temporizadores de alta resolución son compatibles viendo la resolución  devuelta  por
       una llamada a clock_getres(2) o mirando las entradas 'resolution' en /proc/timer_list.

       Los  HRT no son compatibles en todas las arquitecturas de hardware. Existe soporte, ente otros, para x86,
       ARM y PowerPC.

   El Inicio (Epoch)
       Los sistemas UNIX representan el tiempo en segundos desde el Inicio  (Epoch)  1970-01-01  00:00:00  +0000
       (UTC).

       Un programa puede determinar tiempo de calendario a través del reloj clock_gettime(2) CLOCK_REALTIME, que
       muestra  el  tiempo  (en  segundos  y nanosegundos) que han transcurrido desde el Inicio (Epoch); time(2)
       proporciona información similar, pero redondeada al segundo más próximo.  El tiempo del sistema se  puede
       cambiar mediante clock_settime(2).

   Tiempo desglosado
       Algunas funciones de la biblioteca usan una estructura de tipo tm para representar tiempo desglosado, que
       almacena  el valor de tiempo separado en componentes distintos (año, mes, dia, hora, minuto, segundo...).
       Esta estructura se describe en tm(3type), donde también se describen funciones que convierten  el  tiempo
       de calendario al un tiempo desglosado y viceversa. Las funciones para la conversión entre el desglosado y
       las  representaciones  impresa  de  la  cadena  del  tiempo  se  describen  en  ctime(3),  strftime(3)  y
       strptime(3).

   Pausas y ajuste de los temporizadores
       Varias llamadas y funciones del sistema permiten que un programa se pause (suspenda su ejecución) durante
       un período de tiempo definido. Consulte nanosleep(2), clock_nanosneep(2) y sleep (3).

       Varias llamadas del sistema permiten que un proceso  establezca  un  temporizador  que  expira  en  algún
       momento  del futuro, también a intervalos repetidos. Consulte alarm(2), getitimer(2), timerfd_create(2) y
       timer_creat.(2).

   Hibernación del temporizador
       A partir de Linux 2.6.28, es posible controlar el  'tiempo  de  hibernación  del  temporizador'  para  un
       determinado  hilo.  El  tiempo  de  hibernación  es  el  tiempo  por  el  que el núcleo puede retrasar el
       'despertado' de ciertas llamadas del sistema que bloquean con un tiempo de  espera.  Estas  hibernaciones
       permiten al núcleo unificar eventos de 'despertado', reduciendo así el número de activaciones del sistema
       y ahorrando energía. Consulte la descripción de PR_SET_TIMERSLACK en prctl(2).

VÉASE TAMBIÉN

       date(1), time(1), timeout(1), adjtimex(2), alarm(2), clock_gettime(2), clock_nanosleep(2), getitimer(2),
       getrlimit(2), getrusage(2), gettimeofday(2), nanosleep(2), stat(2), time(2), timer_create(2),
       timerfd_create(2), times(2), utime(2), adjtime(3), clock(3), clock_getcpuclockid(3), ctime(3),
       ntp_adjtime(3), ntp_gettime(3), pthread_getcpuclockid(3), sleep(3), strftime(3), strptime(3),
       timeradd(3), usleep(3), rtc(4), time_namespaces(7), hwclock(8)

TRADUCCIÓN

       La traducción al español de esta página del manual fue creada por Marcos Fouces <marcos@debian.org>

       Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con
       respecto a las condiciones de copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a
       debian-l10n-spanish@lists.debian.org.

Páginas de Manual de Linux 6.9.1                   2 Mayo 2024                                           time(7)