리눅스는 한번에 수 백 여개 이상의 프로그램을 저장하고 동시에 수행할 수 있엉.
프로그램이란 어떤 문제를 해결하기 위해 사용되는 명령어나 유틸리티의 집한인데,
실행중인 프로그램을 프로세스(Process)라고 하고 실행 시에 PID(Process Identity)가 할당되어 관리되지. 프로세스는 두개로 크게 나눌 수 있는데 백그라운드(Background) 프로세스, 사용자 입력에 관계없이 실행되는 프로세스와 명령입력 후 수행 종료까지 기다려야하는 포어그라운드(Foreground) 프로세스가 있엉.
fork
: 새로운 프로세스를 위해 메모리를 할당받아 복사본 형태의 프로세스를 실행하는 형태. 기존 프로세스는 계속 실행되어 있다. exec
: 원래 프로세스를 새로운 프로세스로 대체하는 형태로 호출한 프로세스의 메모리에 새로운 프로세스의 코드를 덮어씌워 버린다.jobs
로 작업 번호를 확인.fg 작업번호
를 입력하여 원하는 작업을 전환bg
로 백그라운드 프로세스로 전환jobs
로 확인프로세스 끼리 서로 통신할 때 다양한 신호를 보내어 작업을 진행할 수 있음.
데몬은 주기적이고 지속적인 서비스 요청을 처리하기 위해 계속 실행되는 프로세스! 백그라운드로 실행된다. 보통 이름 뒤에 d
가 붙는다.
inetd
방식standalone
방식보통 부팅시에 실행됨! CentOS7 버전 부터는 systemd
기반으로 동작하여 systemctl
명령을 활용해서 데몬을 제어.