time_t tms_cutime; /* сумма значений tms_utime и tms_cutime у потомков */

 time_t tms_sutime; /* сумма значений tms_stime и tms_sutime у потомков */

};

ulimit

ulimit(cmd, limit)

int cmd;

long limit;

Функция ulimit дает процессу возможность устанавливать различные ограничения в зависимости от значения параметра cmd:

1 вернуть максимальный размер файла (в блоках по 512 байт), в который процесс может вести запись

2 установить ограничение сверху на размер файла равным значению параметра limit

3 вернуть значение верхней точки прерывания (максимальный доступный адрес в области данных)

uмask

umask(mask)

int mask;

Функция umask устанавливает значение маски, описывающей режим создания файла (mask), и возвращает старое значение. При создании файла биты разрешения доступа, которым соответствуют установленные разряды в mask, будут сброшены.

uмount

umount(specialfile)

char *specialfile

Функция umount выполняет демонтирование файловой системы, расположенной на устройстве ввода-вывода блоками specialfile.

unamе

#include ‹sys/utsname.h›

uname(name)

struct utsname *name;

Функция uname возвращает информацию, идентифицирующую систему в соответствии со следующей структурой:

struct utsname {

 char sysname[9]; /* наименование */

 char nodename[9]; /* имя сетевого узла */

 char release[9]; /* информация о версии системы */

 char version[9]; /* дополнительная информация о версии */

 char machine[9]; /* технический комплекс */

};

unlink

unlink(filename)

char *filename;

Функция unlink удаляет из каталога запись об указанном файле.

ustat

#include ‹sys/types.h›

#include ‹ustat.h›

ustat(dev, ubuf)

int dev;

struct ustat *ubuf;

Функция ustat возвращает статистические данные, характеризующие файловую систему с идентификатором dev (старший и младший номера устройства). Структура ustat определена следующим образом:

struct ustat {

 daddr_t f_tfree; /* количество свободных блоков */

 ino_t f_tinode; /* количество свободных индексов */

 char f_fname[6]; /* наименование файловой системы */

 char f_fpack[6]; /* сокращенное (упакованное) имя файловой системы */

};

utimе

#include ‹sys/types.h›

utime(filename, times)

char *filename;

struct utimbuf *times;

Функция utime переустанавливает время последнего обращения к указанному файлу и последнего внесения изменений в соответствии со значениями, на которые указывает параметр times. Если параметр содержит нулевое значение, используется текущее время. В противном случае параметр указывает на следующую структуру:

struct utimbuf {

 time_t axtime; /* время последнего обращения */

 time_t modtime; /* время последнего внесения изменений */

};

Все значения отсчитываются от 00:00:00 1 января 1970 года по Гринвичу.

wait

wait(wait_stat)

int *wait_stat;

Функция wait побуждает процесс приостановить свое выполнение до момента завершения потомка или до момента приостанова трассируемого процесса. Если значение параметра wait_stat ненулевое, оно представляет собой адрес, по которому функция записывает возвращаемую процессу информацию. При этом используются только 16 младших разрядов кода возврата. Если обнаружен завершивший свое выполнение потомок, 8 младших разрядов кода возврата содержат 0, а 8 старших разрядов — код возврата (аргумент) функции exit. Если потомок завершил свое выполнение в результате получения сигнала, код возврата функции exit содержит номер сигнала. Кроме того, если образ процесса-потомка сохранен в файле 'core', производится установка бита 0200. Если обнаружен приостановивший свое выполнение трассируемый процесс, 8 старших разрядов кода возврата функции wait содержат номер приведшего к его приостанову сигнала, а 8 младших разрядов — восьмиричное число 0177.

writе

write(fd, buf, count)

int fd, count;

char *buf;

Функция write выполняет запись указанного в count количества байт данных, начиная с адреса buf, в файл с дескриптором fd.

БИБЛИОГРАФИЯ

[Babaoglu 81] Babaoglu, O., and W.Joy, 'Converting a Swap-Based System to do Paging in an Architecture Lacking Page-Referenced Bits', Proceedings of the 8th Symposium on Operating Systems Principles, ACM Operating Systems Review, Vol. 15(5), Dec. 1981, pp. 78–86.

[Bach 84] Bach, M.J., and S.J.Buroff, 'Multiprocessor UNIX Systems', AT&T Bell Laboratories Technical Journal, Oct. 1984, Vol. 63, No. 8, Part 2, pp. 1733– 1750.

[Barak 80] Barak, A.B. and Aapir, 'UNIX with Satellite Processors', Software — Practice and Experience, Vol. 10, 1980, pp. 383–392.

[Beck 85] Beck, B. and B.Kasten, 'VLSI Assist in Building a Multiprocessor UNIX System', Proceedings of the USENIX Association Summer Conference, June 1985, pp. 255–275.

[Berkeley 83] UNIX Programmer's Manual, 4.2 Berkeley Software Distribution, Virtual VAX-11 Version, Computer Science Division, Department of Electrical Engineering and Computer Science, University of California at Berkeley, August 1983.

[Birrell 84] Birrell, A.D. and B.J.Nelson, 'Implementing Remote Procedure Calls', ACM Transactions on Computer Systems, Vol. 2, No. 1, Feb. 1984, pp. 39–59.

[Bodenstab 84] Bodenstab, D.E., T.F.Houghton, K.A.Kelleman, G.Ronkin, and E.P.Schan, 'UNIX Operating System Porting Experiences', AT amp;T Bell Laboratories Technical Journal, Vol. 63, No. 8, Oct. 1984, pp. 1769–1790.

[Bourne 78] Bourne, S.R., 'The UNIX Shell', The Bell System Technical Journal, July-August 1978, Vol. 57, No. 6, Part 2, pp. 1971–1990.

[Bourne 83] Bourne, S.R., The UNIX System, Addison-Wesley, Reading, MA, 1983.

[Brownbridge 82] Brownbridge, D.R., L.F.Marshall, and B.Randell, 'The Newcastle Connection or UNIXes of the World Unite!' in Software Practice and Experience, Vol. 12, 1982, pp. 1147–1162.

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату
×