9P

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색

9P(플랜 9 파일 시스템 프로토콜 또는 Styx)는 플랜 9 운영 체제용으로 개발된 네트워크 프로토콜로, 플랜 9 시스템의 구성 요소들을 연결해 준다. 파일들은 플랜 9의 중요한 객체들이다. 이들은 , 네트워크 연결, 프로세스 등 운영 체제에서 이용할 수 있는 모든 것을 표현한다. NFS과는 달리 9P는 캐시 처리를 강화하고 합성 파일도 제공한다. (이를테면 프로세스를 표현하는 /proc)

9P는 플랜 9의 4번째 판을 위해 9P2000라는 이름으로 개정되었으며 다양하고도 중요한 개선 사항이 포함되었다. 인페르노 운영 체제의 최신 버전도 9P2000을 이용한다. 인페르노 파일 프로토콜은 원래 Styx로 불렸으나 기술적으로 늘 9P의 변종으로 취급되어왔다.

다른 변종인 9p2000.u유닉스 환경을 더 잘 지원하는 개정판이며 자세한 사항을 보려면 v9fs 9p2000.u를 참고하라. 유닉스용 9P의 서버 기능은 u9fs라고 부르며 플랜 9 배포판에 포함되어 있다. 리눅스용 커널 클라이언트 드라이버는 v9fs 프로젝트의 일부이다. 9P와 파생판들은 Styx on a Brick project와 같은 임베디드 환경에 응용하여 쓰이는 것을 볼 수 있다.

서버 응용 프로그램[편집]

수많은 플랜 9 응용 프로그램들은 9P 서버의 형태를 지닌다. 눈에 띄는 예는 다음과 같다:

  • acme: 프로그래머들을 위한 사용자 인터페이스
  • 리오(rio): 플랜 9 운영 체제
  • 플럼버(plumber): 프로세스 간 통신
  • wikifs: 위키

추가된 기능[편집]

9p는 다음의 메시지를 클라이언트와 서버 사이에서 내보낸다.[1] 이 메시지들은 9p 서버에 포함되어야 하는 플랜 9 vfs 계층의 시작점(엔트리 포인트)과 일치한다.

version
프로토콜 버전 탐색
error
오류 반환
flush 
메시지 중단
auth, attach 
연결 수행 메시지 표시
walk 
디렉터리 계급 내려가기
create, open 
기존의 파일이나 새로운 파일에 대한 입출력을 위한 피드(fid) 준비
read, write 
데이터를 파일로, 또는 파일을 데이터로 송신
clunk 
피드(fid)를 잊음
remove
서버로부터 파일 제거
stat, wstat 
파일 특성 확인 및 변경

같이 보기[편집]

주석[편집]

  1. 9p protocol

바깥 고리[편집]