리눅스 프로세스 & 서비스 & 소켓

조민철·2024년 6월 2일

Linux

목록 보기
3/5

프로세스

프로세스란 프로그램이 실행되면 메모리에 로딩되는데 로딩되는데 로딩이 되어 활성화되면 프로세스(Process)라고 부른다. 우리가 CPU라고 말하는 중앙처리장치를 프로세서라고 부리기도 하는데 프로세서가 프로세스를 처리하는 구조이다.
프로세스 종류에도 포그라운드 프로세스 또는 백그라운드 프로세스가 있다.

  • 포그라운드 프로세스
    • 화면에서 실행 되고 있는 프로세스 즉, 사용자가 화면에서 인지하고 볼 수 있는 프로세스를 말한다.
  • 백그라운드 프로세스
    • 프로세스가 실행은 되었지만 화면상으로 나타나지 않는 프로세스를 말함
  • 프로세스 번호
    • 메모리에 로딩되어 활성화된 프로세스를 구분할려면 고유번호가 필요하다. 그래서 고유번호를 할당하게 되는데 그 번호를 프로세스 번호하고 칭한다. 프로세스 번호가 필요한 이유는 특정 프로세스를 찾아 제거를 하기 위함이다.
  • 부모 프로세스 & 자식 프로세스
    • 모든 프로세스는 독립적으로 실행 되는것이 아닌 부모 프로세스에 종속되어 실행됨. 이 말은 즉, 부모 프로세스를 종료 하게된다면 자식도 같이 종료가 된다는 것을 의미한다.$ pstree라는 명령어로 프로세스를 트리형태로 확인가능하다. 프로세스가 부모, 자식으로 나눠어져 있는것을 확인이 가능하다.

서비스

서비스는 서버 프로세스를 의미하며 또 다른 말로 데몬이라고도 불린다. 서비스는 웹서버, 네임서버, DB서버를 지칭한다.

  • 웹 서버(HTTPD), DB서버, FTP(VSFTP)서버 등
  • $ systemctl start/stop/restart [서비스명] 명령을 사용해 서비스 실행 및 종료

소켓

서비스와 소켓의 차이는 서비스는 항상 작동하는 서버 프로세스이고 소켓은 필요할 때 만 작동하는 서버 프로세스이다.

  • 필요할 때만 작동하는 서버 프로세스
  • 외부에서 특정 서비스를 요청할 경우 systemd가 소켓 구동
profile
기록의 힘은 대단하다

0개의 댓글