리눅스 named pipe 예제

Off
Non classé

명명된 파이프는 Microsoft SQL Server의 끝점으로사용할 수도 있습니다. [6] 이러한 빈 명명된 파이프 중 하나를 살펴보기 전에 뒤로 물러서서 명명된 파이프가 어떻게 설정되는지 살펴보겠습니다. mkfifo라는 명령을 사용합니다. 왜 « FIFO »에 대한 참조? 명명된 파이프는 FIFO 특수 파일이라고도 합니다. « FIFO »라는 용어는 첫 번째 문자인 첫 번째 문자를 나타냅니다. 아이스크림으로 접시를 채우고 먹기 시작하면 LIFO (마지막 에, 선입선) 기동을할 것입니다. 밀짚을 통해 밀크 셰이크를 빨아 경우, 당신은 FIFO 하나를하고있을 것입니다. 다음은 명명된 파이프를 만드는 예제입니다. 컴퓨팅에서 명명된 파이프(FIFO라고도 함)는 인턴 프로세스 통신을 위한 방법 중 하나입니다.

이전 리눅스 시스템에서 명명 된 파이프는 일반적으로 /etc 디렉토리에 있는 mknod 프로그램에 의해 만들어집니다. 더 현대적인 시스템에서 mkfifo는 표준 유틸리티입니다. mkfifo 프로그램은 하나 이상의 파일 이름을 이 작업에 대한 인수로 가져와 해당 이름으로 파이프를 만듭니다. 예를 들어, 이름 pipe1으로 명명 된 파이프를 만들려면 명령을 제공: 물론, 이전 예제는 백업이 완료 될 때 신호 하는 일반 파일을 만드는 하 여 상당히 안정적으로 수행할 수 있습니다. 더 복잡한 예로는 매시간 또는 그렇게 깨어나는 백업이 있고 명명된 파이프를 읽고 실행해야 하는지 확인하는 경우일 수 있습니다. 그런 다음 백업하려는 파일을 많이 변경할 때마다 파이프에 무언가를 쓸 수 있습니다. 백업이 모든 것을 확인할 필요가 없도록 파이프에 백업하려는 파일의 이름을 작성할 수도 있습니다. Windows NT 명명된 파이프는 보안 컨텍스트를 상속할 수 있습니다. 명확하지 않을 수도 있지만 텍스트가 파이프에 입력되었지만 여전히 입력 끝을 들여다 보는 것입니다. 사용자 또는 다른 사람이 출력 끝에 앉아 파이프에 쏟아지는 데이터를 읽을 준비를 하고 이제 읽을 때까지 기다릴 수 있습니다. 파이프 또는 명명되지 않은 파이프 명령의 구문은 | 두 명령 사이의 문자: 여기, 파이프는 다른 세션을 통해 액세스할 수 없습니다.

Command-1의 실행을 수용하고 표준 출력을 리디렉션하기 위해 일시적으로 만들어집니다. 성공적으로 실행하면 삭제됩니다. 예를 들어 파이프를 만들고 파이프에 파이프된 것을 압축하도록 gzip을 설정할 수 있습니다. 이는 파이프의 다른 쪽 끝이 아직 연결되지 않았기 때문에 커널이 두 번째 프로세스가 파이프를 열 때까지 첫 번째 프로세스를 일시 중단하기 때문에 발생합니다. 유닉스 전문 용어에서는 어떤 일이 일어나기를 기다리고 있기 때문에 프로세스가 « 차단 »되어 있다고 합니다.

Comments are closed.