강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

PROC 파일시스템 개관

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

icon01.giftitle42.gif

PROC 파일시스템 개관

번역 : 고현아 / hanbi@linuxlab.co.kr

 

UN*X 부류의 시스템에서 흥미있는 부분은  /proc 파일시스템이다. 이 가상 파일시스템은 흥미있고 유용한 몇가지 특징을 갖고 있다. 이는 또한 위험하고 재앙을 줄 수도 있다. 여기서는 /proc 파일시스템을 세 분야에서 다룬다.

·개략적인 설명
·/proc가 어떻게 사용될 수 있는가.(또는 사용되서는 안되는가)
·i686 시스템에서 커널 2.2의  /proc 구조

 

1. /proc란?

/proc 파일시스템은 메모리에 있는 시스템의 직접적인 반영이며 계층 형태로 표현된다.  /proc 파일시스템은 커널과 현재 수행되는 프로세스에 대한 정보를 쉽게 얻는 것이 목적이다.

결과로 몇몇 명령은 (예를 들어 ps) 시스템 상태에 관한 정보를 얻기 위해 직접  /proc를 읽는다. /proc 의 배경은 그러한 정보를 이해하기 어려운 시스템 콜을 부르는 것 대신에 읽기 쉬운 형태로 제공하는 것이다.

 

 2. /proc가 관리자에게 할수 있는 일은 ?

/proc 파일시스템은 아래와 같은 시스템 관련 일을 할 수 있다.

통계적 정보를 보는 것
하드웨어 정보 알아내기
런타임 파라메터 수정하기
네트워크와 호스트 파라메터 보기 및 수정
메모리와 수행능력에 관한 정보

주의할 점이 있다. 이러한 임무는  /proc를 참조해서 또는 커널을 직접 추적해 이루어 질 수 있다.

다른 커널 = 다른 능력
(Different Kernels = Different Capabilities)

다른 커널은  /proc에서 다른 정보를 낸다. 일부 또는 전부 또는 완전히 다른 배열이 당신의 커널 구현에 따라 나올 수 있다.

 

▶ 필수 경고

/proc 로서 무었을 할 수 있고 없고가 나타난 문서가 없으므로 가장 좋은 방법은 핵커의 방법이다. 즉 커널을 백업하고 /proc 파일시스템을 변경할 때는 상식에 입각해 실행하라. /proc를 통해 어플리케이션을 튜닝하는 주요한 예는 Kegel’s Web Hostel에 C10k 문제 문서에 있다.

 

3. /proc 구조

아래는  i686 시스템의 리눅스  2.2 커널에서 /proc에서의 파일과 디렉토리를 설명하는 간단한 표이다.

 

loadavg
               지난 1,5,15 분간의 평균 시스템 부하
uptime
               부트 이래로  총 가동 시간(초) 과 프로세스에
               의해 사용된 총 시간
meminfo
               메모리와 스왑의 사용 및 프리 바이트
kmsg
               커널에 의해 읽혀질 커널 메시지
version
               커널 또는/그리고 배포본의 버전
cpuinfo
               프로세서(CPU) 파라메터
pci
               현재의 PCI 슬롯 사용 정보
self/
               현재 /proc를 억세스하고 있는  프로세스 정보
net/
               네트워크 계층 설명
scsi/
               개개의 scsi 장치에 관한 정보를 갖는 파일들이
               위치함.
malloc
               kmalloc 과  kfree 운영 정보 모니터링
kcore
               커널 코어 덤프
modules
               단일 적재 모듈에 관한 정보
stat
               일반 리눅스 통계
devices
               커널에 등록된 시스템 장치에 관한 정보
interrupts
               인터럽트 할당 정보
filesystems
               현재의 파일시스템 구현
ksyms
               커널에의해 익스포트된 심볼
dma
               사용중인 DMA 채널
ioports
               현재 사용중인 입출력 포트
smp
               SMP가 활성화 돼 있을 경우 각 CPU 정보
cmdline
               부트시에 커널에 넘겨진 파라메터
sys/
               중요한 커널과 네트워크 정보
mtab
               현재 마운트된 파일 시스템
md
               다중 디바이스 드라이버 정보
               (활성화 되었을 경우)
rc
               확장 리얼타임 클럭
locks
               현재 락(locked)된 파일
Numbered Directories
               숫자로 된 디렉터리는 그 PID의 실행 프로세서 정보이다.

 

다시 한번  /proc의 기능 및 그 내용들은 버전마다 다르다는 것을 명심하라.

역자 주]
/proc의 내용을 보려면  cat 명령을 사용한다. 예를 들어 현재 사용중인 인터럽트를 보면 아래와 같다.

        [root]/proc$ cat interrupts

                        CPU0
        0:      36935631        XT-PIC  timer
        1:      2                    XT-PIC  keyboard
        2:      0                    XT-PIC  cascade
        3:      1                    XT-PIC  serial
        10:     56316            XT-PIC  eth0
        11:     10                 XT-PIC  aha1542
        13:     0                   XT-PIC  fpu
        14:     382232          XT-PIC  ide0
        NMI:    0

 

4. 추가 정보

아래는 보다 상세한 정보를 갖고 있는 리스트이다.

     The /proc File System
     The C10k problem

  Copyright (c) 1999, Jay Fink
  Published in Issue 46 of Linux Gazette, October 1999

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,070 명
  • 현재 강좌수 :  35,982 개
  • 현재 접속자 :  376 명