๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

TIL (Today I Learned)/Linux

[Linux] ๋ช…๋ น์–ด ๋ฐฑ๊ทธ๋ผ์šด๋“œ

728x90

[Linux] ๋ช…๋ น์–ด ๋ฐฑ๊ทธ๋ผ์šด๋“œ

1. ํฌ๊ทธ๋ผ์šด๋“œ, ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ฐจ์ด์ 

  • ํฌ๊ทธ๋ผ์šด๋“œ ์ž‘์—…

    • ์‚ฌ์šฉ์ž๊ฐ€ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ํ„ฐ๋ฏธ๋„์—์„œ ์ž‘์—…์„ ์ž…๋ ฅํ•œ ๋ช…๋ น์„ ํ•ด์„ํ•˜์—ฌ ์‹คํ–‰
    • ๊ฒฐ๊ณผ๋ฅผ ํ™”๋ฉด์— ์ถœ๋ ฅ
    • ์ถœ๋ ฅ๋œ ๊ฒฐ๊ณผ ํ™”๋ฉด์„ ๋ณด๊ณ  ๋‹ค์‹œ ๋ช…๋ น์„ ์ž…๋ ฅํ•˜๋Š” ๋Œ€ํ™”์‹ ์ž‘์—…
    • ์ž…๋ ฅํ•œ ๋ช…๋ น์–ด ์‹คํ–‰์ด ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋ฐฉ์‹์ด ํฌ๊ทธ๋ผ์šด๋“œ ๋ฐฉ์‹
    • sleep 9999999 &

      image
  • ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ž‘์—…

    • ๋ฐฑ๊ทธ๋ผ์šด๋“œ ๊ธฐ๋Šฅ์€ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰๋˜๋Š” ๋™์•ˆ ๋‹ค๋ฅธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹คํ–‰ ๊ฐ€๋Šฅ
    • ํ•˜๋‚˜์˜ ์‰˜์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋™์‹œ์— ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ์‹
    • ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๊ณง๋ฐ”๋กœ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ ๊ฐ€๋Šฅ
    • ํ•„์š”ํ•œ ์—ฌ๋Ÿฌ ์ž‘์—… ๋™์‹œ์— ์ง„ํ–‰ํ•˜๋ฉด์„œ ํฌ๊ทธ๋ผ์šด๋“œ ์ž‘์—…์„ ๊ณ„์† ์ง„ํ–‰ ๊ฐ€๋Šฅ
    • ํ•ด๋‹น ๋ช…๋ น์–ด ์ฒ˜๋ฆฌ๊ฐ€ ์˜ค๋ž˜ ๊ฑธ๋ฆด๊ฑธ ๋Œ€๋น„ํ•ด ๋ฐฑ๊ทธ๋ผ์šด๋“œ๋ฅผ ์ด์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ
    • ์‹คํ–‰ ๋ฐฉ๋ฒ•์€ & ๊ธฐํ˜ธ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ๊ฐ€๋Šฅ
    • sleep 9999999 &

      image

2. jobs ๋ช…๋ น์–ด

  • jobs ์‹คํ–‰์ค‘์ธ ๋ฐฑ๊ทธ๋ผ์šด๋“œ๊ฐ€ ๋ชฉ๋ก์œผ๋กœ ์ถœ๋ ฅ

    image

  • jobs -l ๊ณ ์œ  job id๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค.

    image

  • ํ”„๋กœ์„ธ์Šค ID ์ถœ๋ ฅ

    image

  • ์„ธ์…˜์˜ ์ƒํƒœ๊ฐ’

    • Running : ์ž‘์—…์ด ์ข…๋ฃŒํ•˜์ง€ ์•Š๊ณ  ๊ณ„์† ์ง„ํ–‰ ์ค‘
    • Done : ์ž‘์—…์ด ์™„๋ฃŒ๋˜์–ด 0์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ์ข…๋ฃŒ ํ•จ
    • Stopped : ์ž‘์—…์ด ์ผ์‹œ ์ค‘๋‹จ
    • Done(code) : ์ž‘์—…์ด ์ •์ƒ์  ์™„๋ฃŒ ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜
    • Stopped(SIGTSTP) : SIGTSTP ์‹ ํ˜ธ๊ฐ€ ์ž‘์—…์„ ์ผ์‹œ ์ค‘๋‹จ
    • Stopped(SIGSTOP) : SIGSTOP ์‹ ํ˜ธ๊ฐ€ ์ž‘์—…์„ ์ผ์‹œ ์ค‘๋‹จ
    • Stopped(SIGTTIN) : SIGTTIN ์‹ ํ˜ธ๊ฐ€ ์ž‘์—…์„ ์ผ์‹œ ์ค‘๋‹จ
    • Stopped(SIGTTOU) : SIGTTOU ์‹ ํ˜ธ๊ฐ€ ์ž‘์—…์„ ์ผ์‹œ ์ค‘๋‹จ

    3. $ ๋ช…๋ น์–ด &

  • ๋ช…๋ น์–ด ๋’ค์— & ๋ถ™์ด๋ฉด ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์—์„œ ์ž‘์—…์„ ์‹คํ–‰

  • $ ./main &

    image

  • Ctrl + z ๋กœ ํ˜„์žฌ ํ”„๋กœ๊ทธ๋žจ์„ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰๋˜๋„๋ก ํ•จ

  • fg % 1

    image

  • % ๋‹ค์Œ์˜ ์ˆซ์ž๋Š” stopped ์•ž์˜ ๋Œ€๊ด„ํ˜ธ ์ˆซ์ž ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋ฉด ํ•ด๋‹น ์ž‘์—… ๋™์ž‘

  • 6์„ ์ž…๋ ฅํ•˜๋ฉด EXIT๋กœ ์ข…๋ฃŒ (./main์˜ ์ข…๋ฃŒ ์กฐ๊ฑด์ด 6์„ ์ž…๋ ฅ ๋ฐ›๋Š” ๊ฒƒ์ด๋‹ค. ์ฝ”๋“œ ๋ณด๊ธฐ)

4. kill ๋ช…๋ น์–ด

  • $ kill -9 ํ”„๋กœ์„ธ์ŠคID
  • ํ•ด๋‹น ํ”„๋กœ์„ธ์Šค์˜ ID๋ฅผ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ps ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด์„œ pid๋ฅผ ์•Œ์•„๋‚ธ๋‹ค.
  • ps auxf or ps auxf | grep ๊ฒ€์ƒ‰ํ‚ค์›Œ๋“œ

    image
  • kill -9 19070 ๋ช…๋ น์–ด ์‹คํ–‰์„ ํ†ตํ•ด์„œ ID๊ฐ€ 19070์ธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ข…๋ฃŒ
    image
  • kill % job_id

    image
    image

์ฐธ์กฐ

๋ฆฌ๋ˆ…์Šค ๋ช…๋ น์–ด ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์‹คํ–‰

๋ฆฌ๋ˆ…์Šค - ํฌ๊ทธ๋ผ์šด๋“œ, ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ฐจ์ด๋Š”?

๋ฆฌ๋ˆ…์Šค - ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰์ค‘์ธ ํ”„๋กœ์„ธ์Šค ํ™•์ธ ๋ช…๋ น์–ด/jobs

background process ์ข…๋ฃŒํ•˜๋Š” ๋ฒ•