์ฝ˜ํ…์ธ ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

Linux Kernel โ€“ 1 Linux Kernel Overview ๐Ÿง 

์ปค๋„์˜ ์ •์˜์™€ ์—ญํ• 

์ปค๋„์€ ์šด์˜์ฒด์ œ์˜ ํ•ต์‹ฌ ๋ถ€๋ถ„ ์ค‘ ํ•˜๋‚˜๋‹ค.

ํ•ญ์ƒ ๋ฉ”๋ชจ๋ฆฌ์— ์ƒ์ฃผํ•˜๋ฉด์„œ ํ•˜๋“œ์›จ์–ด์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์‚ฌ์ด์—์„œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ์ด ์‹คํ–‰๋˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๋‹ค์–‘ํ•œ ์‹œ์Šคํ…œ ์ž์›๋“ค์„ ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ๋Šฅ๋„ ๋‹ด๋‹นํ•œ๋‹ค.

์ฆ‰, ์ปค๋„์€ ์ค‘๊ฐ„ ๋งค๊ฐœ์ฒด์ฒ˜๋Ÿผ ๋™์ž‘ํ•œ๋‹ค.

์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ๋ณต์žกํ•œ ํ•˜๋“œ์›จ์–ด๋ฅผ ์ง์ ‘ ์ œ์–ดํ•˜์ง€ ์•Š๋„๋ก ๋„์™€์ฃผ๊ณ , ๊ทธ ์‚ฌ์ด์—์„œ ์ผ๊ด€๋œ ์„œ๋น„์Šค์™€ ์ž์›์„ ์ œ๊ณตํ•œ๋‹ค.

์˜คํ”ˆ์†Œ์Šค ๊ธฐ๋ฐ˜์˜ ํ•™์Šต์„ฑ๊ณผ ์œ ์—ฐ์„ฑ

๋ฆฌ๋ˆ…์Šค ์ปค๋„์€ ์˜คํ”ˆ์†Œ์Šค๋กœ ๊ณต๊ฐœ๋˜์–ด ์žˆ๋‹ค.

์ปค๋„ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ๋ˆ„๊ตฌ๋‚˜ ํ™•์ธํ•˜๊ณ , ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ํ˜•ํƒœ๋‹ค.

์ด๋Ÿฐ ํŠน์ง•์€ ์‹œ์Šคํ…œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋‚˜ ๋ณด์•ˆ ๋ถ„์„, ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์ฒ˜๋Ÿผ

๋‚ฎ์€ ์ˆ˜์ค€์˜ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ ํฐ ์žฅ์ ์œผ๋กœ ์ž‘์šฉํ•œ๋‹ค.

์‹ค์ œ๋กœ ๋งŽ์€ ์„œ๋ฒ„์™€ ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์ด ๋ฆฌ๋ˆ…์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์šด์˜๋˜๊ณ  ์žˆ๋‹ค.

์ž์› ๊ด€๋ฆฌ์˜ ์ค‘์‹ฌ

์ปดํ“จํ„ฐ๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋žจ์„ ๋™์‹œ์— ์‹คํ–‰ํ•ด์•ผ ํ•œ๋‹ค.

์ด๋•Œ CPU ์‚ฌ์šฉ ์‹œ๊ฐ„, ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„, ๋””์Šคํฌ ์ ‘๊ทผ ์ˆœ์„œ ๋“ฑ์„ ํšจ์œจ์ ์œผ๋กœ ๋‚˜๋ˆ ์•ผ ํ•œ๋‹ค.

์ปค๋„์€ ์ด๋Ÿฌํ•œ ์ž์› ๋ถ„๋ฐฐ๋ฅผ ์ง์ ‘ ์ˆ˜ํ–‰ํ•˜๋Š” ์ค‘์‹ฌ ์—ญํ• ์„ ๋งก๊ณ  ์žˆ๋‹ค.

์ ์ ˆํ•œ ๋ถ„๋ฐฐ ์—†์ด๋Š” ์‹œ์Šคํ…œ์ด ๋А๋ ค์ง€๊ฑฐ๋‚˜ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•  ์ˆ˜๋ฐ–์— ์—†๋‹ค.

๋ฉ€ํ‹ฐํƒœ์Šคํ‚น ํ™˜๊ฒฝ์ด ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€๋˜๋Š” ๊ฒƒ๋„ ์ปค๋„ ๋•๋ถ„์ด๋‹ค.

์‹œ์Šคํ…œ ๋ณด์•ˆ๊ณผ ์•ˆ์ •์„ฑ ํ™•๋ณด

๋ชจ๋“  ํ”„๋กœ๊ทธ๋žจ์ด ์ž์œ ๋กญ๊ฒŒ ํ•˜๋“œ์›จ์–ด์— ์ ‘๊ทผํ•œ๋‹ค๋ฉด, ์‹œ์Šคํ…œ์€ ์‰ฝ๊ฒŒ ๋ฌด๋„ˆ์งˆ ์ˆ˜ ์žˆ๋‹ค.

ํŠนํžˆ ์•…์„ฑ ์ฝ”๋“œ๋‚˜ ์˜ค๋ฅ˜๋กœ ์ธํ•ด ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์ด๋‚˜ ์šด์˜์ฒด์ œ ์˜์—ญ์„ ์นจ๋ฒ”ํ•  ์ˆ˜ ์žˆ๋‹ค.

์ปค๋„์€ ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ œํ•œ๋œ ๋ฐฉ์‹์œผ๋กœ๋งŒ ์ ‘๊ทผ์„ ํ—ˆ์šฉํ•œ๋‹ค.

์‹œ์Šคํ…œ ์ฝœ์ด๋ผ๋Š” ํ†ต๋กœ๋ฅผ ํ†ตํ•ด์„œ๋งŒ ์ปค๋„ ๊ธฐ๋Šฅ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.

์ด๋Ÿฐ ๊ตฌ์กฐ๋Š” ์‹œ์Šคํ…œ์˜ ์•ˆ์ •์„ฑ๊ณผ ๋ณด์•ˆ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ํ•ต์‹ฌ์ ์ธ ์—ญํ• ์„ ํ•œ๋‹ค.

๋˜ํ•œ ๊ฐ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์„ ๋ถ„๋ฆฌํ•˜์—ฌ, ์ƒํ˜ธ ์นจ๋ฒ”์„ ์ฐจ๋‹จํ•œ๋‹ค.

์žฅ์น˜ ์ถ”์ƒํ™”์™€ ํ™•์žฅ์„ฑ

์ปค๋„์€ ๋‹ค์–‘ํ•œ ์žฅ์น˜๋ฅผ ์ถ”์ƒํ™”ํ•œ๋‹ค.
์žฅ์น˜๋งˆ๋‹ค ์ œ์–ด ๋ฐฉ์‹์€ ๋‹ค๋ฅด์ง€๋งŒ, ์ปค๋„์ด ์ค‘๊ฐ„์—์„œ ์ฒ˜๋ฆฌํ•จ์œผ๋กœ์จ ํ”„๋กœ๊ทธ๋žจ์€ ๋™์ผํ•œ ๋ฐฉ์‹์œผ๋กœ ์žฅ์น˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ํ•˜๋“œ๋””์Šคํฌ๋“  SSD๋“ , ํ”„๋กœ๊ทธ๋žจ์€ ๊ฐ™์€ API๋กœ ํŒŒ์ผ์„ ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ๋‹ค.
์ด์ฒ˜๋Ÿผ ์ปค๋„์€ ์žฅ์น˜์˜ ์ฐจ์ด๋ฅผ ๊ฐ์ถ”๊ณ , ์ผ๊ด€๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

๋˜ํ•œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ํ†ตํ•ด ์ƒˆ๋กœ์šด ์žฅ์น˜๋ฅผ ์‰ฝ๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ๋‹ค.
์ด ๋•๋ถ„์— ์‹œ์Šคํ…œ์˜ ํ™•์žฅ์„ฑ๋„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ํ™•๋ณด๋œ๋‹ค.

์‚ฌ์šฉ์ž์™€์˜ ์ง์ ‘ ์ƒํ˜ธ์ž‘์šฉ ๋ถ€์žฌ

์ปค๋„์€ ์ปดํ“จํ„ฐ ์ž์›์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•˜๋Š” ๊ตฌ์กฐ๋‹ค.
๋”ฐ๋ผ์„œ ์‚ฌ์šฉ์ž์™€์˜ ์ง์ ‘์ ์ธ ์ƒํ˜ธ์ž‘์šฉ์€ ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์‚ฌ์šฉ์ž๊ฐ€ ๋ช…๋ น์„ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ณ„๋„์˜ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
๋Œ€ํ‘œ์ ์œผ๋กœ ์‰˜(Shell) ๊ฐ™์€ ๋ช…๋ น์–ด ํ•ด์„๊ธฐ๊ฐ€ ์ด๋Ÿฐ ์—ญํ• ์„ ๋งก๋Š”๋‹ค.

์‰˜์€ ์‚ฌ์šฉ์ž์˜ ์ž…๋ ฅ์„ ๋ฐ›์•„ ์ปค๋„์ด ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ํ˜•ํƒœ๋กœ ์ „๋‹ฌํ•œ๋‹ค.
์ปค๋„์€ ์ด๋ฅผ ์ฒ˜๋ฆฌํ•œ ๋’ค ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
์ด ๊ณผ์ •์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์™€ ์‹œ์Šคํ…œ ๊ฐ„์˜ ์†Œํ†ต์ด ์ด๋ฃจ์–ด์ง„๋‹ค.

๋Š๊ธฐ

๋“œ๋ผ์ด๋ฒ„ ๊ธฐ๋ฐ˜ ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ์ƒˆ๋กœ์šด ํ•˜๋“œ์›จ์–ด๋ฅผ ์†์‰ฝ๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋จ

์žฅ์น˜ ๋…๋ฆฝ์„ฑ๊ณผ ์‹œ์Šคํ…œ ํ™•์žฅ์„ฑ์„ ๊ณ ๋ คํ•œ ์œ ์—ฐํ•œ ์ปค๋„ ๊ตฌ์กฐ ํ˜•ํƒœ๋กœ ์šด์˜

๐Ÿ”ง ์ปค๋„(Kernel)์ด๋ž€?

์ปค๋„์€ ์ปดํ“จํ„ฐ์˜ ํ•˜๋“œ์›จ์–ด์™€ ์†Œํ”„ํŠธ์›จ์–ด ์‚ฌ์ด๋ฅผ ์ค‘์žฌํ•˜๋Š” ์šด์˜์ฒด์ œ์˜ ํ•ต์‹ฌ ๊ตฌ์„ฑ ์š”์†Œ์ด๋‹ค.

ํ”„๋กœ์„ธ์Šค, ๋ฉ”๋ชจ๋ฆฌ, ํŒŒ์ผ, ์ž…์ถœ๋ ฅ ์žฅ์น˜ ๋“ฑ์„ ๊ด€๋ฆฌํ•˜๋ฉฐ ์‹œ์Šคํ…œ์˜ ์•ˆ์ •์„ฑ๊ณผ ์ž์› ๊ด€๋ฆฌ๋ฅผ ๋‹ด๋‹นํ•œ๋‹ค.

์„œ๋ฒ„ ๋ฐ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ์˜ ํ•„์ˆ˜ ์šด์˜์ฒด์ œ

๋Œ€๋ถ€๋ถ„์˜ ์›น ์„œ๋ฒ„์™€ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ(AWS, Azure, GCP)๋Š” ๋ฆฌ๋ˆ…์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค.

์„œ๋ฒ„ ์šด์˜, ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ, ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ํ™˜๊ฒฝ ๋Œ€์‘์„ ์œ„ํ•ด ๋ฆฌ๋ˆ…์Šค ๋ช…๋ น์–ด์™€ ์‹œ์Šคํ…œ ๊ตฌ์กฐ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•˜๋‹ค.

์˜คํ”ˆ์†Œ์Šค ๊ธฐ๋ฐ˜์œผ๋กœ ํ•™์Šต ๋ฐ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ์šฉ์ด

๋ฆฌ๋ˆ…์Šค๋Š” ์ปค๋„๋ถ€ํ„ฐ ์‚ฌ์šฉ์ž ๊ณต๊ฐ„๊นŒ์ง€ ์ „์ฒด ๊ตฌ์กฐ๊ฐ€ ๊ณต๊ฐœ๋˜์–ด ์žˆ๋‹ค.

์ง์ ‘ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•˜๊ฑฐ๋‚˜ ๊ตฌ์กฐ๋ฅผ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์œ ๋ฆฌํ•˜๋ฉฐ, ๋ณด์•ˆ ๋ถ„์„, ์‹œ์Šคํ…œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ์ž„๋ฒ ๋””๋“œ ์‹œ์Šคํ…œ ๋“ฑ
์ €์ˆ˜์ค€ ๊ฐœ๋ฐœ์— ๊ฐ•๋ ฅํ•œ ๊ธฐ๋ฐ˜์ด ๋œ๋‹ค.

๋ช…๋ น์–ด ๊ธฐ๋ฐ˜ ์ž๋™ํ™” ๋ฐ ๊ณ ๊ธ‰ ์šด์˜ ๊ธฐ๋Šฅ ์ œ๊ณต

Bash, crontab, systemd, ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € ๋“ฑ์˜ ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ์ž๋™ํ™”๋œ ์ž‘์—… ํ๋ฆ„์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋˜ํ•œ, ๋„คํŠธ์›Œํฌ ๋ถ„์„, ์‹œ์Šคํ…œ ๋ชจ๋‹ˆํ„ฐ๋ง, ๋กœ๊ทธ ๋ถ„์„ ๋“ฑ ๊ณ ๊ธ‰ ์šด์˜์— ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๋“ค์„ CLI ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ๊ณตํ•œ๋‹ค.

๐Ÿงฉ ์ปค๋„๊ณผ ์šด์˜์ฒด์ œ์˜ ์ฐจ์ด

์šด์˜์ฒด์ œ๋Š” ๋” ํฐ ๊ฐœ๋…์ด๋‹ค

์šด์˜์ฒด์ œ๋Š” ์ปค๋„, ๋””๋ฐ”์ด์Šค ๋“œ๋ผ์ด๋ฒ„, ์‹œ์Šคํ…œ ์œ ํ‹ธ๋ฆฌํ‹ฐ, ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋“ฑ์„ ๋ชจ๋‘ ํฌํ•จํ•˜๋Š” ์ƒ์œ„ ๊ฐœ๋…์ด๋‹ค.
ํ•˜๋“œ์›จ์–ด์™€ ์‚ฌ์šฉ์ž ๊ฐ„์˜ ์—ฐ๊ฒฐ์„ ๋‹ด๋‹นํ•˜๋Š” ์ „์ฒด ์‹œ์Šคํ…œ ๊ตฌ์„ฑ ์š”์†Œ๋‹ค.

์ปค๋„์€ ์šด์˜์ฒด์ œ์˜ ํ•ต์‹ฌ์ด๋‹ค

์ปค๋„์€ ์šด์˜์ฒด์ œ์˜ ๊ฐ€์žฅ ์ค‘์‹ฌ์ ์ธ ๋ถ€๋ถ„์œผ๋กœ,
ํ•˜๋“œ์›จ์–ด์™€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐ„์˜ ํ†ต์‹ ์„ ์ค‘๊ฐœํ•˜๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

๐Ÿ” ์ปค๋„์€ ์™œ ์กด์žฌํ•˜๋Š”๊ฐ€?

1. ํ•˜๋“œ์›จ์–ด์™€ ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ ์‚ฌ์ด์˜ ๋‹ค๋ฆฌ

์ปดํ“จํ„ฐ๋Š” ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜๋กœ ๊ตฌ์„ฑ๋œ๋‹ค.
CPU, ๋ฉ”๋ชจ๋ฆฌ, ์ €์žฅ์žฅ์น˜, ๋„คํŠธ์›Œํฌ ์นด๋“œ, ํ‚ค๋ณด๋“œ, ๋งˆ์šฐ์Šค ๋“ฑ ๊ฐ๊ฐ์˜ ๋™์ž‘ ๋ฐฉ์‹์€ ๋ชจ๋‘ ๋‹ค๋ฅด๋‹ค.
์ด ๋ณต์žกํ•œ ํ•˜๋“œ์›จ์–ด๋ฅผ ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์ด ์ง์ ‘ ๋‹ค๋ฃจ๊ธฐ๋Š” ์–ด๋ ต๋‹ค.
๊ทธ๋ž˜์„œ ์ปค๋„์ด ์ค‘๊ฐ„์—์„œ ์ค‘์žฌ์ž ์—ญํ• ์„ ํ•œ๋‹ค.

์ปค๋„์€ ํ•˜๋“œ์›จ์–ด ์ž์›์„ ์ถ”์ƒํ™”ํ•œ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ์ด๋ฅผ ํ†ต์ผ๋œ ๋ฐฉ์‹์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์— ์ œ๊ณตํ•œ๋‹ค.
๋•๋ถ„์— ํ”„๋กœ๊ทธ๋žจ์€ ํ•˜๋“œ์›จ์–ด์˜ ๋ณต์žกํ•จ์„ ๋ชฐ๋ผ๋„ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค.


2. ์ž์› ๊ด€๋ฆฌ์˜ ํ•ต์‹ฌ

์šด์˜์ฒด์ œ๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋žจ์ด ๋™์‹œ์— ์‹คํ–‰๋  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์•ผ ํ•œ๋‹ค.
์ด๋•Œ CPU, ๋ฉ”๋ชจ๋ฆฌ, ์ €์žฅ์†Œ, ์ž…์ถœ๋ ฅ ์žฅ์น˜ ๊ฐ™์€ ์ž์›์„ ์–ด๋–ป๊ฒŒ ๋‚˜๋ˆŒ์ง€๊ฐ€ ์ค‘์š”ํ•˜๋‹ค.

์ปค๋„์€ ์ž์›์˜ ๋ฐฐ๋ถ„์„ ๋งก๋Š”๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์ด CPU๋ฅผ ๋จผ์ € ์“ธ์ง€, ๋ฉ”๋ชจ๋ฆฌ๋Š” ์–ด๋””์— ๋ฐฐ์ •ํ• ์ง€ ๊ฒฐ์ •ํ•œ๋‹ค.

์ด๋Ÿฐ ์ž์› ๊ด€๋ฆฌ๋Š” ์šด์˜์ฒด์ œ์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์ด๋‹ค.
์ปค๋„์ด ์—†๋‹ค๋ฉด ๋ฉ€ํ‹ฐํƒœ์Šคํ‚น์ด๋‚˜ ๋ฉ”๋ชจ๋ฆฌ ๋ณดํ˜ธ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.


3. ์‹œ์Šคํ…œ์˜ ์•ˆ์ •์„ฑ๊ณผ ๋ณด์•ˆ ์œ ์ง€

๋งŒ์•ฝ ํ”„๋กœ๊ทธ๋žจ์ด ์ง์ ‘ ํ•˜๋“œ์›จ์–ด์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ํฐ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธธ ์ˆ˜ ์žˆ๋‹ค.
์‹ค์ˆ˜๋‚˜ ์•…์„ฑ ์ฝ”๋“œ๋กœ ์ธํ•ด ์‹œ์Šคํ…œ ์ „์ฒด๊ฐ€ ๋ฌด๋„ˆ์งˆ ์ˆ˜๋„ ์žˆ๋‹ค.

์ปค๋„์€ ์ด๋Ÿฌํ•œ ์œ„ํ—˜์„ ๋ง‰๊ธฐ ์œ„ํ•ด ์ ‘๊ทผ์„ ํ†ต์ œํ•œ๋‹ค.
์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์€ ์ปค๋„์„ ํ†ตํ•ด์„œ๋งŒ ํ•˜๋“œ์›จ์–ด ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.
์ด๋Ÿฐ ๋ฐฉ์‹์€ ์‹œ์Šคํ…œ ์ฝœ์ด๋ผ๊ณ  ํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ํ•œ ํ”„๋กœ๊ทธ๋žจ์ด ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฉ”๋ชจ๋ฆฌ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์€ ๊ธˆ์ง€๋œ๋‹ค.
์ด๋Ÿฌํ•œ ๊ฒฉ๋ฆฌ ๋•๋ถ„์— ๋ณด์•ˆ ์‚ฌ๊ณ ๋‚˜ ์ถฉ๋Œ์„ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ๋‹ค.


4. ์žฅ์น˜ ๋…๋ฆฝ์„ฑ๊ณผ ํ™•์žฅ์„ฑ ์ œ๊ณต

์ปค๋„์€ ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ์žฅ์น˜๋ฅผ ์ถ”์ƒํ™”ํ•œ๋‹ค.
๊ทธ๋ž˜์„œ ํ”„๋กœ๊ทธ๋žจ์€ ํ•˜๋“œ๋””์Šคํฌ๋“  SSD๋“  ์ƒ๊ด€์—†์ด ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํŒŒ์ผ์„ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋‹ค.

์žฅ์น˜๊ฐ€ ๋‹ฌ๋ผ๋„ ๋‚ด๋ถ€์ ์œผ๋กœ ์ปค๋„์ด ์•Œ์•„์„œ ์ฒ˜๋ฆฌํ•ด์ค€๋‹ค.
์ด ๋•๋ถ„์— ์žฅ์น˜ ๋…๋ฆฝ์„ฑ์ด ํ™•๋ณด๋œ๋‹ค.

๋˜ํ•œ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ํ†ตํ•ด ์ƒˆ๋กœ์šด ์žฅ์น˜๋ฅผ ์‰ฝ๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
์ปค๋„ ๊ตฌ์กฐ๋Š” ์ด๋Ÿฐ ํ™•์žฅ์„ฑ์„ ๊ณ ๋ คํ•ด ์„ค๊ณ„๋˜์–ด ์žˆ๋‹ค.

์ปค๋„ ๋‚ด๋ถ€์— ๊ตฌํ˜„๋œ ์ฃผ์š” ๊ธฐ๋Šฅ ํ•ญ๋ชฉ

์•„๋ž˜ ๊ธฐ๋Šฅ๋“ค์€ ์ปค๋„ ์†Œ์Šค์ฝ”๋“œ๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋ถ„์„ ๋Œ€์ƒ์ด ๋จ

Task(Process) Management

CPU๋ฅผ ์ถ”์ƒํ™”ํ•˜์—ฌ Task ๋‹จ์œ„๋กœ ์ž์› ์ œ๊ณต

Memory Management

๋ฉ”๋ชจ๋ฆฌ๋ฅผ Page, Segment๋กœ ์ถ”์ƒํ™”ํ•˜์—ฌ ์ž์› ์ œ๊ณต

File System

๋””์Šคํฌ๋ฅผ File๋กœ ์ถ”์ƒํ™”ํ•˜์—ฌ ์ž์› ์ œ๊ณต

Network Management

๋„คํŠธ์›Œํฌ ์žฅ์น˜๋ฅผ Socket์œผ๋กœ ์ถ”์ƒํ™”

Device Driver Management

๋‹ค์–‘ํ•œ ์™ธ๋ถ€ ์žฅ์น˜์— ๋Œ€ํ•œ ์ ‘๊ทผ ๊ธฐ๋Šฅ ์ œ๊ณต

Interrupt Handling

ํ•˜๋“œ์›จ์–ด ์ธํ„ฐ๋ŸฝํŠธ ์š”์ฒญ ์ฒ˜๋ฆฌ

I/O Communication

์ž…์ถœ๋ ฅ ์žฅ์น˜์™€์˜ ์ค‘๊ฐœ ๊ธฐ๋Šฅ ์ˆ˜ํ–‰

์ปค๋„ ์‹œ์Šคํ…œ ๊ตฌ์กฐ

์‹œ์Šคํ…œ์€ ๊ณ„์ธต์ ์œผ๋กœ ๊ตฌ์„ฑ๋˜๋ฉฐ, ๊ฐ ๊ณ„์ธต์˜ ์—ญํ• ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Œ

ArmV8 ์•„ํ‚คํ…์ฒ˜ ๊ธฐ๋ฐ˜์˜ ์ปค๋„ ๊ตฌํ˜„ ์‚ฌํ•ญ

User Space (Application)

์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์‹คํ–‰ํ•˜๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์˜์—ญ

Kernel

ํ”„๋กœ์„ธ์Šค, ๋ฉ”๋ชจ๋ฆฌ, ์žฅ์น˜ ๊ด€๋ฆฌ ๋“ฑ ํ•ต์‹ฌ ๊ธฐ๋Šฅ ๋‹ด๋‹น

Hardware

์‹ค์ œ ์žฅ์น˜(CPU, ๋ฉ”๋ชจ๋ฆฌ, ๋””๋ฐ”์ด์Šค)๋กœ ๊ตฌ์„ฑ๋œ ๋ฌผ๋ฆฌ์  ์ž์›

– User Space์™€ Kernel ๊ฐ„์—๋Š” System Call์„ ํ†ตํ•ด ์ƒํ˜ธ์ž‘์šฉ์ด ์ด๋ฃจ์–ด์ง

– ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ํ•˜๋“œ์›จ์–ด ์ž์›์„ ์ง์ ‘ ์ œ์–ดํ•˜์ง€ ์•Š๊ณ  ์ปค๋„์„ ํ†ตํ•ด ๊ฐ„์ ‘์ ์œผ๋กœ ์š”์ฒญ