���� ���� ���� ���� ������ ���α׷��Ӹ� ���� ���̵�

6.2.1 �⺻ ���� (Basic Concepts)

������ ���ؼ�, ������(Pipe)�� �� ���μ����� ǥ�� ���(Standard output)�� �ٸ� ���μ����� ǥ�� �Է�(Standard input)���� �����ϴ� ����̴�. �������� IPC�� �� ���� ������ ������ ���н� �ü���� �ʱ� �ܰ���� ���Ǿ� �Դ�. �������� ���μ������� �ܹ���(������,half-duplex) ����� �� ����� �����Ѵ�.

�̷��� Ư¡�� ���н� ���ɾ� ����(���н� ��)���� ���� ���а� ���ȴ�.

ls | sort | lp
���� ���� ls�� ����� sort�� �Է����� �ϰ� sort�� ����� lp�� �Է����� ����ϱ� ���� ������(pipe)�� �̿��Ͽ���. �ڷ�� ������������ ���� ���ʿ��� ���������� �̵��ϵ���, ������ �������� ���� �����δ�.

�츮���� �� ��ũ��Ʈ ���α׷��ֿ��� �������� ���� �����ϰ� ����Ѵ��ص�, Ŀ�� �������� �Ͼ�� �Ͽ� ���ؼ��� �������� �ʰ� ����Ѵ�.

���μ����� �������� ���� ��, Ŀ���� �������� ���� ���� �ΰ��� ���� �ĺ���(descriptor)�� �غ��Ѵ�. �Ѱ��� �ĺ���(descriptor)�� ������(Write)�� �Է� ��η� ���ǰ� �ٸ� �ϳ��� ������(Read)�� ���� �ڷḦ ��µ� ���ȴ�. �̷� ������ �����ϴ� ���μ����� �ڱ��ڽŰ��� ��ſ��� �������� ��������� �������� ���� ���������� ������ �ʴ´�. �������� ������� ������ ���μ����� Ŀ���� �����ۿ뿡 �����϶�.

- �ּ��ϰԵ� �������� ���̾�׷� �׸��� ��������
���� ���̾�׷����� ���� �ĺ��ڵ��� ���� ��� ����Ǵ��� ���� �� �� �ִ�. ���μ����� ������(fd0)�� ���� �ڷḦ �����ٸ�, fd1�� ���� �ڷḦ ���� �� (���� ��) �ִ� �ɷ��� ������ �ִ�. �׷����� ���� ���� ������ �׸��� ���繰�� �ſ� ũ��. �������� ó���� ���μ����� �ڽ��� �����ϴ� ����, �������� ���� ���� ���� �ڷ�� Ŀ���� ���� �����δ�. Ư�� ���������� �������� ������ ���������� ��ȿ�� inode�� ������ ������ �ǹ��Ѵ�. ����, �� inode�� Ŀ�ξȿ� �����ϰ� �������� ���� �ý��ۿ��� �ƹ��� ������ ��ġ�� �ʴ´�. �̷��� Ư¡�� �츮�� ���� I/O ��(handy I/O doors)�� �� �� �ְ� �Ѵ�.

�̷��� ������ �������� ������ �������. �ᱹ, �츮�� ���� �츮 �ڽſ��� �̾߱��ϰ��� �Ѵٸ� �� ������ ������ ������� ������ ���߸� �ϴ°�? �����ϴ�(creating) ���μ����� ���������� �ڽ� ���μ���(child process)�� ����(fork)�Ѵ�. �ڽ� ���μ����� �θ�� ���� ������ ���� �ĺ��ڵ� ��ӹ޾����Ƿ� �츮�� �θ�� �ڽİ��� ��Ƽ���μ��� ����� ���� ���ʸ� ������ �ִ�. �츮�� ������ �׸� �������� �����϶�.

���� ���� �츮�� �� ���μ����� ������ ������ �����ϴ� ���� �ĺ��ڿ� ������ �� ������ �� �� �ִ�. �̹����� �߿��� ������ ������ �Ѵ�. � �������� �ڷᰡ �̵��ϱ⸦ ���ϴ°�? �ڽ� ���μ����� �θ𿡰� ������ ���� ���ΰ� �ƴϸ� �� �ݴ��ΰ�? �� ���μ����� �̷��� ������ ���� ��ȣ �����ϰ� �ְ� ����Ǿ� ���� ���� �������� ���� �ݴ´�. ����� ������ ����, �ڽ� ���μ����� � �۾��� �����ϰ� �������� ���� �θ𿡰� ������ ���ϴ����� ���캸��. �츮�� ���Ӱ� ���ȵ� �׸��� ������ ���� ��Ÿ����.:

���� ������������ ������ �Ϻ��ϴ�! �����ִ� ���� �������� �����̴�. �������� ���������� �����ϱ� ����, ���� ������ ���� I/O�� ���� ���Ǵ� ���� ����� �ý��� ȣ���� ����� �� �ִ�. (�������� ���� ���������� ��ȿ�� inode�� ǥ������ ����϶�)

�������� �ڷḦ ������ ����, �츮�� write() �ý��� ȣ���� ����ϰ� �������� ���� �ڷḦ ��ȸ�ϱ� ���� read()��� �ý��� ȣ���� ����Ѵ�. ���� ������ ���� I/O �ý��� ȣ���� ���� �ĺ��ڸ� ������ �۾����� ����϶�! ��·��, ���������� �ĺ��ڸ� ������ �۾����� �ʴ� lseek()�� ���� �ý��� ȣ����� ����϶�.


����:6.2 ������ ���н� ������ ����:6.2.2 C�� ������ �����

Copyright (c) 1996,1997 by Euibeom.Hwang & SangEun.Oh All Rights Reserved

Email To:Webmaster , Another address
LAST UPDATE Nov 14,1997
Created Nov 14,1997