"posix" --- 가장 일반적인 POSIX 시스템 호출
*******************************************

======================================================================

이 모듈은 C 표준과 POSIX 표준(얇게 위장한 유닉스 인터페이스)에 의해 표
준화된 운영 체제 기능에 대한 액세스를 제공합니다.

**이 모듈을 직접 임포트 하지 마십시오.** 대신, 이 인터페이스의 *이식성
있는* 버전을 제공하는 모듈 "os"를 임포트 하십시오. 유닉스에서, "os" 모
듈은 "posix" 인터페이스의 상위집합을 제공합니다. 비 유닉스 운영 체제에
서는 "posix" 모듈을 사용할 수 없지만, "os" 인터페이스를 통해 항상 부분
집합을 사용할 수 있습니다. 일단 "os"를 임포트하면, "posix" 대신 사용해
도 성능 저하가 *없습니다*. 또한, "os"는 "os.environ"의 항목이 변경될
때 자동으로 "putenv()"를 호출하는 등의 몇 가지 추가 기능을 제공합니다.

에러는 예외로 보고됩니다; 보통 예외는 형 에러로 인한 것입니다만, 시스
템 호출 때문에 보고되는 에러는 "OSError"를 발생시킵니다.


대용량 파일 지원
================

여러 운영 체제(AIX, HP-UX, Irix 및 Solaris 포함)는 "int"와 "long"이 32
비트 값인 C 프로그래밍 모델로 인한 2 GiB보다 큰 파일에 대한 지원을 제
공합니다. 이것은 일반적으로 관련 크기 및 오프셋 형을 64비트 값으로 정
의하여 수행됩니다. 이러한 파일을 때로 *대용량 파일 (large files)*이라
고 합니다.

"off_t"의 크기가 "long"보다 크고 "long long"이 적어도 "off_t"만큼 크면
파이썬에서 대용량 파일 지원이 활성화됩니다. 이 모드를 활성화하려면 특
정 컴파일러 플래그로 파이썬을 구성하고 컴파일해야 할 수도 있습니다. 예
를 들어, 최근 버전의 Irix에서는 기본적으로 활성화되지만, Solaris 2.6과
2.7에서는 다음과 같은 작업이 필요합니다:

   CFLAGS="`getconf LFS_CFLAGS`" OPT="-g -O2 $CFLAGS" \
           ./configure

대용량 파일을 사용할 수 있는 리눅스 시스템에서, 이렇게 할 수 있습니다:

   CFLAGS='-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64' OPT="-g -O2 $CFLAGS" \
           ./configure


주목할만한 모듈 내용
====================

"os" 모듈 설명서에서 설명된 많은 함수 외에도, "posix"는 다음 데이터 항
목을 정의합니다:

posix.environ

   인터프리터가 시작될 때 문자열 환경을 나타내는 딕셔너리. 키와 값은
   유닉스에서는 바이트열이고 윈도우에서는 str입니다. 예를 들어,
   "environ[b'HOME']"(윈도우에서는 "environ['HOME']")은 홈 디렉터리의
   경로명이며, C의 "getenv("HOME")"와 동등합니다.

   이 딕셔너리를 수정해도 "execv()", "popen()" 또는 "system()"에 전달
   되는 문자열 환경에는 영향을 주지 않습니다; 환경을 변경해야 하는 경
   우 "environ"을 "execve()"로 전달하거나, "system()" 이나 "popen()"의
   명령 문자열에 변수 대입과 export 문장을 추가하십시오.

   버전 3.2에서 변경: 유닉스에서, 키와 값은 바이트열입니다.

   참고:

     "os" 모듈은 수정 시 환경을 갱신하는 "environ"의 대체 구현을 제공
     합니다. "os.environ"를 갱신하면 이 딕셔너리를 쓸모없게 만드는 것
     에 유의하십시오. "os" 모듈 버전을 사용하는 것이 "posix" 모듈에 직
     접 액세스하는 것보다 권장됩니다.
