.\" -*- coding: UTF-8 -*- .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH time 7 "17 Mayo 2025" "Páginas de Manual de Linux 6.15" .SH NOMBRE time \- visión general del tiempo y los temporizadores .SH DESCRIPCIÓN .SS "Tiempo real y tiempo de proceso" El \fITempo real\fP 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 (\fItiempo transcurrido\fP). .P \fITempo de proceso\fP se define como la cantidad de tiempo de CPU utilizado por un proceso. Esto a veces se divide en dos componentes: \fIusuario\fP y \fIsistema\fP. 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 \fBtime\fP(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 \fBtimes\fP(2), \fBgetrusage\fP(2) o \fBclock\fP(3). .SS "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 \fBrtc\fP(4) y \fBhwclock\fP(8). .SS "El reloj de software, HZ, y jiffies" .\" semtimedop(), mq_timedwait(), io_getevents(), poll() are the same .\" futexes and thus sem_timedwait() seem to use high-res timers. La exactitud de muchas llamadas del sistema que establecen los intervalos de tiempo, (por ejemplo, \fBselect\fP(2) o \fBsigtimakawit\fP(2)) y miden el tiempo de la CPU (por ej., \fBgetrusage\fP(2)), está limitada por la resolución del \fIreloj de software\fP gestionado por el núcleo que mide el tiempo en \fIjiffies\fP. El tamaño de un jiffy se determina por el valor de la constante del núcleo \fIHZ\fP. .P El valor de \fIHZ\fP 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). .P .\" glibc gets this info with a little help from the ELF loader; .\" see glibc elf/dl-support.c and kernel fs/binfmt_elf.c. .\" La llamada de sistema \fBtimes\fP(2) es un caso especial. Proporciona tiempos con una granularidad definida por la constante de núcleo \fIUSER_HZ\fP. Las aplicaciones de espacio de usuario pueden determinar el valor de esta constante mediante \fIsysconf(_SC_CLK_TCK)\fP. .SS "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 \fBclock_gettime\fP(2), algunos de los cuales son ajustables mediante \fBclock_settime\fP(2). Los valores de ciertos relojes son virtualizados por espacios de nombres de tiempo; véase \fBtime_namespaces\fP(7). .SS "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. .P Desde la versión de 2.6.21, Linux admite temporizadores de alta resolución (HRTs), configurables a través de \fBCONFIG_HIGH_RES_TIMERS\fP. 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 \fBclock_getres\fP(2) o mirando las entradas 'resolution' en \fI/proc/timer_list\fP. .P Los HRT no son compatibles en todas las arquitecturas de hardware. Existe soporte, ente otros, para x86, ARM y PowerPC. .SS "El Inicio (Epoch)" Los sistemas UNIX representan el tiempo en segundos desde el \fIInicio\fP (\fIEpoch\fP) 1970\-01\-01 00:00:00 +0000 (UTC). .P .\" Un programa puede determinar \fItiempo de calendario\fP a través del reloj \fBclock_gettime\fP(2) \fBCLOCK_REALTIME\fP, que muestra el tiempo (en segundos y nanosegundos) que han transcurrido desde el Inicio (Epoch); \fBtime\fP(2) proporciona información similar, pero redondeada al segundo más próximo. El tiempo del sistema se puede cambiar mediante \fBclock_settime\fP(2). .SS "Tiempo desglosado" Algunas funciones de la biblioteca usan una estructura de tipo \fItm\fP para representar \fItiempo desglosado\fP, que almacena el valor de tiempo separado en componentes distintos (año, mes, dia, hora, minuto, segundo...). Esta estructura se describe en \fBtm\fP(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 \fBctime\fP(3), \fBstrftime\fP(3) y \fB strptime\fP(3). .SS "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 \fBnanosleep\fP(2), \fBclock_nanosneep\fP(2) y \fBsleep \fP(3). .P 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 \fBalarm\fP(2), \fBgetitimer\fP(2), \fBtimerfd_create\fP(2) y \fBtimer_creat\fP.(2). .SS "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 \fBPR_SET_TIMERSLACK\fP en \fBprctl\fP(2). .SH "VÉASE TAMBIÉN" .ad l .nh \fBdate\fP(1), \fBtime\fP(1), \fBtimeout\fP(1), \fBadjtimex\fP(2), \fBalarm\fP(2), \fBclock_gettime\fP(2), \fBclock_nanosleep\fP(2), \fBgetitimer\fP(2), \fBgetrlimit\fP(2), \fBgetrusage\fP(2), \fBgettimeofday\fP(2), \fBnanosleep\fP(2), \fBstat\fP(2), \fBtime\fP(2), \fBtimer_create\fP(2), \fBtimerfd_create\fP(2), \fBtimes\fP(2), \fButime\fP(2), \fBadjtime\fP(3), \fBclock\fP(3), \fBclock_getcpuclockid\fP(3), \fBctime\fP(3), \fBntp_adjtime\fP(3), \fBntp_gettime\fP(3), \fBpthread_getcpuclockid\fP(3), \fBsleep\fP(3), \fBstrftime\fP(3), \fBstrptime\fP(3), \fBtimeradd\fP(3), \fBusleep\fP(3), \fBrtc\fP(4), \fBtime_namespaces\fP(7), \fBhwclock\fP(8) .PP .SH TRADUCCIÓN La traducción al español de esta página del manual fue creada por Marcos Fouces . .PP Esta traducción es documentación libre; lea la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. .PP Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a .MT debian-l10n-spanish@lists.debian.org .ME .