데이터과학 삼학년

Foreground 와 background 프로세스, 프로세스 관리 및 제어 본문

Computer Science/System Programming

Foreground 와 background 프로세스, 프로세스 관리 및 제어

Dan-k 2020. 1. 18. 17:06
반응형

Foreground 와  background 프로세스

  • 프로세스 vs 바이너리

    • 바이너리 : 실행파일(코드 이미지)

    • 프로세스 : 실행중인 프로그램

      • 가상 메모리 및 물리 메모리 정보

      • 시스템 리소스 관련 정보

      • 스케쥴링 단위

  • 리눅스는 다양한 프로세스 실행 환경

    • 유닉스 철학 : 여러 프로그램이 서로 유기적으로 각자의 일을 수행하면서 전체 시스템이 동작하도록 하는 모델

  • foreground process : 쉘(shell)에서 해당 프로세스 실행을 명령한 후 해당 프로세스 수행 종료까지 사용자가 다른 입력을 하지 못하는 프로세스 → 쉘창에서 python abc.py를 입력하여 수행하면 그 프로그램이 돌아갈때 다른 명령어를 칠 수 없음, 만약 쳐져도 실행 안됨(ctrl+c 누르면 프로세스를 죽여 빠져나오는 명령)

  • background process : 사용자 입력과 상관없이 실행되는 프로세스

    • 쉘(shell)에서 해당 프로세스 실행시 맨뒤에 &를 붙여줌


 

프로세스 관리 및 제어

  • 단축키로 프로세스 명령 제어 

    • ctrl + z : process stop , ctrl + c : process kill(완전 종료) 

    • jobs → background에서 돌고 있는 job의 내역을 보여줌

  • bg → 바로 직전에 실행했던 process를 재실행 시킴 [5]+ 

  • bg [job번호] → 해당 job 번호를 재실행 시킬 수 있음

  • 프로세스 상태 확인

    • 보통 ps aux 로 마니 씀 혹은 ps aux | more

  • deamon process는 보통 24시간 돌고 있어야하는 프로세스, 보통 부팅될때 자동 실행

  • bash도 프로그램 부팅하면 하나의 process로 실행이 되서 사용자가 쓸 수 있게 함

  • 프로세스 중지 명령어 → kill

    • kill -9 [해당프로세스 pid]     여기서 -9는 강제로 죽인다는 뜻


위 자료는 fastcampus를 토대로 작성하였음을 밝힙니다.
728x90
반응형
LIST
Comments