๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป ๐ŸŒฎ ๐Ÿ’ฌ
๐Ÿ“œ ์ž๊ฒฉ์ฆ/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ

์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ ํ•„๊ธฐ ํ•ต์‹ฌ ์š”์•ฝ | 4๊ณผ๋ชฉ : ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ํ™œ์šฉ

by ๋ฐ”์ฟ„๋ฆฌ 2025. 1. 15.

โœจ C/C++์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž… ํฌ๊ธฐ ๋ฐ ๊ธฐ์–ต ๋ฒ”์œ„

 

โœจ JAVA์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž… ํฌ๊ธฐ ๋ฐ ๊ธฐ์–ต ๋ฒ”์œ„

 

โœจ Python์˜ ์‹œํ€€์Šค ์ž๋ฃŒํ˜•

List, Tuple, range, ๋ฌธ์ž์—ด์ฒ˜๋Ÿผ ๊ฐ’์ด ์—ฐ์†์ ์œผ๋กœ ์ด์–ด์ง„ ์ž๋ฃŒํ˜•

 

โœจ ๋ณ€์ˆ˜

์ž‘์„ฑ ๊ทœ์น™

- ์˜๋ฌธ์ž, ์ˆซ์ž, _ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

- ์ฒซ๊ธ€์ž๋Š” ์˜๋ฌธ์ž, _ ๋กœ ์‹œ์ž‘, ์ˆซ์ž๋Š” ์˜ฌ ์ˆ˜ ์—†๋‹ค.

- ๊ธ€์ž์ˆ˜ ์ œํ•œ ์—†์Œ

- ๊ณต๋ฐฑ, *, +, -, / ๋“ฑ ํŠน์ˆ˜๋ฌธ์ž ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.

- ๋Œ€,์†Œ๋ฌธ์ž ๊ตฌ๋ถ„

- ์˜ˆ์•ฝ์–ด ์‚ฌ์šฉ ๊ธˆ์ง€

- ๋ณ€์ˆ˜ ์„ ์–ธ ์‹œ ๋ณ€์ˆ˜๋ช…์— ๋ฐ์ดํ„ฐ ํƒ€์ž…์„ ๋ช…์‹œํ•˜๋Š” ๊ฒƒ์„ ํ—๊ฐ€๋ฆฌ์•ˆ ํ‘œ๊ธฐ๋ฒ•์ด๋ผ๊ณ  ํ•œ๋‹ค

 

โœจ ๊ฐ€๋น„์ง€ ์ฝœ๋ ‰ํ„ฐ

๋ณ€์ˆ˜๋งŒ ์„ ์–ธ๋งŒ ํ•˜๊ณ  ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ์ด ๋ณ€์ˆ˜๋“ค์ด ์ ์œ ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์€ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฒŒ ๋œ๋‹ค.

์ด๋ ‡๊ฒŒ ์„ ์–ธ๋งŒ ํ•˜๊ณ  ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๋ณ€์ˆ˜๋“ค์ด ์ ์œ ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ๊ฐ•์ œ๋กœ ํ•ด์ œํ•˜์—ฌ ๋‹ค๋ฅธ ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์„ ๊ฐ€๋น„์ง€ ์ฝœ๋ ‰์…˜์ด๋ผ๊ณ  ํ•˜๊ณ , ์ด ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ชจ๋“ˆ์„ ๊ฐ€๋น„์ง€ ์ฝœ๋ ‰ํ„ฐ๋ผ๊ณ  ํ•œ๋‹ค.

 

โœจ ์—ฐ์‚ฐ์ž

- ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž

- ๊ด€๊ณ„ ์—ฐ์‚ฐ์ž: ๋‘ ์ˆ˜์˜ ๊ด€๊ณ„๋ฅผ ๋น„๊ตํ•˜์—ฌ ์ฐธ ๋˜๋Š” ๊ฑฐ์ง“์„ ๊ฒฐ๊ณผ๋กœ ์–ป๋Š” ์—ฐ์‚ฐ์ž (==, !=, >, >= ,,,,,)

- ๋น„ํŠธ ์—ฐ์‚ฐ์ž: &(and), ^(xor), |(or), ~(not), <<(์™ผ์ชฝ ์‹œํ”„ํŠธ, ๋น„ํŠธ๋ฅผ ์™ผ์ชฝ์œผ๋กœ ์ด๋™), >>(์˜ค๋ฅธ์ชฝ ์‹œํ”„ํŠธ, ๋น„ํŠธ๋ฅผ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™)

- ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž: ๋‘ ๊ฐœ์˜ ๋…ผ๋ฆฌ ๊ฐ’์„ ์—ฐ์‚ฐํ•˜์—ฌ ์ฐธ ๋˜๋Š” ๊ฑฐ์ง“์„ ๊ฒฐ๊ณผ๋กœ ์–ป๋Š” ์—ฐ์‚ฐ์ž (! ๋ถ€์ •, && ๋ชจ๋‘ ์ฐธ์ด๋ฉด ์ฐธ, || ํ•˜๋‚˜๋ผ๋„ ์ฐธ์ด๋ฉด ์ฐธ)

- ๋Œ€์ž… ์—ฐ์‚ฐ์ž: ์—ฐ์‚ฐ ํ›„ ๊ฒฐ๊ณผ๋ฅผ ๋Œ€์ž…ํ•˜๋Š” ์—ฐ์‚ฐ์‹์„ ๊ฐ„๋žตํ•˜๊ฒŒ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋„๋ก ๋Œ€์ž… ์—ฐ์‚ฐ์ž๋ฅผ ์ œ๊ณต, ์‚ฐ์ˆ /๊ด€๊ณ„/๋น„ํŠธ/๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž์— ๋ชจ๋‘ ์ ์šฉ ๊ฐ€๋Šฅ (+=, -=, *=,,,)

- ์กฐ๊ฑด ์—ฐ์‚ฐ์ž: ex) ์กฐ๊ฑด? ์ˆ˜์‹1 : ์ˆ˜์‹2;

 

โœจ ํฌ์ธํ„ฐ์™€ ํฌ์ธํ„ฐ ๋ณ€์ˆ˜

ํฌ์ธํ„ฐ = ๋ณ€์ˆ˜์˜ ์ฃผ์†Œ (C์–ธ์–ด์—์„œ๋Š” ์ฃผ์†Œ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณต)

- C์–ธ์–ด์—์„œ ๋ณ€์ˆ˜ ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค.

- ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ๋•Œ ์ž๋ฃŒํ˜•์„ ๋จผ์ € ์“ฐ๊ณ  ๋ณ€์ˆ˜๋ช… ์•ž์— ๊ฐ„์ ‘ ์—ฐ์‚ฐ์ž *๋ฅผ ๋ถ™์ธ๋‹ค. (ex: int *a;)

- ํฌ์ธํ… ๋ณ€์ˆ˜์— ์ฃผ์†Œ๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€์ˆ˜์˜ ์ฃผ์†Œ๋ฅผ ์•Œ์•„๋‚ผ ๋•Œ๋Š” ๋ณ€์ˆ˜ ์•ž์— ๋ฒˆ์ง€ ์—ฐ์‚ฐ์ž &๋ฅผ ๋ถ™์ธ๋‹ค. (ex: a = &b;)

- ์‹คํ–‰๋ฌธ์—์„œ ํฌ์ธํ„ฐ ๋ณ€์ˆ˜์— ๊ฐ„์ ‘ ์—ฐ์‚ฐ์ž *๋ฅผ ๋ถ™์ด๋ฉด ํ•ด๋‹น ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๊ณณ์˜ ๊ฐ’์„ ๋งํ•œ๋‹ค. (ex: *a;)

- ํฌ์ธํ„ฐ ๋ณ€์ˆ˜๋Š” ํ•„์š”์— ์˜ํ•ด ๋™์ ์œผ๋กœ ํ• ๋‹น๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ์ธ ํž™ ์˜์—ญ์— ์ ‘๊ทผํ•˜๋Š” ๋™์  ๋ณ€์ˆ˜์ด๋‹ค.

 

โœจ Python-ํด๋ž˜์Šค

class ํด๋ž˜์Šค๋ช…:
	์‹คํ–‰ํ•  ๋ฌธ์žฅ
    def ๋ฉ”์†Œ๋“œ๋ช…(self, ์ธ์ˆ˜):
    	# self๋Š” ๋ฉ”์†Œ๋“œ์—์„œ ์ž๊ธฐ ํด๋ž˜์Šค์— ์†ํ•œ ๋ณ€์ˆ˜์— ์ ‘๊ทผํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ช…์นญ
        # ์ž„์˜์ ์œผ๋กœ self๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์‚ฌ์šฉ์ž๊ฐ€ ์ž„์˜๋กœ ์ง€์ •ํ•ด๋„ ๋œ๋‹ค.
        # '์ธ์ˆ˜'๋Š” ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ณณ์—์„œ ๋ณด๋‚ธ ๊ฐ’์„ ์ €์žฅํ•  ๋ณ€์ˆ˜, ์‚ฌ์šฉ์ž ์ž„์˜ ์ €์žฅ
        ์‹คํ–‰ํ•  ๋ฌธ์žฅ
        
        return ๊ฐ’
        # '๊ฐ’'์—๋Š” ๋ณ€์ˆ˜, ๊ฐ์ฒด, ๊ณ„์‚ฐ์‹์ด ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

 

โœจ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

ํ”„๋กœ๊ทธ๋žจ์„ ํšจ์œจ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋‚˜ ๋ฐ์ดํ„ฐ๋“ค์„ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ๋ชจ์•„ ๋†“์€ ์ง‘ํ•ฉ์ฒด

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

- ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ: ๊ฐœ๋ฐœ์ž๋“ค์ด ํ•„์š”ํ•œ ๊ธฐ๋Šฅ๋“ค์„ ๋งŒ๋“ค์–ด ์ธํ„ฐ๋„ท ๋“ฑ์— ๊ณต์œ ํ•ด ๋†“์€ ๊ฒƒ์œผ๋กœ, ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋‹ค์šด๋ฐ›์•„ ์„ค์น˜ํ•˜์—ฌ ์‚ฌ์šฉ

 

โœจ ์šด์˜์ฒด์ œ

์šด์˜์ฒด์ œ์˜ ๋ชฉ์ : ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ ํ–ฅ์ƒ, ์‚ฌ์šฉ ๊ฐ€๋Šฅ๋„ ํ–ฅ์ƒ, ์‹ ๋ขฐ๋„ ํ–ฅ์ƒ, ๋ฐ˜ํ™˜ ์‹œ๊ฐ„ ๋‹จ์ถ•

์šด์˜์ฒด์ œ ์„ฑ๋Šฅ ํ‰๊ฐ€ ๊ธฐ์ค€

- ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ Throughout

- ๋ฐ˜ํ™˜ ์‹œ๊ฐ„ Turn Around Time: ์‹œ์Šคํ…œ์— ์ž‘์—…์„ ์˜๋ขฐํ•œ ์‹œ๊ฐ„๋ถ€ํ„ฐ ์ฒ˜๋ฆฌ๊ฐ€ ์™„๋ฃŒ๋ ๋•Œ๊นŒ์ง€ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„

- ์‚ฌ์šฉ ๊ฐ€๋Šฅ๋„ Availability: ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์žˆ์„ ๋•Œ ์ฆ‰์‹œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ •๋„

- ์‹ ๋ขฐ๋„ Reliability: ์‹œ์Šคํ…œ์ด ์ฃผ์–ด์ง„ ๋ฌธ์ œ๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ํ•ด๊ฒฐํ•˜๋Š” ์ •๋„

 

โœจ UNIX ์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ

- ์ปค๋„Kernel

์ปดํ“จํ„ฐ ๋ถ€ํŒ…๋  ๋•Œ ์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ ์žฌ๋œ ํ›„ ์ƒ์ฃผํ•˜๋ฉด์„œ ์‹คํ–‰

ํ•˜๋“œ์›จ์–ด ๋ณดํ˜ธ, ํ”„๋กœ๊ทธ๋žจ ํ•˜๋“œ์›จ์–ด ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค ์—ญํ•  ๋‹ด๋‹น

ํ”„๋กœ์„ธ์Šค(CPU ์Šค์ผ€์ค„๋ง) ๊ด€๋ฆฌ, ๊ธฐ์–ต์žฅ์น˜ ๊ด€๋ฆฌ, ํŒŒ์ผ ๊ด€๋ฆฌ, ์ž…/์ถœ๋ ฅ ๊ด€๋ฆฌ, ํ”„๋กœ์„ธ์Šค๊ฐ„ ํ†ต์‹ , ๋ฐ์ดํ„ฐ ์ „์†ก ๋ฐ ๋ณ€ํ™˜ ๋“ฑ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ๊ธฐ๋Šฅ ์ˆ˜ํ–‰

- ์‰˜Shell

์‚ฌ์šฉ์ž์˜ ๋ช…๋ น์–ด๋ฅผ ์ธ์‹ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์„ ํ˜ธ์ถœํ•˜๊ณ  ๋ช…๋ น์–ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ช…๋ น์–ด ํ•ด์„๊ธฐ

์‹œ์Šคํ…œ๊ณผ ์‚ฌ์šฉ์ž ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค ๋‹ด๋‹น

DOS, COMMAND.COM๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ ์ˆ˜ํ–‰

์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ƒ์ฃผํ•˜์ง€ ์•Š๊ณ , ๋ช…๋ น์–ด๊ฐ€ ํฌํ•จ๋œ ํŒŒ์ผ ํ˜•ํƒœ๋กœ ์กด์žฌํ•˜๋ฉฐ ๋ณด์กฐ ๊ธฐ์–ต์žฅ์น˜์—์„œ ๊ต์ฒด ์ฒ˜๋ฆฌ ๊ฐ€๋Šฅ

- Utility Program

์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ

DOS์—์„œ์˜ ์™ธ๋ถ€ ๋ช…๋ น์–ด์— ํ•ด๋‹น

์œ ํ‹ธ๋ฆฌํ‹ฐ ํ”„๋กœ๊ทธ๋žจ: ์—๋””ํ„ฐ, ์ปดํŒŒ์ผ๋Ÿฌ, ์ธํ„ฐํ”„๋ฆฌํ„ฐ, ๋””๋ฒ„๊ฑฐ ๋“ฑ์ด ์žˆ๋‹ค.

 

โœจ ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ

ํŒŒ์ผ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์‹œ์Šคํ…œ(์šด์˜์ฒด์ œ)์ด ํ•„์š”๋กœ ํ•˜๋Š” ํŒŒ์ผ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ง„ ์ œ์–ด ๋ธ”๋ก์„ ์˜๋ฏธ

ํŒŒ์ผ ๋ธ”๋ก(FCB; File Control Block)์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค.

- ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๋Š” ํŒŒ์ผ๋งˆ๋‹ค ๋…๋ฆฝ์ ์œผ๋กœ ์กด๋Œ€, ์‹œ์Šคํ…œ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค.

- ๋ณดํ†ต ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๋Š” ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜ ๋‚ด์— ์ €์žฅ๋˜์–ด ์žˆ๋‹ค๊ฐ€ ํ•ด๋‹น ํŒŒ์ผ์ด Open๋  ๋•Œ ์ฃผ๊ธฐ์–ต์žฅ์น˜๋กœ ์˜ฎ๊ฒจ์ง„๋‹ค.

- ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ์ด ๊ด€๋ฆฌํ•˜๋ฏ€๋กœ ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ์ฐธ์กฐํ•  ์ˆ˜ ์—†๋‹ค.

 

โœจ ๊ธฐ์–ต์žฅ์น˜ ๊ด€๋ฆฌ - ๋ฐฐ์น˜Placement ์ „๋žต

์ƒˆ๋กœ ๋ฐ˜์ž…๋˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ธฐ์–ต์žฅ์น˜์˜ ์–ด๋””์— ์œ„์น˜์‹œํ‚ฌ ๊ฒƒ์ธ์ง€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ์ „๋žต

- ์ตœ์ดˆ ์ ํ•ฉ

- ์ตœ์  ์ ํ•ฉ

- ์ตœ์•… ์ ํ•ฉ

 

โœจ ํŽ˜์ด์ง•Paging ๊ธฐ๋ฒ•

๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ• ์ค‘ ํ•˜๋‚˜๋กœ, ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ณ ์ •๋œ ํฌ๊ธฐ์˜ ํŽ˜์ด์ง€๋กœ ๋‚˜๋ˆ„๊ณ , ์ด๋ฅผ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์˜ ํ”„๋ ˆ์ž„์— ํ• ๋‹นํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

ํŽ˜์ด์ง•์€ ํ”„๋กœ์„ธ์Šค์™€ ๋ฉ”๋ชจ๋ฆฌ์˜ ์—ฐ์†์„ฑ์„ ์ œ๊ฑฐํ•˜์—ฌ ์™ธ๋ถ€ ๋‹จํŽธํ™” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์‹œ์Šคํ…œ์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•œ๋‹ค.

- ์žฅ์ : ์™ธ๋ถ€ ๋‹จํŽธํ™” ํ•ด๊ฒฐ, ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ ์ง€์›, ํ”„๋กœ๋ ˆ์Šค ๊ฐ„ ๋…๋ฆฝ์„ฑ

- ๋‹จ์ : ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ๊ด€๋ฆฌ ์˜ค๋ฒ„ํ—ค๋“œ, ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ” ์กฐํšŒ ์ง€์—ฐ, ๋‚ด๋ถ€ ๋‹จํŽธํ™”(ํŽ˜์ด์ง€ ํฌ๊ธฐ๊ฐ€ ๊ณ ์ •๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํŽ˜์ด์ง€๋ฅผ ์™„์ „ํžˆ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ํŽ˜์ด์ง€ ๋‚ด์˜ ๋‚ญ๋น„ ๊ณต๊ฐ„์ด ๋ฐœ์ƒ)

 

โœจ ์„ธ๊ทธ๋จผํ…Œ์ด์…˜Segmentation ๊ธฐ๋ฒ•

๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋…ผ๋ฆฌ์ ์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ธฐ๋ฒ•

ํ”„๋กœ๊ทธ๋žจ์„ ์„œ๋กœ ๋‹ค๋ฅธ ํฌ๊ธฐ์˜ ์„ธ๊ทธ๋จผํŠธ๋กœ ๋‚˜๋ˆ„๊ณ , ์ด๋ฅผ ๋ฌผ๋ฆฌ ๋ฉ”๋ชจ๋ฆฌ์— ํ• ๋‹นํ•œ๋‹ค.

์„ธ๊ทธ๋จผํ…Œ์ด์…˜์€ ๋…ผ๋ฆฌ์  ๋‹จ์œ„(์ฝ”๋“œ, ๋ฐ์ดํ„ฐ, ์Šคํƒ)์— ๋”ฐ๋ผ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋‚˜๋ˆ„๊ธฐ ๋•Œ๋ฌธ์—, ํ”„๋กœ์„ธ์Šค์˜ ๊ตฌ์กฐ๋ฅผ ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐ˜์˜ํ•  ์ˆ˜ ์žˆ๋‹ค.

- ๋‹จ์ : ์™ธ๋ถ€ ๋‹จํŽธํ™”(๊ฐ€๋ณ€ ํฌ๊ธฐ์˜ ์„ธ๊ทธ๋จผํŠธ๋ฅผ ํ• ๋‹นํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ฉ”๋ชจ๋ฆฌ ๋ธ”๋ก ์‚ฌ์ด์— ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ž‘์€ ๊ณต๊ฐ„ ๋ฐœ์ƒ), ์„ธ๊ทธ๋จผํŠธ ํ…Œ์ด๋ธ” ๊ด€๋ฆฌ, ๋ฉ”๋ชจ๋ฆฌ ์š”๊ตฌ๋Ÿ‰ ์ฆ๊ฐ€

๋‹จ์œ„ ๊ณ ์ • ํฌ๊ธฐ(Page) ๊ฐ€๋ณ€ ํฌ๊ธฐ(Segment)
์ฃผ์†Œ ๊ตฌ์กฐ ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ + ํŽ˜์ด์ง€ ์˜คํ”„์…‹ ์„ธ๊ทธ๋จผํŠธ ๋ฒˆํ˜ธ + ์„ธ๊ทธ๋จผํŠธ ์˜คํ”„์…‹
ํฌ๊ธฐ ๋ชจ๋“  ํŽ˜์ด์ง€๊ฐ€ ๋™์ผ ํฌ๊ธฐ ์„ธ๊ทธ๋จผํŠธ๋งˆ๋‹ค ํฌ๊ธฐ๊ฐ€ ๋‹ค๋ฆ„
๋‹จํŽธํ™” ๋‚ด๋ถ€ ๋‹จํŽธํ™” ๋ฐœ์ƒ ๊ฐ€๋Šฅ ์™ธ๋ถ€ ๋‹จํŽธํ™” ๋ฐœ์ƒ ๊ฐ€๋Šฅ
ํ…Œ์ด๋ธ” ํŽ˜์ด์ง€ ํ…Œ์ด๋ธ”(Page Table) ์‚ฌ์šฉ ์„ธ๊ทธ๋จผํŠธ ํ…Œ์ด๋ธ”(Segment Table) ์‚ฌ์šฉ
๋ชฉ์  ๋ฉ”๋ชจ๋ฆฌ ๊ณต๊ฐ„์„ ๊ท ๋“ฑํ•˜๊ฒŒ ๋‚˜๋ˆ„์–ด ๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์˜ ๋…ผ๋ฆฌ์  ๋‹จ์œ„๋ฅผ ๊ด€๋ฆฌ
์žฅ์  ์™ธ๋ถ€ ๋‹จํŽธํ™” ํ•ด๊ฒฐ, ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ ๊ฐ„๋‹จ ํ”„๋กœ๊ทธ๋žจ ๊ตฌ์กฐ ๋ฐ˜์˜, ์„ธ๊ทธ๋จผํŠธ ๋ณดํ˜ธ ๋ฐ ๊ณต์œ 
๋‹จ์  ๋‚ด๋ถ€ ๋‹จํŽธํ™”, TLB ํ•„์š” ์™ธ๋ถ€ ๋‹จํŽธํ™”, ํ…Œ์ด๋ธ” ๊ด€๋ฆฌ ๋ณต์žก

 

โœจ ํŽ˜์ด์ง€ ๊ต์ฒด ์•Œ๊ณ ๋ฆฌ์ฆ˜

ํŽ˜์ด์ง€ ๋ถ€์žฌ(Page Fault)๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ๊ฐ€์ƒ๊ธฐ์–ต์žฅ์น˜์˜ ํ•„์š”ํ•œ ํŽ˜์ด์ง€๋ฅผ ์ฃผ๊ธฐ์–ต์žฅ์น˜์— ์ ์žฌํ•ด์•ผํ•˜๋Š”๋ฐ, ์ด๋•Œ ์ฃผ๊ธฐ์–ต์žฅ์น˜์˜ ๋ชจ๋“  ํŽ˜์ด์ง€ ํ”„๋ ˆ์ž„์ด ์‚ฌ์šฉ์ค‘์ด๋ฉด ์–ด๋–ค ํŽ˜์ด์ง€ ํ”„๋ ˆ์ž„์„ ์„ ํƒํ•˜์—ฌ ๊ต์ฒดํ•  ๊ฒƒ์ธ์ง€ ๊ฒฐ์ •ํ•˜๋Š” ๊ธฐ๋ฒ•

- OPT (optimal replacement) : ์•ž์œผ๋กœ ๊ฐ€์žฅ ์˜ค๋žซ๋™์•ˆ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ํŽ˜์ด์ง€๋ฅผ ๊ต์ฒด

- FIFO

- LRU (Least Recently Used) : ์ตœ๊ทผ์— ๊ฐ€์žฅ ์˜ค๋žซ๋™์•ˆ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ํŽ˜์ด์ง€๋ฅผ ๊ต์ฒด

- LFU (Least Frequently Used) : ์‚ฌ์šฉ ๋นˆ๋„๊ฐ€ ๊ฐ€์žฅ ์ ์€ ํŽ˜์ด์ง€๋ฅผ ๊ต์ฒด

- SCR (Second Chance Replacement)

- NUR (Nor Used Recently)

 

โœจ ์›Œํ‚น ์…‹ Working Set

ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ผ์ • ์‹œ๊ฐ„ ๋™์•ˆ ์ž์ฃผ ์ฐธ์กฐํ•˜๋Š” ํŽ˜์ด์ง€๋“ค์˜ ์ง‘ํ•ฉ

 

โœจ ์Šค๋ ˆ์‹ฑ Thrashing

ํ”„๋กœ์„ธ์Šค์˜ ์ฒ˜๋ฆฌ ์‹œ๊ฐ„๋ณด๋‹ค ํŽ˜์ด์ง€ ๊ต์ฒด์— ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์ด ๋” ๋งŽ์•„์ง€๋Š” ํ˜„์ƒ

๋ฐฉ์ง€ ๋ฐฉ๋ฒ•: ๋‹ค์ค‘ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์ •๋„๋ฅผ ์ ์ • ์ˆ˜์ค€์œผ๋กœ ์œ ์ง€, ํŽ˜์ด์ง€ ๋ถ€์žฌ ๋นˆ๋„๋ฅผ ์กฐ์ ˆ, ์›Œํ‚น ์…‹์„ ์œ ์ง€, CPU ์„ฑ๋Šฅ์— ๋Œ€ํ•œ ์ž๋ฃŒ์˜ ์ง€์†์  ๊ด€๋ฆฌ ๋ฐ ๋ถ„์„์œผ๋กœ ์ž„๊ณ„์น˜๋ฅผ ์˜ˆ์ƒํ•˜์—ฌ ์šด์˜

 

โœจ ํ”„๋กœ์„ธ์Šค ์ƒํƒœ ์ „์ด

New → Ready → Running → Terminated
        ↑         ↓        ↑
        โ””โ”€โ”€โ”€โ”€ Waiting ←โ”€โ”€โ”€โ”˜
New ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ƒ์„ฑ๋œ ์ดˆ๊ธฐ ์ƒํƒœ
Ready ์‹คํ–‰ ์ค€๋น„๊ฐ€ ์™„๋ฃŒ๋œ ์ƒํƒœ๋กœ CPU ํ• ๋‹น์„ ๊ธฐ๋‹ค๋ฆผ
Running CPU์—์„œ ์‹คํ–‰ ์ค‘์ธ ์ƒํƒœ
Waiting I/O ์ž‘์—…์ด๋‚˜ ์ด๋ฒคํŠธ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ƒํƒœ
Terminated ํ”„๋กœ์„ธ์Šค ์‹คํ–‰์ด ์™„๋ฃŒ๋˜๊ณ  ์šด์˜์ฒด์ œ์—์„œ ์ œ๊ฑฐ๋œ ์ƒํƒœ

 

โœจ ์Šค์ผ€์ค„๋ง ์•Œ๊ณ ๋ฆฌ์ฆ˜

- FCFS = FIFO

- SJF (Shortest Job First, ๋‹จ๊ธฐ ์ž‘์—… ์šฐ์„ )

- HRN (Highest Response-ratio Next) : ์šฐ์„ ์ˆœ์œ„ ๊ณ„์‚ฐ์‹ = (๋Œ€๊ธฐ ์‹œ๊ฐ„ + ์„œ๋น„์Šค ์‹œ๊ฐ„) / ์„œ๋น„์Šค ์‹œ๊ฐ„

 

โœจ ์„œ๋ธŒ๋„คํŒ… Subnetting

ํ• ๋‹น๋œ ๋„คํŠธ์›Œํฌ ์ฃผ์†Œ๋ฅผ ๋‹ค์‹œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ž‘์€ ๋„คํŠธ์›Œํฌ๋กœ ๋‚˜๋ˆ„์–ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ

 

โœจ IPv6

16๋น„ํŠธ์”ฉ 8๋ถ€๋ถ„, ์ด 128๋น„ํŠธ๋กœ ๊ตฌ์„ฑ

- ์œ ๋‹ˆ์บ์ŠคํŠธ: ๋‹จ์ผ ์†ก์‹ ์ž, ๋‹จ์ผ ์ˆ˜์‹ ์ž

- ๋ฉ€ํ‹ฐ์บ์ŠคํŠธ: ๋‹จ์ผ ์†ก์‹ ์ž, ๋‹ค์ค‘ ์ˆ˜์‹ ์ž

- ์• ๋‹ˆ์บ์ŠคํŠธ: ๋‹จ์ผ ์†ก์‹ ์ž, ๊ฐ€์žฅ ๊ฐ€๊นŒ์ด ์žˆ๋Š” ๋‹จ์ผ ์ˆ˜์‹ ์ž

 

โœจ OSI ์ฐธ์กฐ ๋ชจ๋ธ

- ๋ฌผ๋ฆฌ ๊ณ„์ธต

- ๋ฐ์ดํ„ฐ ๋งํฌ ๊ณ„์ธต

- ๋„คํŠธ์›Œํฌ ๊ณ„์ธต

- ์ „์†ก ๊ณ„์ธต: TCP, UDP, RTCP

- ์„ธ์…˜ ๊ณ„์ธต

- ํ‘œํ˜„ ๊ณ„์ธต

- ์‘์šฉ ๊ณ„์ธต: FTP, SMTP, TELNET, SNMP, DNS, HTTP