|
��������
read - ������ �� �����
���������
int read (fildes, buf, nbyte) int fildes; char *buf; unsigned nbyte;
��������
�������� fildes - ��� ���������� �����, ���������� ����� ���������� ��������� ������� creat(2), open(2),
dup(2), fcntl(2) ��� pipe(2).
��������� ����� read �������� ��������� nbyte ���� �� �����, ���������������� � ������������ fildes, � �����, ���������� �� ������� �������� �������� buf.
��� ���������, ����������� ����������������, ��������� ����� read ��������� ������ �� �����, ������� � ��������� ������� �������, ���������������� � ������������ fildes. ����� ���������� ������ ��������� ������� ������� ����� ������������� �� ���������� ����������� ����.
��� ��������� ��� ����������� ���������������� ������ ������ ����������� � ������� �������. �������� ��������� ������� ������� ����� ��� ������ ���������� ������������.
��� �������� ���������� ���������� ������ read ������������ ���������� ����, ������� ����������� � ���������� � �����; ��� ���������� ����� ���� ������ �������� ��������� nbyte, ���� ���� ������������ � ������ ����� [��. ioctl(2) � termio(7)] ��� ���� ���������� ����, ���������� � �����, ������ �������� ��������� nbyte. ���� ������� ������� ��������� � ������ �����, ��������� ����� ����� 0.
������ � ��������������� [��. intro(2)] ����� ����������� � ���� ��������� �������: �������, ������ ��������� ��� ������ � ������ ��������� �� �������. ����������� �������� ������� �����. � ������� ���������� ������ ioctl ����� ����� ���� ������� (����� I_SRDOPT [��. streamio(7)]) � ������� (����� I_GRDOPT). � �������� ������ ��������� ����� read �������� ������ �� ������ �� ��� ���, ���� �� ������� nbyte ���� ��� ���� �� ������� ��� ������ ������. � ���� ������ ������� ��������� ������������.
� ������ ��������� ��� ������ ��������� ����� read �������� ������ �� ��� ���, ���� �� ������� nbyte ���� ��� ���� �� �������� ������� ���������. ���� ��������� ��������� �� ���������, �� ���������� ������ ���������� � ����� � ����� ���� ��������� ������������ �������� read ��� getmsg(2). � ������ ��������� �� ������� ����� ���������� ������ �� ��� ���, ���� �� ����� �������� nbyte ���� ��� ���� �� ���������� ������� ���������; ������ ������������� ������, ���������� � ��������� �� ���������� ���������� ������ read, ��������, � �� ������ �������� ������������ �������� read ��� getmsg.
��� ������� ������ �� �������� ����� � ������������� ������ ����� ���������� [��. chmod(2)] � ��� ������� ���������� �� ������ (������ ���������) ���� �������� �����, ������� ������ ���� ��������, � ����������� �� �������� ����� O_NDELAY ��������� ����� read ����� ���� ��������� �������:
��� ������ � ���������������� ������� �� ������ ��������� (�� ���� ���������, ���������� 0 ����) ������������ ������������� ������� ������. � ������� ������ ��������� ����� read ������ �����, ���� �� ������� nbyte ����, ��� ���� �� ������� ��� ������ �� ������, ��� ���� �� �������� ������ ���������. ����� read ���������� ���������� ����������� ���� � �������� ������ ��������� ����� � ����� ��� ������������ ���������� � ������� ������� read ��� getmsg. � ���� ������ ������� ��� ���������� ������� ��������� ������������ �������� 0 � ���� ��������� ��������� �� ������. ���� ������ ��������� �������� ��� ������ ��������� � ������, �� �������� 0 ������������ ���������� �� ������ ������.
��� ������ � ��������������� ��������� ����� read ����� ������������ ������ ��������� � �������. �� �� � ��������� ���������� ������������ ��������� � ����������� ��������, ���� �������� �������� ��������� � ������ ������.
���� � ������ ���������� ������������ �����, �� ��������� ����� read ����� ��������� ��������, ���� ������� ������ � ������ �� ������ ������. ����� ����� read ������ �������� 0.
��������� ����� read ����������� ��������, ���� ��������� ���� �� ���� �� ��������� �������:
������ � ���������������� ����� ����������� ��������, ���� � ������ ������ �������� ��������� �� ������. � ���� ������ ���������� errno ������������� ��������, ������������ � ���������.
��. �����
creat(2), dup(2), fcntl(2), ioctl(2), intro(2),
open(2), pipe(2), getmsg(2).
streamio(7), termio(7) � ����������� ��������������.
�����������
��� �������� ���������� ��������� ����� ���������������� ������ ����� - ���������� ������� ����������� ����;
� ������ ������ ������������ -1, � ���������� errno
������������� ��� ������.
|