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

OS

(12)
12์žฅ Disk Management And Scheduling reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1 Disk Structure logical block ๋””์Šคํฌ์˜ ์™ธ๋ถ€์—์„œ ๋ณด๋Š” ๋””์Šคํฌ์˜ ๋‹จ์œ„ ์ •๋ณด ์ €์žฅ ๊ณต๊ฐ„๋“ค ์ฃผ์†Œ๋ฅผ ๊ฐ€์ง„ 1์ฐจ์› ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ทจ๊ธ‰ ์ •๋ณด๋ฅผ ์ „์†กํ•˜๋Š” ์ตœ์†Œ ๋‹จ์œ„ sector logical block์ด ๋ฌผ๋ฆฌ์ ์ธ ๋””์Šคํฌ์— ๋งคํ•‘๋œ ์œ„์น˜ Sector 0์€ ์ตœ์™ธ๊ฐ ์‹ค๋ฆฐ๋”์˜ ์ฒซ ํŠธ๋ž™์— ์žˆ๋Š” ์ฒซ ๋ฒˆ์งธ ์„นํ„ฐ์ด๋‹ค. 2 Disk Management Physical formatting (low level formatting) ๋””์Šคํฌ๋ฅผ ์ปจํŠธ๋กค..
11์žฅ File Systems Implementation reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. -> ์‹ค์ œ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„๋˜์–ด ์žˆ๋Š”๊ฐ€? *๊ต์ˆ˜๋‹˜์˜ ํ•œ๋งˆ๋””: computer science์—์„œ ๊ณตํ†ต์˜ ํ™”๋‘๋Š” ์ตœ์ ํ™”! Optimization์ด๋‹ค. (๋น„์šฉ์€ ์ ๊ฒŒ, ํšจ์œจ์€ ์ข‹๊ฒŒ-์†๋„๋Š” ๋น ๋ฅด๊ฒŒ, ๊ณต๊ฐ„ ํ™œ์šฉ์€ ์ ๊ฒŒ ๋“ฑ) 01 Allocation of File Data in Disk Contiguous Allocation Linked Allocation Indexed Allocation 01-1 Contiguous Allocation count..
10์žฅ File Systems reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1 file, file system, directory, logical disk File "A named collection of related information" ๋น„ํœ˜๋ฐœ์„ฑ์˜ ๋ณด์กฐ๊ธฐ์–ต์žฅ์น˜(ex ํ•˜๋“œ๋””์Šคํฌ)์— ์ €์žฅ๋˜๋Š” ๋‹จ์œ„ ์šด์˜์ฒด์ œ๋Š” ๋‹ค์–‘ํ•œ ์ €์žฅ ์žฅ์น˜๋ฅผ file์ด๋ผ๋Š” ๋™์ผํ•œ ๋…ผ๋ฆฌ์  ๋‹จ์œ„๋กœ ๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด ์คŒ ๋ฉ”๋ชจ๋ฆฌ๋Š” ์ฃผ์†Œ๋ฅผ ํ†ตํ•ด์„œ ์ ‘๊ทผ ↔ ํŒŒ์ผ์€ ์ด๋ฆ„์„ ํ†ตํ•ด์„œ ์ ‘๊ทผ Operation ๊ฐ€๋Šฅํ•œ ์—ฐ์‚ฐ create, read, write..
9์žฅ Virtual Memory reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1 Demand Paging ์‹ค์ œ๋กœ ํ•„์š”ํ•  ๋•Œ page๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ ๊ทธ๋ฆผ์—์„œ ์ œ์ผ ์˜ค๋ฅธ์ชฝ์˜ ์›ํ†ตํ˜•์€ backing store๋กœ HDD๋‚˜ SDD๊ฐ€ ์ด์— ํ•ด๋‹นํ•œ๋‹ค. ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋ถ€๋ถ„์€ ๊ทนํžˆ ์ ๋‹ค. ํ•˜์ง€๋งŒ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๋ถ€๋ถ„์ด ์žฌ์‚ฌ์šฉ ๋  ํ™•๋ฅ (hit ratio)๊ฐ€ 90% ์ด์ƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ํ•„์š”ํ•  ๋•Œ๋งŒ ํŽ˜์ด์ง€๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์„ ํšจ์œจ์ ์ด๋‹ค. ํ•œ์ •๋œ ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๋ชจ๋“  ํŽ˜์ด์ง€๋ฅผ ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค ํ•„์š”ํ•  ๋•Œ๋งŒ ์˜ฌ๋ฆฌ๋Š” ๊ฒƒ์ด ..
8์žฅ Memory Management reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 01 Logical vs Physical Address Logical Address (Virtual Address) ํ”„๋กœ์„ธ์Šค๋งˆ๋‹ค ๋…๋ฆฝ์ ์œผ๋กœ ๊ฐ€์ง€๋Š” ์ฃผ์†Œ ๊ณต๊ฐ„ ๊ฐ ํ”„๋กœ์„ธ์Šค๋งˆ๋‹ค 0๋ฒˆ์ง€๋ถ€ํ„ฐ ์‹œ์ž‘ CPU๊ฐ€ ๋ณด๋Š” ์ฃผ์†Œ๋Š” Logical Address Physical Address ๋ฉ”๋ชจ๋ฆฌ์— ์‹ค์ œ ์˜ฌ๋ผ๊ฐ€๋Š” ์œ„์น˜ 02 ์ฃผ์†Œ ๋ฐ”์ธ๋”ฉ (Address Binding) ์ฃผ์†Œ ๋ฐ”์ธ๋”ฉ: ์ฃผ์†Œ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ Symbolic Address → Logical Ad..
7์žฅ Deadlock reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1 deadlock, resource์˜ ์ •์˜ deadlock ์ผ๋ จ์˜ ํ”„๋กœ์„ธ์Šค๋“ค์ด ์„œ๋กœ๊ฐ€ ๊ฐ€์ง„ ์ž์›์„ ๊ธฐ๋‹ค๋ฆฌ๋ฉฐ block๋œ ์ƒํƒœ ์–ด๋Š ๋ˆ„๊ตฌ๋„ ์–‘๋ณด๋ฅผ ํ•˜์ง€ ์•Š์œผ๋ฉด ๋”์ด์ƒ ์ง„ํ–‰๋˜์ง€ ์•Š๋Š” ์ƒํƒœ Resource ํ•˜๋“œ์›จ์–ด, ์†Œํ”„ํŠธ์›จ์–ด ๋“ฑ์„ ํฌํ•จํ•œ ๊ฐœ๋… ์˜ˆ: I/O device, CPU cycle, memory space, semaphore ๋“ฑ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž์›์„ ์‚ฌ์šฉํ•˜๋Š” ์ ˆ์ฐจ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ด๋ฃจ์–ด์ง„๋‹ค. ์š”์ฒญ (Request) ํš๋“ (Alloca..
6์žฅ Process Synchronization reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1 Race Condition๋ž€? ์ปดํ“จํ„ฐ์—์„œ ์—ฐ์‚ฐ์„ ํ•  ๋•Œ๋Š” ํ•ญ์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์™€์„œ ์—ฐ์‚ฐํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์–ด๋”˜๊ฐ€ ์ €์žฅํ•ด๋‘๋„๋ก ๋˜์–ด์žˆ๋‹ค. race condition์ด๋ž€ ํ•˜๋‚˜์˜ ๊ณต์œ  data์— ์—ฌ๋Ÿฟ์ด ์ ‘๊ทผํ•˜๋ ค๊ณ  ํ•  ๋•Œ, ์ฆ‰ ์—ฐ์‚ฐํ•  ์ˆ˜ ์žˆ๋Š” ์ฃผ์ฒด๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ๋งํ•œ๋‹ค. Storage-box๋ฅผ ๊ณต์œ ํ•˜๋Š” E-box๊ฐ€ ์—ฌ๋Ÿฟ ์žˆ๋Š” ๊ฒฝ์šฐ, race condition์˜ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค. Storage-box : Executio..
5์žฅ CPU scheduling reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1. CPU scheduling์ด ํ•„์š”ํ•œ ์ด์œ  CPU-burst Time์˜ ๋ถ„ํฌ ์—ฌ๋Ÿฌ ์ข…๋ฅ˜์˜ job (=process)๊ฐ€ ์„ž์—ฌ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— CPU scheduling์ด ํ•„์š”ํ•˜๋‹ค. interactive job์—๊ฒŒ ์ ์ ˆํ•œ response ์ œ๊ณตํ•ด์•ผ ํ•˜๊ณ  cpu์™€ I/O ์žฅ์น˜ ๋“ฑ ์‹œ์Šคํ…œ ์ž์›์„ ๊ณจ๊ณ ๋ฃจ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. Q. ๋นจ๊ฐ„์ƒ‰ ๋ถ€๋ถ„๊ณผ ๊ฐ™์ด cpu๋ฅผ ์งง๊ฒŒ ํ”„๋กœ๊ทธ๋žจ๊ณผ ํŒŒ๋ž€์ƒ‰ ๋ถ€๋ถ„๊ณผ ๊ฐ™์ด cpu๋ฅผ ๊ธธ๊ฒŒ ์“ฐ๋Š” ํ”„๋กœ๊ทธ๋žจ ์ค‘ CPU๋ฅผ ๋ˆ„..
4์žฅ Process Management reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1. ํ”„๋กœ์„ธ์Šค ์ƒ์„ฑ ๋ถ€๋ชจ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ž์‹ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ƒ์„ฑ ํ”„๋กœ์„ธ์Šค์˜ ํŠธ๋ฆฌ(๊ณ„์ธต ๊ตฌ์กฐ) ํ˜•์„ฑ ํ”„๋กœ์„ธ์Šค๋Š” ์ž์›์„ ํ•„์š”๋กœ ํ•จ ์šด์˜์ฒด์ œ๋กœ๋ถ€ํ„ฐ ๊ฐ๊ฐ ๋ฐ›๋Š”๋‹ค (๋Œ€๋ถ€๋ถ„) ๋ถ€๋ชจ์™€ ๊ณต์œ ํ•œ๋‹ค (์ด๋ก€์ ์ž„) ์ž์›์˜ ๊ณต์œ  ๋ถ€๋ชจ์™€ ์ž์‹์ด ๋ชจ๋“  ์ž์›์„ ๊ณต์œ ํ•˜๋Š” ๋ชจ๋ธ ์ผ๋ถ€ ๊ณต์œ ํ•˜๋Š” ๋ชจ๋ธ ์ „ํ˜€ ๊ณต์œ ํ•˜์ง€ ์•Š๋Š” ๋ชจ๋ธ (๋Œ€๋ถ€๋ถ„) ์ˆ˜ํ–‰ ๋ถ€๋ชจ์™€ ์ž์‹์€ ๊ณต์กดํ•˜๋ฉฐ ์ˆ˜ํ–‰๋˜๋Š” ๋ชจ๋ธ ์ž์‹์ด ์ข…๋ฃŒ๋  ๋•Œ๊ฐ€์ง€ ๋ถ€๋ชจ๊ฐ€ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋ชจ๋ธ ์ฃผ์†Œ ๊ณต๊ฐ„ (Address space - code, d..
3์žฅ Process reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1. ํ”„๋กœ์„ธ์Šค์˜ ๊ฐœ๋… Process is a program in execution ์‚ด์•„์žˆ๋Š” ํ•˜๋‚˜์˜ ์ƒ๋ช…์ฒด๋กœ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋‹ค. ํ”„๋กœ์„ธ์Šค์˜ ๋ฌธ๋งฅ (context) ์—ฌ๊ธฐ์„œ ๋ฌธ๋งฅ์ด๋ž€ ์‹œ๊ฐ„์— ๋”ฐ๋ผ ๋ณ€ํ™”ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์˜ ํ˜„์žฌ ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. CPU ์ˆ˜ํ–‰ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ํ•˜๋“œ์›จ์–ด ๋ฌธ๋งฅ Program Counter ๊ฐ์ข… register ํ”„๋กœ์„ธ์Šค์˜ ์ฃผ์†Œ ๊ณต๊ฐ„ code, data, stack ํ”„๋กœ์„ธ์Šค ๊ด€๋ จ ์ปค๋„ ์ž๋ฃŒ ๊ตฌ์กฐ PCB (process co..
2์žฅ System Structure & Program Execution reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1 ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ ๊ตฌ์กฐ 1-1. ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ ๊ตฌ์กฐ ์•„๋ž˜์˜ ์‚ฌ์ง„์€ ํ•œ ํ•™๊ธฐ ๋‚ด๋‚ด ๋‹ค์‹œ๋ณด๊ณ  ๋‹ค์‹œ๋ณด๊ณ  ๋‹ค์‹œ๋ดค๋˜ ์ค‘์š”ํ•œ ์ž๋ฃŒ์ž…๋‹ˆ๋‹ค. ๋จผ์ € ์ „๋ฐ˜์ ์œผ๋กœ ์–ด๋–ป๊ฒŒ ํ˜๋Ÿฌ๊ฐ€๋Š”์ง€ ์‚ดํŽด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”๋ชจ๋ฆฌ์—์„œ ๊ธฐ๊ณ„์–ด๋ฅผ ํ•˜๋‚˜์”ฉ ์ฝ์–ด์„œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. CPU๊ฐ€ ๊ธฐ๊ณ„์–ด๋ฅผ ์—ฐ์‚ฐ(์ˆ˜ํ–‰)ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ๋‹ค์Œ ๊ธฐ๊ณ„์–ด๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ์— ์•ž์„œ์„œ ํ˜น์‹œ interrupt line ์— ์‹œ๊ทธ๋„(์ธํ„ฐ๋ŸฝํŠธ) ๋“ค์–ด์˜จ ๊ฒŒ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. (interrupt๋Š” ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ์žˆ..
1์žฅ Introduction to Operating System reference: kocw์˜ ๋ฐ˜ํšจ๊ฒฝ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜์™€ ๊ถŒ์ง„์šฑ ๊ต์ˆ˜๋‹˜ ๊ฐ•์˜(๋Œ€ํ•™ ์ •๊ทœ ์ˆ˜์—…) ์ˆ˜์—…์„ ๋“ฃ๊ณ ๋‚˜์„œ ๊ฐ•์˜ ๊ต์žฌ๋ฅผ ํƒ€์ดํ•‘ํ•˜๊ณ  ํ•„๊ธฐํ•œ ๋ถ€๋ถ„์„ ์ถ”๊ฐ€์ ์œผ๋กœ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์›น๋ทฐ์—์„œ toc๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. github์˜ md ํŒŒ์ผ๋กœ ๋ณด๋Š” ๊ฒŒ ํŽธํ•˜์‹œ๋‹ค๋ฉด, ์—ฌ๊ธฐ๋กœ ์ด๋™ํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 1. ์šด์˜์ฒด์ œ๋ž€ ๋ฌด์—‡์ธ๊ฐ€? ์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด ๋ฐ”๋กœ ์œ„์— ์„ค์น˜๋˜์–ด ์‚ฌ์šฉ์ž ๋ฐ ๋‹ค๋ฅธ ๋ชจ๋“  ์†Œํ”„ํŠธ์›จ์–ด์™€ ํ•˜๋“œ์›จ์–ด๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ณ„์ธต ์ข์€ ์˜๋ฏธ์˜ ์šด์˜์ฒด์ œ = ์ปค๋„ ์šด์˜์ฒด์ œ์˜ ํ•ต์‹ฌ ๋ถ€๋ถ„์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ์— ์ƒ์ฃผํ•˜๋Š” ๋ถ€๋ถ„ ๋„“์€ ์˜๋ฏธ์˜ ์šด์˜์ฒด์ œ ์ปค๋„ ๋ฟ ์•„๋‹ˆ๋ผ ๊ฐ์ข… ์ฃผ๋ณ€ ์‹œ์Šคํ…œ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ํฌํ•จํ•œ ๊ฐœ๋… 2. ์šด์˜์ฒด์ œ์˜ ๋ชฉ์  1. ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์„ ์ œ๊ณต ์šด์˜์ฒด์ œ๋Š” ๋™์‹œ ์‚ฌ์šฉ์ž, ํ”„๋กœ๊ทธ๋žจ๋“ค์ด ๊ฐ๊ฐ ๋…์ž์  ์ปดํ“จํ„ฐ์—์„œ ์ˆ˜ํ–‰..