프로세스
- 프로세스(Process)란 '하드디스크에 저장된 실행 코드(프로그램)가 메모리에 로딩되어 활성화된 것'
- 포그라운드 프로세스
- 포그라운드 프로세스(Foreground Process)는 FIrefox와 같이 실행하면 화면에 나타나 사용자와 상호작용하는 프로세스를 말한다.
- 즉, 화면에서 실행되고 있는 프로그램이 프로세스라고 생각하면 된다.
- 백그라운드 프로세스
- 백그라운드 프로세스(Background Process)는 실행은 되었지만, 화면에는 나타나지 않는 프로세스를 말한다.
- 예) 바이러스 백신, 서버 데몬(서비스) 등
- 프로세스 번호
- 프로세스에 할당된 고유 번호를 프로세스 번호라고 한다.
- 프로세스 번호를 사용해 메모리에 활성화된 특정 프로세스를 찾고 강제로 제거할 수 있다.
- 작업 번호
- 현재 실행되는 백그라운드 프로세스의 순차 번호를 의미한다.
- 부모 프로세스와 자식 프로세스
- 모든 프로세스는 부모 프로세스에 종속되어 실행된다.
[프로세스와 관련된 주요 명령]
| 명령어 | 설명 |
| ps | 현재 프로세스의 상태를 확인하는 명령. |
| kill | 프로세스를 강제로 종료하는 명령 -9 옵션과 함께 사용하면 무조건 프로세스가 종료됨 |
| pstree | 부모 프로세스와 자식 프로세스의 관계를 트리 형태로 출력 |
서비스
- 서비스(service)는 프로세스를 의미하며 데몬(daemon)이라고도 불린다.
- 즉, 서비스는 웹 서버, 네임 서버, DB 서버 등의 프로세스를 지칭하는 말이다.
- 서비스는 눈에 보이지 않지만, 현재 시스템에서 동작 중인 프로세스이므로 백그라운드 프로세스의 일종이라고 할 수 있다.
- 서비스 : 평상시에 작동하는 서버 프로세스
- 소켓 : 필요할 때만 작동하는 서버 프로세스
- systemd라고 부르는 서비스 매니저 프로그램으로 서비스와 소켓을 작동시키거나 관리한다.
서비스의 특징
- 서비스는 시스템과는 무관하게 독립적으로 실행되는 프로세스다.
예) 웹 서버 서비스(httpd), DB 서버 서비스(mysqld), FTP 서버 서비스(vsftpd) - systemctl start/stop/restart 서비스이름 명령을 사용해 서비스를 실행하거나 종료한다.
웹 서버 서비스는 systemctl start httpd 명령으로 구동한다. - 서비스 실행 스크립트 파일의 이름은 /usr/lib/systemd/system/ 디렉터리에 '서비스이름.service'라는 형식으로 기록되어 있다.
- systemctl list-unit-files 명령을 실행하면 현재 설정된 자동 실행 여부를 확인할 수 있다.
소켓의 특징
- 필요할 때만 작동하는 서버 프로세스를 의미한다.
예) 텔넷 서버 - 소켓과 관련된 스크립트 파일의 이름은 /usr/lib/systemd/system 디렉터리에 '소켓이름.socket'이라는 형식으로 기록되어 있다.
'Linux > 기본' 카테고리의 다른 글
| Linux RAID (0) | 2026.06.04 |
|---|---|
| Linux 응급 복구 방법(root 비밀번호 복구) (0) | 2026.06.01 |
| Linux 파이프, 필터, 리디렉션 (0) | 2026.06.01 |
| Linux 네트워크 관련 설정과 명령어 (0) | 2026.06.01 |
| Linux 관리자를 위한 명령어 (0) | 2026.05.30 |