CS ๐Ÿ’ป/์šด์˜์ฒด์ œ

์šด์˜์ฒด์ œ(Operating System : OS)๋ž€?์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด ๋ฐ”๋กœ ์œ„์— ์„ค์น˜๋˜์–ด ์‚ฌ์šฉ์ž ๋ฐ ๋‹ค๋ฅธ ๋ชจ๋“  ์†Œํ”„ํŠธ์›จ์–ด์™€ ํ•˜๋“œ์›จ์–ด๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ณ„์ธต  ์šด์˜์ฒด์ œ์˜ ๋ชฉ์ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์„ ํŽธํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ด์ค€๋‹ค.์ปดํ“จํ„ฐ๋Š” ํ•˜๋“œ์›จ์–ด ์ž์›(CPU, ๋ฉ”๋ชจ๋ฆฌ, Input/output ์žฅ์น˜(์ดํ•˜ I/O ์žฅ์น˜) ๋“ฑ)์œผ๋กœ ์ด๋ฃจ์–ด์ ธ์žˆ๋‹ค. ์ด ํ•˜๋“œ์›จ์–ด์˜ ๊ด€๋ฆฌ๋ฐฉ๋ฒ•, ์ž‘๋™๋ฐฉ์‹์„ ๋ชฐ๋ผ๋„ ์ปดํ“จํ„ฐ๋ฅผ ์šฐ๋ฆฌ๋Š” ์ „์›๋ฒ„ํŠผ๋งŒ ๋ˆ„๋ฅด๋ฉด ํŽธํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํŽธํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š”๊ฑด ์šด์˜์ฒด์ œ๋ผ๋Š” ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค!์šด์˜์ฒด์ œ๋Š” ๋™์‹œ ์‚ฌ์šฉ์ž/ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ๊ฐ๊ฐ ๋…์ž์  ์ปดํ“จํ„ฐ์—์„œ ์ˆ˜ํ–‰๋˜๋Š”๊ฒƒ ๊ฐ™์€ ํ™˜์ƒ์„ ์ œ๊ณตํ•œ๋‹ค.๋™์‹œ ํ”„๋กœ๊ทธ๋žจ์ผ ๊ฒฝ์šฐ : ์‚ฌ์šฉ์ž๊ฐ€ ์ปดํ“จํ„ฐ์—์„œ ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋žจ์„ ๋Œ๋ฆฐ๋‹ค. ์Œ์•… ํ”„๋กœ๊ทธ๋žจ, snsํ”„๋กœ๊ทธ๋žจ, ๊ฒ€..
i-list๊ฐ€ ์–ด๋–ป๊ฒŒ data block์— ์ ‘๊ทผํ•˜๋Š”๊ฐ€? i-list์˜ 'i'๋Š” index์˜ ์•ฝ์ž์ด๋‹ค. i-list์—๋Š” i-node๋“ค์ด ์žˆ๋‹ค ํ•˜๋‚˜์˜ i-node์—” ํŒŒ์ผ ์–ดํŠธ๋ฆฌ๋ทฐํŠธ(ํŒŒ์ผ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ)๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๊ณ , ํŒŒ์ผ์— ๋Œ€ํ•œ ์ธ๋ฑ์Šค ํฌ์ธํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ์ด ์ธ๋ฑ์Šค ํฌ์ธํ„ฐ๋Š” ํŒŒ์ผ์˜ ์œ„์น˜์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ์ด๋‹ค. Direct pointer(ํฌ์ธํ„ฐ)๋Š” ์ตœ๋Œ€ 12๊ฐœ๊นŒ์ง€ ์žˆ๋‹ค. Direct pointer๊ฐ€ 12๊ฐœ ์ด์ƒ ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—” Single indirect pointer, Double indirect pointer, Triple indirect pointer๋ฅผ ์ด์šฉํ•œ๋‹ค. i-node์˜ 0๋ฒˆ๋ถ€ํ„ฐ 11๋ฒˆ์งธ ๋””๋ ‰ํ† ๋ฆฌ ๊นŒ์ง€ direct pointer๋ฅผ ๋‹ค์ผ๋‹ค๋ฉด 12๋ฒˆ์งธ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. 12๋ฒˆ์งธ ๋””๋ ‰ํ† ๋ฆฌ๋Š” data..
Bootstrap program(Bootstrop loader) ์ปดํ“จํ„ฐ๊ฐ€ ๋ถ€ํŒ…ํ• ๋•Œ ๋˜๋Š” ์žฌ๋ถ€ํŒ…ํ• ๋•Œ ๋Œ์•„๊ฐ€๋Š” ํ”„๋กœ๊ทธ๋žจ ROM ๋˜๋Š” EEPROM์— ์ €์žฅ๋˜์–ด์žˆ๋‹ค. ์ด๋“ค์„ firmware์ด๋ผ๊ณ  ํ•œ๋‹ค. RAM์€ ํœ˜๋ฐœ์„ฑ ๋ฉ”๋ชจ๋ฆฌ, ROM์€ ์ „๊ธฐ๊ฐ€ ๊บผ์ ธ๋„ ์ €์žฅ๋˜์–ด์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ๋‹ค. EEPROM์€ ROM์˜ ์ข…๋ฅ˜ ์ค‘ ํ•˜๋‚˜์ด๋‹ค. firmware์€ hardware์™€ software์˜ ์ค‘๊ฐ„์ด๋ผ๊ณ  ๋ณด๋ฉด๋œ๋‹ค. hardware๋Š” ์ˆ˜์ •์ด ์–ด๋ ต๊ณ , software์€ ์ˆ˜์ •์ด ์‰ฝ๋‹ค๋ฉด, firmware์€ ํ•˜๋“œ์›จ์–ด ์žฅ๋น„๊ธด ํ•œ๋ฐ, ์†Œํ”„ํŠธ์›จ์–ด์ฒ˜๋Ÿผ ์ˆ˜์ •๋„ ์‰ฝ๋‹ค ์‹œ์Šคํ…œ์˜ ๋ชจ๋“  ๊ด€์ ์—์„œ ์ดˆ๊ธฐํ™”๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.(=POST(Power On Self Test)๋ฃจํ‹ด์„ ์‹คํ–‰ํ•œ๋‹ค). CPU๊ฐ€ ์ž˜๋Œ์•„๊ฐ€๋Š”์ง€, ๋ฉ”๋ชจ๋ฆฌ์— ์žˆ์„๊ฑฐ ๋‹ค ์žˆ๋Š”์ง€..๋“ฑ๋“ฑ ์„ ์…€ํ”„์ฒดํฌํ•œ๋‹ค! ์šด์˜์ฒด์ œ ์ปค..
์ €์žฅ์žฅ์น˜(storage): ํŒŒ์ผ์ด ์ €์žฅ๋˜๋Š” ๊ณณ ์ €์žฅ์žฅ์น˜ ์‹œ์Šคํ…œ์˜ ์ข…๋ฅ˜ HDD: ์ž๊ธฐ ๋””์Šคํฌ SSD : ์ „์ž ๋””์Šคํฌ ๋‘ ์ €์žฅ์žฅ์น˜๊ฐ€ ๊ฐ€์ง€๋Š” ๋ฌผ๋ฆฌ์ ์ธ ํŠน์„ฑ์ด ๋‹ค๋ฅด๊ณ , ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ด€์ ์—์„œ ํŒŒ์ผ์„ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด์ค˜์•ผ ํ•˜๋Š๋ƒ๋„ ๋‹ค๋ฅด๋‹ค. ํ•˜์ง€๋งŒ ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ๋„์›€์„ ๋ฐ›์€ ๋ชจ๋“  ์ €์žฅ ๋ฐ์ดํ„ฐ๋“ค์€ ์šด์˜์ฒด์ œ ๊ด€์ ์—์„œ ๊ฐ™์€ ํ˜•ํƒœ๋กœ ๋ณด์ธ๋‹ค ํŒŒ์ผ์˜ ๊ฐœ๋… ์—ฐ์†์ ์œผ๋กœ ๋…ผ๋ฆฌ์ ์ธ ์ฃผ์†Œ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜๊ณ  ์žˆ๋Š” ๊ฐœ์ฒด ํŒŒ์ผ์€ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์™€ ์‹คํ–‰ํ•˜๊ณ ์ž ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ํŒŒ์ผ๋กœ ๋‚˜๋‰œ๋‹ค ๋ฐ์ดํ„ฐํŒŒ์ผ : ์•„์Šคํ‚ค์ฝ”๋“œ ํ…์ŠคํŠธ ํŒŒ์ผํ˜•ํƒœ ํ”„๋กœ๊ทธ๋žจํŒŒ์ผ : ์ด์ง„(binary) ํŒŒ์ผํ˜•ํƒœ ํŒŒ์ผ์˜ ๊ตฌ์กฐ ํŒŒ์ผ๋งˆ๋‹ค ๊ณ ์œ ํ•˜๊ฒŒ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค(ํ…์ŠคํŠธ ํŒŒ์ผ, ์˜ค๋ธŒ์ ํŠธ ํŒŒ์ผ, ์†Œ์ŠคํŒŒ์ผ ๋“ฑ๋“ฑ..) ๋ฌด๊ตฌ์กฐ : ๊ตฌ์กฐ๊ฐ€ ์—†๋‹ค. ๋‹จ์–ด/๋ฐ”์ดํŠธ์˜ ๋‚˜์—ด ๋‹จ์ˆœ ๊ตฌ์กฐ : ์ค„๊ธ€(Lines), ๊ณ ..
-์šด์˜์ฒด์ œ๋Š” ์ปดํ“จํ„ฐ์˜ ํ•˜๋“œ์›จ์–ด์™€ ์‚ฌ์šฉ์ž ์‚ฌ์ด์˜ ์ค‘๊ฐ„์— ์œ„์น˜ํ•˜๊ณ  ์žˆ๊ณ , ์šด์˜์ฒด์ œ์˜ ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์†Œํ”„ํŠธ์›จ์–ด ํ˜•ํƒœ๋กœ ๊ตฌํ˜„๋˜์–ด์žˆ๋Š” ์ผ์ข…์˜ ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค. -์šด์˜์ฒด์ œ์˜ ๋ชฉ์  ์‚ฌ์šฉ์ž ๊ด€์  : ์‚ฌ์šฉ์ž๊ฐ€ ํ•˜๊ณ ์‹ถ์€๊ฑธ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•œ๋‹ค ์‹œ์Šคํ…œ(ํ•˜๋“œ์›จ์–ด) ๊ด€์  : CPU, ๋ฉ”๋ชจ๋ฆฌ, ์ €์žฅ์†Œ๋ฅผ ์ž˜ ๊ด€๋ฆฌ&์ œ์–ดํ•ด์„œ ์‚ฌ์šฉ์ž ํ”„๋กœ๊ทธ๋žจ์„ ์ž˜ ์‹คํ–‰ํ•œ๋‹ค -> Resource manager -(@์ค‘์š”@)์šด์˜์ฒด์ œ์˜ ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์š”๊ตฌ์‚ฌํ•ญ Convenience(ํŽธ๋ฆฌ) : ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ ์šด์˜์ฒด์ œ๋Š” ์‚ฌ์šฉํ•˜๊ธฐ ์ง๊ด€์ ์ด๊ณ  ํŽธ๋ฆฌํ•ด์•ผํ•œ๋‹ค (CLI ๋ณด๋‹ค GUI๊ฐ€ ํŽธ๋ฆฌ์„ฑ์ด ๋†’๋‹ค) Efficiency(ํšจ์œจ) : ์‹œ์Šคํ…œ ๊ด€์ ์—์„œ ์šด์˜์ฒด์ œ๋Š” ์ž์›์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ด์•ผํ•œ๋‹ค *ํŽธ๋ฆฌ์™€ ํšจ์œจ์€ trade off ๊ด€๊ณ„์— ์žˆ๋‹ค.(trad..
๋•ก๋•ก๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป
'CS ๐Ÿ’ป/์šด์˜์ฒด์ œ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก