Provided by: manpages-pl-dev_0.7-2_all bug

NAZWA

       adjtimex - dopasowanie zegara w jądrze

SKŁADNIA

       #include <sys/timex.h>

       int adjtimex(struct timex *buf);

OPIS

        Uwaga! To tłumaczenie może być nieaktualne!

       Linux  używa  algorytmu  dopasowywania  Davida  L.  Millsa (zobacz w RFC 1305).  Wywołanie
       systemowe adjtimex  czyta  i  opcjonalnie  ustawia  parametry  sterujące  tego  algorytmu.
       adjtimex  pobiera  wskaźnik  do  struktury timex, poprawia parametry w jądrze na podstawie
       wartości przekazanych w polach i zwraca tę samą strukturę z bieżącymi ustawieniami  jądra.
       Struktura jest zadeklarowana następująco:

              struct timex {
                  int modes;           /* przełącznik trybu */
                  long offset;         /* offset czasu (usec) */
                  long frequency;      /* offset częstotliwości (skalowany ppm) */
                  long maxerror;       /* maksymalny błąd (usec) */
                  long esterror;       /* obliczony błąd (usec) */
                  int status;          /* komenda/status zegara */
                  long constant;       /* stała czasu pll */
                  long precision;      /* dokładność zegara (usec) (tylko do odczytu) */
                  long tolerance;      /* tolerancja częstotliwości zegara (ppm)
                                          (tylko do odczytu) */
                  struct timeval time; /* aktualny czas (tylko do odczytu) */
                  long tick;           /* czas miedzy tyknięciami zegara (usec) */
              };

       Pole  modes  określa, które parametry (jeśli w ogóle) ustawić.  Może ono zawierać bitoweor
       kombinacji zera lub więcej spośród następujących bitów:

              #define ADJ_OFFSET            0x0001 /* offset czasu */
              #define ADJ_FREQUENCY         0x0002 /* offset częstotliwości */
              #define ADJ_MAXERROR          0x0004 /* maksymalny błąd czasu */
              #define ADJ_ESTERROR          0x0008 /* obliczany błąd czasu */
              #define ADJ_STATUS            0x0010 /* status zegara */
              #define ADJ_TIMECONST         0x0020 /* stała czasu pll */
              #define ADJ_TICK              0x4000 /* wartość tyknięcia */
              #define ADJ_OFFSET_SINGLESHOT 0x8001 /* staromodne adjtime */

       Zwyczajni użytkownicy są ograniczeni do wartości zero dla mode.   Jedynie  superużytkownik
       może ustawiać jakiekolwiek parametry.

WARTOŚĆ ZWRACANA

       Po pomyślnym zakończeniu, adjtimex zwraca stan zegara z

              #define TIME_OK   0 /* zegar zsynchronizowany */
              #define TIME_INS  1 /* dodaj sekundę przestępną */
              #define TIME_DEL  2 /* skasuj sekundę przestępną */
              #define TIME_OOP  3 /* sekunda przestępna trwa */
              #define TIME_WAIT 4 /* wystąpiła sekunda przestępna */
              #define TIME_BAD  5 /* zegar nie zsynchronizowany */

       W przypadku błędu, adjtimex zwraca -1 i ustawia errno.

BŁĘDY

       EFAULT buf nie wskazuje do zapisywalnej pamięci.

       EPERM  buf.mode jest niezerowe, a użytkownik nie jest superużytkownikiem.

       EINVAL Próbowano  ustawić  buf.offset  na wartość poza obszarem od -131071 do +131071, lub
              ustawić buf.status na wartość inną niż te wymienione powyżej, lub ustawić  buf.tick
              na  wartość  spoza  zakresu  900000/HZ do 1100000/HZ, gdzie HZ jest częstotliwością
              przerwania systemowego timera.

ZGODNE Z

       adjtimex jest specyficzny dla Linuksa i nie powinien być używany w programach, które  mają
       być przenośne. W SVr4 istnieje podobna, lecz mniej ogólna funkcja adjtime.

ZOBACZ TAKŻE

       settimeofday(2).

INFORMACJE O TŁUMACZENIU

       Powyższe  tłumaczenie  pochodzi  z nieistniejącego już Projektu Tłumaczenia Manuali i może
       nie być aktualne. W  razie  zauważenia  różnic  między  powyższym  opisem  a  rzeczywistym
       zachowaniem  opisywanego  programu  lub  funkcji,  prosimy  o  zapoznanie się z oryginalną
       (angielską) wersją strony podręcznika za pomocą polecenia:

              man --locale=C 2 adjtimex

       Prosimy o pomoc w aktualizacji stron man - więcej informacji  można  znaleźć  pod  adresem
       http://sourceforge.net/projects/manpages-pl/.