приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix




Названиеприложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix
страница1/5
Дата конвертации23.04.2013
Размер44.65 Kb.
ТипТексты
  1   2   3   4   5
ПРИЛОЖЕНИЕ. СИСТЕМНЫЕ ОПЕРАЦИИ



В приложении дается краткий обзор функций системы UNIX. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы UNIX. Сведений, приведенных здесь, вполне достаточно для того, чтобы разобраться в примерах программ, представленных в книге.
Имена файлов, упоминаемые в тексте, представляют собой последовательнос- ти символов, завершающиеся пустым символом и состоящие из компонент, разде- ленных наклонной чертой. В случае ошибки все функции возвращают код заверше- ния, равный -1, а код самой ошибки засылается в переменную errno, имеющую тип external. В случае успешного завершения код возврата имеет значение, равное 0. Некоторые из обращений к операционной системе являются точкой вхо- да сразу для нескольких функций: это означает, что данные функции используют один и тот же ассемблерный интерфейс. Приводимый список функций удовлетворя- ет стандартным условиям, принятым в справочных руководствах по системе UNIX, при этом вопросы, связанные с тем, является ли одно обращение к операционной системе точкой входа для одной или нескольких функций, рассматриваются от- дельно.


access
______________________________

access(filename,mode)
char *filename;
int mode;

Функция access проверяет, имеет ли процесс разрешение на чтение, запись или исполнение файла (проверяемый тип доступа зависит от значения параметра mode). Значение mode является комбинацией двоичных масок 4 (для чтения), 2 (для записи) и 1 (для исполнения). Вместо исполнительного кода идентификации пользователя в проверке участвует фактический код.


acct
______________________________

acct(filename)
char *filename;

Функция acct включает учет системных ресурсов, если параметр filename непустой, и выключает - в противном случае.


аlarм
______________________________

unsigned alarm(seconds)
unsigned seconds;

Функция alarm планирует посылку вызывающему ее процессу сигнала тревоги через указанное количество секунд (seconds). Она возвращает число секунд, оставшееся до посылки сигнала от момента вызова функции.


400

brk
______________________________

int brk(end_data_seg)
char *end_data_seg;

Функция brk устанавливает верхнюю границу (старший адрес) области данных процесса в соответствии со значением параметра end_data_seg. Еще одна функ- ция, sbrk, использует ту же точку входа и увеличивает адрес верхней границы области на указанную величину.


сhdir
______________________________

chdir(filename)
char *filename;

Функция chdir делает текущим каталогом вызывающего процесса каталог, указанный в параметре filename.


сhmod
______________________________

chmod(filename,mode)
char *filename;

Функция chmod изменяет права доступа к указанному файлу в соответствии со значением параметра mode, являющимся комбинацией из следующих кодов (в восьмеричной системе):
04000 бит установки кода идентификации пользователя
02000 бит установки группового кода идентификации
01000 признак sticky bit
00400 чтение владельцем
00200 запись владельцем
00100 исполнение владельцем
00040 чтение групповым пользователем
00020 запись групповым пользователем
00010 исполнение групповым пользователем
00004 чтение прочим пользователем
00002 запись прочим пользователем
00001 исполнение прочим пользователем


сhowп
______________________________

chown(filename,owner,group)
char *filename;
int owner,group;

Функция chown меняет коды идентификации владельца и группы для указанно- го файла на коды, указанные в параметрах owner и group.


сhroot
______________________________


401

chroot(filename)
char *filename;

Функция chroot изменяет частный корень вызывающего процесса в соответст- вии со значением параметра filename.


сlosе
______________________________

close(fildes)
int fildes;

Функция close закрывает дескриптор файла, полученный в результате выпол- нения функций open, creat, dup, pipe или fcntl, или унаследованный от функ- ции fork.


сreat
______________________________

creat(filename,mode)
char *filename;
int mode;

Функция creat создает новый файл с указанными именем и правами доступа. Параметр mode имеет тот же смысл, что и в функции access, при этом признак sticky-bit очищен, а разряды, установленные функцией umask, сброшены. Функ- ция возвращает дескриптор файла для последующего использования в других фун- кциях.


dир
______________________________

dup(fildes)
int fildes;

Функция dup создает копию указанного дескриптора файла, возвращая деск- риптор с наименьшим номером из имеющихся в системе. Старый и новый дескрип- торы используют один и тот же указатель на файл, а также и другие совпадаю- щие атрибуты.


ехес
______________________________

execve(filename,argv,envp)
char *filename;
char *argv[];
char *envp[];

Функция execve исполняет файл с именем filename, загружая его в адресное пространство текущего процесса. Параметр argv соответствует списку аргумен- тов символьного типа, передаваемых запускаемой программе, параметр envp со- ответствует массиву, описывающему среду выполнения нового процесса.




402
ехit
______________________________

exit(status)
int status;

Функция exit завершает вызывающий процесс, возвращая его родителю 8 младших разрядов из слова состояния процесса. Ядро само может вызывать эту функцию в ответ на поступление определенных сигналов.


fcntl
______________________________

fcntl(fildes,cmd,arg)
int fildes,cmd,arg;

Функция fcntl обеспечивает выполнение набора разнообразных операций по отношению к открытым файлам, идентифицируемым с помощью дескриптора fildes. Параметры cmd и arg интерпретируются следующим образом (определение буквен- ных констант хранится в файле "/usr/include/fcntl.h"):

F_DUPFD вернуть наименьшее значение дескриптора, большее
или равное значению arg
F_SETFD установить флаг "close-on-exec" в младшем разря-
де arg (файл будет закрыт функцией exec)
F_GETFD вернуть состояние флага "close-on-exec"
F_SETFL установить флаги, управляющие состоянием файла
(O_NDELAY - не приостанавливаться в ожидании за-
вершения ввода-вывода, O_APPEND - записываемые
данные добавлять в конец файла)
F_GETFL получить значения флагов, управляющих состоянием
файла

struct flock
short l_type; /* F_RDLCK - блокировка чтения,
F_WRLCK - блокировка записи,
F_UNLCK - снятие блокировки */
short l_whence; /* адрес начала блокируемого участ-
ка дается в виде смещения отно-
сительно начала файла (0), отно-
сительно текущей позиции указа-
теля (1), относительно конца
файла (2) */
long l_start; /* смещение в байтах, интерпретиру-
емое в соответствии со значением
l_whence */
long l_len; /* длина блокируемого участка в
байтах. Если указан 0, блокиру-
ется участок от l_start до конца
файла */
long l_pid; /* идентификатор процесса, блокиру-
ющего файл */
long l_sysid; /* системный идентификатор процес-
са, блокирующего файл */

F_GETLK прочитать первый код блокировки, мешающей ис-
пользовать значение arg и затирать его. Если
блокировка отсутствует, поменять значение l_type
в arg на F_UNLCK

403

F_SETLK установить или снять блокировку файла в зависи-
мости от значения arg. В случае невозможности
установить блокировку вернуть -1
F_SETLKW установить или снять блокировку содержащихся в
файле данных в зависимости от значения arg. В
случае невозможности установить блокировку при-
остановить выполнение

Блокировки, связанные с чтением из файла, могут перекрывать друг дру- га. Блокировки, связанные с записью, перекрываться не могут.


fork
______________________________

fork()

Функция fork создает новый процесс. Порождаемый процесс представляет со- бой логическую копию процесса-родителя. На выходе из функции процессу-роди- телю возвращается код идентификации потомка, потомку - нулевое значение.


getpid
______________________________

getpid()

Функция getpid возвращает идентификатор вызывающего процесса. Эту же точку входа используют функции: getpgrp, возвращающая идентификатор группы, в которую входит вызывающий процесс, и getppid, возвращающая идентификатор процесса, который является родителем текущего процесса.


getuid
______________________________

getuid()

Функция getuid возвращает фактический код идентификации пользователя вы- зывающего процесса. Эту же точку входа используют функции: geteuid, возвра- щающая исполнительный код идентификации пользователя, getgid, возвращающая групповой код, и getegid, возвращающая исполнительный групповой код иденти- фикации вызывающего процесса.


ioctl
______________________________

ioctl(fildes,cmd,arg)
int fildes,cmd;

Функция ioctl выполняет набор специальных операций по отношению к откры- тому устройству, дескриптор которого указан в параметре fildes. Тип команды, выполняемой по отношению к устройству, описывается параметром cmd, а пара- метр arg является аргументом команды.
  1   2   3   4   5

Похожие:

приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconприложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix
В приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconУчебное пособие по курсу осиС. 01. spx Вводная, список литературы. Что такое Unix и unix-подобные системы. Ядро и пользовательские программы. Системные вызовы
Обзор подсистем ядра: файловая, управления процессами, ввода-вывода. Unix для пользователя: базовые понятия и интерфейс (командная...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconВот несколько основных приемов, которые должны облегчить Вам освоение новой для Вас оболочки unix и ее системы команд
Сен-97] Руководство начинающего пользователя системы sdf unix-системы публичного доступа
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconLinux происходит от операционной системы Unix
В равной степени можно было бы изучать Freebsd, Macosx или qnx, с той разницей, что названные системы сильнее отличаются от прототипа...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconРтйенщ ртпжеууйпобмшопк тбвпфщ ч unix
Опзппвтбъйе утед уйуфенщ unix чбы тезйуфтбгйпоощк лбфбмпз: лбл удембфш езп лпнжптфощн фептйй пфопуйфемшопуфй a la unix цйъош уйуфенщ...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconI. введение в excel 23 Глава
Iii. Создание пользовательских функций 675 Глава 14. Макросы, программы и нестандартные функции 677 Глава 15. Разработка нестандартных...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconОздоровительная физкультура при нарушении функций пищеварительной системы
Российский Государственный Педагогический Университет им. А. И. Герцена Кафедра физической культуры Реферат на тему «Оздоровительная...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconАндрей Богатырев. Хрестоматия по программированию на Си в Unix
В этой книге вы найдете ряд задач, примеров, алгоритмов, советов и стилистичес- ких замечаний по использованию языка программирования...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconРтйенщ ртпжеууйпобмшопк тбвпфщ ч unix
Ертетщчопе уойцеойе гео, тпуф ртпйъчпдйфемшопуфй ч обые чтенс й пцйдбенпе рпсчмеойе опчщи нйлтп- й ухрет-нйлтплпнршафетпч дембаф...
приложение. Системные операции в приложении дается краткий обзор функций системы unix. Полное описание этих функций содержится в руководстве программиста-пользователя версии V системы unix iconПрограммирование на shell (unix) (Учебное пособие)
Беспрецедентным является то, что ос unix может работать практически на на всех выпускаемых платформах. Unix это стандарт де факто...
Разместите кнопку на своём сайте:
txt.rushkolnik.ru



База данных защищена авторским правом ©txt.rushkolnik.ru 2012
обратиться к администрации
txt.rushkolnik.ru
Главная страница