[์šด์˜์ฒด์ œ] ์šด์˜์ฒด์ œ(OS, Operating System)

๐Ÿ“ ์ด ๊ธ€์€ CS ์Šคํ„ฐ๋””๋ฅผ ์ง„ํ–‰ํ•˜๋ฉฐ ๊ฐœ์ธ์ ์œผ๋กœ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.
ํ‹€๋ฆฐ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ์•Œ๋ ค์ฃผ์„ธ์š”. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.๐Ÿ™‡‍โ™€๏ธ๐ŸŒŸ

 

๐ŸŽˆ์šด์˜์ฒด์ œ

๐Ÿงฉ ์šด์˜์ฒด์ œ๋ž€ ?

์šด์˜์ฒด์ œ(OS, Operating System)๋ž€ ํ•˜๋“œ์›จ์–ด ์œ„์— ์„ค์น˜๋˜์–ด ํ•˜๋“œ์›จ์–ด ๊ณ„์ธต๊ณผ ๋‹ค๋ฅธ ์†Œํ”„ํŠธ์›จ์–ด ๊ณ„์ธต์„ ์—ฐ๊ฒฐํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ณ„์ธต์ด๋‹ค.

์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์˜ ์ž์›์„ ๊ด€๋ฆฌํ•˜๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ์ปดํ“จํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•œ๋‹ค.

 

๐Ÿงฉ ์šด์˜์ฒด์ œ์˜ ๋ชฉ์ 

OS๋Š” ํ•œ์ •๋œ ์ปดํ“จํ„ฐ ์ž์›์„ ๊ด€๋ฆฌํ•˜๋Š” ์‹œ์Šคํ…œ์ด๋‹ค. ์ด๋Ÿฌํ•œ ์—ญํ• ์— ๊ธฐ๋ฐ˜ํ•ด OS๋Š” 4๊ฐ€์ง€ ์—ญํ• ์ด ์žˆ๋‹ค.

 

์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ(throughput) ํ–ฅ์ƒ

  • OS๋Š” ์ž์› ๊ด€๋ฆฌ๋ฅผ ํ†ตํ•ด ์ผ์ • ์‹œ๊ฐ„ ๋‚ด์— ์‹œ์Šคํ…œ์ด ์ฒ˜๋ฆฌํ•˜๋Š” ์ผ์˜ ์–‘์„ ํ–ฅ์ƒ์‹œํ‚จ๋‹ค.

๋ฐ˜ํ™˜ ์‹œ๊ฐ„(turnaround time) ๋‹จ์ถ•

  • OS๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์‹œ์Šคํ…œ์— ์š”์ฒญํ•œ ์ž‘์—…์„ ์™„๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์„ ๋‹จ์ถ•์‹œํ‚จ๋‹ค.

์‚ฌ์šฉ ๊ฐ€๋Šฅ๋„(availability) ํ–ฅ์ƒ

  • ์‚ฌ์šฉ ๊ฐ€๋Šฅ๋„๋Š” ์‹œ์Šคํ…œ ์ž์›์„ ์–ผ๋งˆ๋‚˜ ๋นจ๋ฆฌ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š”๊ฐ€๋ฅผ ์˜๋ฏธํ•œ๋‹ค. OS๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ปดํ“จํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•  ๋•Œ ์ž์›์„ ์ฆ‰์‹œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.

์‹ ๋ขฐ๋„(reliability) ํ–ฅ์ƒ

  • ์‹ ๋ขฐ๋„๋Š” ์‹œ์Šคํ…œ์ด ์ฃผ์–ด์ง„ ๋ฌธ์ œ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ํ‘ธ๋Š”์ง€๋ฅผ ์˜๋ฏธํ•œ๋‹ค. OS๋Š” ์ž…๋ ฅ ๊ฐ’์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ๊ฒฐ๊ณผ ๊ฐ’์„ ์ค„ ์ˆ˜ ์žˆ๋„๋ก ์‹ ๋ขฐ๋„๋ฅผ ํ–ฅ์ƒํ•ด์•ผ ํ•œ๋‹ค.

 

๐Ÿงฉ CPU์™€ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ

CPU(Central Processing Unit, ์ค‘์•™ ์ฒ˜๋ฆฌ ์žฅ์น˜)๋ž€ ์ปดํ“จํ„ฐ์˜ ๋‡Œ ์—ญํ• ์„ ํ•˜๋ฉฐ, ์ปดํ“จํ„ฐ์—์„œ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์—ฐ์‚ฐ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ˆ˜ํ–‰ํ•œ๋‹ค.

๋‹ค๋ฅธ ๋ง๋กœ, ํ”„๋กœ์„ธ์„œ(processor)๋ผ๊ณ  ํ•œ๋‹ค.

 

๋ฉ”๋ชจ๋ฆฌ๋ž€ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ์–ต์žฅ์น˜์ด๋‹ค. ๋ฉ”๋ชจ๋ฆฌ๋Š” ํœ˜๋ฐœ์„ฑ ๋ฉ”๋ชจ๋ฆฌ์ธ ์ฃผ ๊ธฐ์–ต์žฅ์น˜์™€ ๋น„ํœ˜๋ฐœ์„ฑ ๋ฉ”๋ชจ๋ฆฌ์ธ ๋ณด์กฐ ๊ธฐ์–ต์žฅ์น˜๊ฐ€ ์žˆ๋‹ค.

 

์ฃผ ๊ธฐ์–ต์žฅ์น˜ - ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ

  • RAM

๋ณด์กฐ ๊ธฐ์–ต ์žฅ์น˜

  • SSD(Solid State Drive)
  • HDD(Hard Disk Drive)

 

๐Ÿ’พ ๋ฉ”๋ชจ๋ฆฌ์˜ ๊ณ„์ธต ๊ตฌ์กฐ

๋ฉ”๋ชจ๋ฆฌ๋Š” CPU์—์„œ ๋นจ๋ฆฌ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ณ„์ธต ๊ตฌ์กฐ๋กœ ๋‚˜๋‰œ๋‹ค.

๋ ˆ์ง€์Šคํ„ฐ(register)

  • CPU๊ฐ€ ์‚ฌ์šฉ์ž ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ž„์‹œ๋กœ ์ €์žฅํ•˜๋Š” ๊ธฐ์–ต์žฅ์น˜๋‹ค.
  • CPU ๋‚ด๋ถ€์— ์กด์žฌํ•˜๋ฉฐ ์ ‘๊ทผ ์†๋„๊ฐ€ ๋น ๋ฅด๋‹ค.

์บ์‹œ ๋ฉ”๋ชจ๋ฆฌ(cache memory)

  • CPU์™€ RAM ์‚ฌ์ด์˜ ์†๋„ ์ฐจ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ์–ต์žฅ์น˜๋‹ค.
  • CPU ๋‚ด๋ถ€์— ์œ„์น˜ํ•˜๋ฉฐ ์ ‘๊ทผ ์†๋„๊ฐ€ ๋ ˆ์ง€์Šคํ„ฐ ๋‹ค์Œ์œผ๋กœ ๋น ๋ฅด๋‹ค.

RAM(Random Access Memory)

  • ์ปดํ“จํ„ฐ์—์„œ ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•  ๋•Œ ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ์ €์žฅํ•œ๋‹ค.
  • CPU์—์„œ ์ ‘๊ทผ ์†๋„๊ฐ€ ํ•˜๋“œ ๋””์Šคํฌ๋ณด๋‹ค ๋น ๋ฅด๊ณ , ํœ˜๋ฐœ์„ฑ ๊ธฐ์–ต์žฅ์น˜๋‹ค.

ํ•˜๋“œ ๋””์Šคํฌ(hard disk)

  • ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ์™€ ํ”„๋กœ๊ทธ๋žจ์„ ์ €์žฅํ•˜๊ณ , ๋น„ํœ˜๋ฐœ์„ฑ ๊ธฐ์–ต์žฅ์น˜๋‹ค.

 

ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ฉด OS๊ฐ€ ๋””์Šคํฌ์— ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋ฉ”๋ชจ๋ฆฌ๋กœ ๋กœ๋“œ(load)ํ•œ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ํ”„๋กœ์„ธ์Šค(process)๋ผ๊ณ  ํ•˜๋ฉฐ, CPU๊ฐ€ ์ฒ˜๋ฆฌํ•œ๋‹ค.

CPU๋Š” ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋งŒ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์–ด์„œ ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค ํ™˜๊ฒฝ์—์„œ๋Š” OS๊ฐ€ ์Šค์ผ€์ค„๋ง์„ ํ†ตํ•ด CPU์— ํ”„๋กœ์„ธ์Šค๋ฅผ ํ• ๋‹นํ•œ๋‹ค.

 

๐Ÿงฉ ์ปค๋„๊ณผ ์‹œ์Šคํ…œ ์ฝœ

์ปค๋„(Kernel)์ด๋ž€ OS์˜ ํ•ต์‹ฌ ์š”์†Œ๋กœ, ์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด์™€ ํ”„๋กœ์„ธ์Šค์˜ ๋ณด์•ˆ, ์ž์› ๊ด€๋ฆฌ, ํ•˜๋“œ์›จ์–ด ์ถ”์ƒํ™” ๊ฐ™์€ ์ค‘์š”ํ•œ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. ํŠนํžˆ ์ž์› ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด CPU ์Šค์ผ€์ค„๋ง, ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ, ์ž…์ถœ๋ ฅ ๊ด€๋ฆฌ, ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ ๋“ฑ์„ ๋‹ด๋‹นํ•œ๋‹ค.

์šด์˜์ฒด์ œ๋Š” ์ปค๋„์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ์ค‘์š” ์ž์›์— ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•˜์ง€ ๋ชปํ•˜๋„๋ก ์ปค๋„ ๋ชจ๋“œ(Kernel mode)์™€ ์‚ฌ์šฉ์ž ๋ชจ๋“œ(user mode)๋กœ ๋‚˜๋ˆˆ๋‹ค.

 

์ปค๋„ ๋ชจ๋“œ

  • ํ•˜๋“œ์›จ์–ด์— ์ง์ ‘ ์ ‘๊ทผํ•ด ๋ฉ”๋ชจ๋ฆฌ, CPU์™€ ๊ฐ™์€ ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์‚ฌ์šฉ์ž ๋ชจ๋“œ

  • ์ปค๋„ ๋ชจ๋“œ์˜ ์ž์›์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋„๋ก ์ œํ•œ์„ ๋‘”๋‹ค.

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

 

์‹œ์Šคํ…œ ์ฝœ(System call)์ด๋ž€ ์‚ฌ์šฉ์ž ๋ชจ๋“œ์—์„œ ์ปค๋„ ๋ชจ๋“œ์— ์ ‘๊ทผํ•ด ํ•„์š”ํ•œ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ์‹œ์Šคํ…œ ํ•จ์ˆ˜๋‹ค.

์ปค๋„์€ ์‹œ์Šคํ…œ ์ฝœ๋กœ ๋ฐ›์€ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•œ ํ›„ ๋‹ค์‹œ ์‹œ์Šคํ…œ ์ฝœ๋กœ ๊ฒฐ๊ณผ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

์‹œ์Šคํ…œ ์ฝœ์„ ์‚ฌ์šฉํ•ด ํ”„๋กœ์„ธ์Šค ์ œ์–ด, ํŒŒ์ผ ์กฐ์ž‘, ์žฅ์น˜ ๊ด€๋ฆฌ, ๋ฐ์ดํ„ฐ์˜ ์œ ์ง€ ๋ณด์ˆ˜, ํ†ต์‹ , ๋ณดํ˜ธ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 

 

๐Ÿ“ƒ reference