Provided by: manpages-pl-dev_20060617-3_all bug

NAZWA

       adjtimex - dopasowanie zegara w jdrze

SK/LADNIA

       #include <sys/timex.h>

       int adjtimex(struct timex *buf);

OPIS

       Linux  uywa  algorytmu  dopasowywania  Davida  L.  Millsa (zobacz w RFC
       1305).   Wywolanie  systemowe  adjtimex  czyta  i  opcjonalnie  ustawia
       parametry   sterujce  tego  algorytmu.   adjtimex  pobiera  wskanik  do
       struktury timex,  poprawia  parametry  w  jdrze  na  podstawie  wartoci
       przekazanych  w  polach  i zwraca t sam struktur z biecymi ustawieniami
       jdra.  Struktura jest zadeklarowana nastpujco:

              struct timex {
                  int modes;           /* przelcznik trybu */
                  long offset;         /* offset czasu (usec) */
                  long frequency;      /* offset czstotliwoci (skalowany ppm) */
                  long maxerror;       /* maksymalny bld (usec) */
                  long esterror;       /* obliczony bld (usec) */
                  int status;          /* komenda/status zegara */
                  long constant;       /* stala czasu pll */
                  long precision;      /* dokladno zegara (usec) (tylko do odczytu) */
                  long tolerance;      /* tolerancja czstotliwoci zegara (ppm)
                                          (tylko do odczytu) */
                  struct timeval time; /* aktualny czas (tylko do odczytu) */
                  long tick;           /* czas miedzy tykniciami zegara (usec) */
              };

       Pole modes okrela, ktore parametry (jeli  w  ogole)  ustawi.   Moe  ono
       zawiera bitoweor kombinacji zera lub wicej sporod nastpujcych bitow:

              #define ADJ_OFFSET            0x0001 /* offset czasu */
              #define ADJ_FREQUENCY         0x0002 /* offset czstotliwoci */
              #define ADJ_MAXERROR          0x0004 /* maksymalny bld czasu */
              #define ADJ_ESTERROR          0x0008 /* obliczany bld czasu */
              #define ADJ_STATUS            0x0010 /* status zegara */
              #define ADJ_TIMECONST         0x0020 /* stala czasu pll */
              #define ADJ_TICK              0x4000 /* warto tyknicia */
              #define ADJ_OFFSET_SINGLESHOT 0x8001 /* staromodne adjtime */

       Zwyczajni  uytkownicy  s ograniczeni do wartoci zero dla mode.  Jedynie
       superuytkownik moe ustawia jakiekolwiek parametry.

WARTO ZWRACANA

       Po pomylnym zakoczeniu, adjtimex zwraca stan zegara z

              #define TIME_OK   0 /* zegar zsynchronizowany */
              #define TIME_INS  1 /* dodaj sekund przestpn */
              #define TIME_DEL  2 /* skasuj sekund przestpn */
              #define TIME_OOP  3 /* sekunda przestpna trwa */
              #define TIME_WAIT 4 /* wystpila sekunda przestpna */
              #define TIME_BAD  5 /* zegar nie zsynchronizowany */

       W przypadku bldu, adjtimex zwraca -1 i ustawia errno.

B/LDY

       EFAULT buf nie wskazuje do zapisywalnej pamici.

       EPERM  buf.mode jest niezerowe, a uytkownik nie jest superuytkownikiem.

       EINVAL Probowano ustawi buf.offset na warto poza obszarem od -131071 do
              +131071,  lub  ustawi  buf.status  na warto inn ni te wymienione
              powyej, lub ustawi buf.tick na warto spoza zakresu 900000/HZ  do
              1100000/HZ,  gdzie  HZ  jest czstotliwoci przerwania systemowego
              timera.

ZGODNE Z

       adjtimex jest specyficzny dla  Linuksa  i  nie  powinien  by  uywany  w
       programach,  ktore maj by przenone. W SVr4 istnieje podobna, lecz mniej
       ogolna funkcja adjtime.

ZOBACZ TAKE

       settimeofday(2).

INFORMACJE O T/LUMACZENIU

       Powysze tlumaczenie pochodzi z nieistniejcego ju  Projektu  Tlumaczenia
       Manuali  i  moe nie by aktualne. W razie zauwaenia ronic midzy powyszym
       opisem a rzeczywistym zachowaniem  opisywanego  programu  lub  funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.