Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

ACCT(4)

НАЗВАНИЕ
acct - формат файла с информацией о процессах

СИНТАКСИС


#include <sys/acct.h>

ОПИСАНИЕ
Файлы, которые образуются системным вызовом acct(2), содержат записи следующей структуры, определенной во включаемом файле <sys/acct.h>:


typedef ushort comp_t; /* "Вещественное число": 13 бит

                          мантисса, 3 бита порядок */



struct acct {

  char   ac_flag;    /* Флаг учетной информации */

  char   ac_stat;    /* Код завершения */

  ushort ac_uid;

  ushort ac_gid;

  dev_t  ac_tty;

  time_t ac_btime;   /* Время начала */

  comp_t ac_utime;   /* Пользовательское время ЦП в

                        тактах часов */

  comp_t ac_stime;   /* Системное время ЦП в тактах

                        часов */

  comp_t ac_etime;   /* Астрономическое время выполне-

                        ния в тактах часов */

  comp_t ac_mem;     /* Расход памяти в Кб */

  comp_t ac_io;      /* Кол-во переданных символов */

  comp_t ac_rw;      /* Общее число прочитанных и за-

                        писанных блоков */

  char   ac_comm[8]; /* Имя команды  */

};



extern struct acct  acctbuf;

extern struct inode *acctp; /* Описатель файла учетной

                               информации */

#define AFORK 01     /* Выполнен fork, но не exec */

#define ASU   02     /* Привилегии суперпользователя */

#define ACCTF 0300   /* Тип записи: 00 = acct */

В поле ac_flag флаг AFORK устанавливается при каждом вызове fork(2) и сбрасывается при вызове exec(2). Поле ac_comm наследуется от родительского процесса и сбрасывается при exec(2). Каждый раз, когда система выделяет процессу квант времени, она также добавляет к ac_mem текущий размер процесса, вычисляемый как


     (размер сегмента данных) +  (размер  сегмента  команд) / 

     (количество процессов в памяти, использующих этот сегмент команд)

Значение ac_mem/(ac_stime+ac_utime) может служить хорошим приближением среднего размера процесса, с учетом разделения сегмента команд.

Следующая структура используется различными командами работы с учетной информацией:


/* Общая учетная информация за некоторый период */



struct tacct {

  uid_t          ta_uid;      /* Идент. пользователя */

  char           ta_name[8];  /* Входное имя */

  float          ta_cpu[2];   /* Среднее время ЦП в

                                 минутах */

  float          ta_kcore[2]; /* Среднее значение

                                 килобайтоминут */

  float          ta_con[2];   /* Среднее астрономичес-

                                 кое время выполнения

                                 в минутах */

  float          ta_du;       /* Суммарное использова-

                                 ние диска */

  long           ta_pc;       /* Число процессов */

  unsigned short ta_sc;       /* Число сеансов раб. */

  unsigned short ta_dc;       /* Число дисковых прими-

                                 тивов */

  unsigned short ta_fee;      /* Для спец. применений

                                 */

};

СМ. ТАКЖЕ
acct(2), exec(2), fork(2).
acctcom(1) в Справочнике пользователя.

СЮРПРИЗЫ
Значение поля ac_mem для быстро заканчивающихся команд дает мало информации о реальном размере команды.

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...