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

CS

Process ๋ž€?

์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ์„ ๋œปํ•˜๋ฉฐ, ์‹คํ–‰ํŒŒ์ผ(program)์ด memory์— ์ ์žฌ๋˜์–ด CPU์— ์˜ํ•ด ์‹คํ–‰(์—ฐ์‚ฐ)๋˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.

 

์˜ˆ๋ฅผ ๋“ค์–ด,

  • ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ ํ›„ ์ €์žฅ์„ ํ•˜๋ฉด ํ•˜๋“œ๋””์Šคํฌ์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์„ ํ”„๋กœ๊ทธ๋žจ์ด๋ผ ๋ถ€๋ฅธ๋‹ค.
  • CPU๋Š” ํ•˜๋“œ๋””์Šคํฌ์— ์ €์žฅ๋œ ํ”„๋กœ๊ทธ๋žจ์„ ์ฝ์„ ์ˆ˜ ์—†๋‹ค. RAM memory์— ์˜ฌ๋ผ์™€์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ๋งŒ ์ฝ์„ ์ˆ˜ ์žˆ๋‹ค.
  • ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•ด RAM memory์— ์ ์žฌ๋ฅผ ํ•˜๊ณ  CPU๋ฅผ ํ• ๋‹น๋ฐ›๋Š”๋‹ค.

์—ฌ๊ธฐ๊นŒ์ง€์˜ ๊ณผ์ •์„ ๊ฐ€์ง€๋ฉด ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋œ๋‹ค.

 

RAM Memory ์ ์žฌ

memory๋Š” CPU๊ฐ€ ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์ปดํ“จํ„ฐ ๋‚ด๋ถ€์˜ ๊ธฐ์–ต์žฅ์น˜์ด๋‹ค. program์ด CPU์—์„œ ์‹คํ–‰๋˜๋ ค๋ฉด ํ•ด๋‹น ๋‚ด์šฉ์ด memory์— ์ ์žฌ๋œ ์ƒํƒœ์—ฌ์•ผ ํ•œ๋‹ค.

 

๋ฉ”๋ชจ๋ฆฌ ์—ญ์—ญ์—๋Š” ํฌ๊ฒŒ stack, heep, data, code ์˜์—ญ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด์žˆ์œผ๋ฉฐ, ๊ฐ process๋งˆ๋‹ค ๋…๋ฆฝ์ ์œผ๋กœ ํ• ๋‹น์„ ๋ฐ›๋Š”๋‹ค.

 

code ์‹คํ–‰ํ•  ํ”„๋กœ๊ทธ๋žจ์˜ ์ฝ”๋“œ๊ฐ€ ์ €์žฅ๋˜๋Š” ์—ญ์—ญ์ด๋‹ค. 
data ํ”„๋กœ๊ทธ๋žจ์˜ ์ „์—ญ ๋ณ€์ˆ˜์™€ static๋ณ€์ˆ˜๊ฐ€ ์ €์žฅ๋˜๋Š” ์˜์—ญ์ด๋‹ค.
heap ๋Ÿฐํƒ€์ž„ ์ค‘์— ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น์ด ๋˜๋Š” ๋™์  ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ์˜์—ญ์ด๋‹ค.
stack ํ•จ์ˆ˜ ํ˜ธ์ถœ ์‹œ ์ƒ์„ฑ๋˜๋Š” ์ง€์—ญ ๋ณ€์ˆ˜์™€ ๋งค๊ฐœ ๋ณ€์ˆ˜๊ฐ€ ์ €์žฅ๋˜๋Š” ์ž„์‹œ ์˜์—ญ์ด๋‹ค.

 

CPU์˜ ์—ฐ์‚ฐ

ํ”„๋กœ๊ทธ๋žจ์˜ ์ฝ”๋“œ๋ฅผ CPU๊ฐ€ ์‹ค์ œ๋กœ ์—ฐ์‚ฐ์„ ํ•ด์•ผ๋งŒ ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋œ๋‹ค. 

CPU ๋‚ด๋ถ€์— PC register๊ฐ€ code ์˜์—ญ์˜ ๋‹ค์Œ ๋ช…๋ น์–ด์˜ ์ฃผ์†Œ ๊ฐ’์„ ์ˆœ์ฐจ์ ์œผ๋กœ ๊ฐ€๋ฆฌํ‚ค๊ฒŒ ๋˜๊ณ  ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ CPU๊ฐ€ ์—ฐ์‚ฐํ•˜๊ฒŒ ๋˜๋ฉด์„œ process๊ฐ€ ์‹คํ–‰๋œ๋‹ค.

 

 

'CS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

http ์™€ https  (0) 2022.08.01
๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง ๊ณผ์ • ์ดํ•ดํ•˜๊ธฐ  (0) 2022.06.18