728x90
    
    
  프로그램 : 파일 형태로 존재하는 실행 파일
프로세스 : CPU와 메모리를 사용하여 실행 중인 프로그램
※ 프로그램 상태
| status | explain | 
| New (생성) | 프로세스가 생성되는 상태 | 
| Ready (준비) | CPU 할당되기를 대기하는 상태 | 
| Running (실행) | CPU 할당되어 실행 중인 상태 | 
| Waiting / Sleeping (대기) | 다른 프로세스의 서비스 or 디스크 I/O 작업 완료될 때까지 대기 | 
| Terminated (종료) | 프로세스 실행이 완료된 상태 | 
※ 프로그램 상태 전이
| status | explain | 
| Admitted (승인) | new → ready | 
| Scheduler Dispatch (스케줄러 디스패치) | ready → run | 
| Interrupt (인트럽트) | run → ready | 
| I/O or Event wait (입출력 or 이벤트 대기) | run → waiting | 
| I/O or Event Completion (입출력 or 이벤트 완료) | waiting → ready | 
◎ 참고 : wc 명령어 (word count)
wc –c .test.txt  // .vimrc 파일의 바이트 수 (바이트 단위 파일크기) 확인
wc -m .test.txt  // .vimrc 파일 내의 문자 수 확인
wc -w .test.txt  // .vimrc 파일 내의 단어 수 확인
wc -l .test.txt  // .vimrc 파일 내의 줄 수 확인
Foreground & background
※ Foreground process : 키보드로 표준 입력을 받아서 실행되는 process
※ Background process : 한 프로세스가 실행되는 동안 뒤에서 실행되는 process
ps 명령어 : 현재 실행 중인 프로세스 확인
- ps -f : foreground 프로세스만 확인
- ps -ef : foreground & background 프로세스 모두 확인
htop 명령어 : top 유틸리티 개선
//설치
sudo apt-get update
sudo apt-get install htop
//실행
htop
Signal
사용자가 프로세스에게 특정 이벤트 알리기 위해 사용
| signal number | signal | explain | default | 
| 2 | SIGINT | 프로세스 종료 (인터럽트 키 : Command + C) | 종료 | 
| 9 | SIGKILL | 강제 종료 | 종료 | 
| 11 | SIGSEGV | 잘못된 메모리 주소 참조 에러(segmentation fault) 발생시 코어 덤프 생성하고 프로세스 비정상 종료 | 코어 덤프 | 
| 15 | SIGTERM | 프로세스 종료 | 정려 | 
| 19 | SIGSTOP | 프로세스 일시 중지 | 중지 | 
| 20 | SIGTSTP | 프로세스 일시 중지(일시 중지 키 : Command + Z) | 중지 | 
jobs 명령어 : 일시 중지된 프로세스 및 Background 프로세스 확인
bg 명령어 : 일시 중지된 프로세서 Background로 실행
bg %job_ID
fg 명령어 : 일시 중지된 프로세서 or Background 프로세스를 Foreground로 실행
fg %job_ID
kill 명령어 : 일시 중지된 프로세서 or Background 프로세스 종료
kill %job_ID       //종료
kill -9 %job_ID    //강제 종료
반응형
    
    
    
  'CS > Linux' 카테고리의 다른 글
| MPI 병렬 프로그래밍 (0) | 2023.08.30 | 
|---|---|
| OpenMp 병렬 프로그래밍 (0) | 2023.08.29 | 
| 디렉토리 관리 관련 함수 (0) | 2023.08.29 | 
| 파일 관리 관련 함수 (0) | 2023.08.29 | 
| Func (File System & File Input/Output) (0) | 2023.08.29 |