์ธํŒŒ

You Can Become A

P

๋Šฆ๊ฒŒ ์‹œ์ž‘ํ•ด๋„ ๋ˆ„๊ตฌ๋“ ์ง€ ๋…ธ๋ ฅํ•˜๋ฉด ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ ์ˆ˜ ์žˆ์–ด์š” !

CS ์ง€์‹

๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค
CS ์ง€์‹

๐Ÿค” ์Šค๋ ˆ๋“œ๋ฅผ ๋งŽ์ด ์“ธ์ˆ˜๋ก ํ•ญ์ƒ ์„ฑ๋Šฅ์ด ์ข‹์•„์งˆ๊นŒ?

์Šค๋ ˆ๋“œ๋ฅผ ๋งŽ์ด ์“ฐ๋ฉด ์“ธ์ˆ˜๋ก ์„ฑ๋Šฅ์ด ๋†’์•„์ง€๋Š”๊ฐ€ ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ๋ฅผ ์ฒ˜์Œ ํ•™์Šตํ• ๋•Œ, ์Šค๋ ˆ๋“œ๋Š” ํ”„๋กœ์„ธ์Šค ๋‚ด์— ์กด์žฌํ•˜๋Š” ์‹คํ–‰ ๋‹จ์œ„์ด๋ฉฐ, ์ด ์Šค๋ ˆ๋“œ๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ์ธ ๋•๋ถ„์— ์šฐ๋ฆฌ๊ฐ€ ์Œ์•…์„ ๋“ค์œผ๋ฉฐ ์›น์„œํ•‘์„ํ•˜๊ฑฐ๋‚˜ ํŒŒ์ผ์„ ๋‹ค์šด ๋ฐ›๋Š” '๋™์‹œ ์ž‘์—…'์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋ผ๊ณ  ๋ฐฐ์› ์„ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ์ธ์ง€ ์ด๋Ÿฌํ•œ ์งˆ๋ฌธ์— ๋Œ€ํ•ด ๊นŠ๊ฒŒ ๊ณ ๋ฏผํ•  ํ•„์š” ์—†์ด, ์Šค๋ ˆ๋“œ๊ฐ€ ๋งŽ์„ ์ˆ˜๋ก ๋™์‹œ ์ฒ˜๋ฆฌ ์ž‘์—… ์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด๋‹ˆ, ๋‹น์—ฐํžˆ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๊ฐ€ ๋ฌด์กฐ๊ฑด ์„ฑ๋Šฅ์ด ๋” ์ข‹๋‹ค๊ณ  ์ƒ๊ฐํ•  ๊ฒƒ์ด๋‹ค. ํ•˜์ง€๋งŒ ๋ชจ๋“  ์ƒํ™ฉ์— ๋Œ€ํ•ด ๋ฌด์กฐ๊ฑด ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๊ฐ€ ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ๋ณด๋‹ค ๋ฌด์กฐ๊ฑด ์ข‹๋‹ค๊ณ  ๋งํ•  ์ˆœ ์—†๋‹ค. ๋ชจ๋“  ๊ธฐ์ˆ ๋“ค์—๋Š” ๊ฐ๊ฐ์˜ ๊ธฐํšŒ๋น„์šฉ์ด ์กด์žฌํ•˜๊ณ , ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ์™€ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ ์—ญ์‹œ ๊ฐ๊ฐ์˜ ์žฅ์ ์— ๋งž๋Š” ๊ธฐํšŒ๋น„์šฉ๋“ค์ด ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์ด ๋ถ€๋ถ„์€ ์Šค๋ ˆ๋“œ๋ฅผ ๊ฒ‰ํ–๊ธฐ๋กœ๋งŒ ๋ฐฐ์šด ์ง€์›์ž๋ฅผ ๊ฑธ๋Ÿฌ๋‚ด๊ธฐ ์œ„ํ•ด..

category_image
์ธํŒŒ_
2023.05.10
11
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป ์™„๋ฒฝํžˆ ์ดํ•ดํ•˜๋Š” ๋™๊ธฐ/๋น„๋™๊ธฐ & ๋ธ”๋กœํ‚น/๋…ผ๋ธ”๋กœํ‚น

๋™๊ธฐ/๋น„๋™๊ธฐ & ๋ธ”๋กœํ‚น/๋…ผ๋ธ”๋กํ‚น ํ”„๋กœ๊ทธ๋ž˜๋ฐ์—์„œ ์›น ์„œ๋ฒ„ ํ˜น์€ ์ž…์ถœ๋ ฅ(I/O)์„ ๋‹ค๋ฃจ๋‹ค ๋ณด๋ฉด ๋™๊ธฐ/๋น„๋™๊ธฐ & ๋ธ”๋กœํ‚น/๋…ผ๋ธ”๋กœํ‚น ์ด๋Ÿฌํ•œ ์šฉ์–ด๋“ค์„ ์ ‘ํ•ด๋ณธ ๊ฒฝํ—˜์ด ํ•œ๋ฒˆ ์ฏค์€ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ๋Œ€๋ถ€๋ถ„ ์‚ฌ๋žŒ๋“ค์€ ์šฉ์–ด๋“ค์ด ๋‚˜ํƒ€๋‚ด๊ณ ์ž ํ•˜๋Š” ํ–‰์œ„์— ๋Œ€ํ•ด์„  ๋ฉ€ํ‹ฐ ํƒœ์Šคํ‚น๊ณผ ๋ฐ€์ ‘ํ•œ ๊ด€๋ จ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‘ ๊ฐœ๋…์„ ๋น„์Šทํ•œ ๊ฒƒ์œผ๋กœ ์˜คํ•ดํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ๊ฝค ๋งŽ๋‹ค. ๐Ÿ˜ตโ€๐Ÿ’ซ ๋™๊ธฐ/๋น„๋™๊ธฐ ์™€ ๋ธ”๋กœํ‚น/๋…ผ๋ธ”๋กœํ‚น ์ด ๋‘ ๊ฐœ๋…์€ ํ‘œํ˜„ ํ˜•ํƒœ๋Š” ๋น„์Šทํ•ด ๋ณด์ผ์ง€๋ผ๋„, ์„œ๋กœ ๋‹ค๋ฅธ ์ฐจ์›์—์„œ ์ž‘์—…์˜ ์ˆ˜ํ–‰ ๋ฐฉ์‹์„ ์„ค๋ช…ํ•˜๋Š” ๊ฐœ๋…์ด๋‹ค. ๋™๊ธฐ/๋น„๋™๊ธฐ๋Š” ์š”์ฒญํ•œ ์ž‘์—…์— ๋Œ€ํ•ด ์™„๋ฃŒ ์—ฌ๋ถ€๋ฅผ ์‹ ๊ฒฝ ์จ์„œ ์ž‘์—…์„ ์ˆœ์ฐจ์ ์œผ๋กœ ์ˆ˜ํ–‰ํ• ์ง€ ์•„๋‹Œ์ง€์— ๋Œ€ํ•œ ๊ด€์ ์ด๊ณ ,๋ธ”๋กœํ‚น/๋…ผ๋ธ”๋กํ‚น์€ ๋‹จ์–ด ๊ทธ๋Œ€๋กœ ํ˜„์žฌ ์ž‘์—…์ด block(์ฐจ๋‹จ, ๋Œ€๊ธฐ) ๋˜๋Š๋ƒ ์•„๋‹ˆ๋ƒ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜..

category_image
์ธํŒŒ_
2023.05.02
19
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป ๋ฉ€ํ‹ฐ ํƒœ์Šคํ‚น & ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์‹ฑ ๊ฐœ๋… ํ•œ๋ฐฉ ์ •๋ฆฌ

์ปดํ“จํ„ฐ์˜ ๋ณ‘ํ–‰ ์ฒ˜๋ฆฌ ์šฐ๋ฆฌ๊ฐ€ ์Œ์•…์„ ๋“ค์œผ๋ฉด์„œ, ์›น์„œํ•‘์„ ํ•˜๊ณ , ๋ฉ”์‹ ์ €์˜ ๋ฉ”์‹œ์ง€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ ๋Š” ์ปดํ“จํ„ฐ๊ฐ€ ์ž์›์„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ€ํ‹ฐ ํƒœ์Šคํ‚น(Multi Tasking) ๊ธฐ์ˆ  ๋•๋ถ„์ด๋‹ค. ๋ฉ€ํ‹ฐ ํƒœ์Šคํ‚น์ด๋ž€ ์ปดํ“จํ„ฐ์—์„œ ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋™์‹œ์— ์‹คํ–‰ํ•˜๋Š” ๋Šฅ๋ ฅ์„ ๋งํ•œ๋‹ค. ์ข€๋” ์ž์„ธํžˆ ๋งํ•˜์ž๋ฉด, OS๋ฅผ ํ†ตํ•ด CPU๊ฐ€ ์ž‘์—…ํ•˜๋Š”๋ฐ ํ•„์š”ํ•œ ์ž์›์„ ํ”„๋กœ์„ธ์Šค ๋˜๋Š” ์Šค๋ ˆ๋“œ๊ฐ„์— ๋‚˜๋ˆ„๋Š” ํ–‰์œ„๋ฅผ ๋งํ•œ๋‹ค. ๋‘ ๊ฐ€์ง€ ์ด์ƒ ์ž‘์—…์„ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ ๊ฐ€ ์ด๋Ÿฌํ•œ ์ž์› ๋ถ„๋‹ด ์›๋ฆฌ ๋•Œ๋ฌธ์ด๋‹ค. ์ง€๊ธˆ ๋ถ€ํ„ฐ ์ œํ•œ๋œ ์ž์›์„ ๊ฐ€์ง€๊ณ  ์ˆ˜์‹ญ๊ฐ€์ง€์˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋™์‹œ์— ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์›๋ฆฌ๋ฅผ ํŒŒํ—ค์ณ ๋ณด์ž. ํ”„๋กœ์„ธ์‹ฑ์˜ ๋ฐœ์ „ ๊ณผ์ • ๋‹จ์ผ ํ”„๋กœ์„ธ์Šค (Single Process) ์ดˆ์ฐฝ๊ธฐ ์ปดํ“จํ„ฐ๋Š” ๋‹จ์ผ ํ”„๋กœ์„ธ์Šค ์‹œ์Šคํ…œ ์ด์—ˆ๋‹ค. ํ•œ๋ฒˆ์— ํ•˜๋‚˜์˜ ํ”„๋กœ๊ทธ๋žจ๋งŒ์ด ์‹คํ–‰ํ• ..

category_image
์ธํŒŒ_
2023.04.06
1
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค vs ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ ๋น„๊ต ๐Ÿ’ฏ ์™„์ „ ์ด์ •๋ฆฌ

๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค์™€ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๋Š” ํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ๋ฐฉ์‹ ์ด๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ๋‹จ์ˆœํžˆ ํ”„๋กœ๊ทธ๋žจ์„ ์—ฌ๋Ÿฌ๊ฐœ ๋„์›Œ๋†“๋Š” ๊ฒƒ์ด ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์•„๋‹ˆ๋ผ ์ด ๋‘˜์€ ์–ธ์ œ ์–ด๋Š๋•Œ์— ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ์ดํ•ดํ•ด์•ผ ํ•œ๋‹ค. ์ด๋ฆ„์œผ๋กœ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๋“ฏ์ด ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค์™€ ๋ฉ€ํ‹ฐ ์Šค๋ ˆ๋“œ๋Š” ์—ฌ๋Ÿฌ๊ฐœ์˜ ํ”„๋กœ์„ธ์Šค, ์Šค๋ ˆ๋“œ๊ฐ€ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์„ ์ผ ์ปซ๋Š”๋‹ค. ๋‹จ์ผ์ด ์•„๋‹Œ ๋‹ค์ค‘์œผ๋กœ ๋Œ์•„๊ฐ์œผ๋กœ์จ ์„ฑ๋Šฅ ํ–ฅ์ƒ ๋“ฑ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํšจ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ๋˜ํ•œ ์ด๋กœ ์ธํ•ด ๋ฐœ์ƒ๋˜๋Š” ๋ถ€๊ฐ€์ ์ธ ๋ฌธ์ œ์ ๋„ ๋ฐœ์ƒํ•˜๊ฒŒ ๋œ๋‹ค. ์ง€๊ธˆ ๋ถ€ํ„ฐ ์ด์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด์ž ๐Ÿ‘ฉโ€๐Ÿ’ป โ€์™„์ „ํžˆ ์ •๋ณตํ•˜๋Š” ํ”„๋กœ์„ธ์Šค vs ์Šค๋ ˆ๋“œ ๊ฐœ๋… ํ•œ๋ˆˆ์— ์ดํ•ดํ•˜๋Š” ํ”„๋กœ์„ธ์Šค & ์Šค๋ ˆ๋“œ ๊ฐœ๋… ์ „๊ณต ์ง€์‹ ์—†์ด ์ปดํ“จํ„ฐ์˜ ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•˜๋Š”๋ฐ๋Š” ๋ฌธ์ œ ์—†์–ด ์™”์ง€๋งŒ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ์‚ฌ๋žŒ์œผ..

category_image
์ธํŒŒ_
2023.04.05
17
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป โ€์™„์ „ํžˆ ์ •๋ณตํ•˜๋Š” ํ”„๋กœ์„ธ์Šค vs ์Šค๋ ˆ๋“œ ๊ฐœ๋…

ํ•œ๋ˆˆ์— ์ดํ•ดํ•˜๋Š” ํ”„๋กœ์„ธ์Šค & ์Šค๋ ˆ๋“œ ๊ฐœ๋… ์ „๊ณต ์ง€์‹ ์—†์ด ์ปดํ“จํ„ฐ์˜ ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•˜๋Š”๋ฐ๋Š” ๋ฌธ์ œ ์—†์–ด ์™”์ง€๋งŒ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ์‚ฌ๋žŒ์œผ๋กœ์„œ ์ปดํ“จํ„ฐ ์‹คํ–‰ ๋‚ด๋ถ€ ์š”์†Œ๋ฅผ ๋”ฐ์ ธ๋ณด๊ฒŒ ๋ ๋•Œ, ์•„๋งˆ ์ปดํ“จํ„ฐ ์šด์˜์ฒด์ œ์— ๋Œ€ํ•ด ์ž…๋ฌธํ•˜๊ฒŒ ๋˜๋ฉด ๊ฐ€์žฅ ๋จผ์ € ๋“ฃ๊ณ  ๋ฐฐ์šฐ๊ฒŒ ๋  ๊ฐœ๋…์ด ํ”„๋กœ์„ธ์Šค์™€ ์Šค๋ ˆ๋“œ ์ผ ๊ฒƒ์ด๋‹ค. ๊ฒฐ๋ก  ๋ถ€ํ„ฐ ๋งํ•˜์ž๋ฉด ์ด ๋‘˜์„ ํ•œ๋งˆ๋””๋กœ ์ •์˜ํ•˜์ž๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ํ”„๋กœ์„ธ์Šค (Process) ์Šค๋ ˆ๋“œ (Thread) ์šด์˜์ฒด์ œ๋กœ๋ถ€ํ„ฐ ์ž์›์„ ํ• ๋‹น๋ฐ›์€ ์ž‘์—…์˜ ๋‹จ์œ„ ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ• ๋‹น๋ฐ›์€ ์ž์›์„ ์ด์šฉํ•˜๋Š” ์‹คํ–‰ ํ๋ฆ„์˜ ๋‹จ์œ„ ์šด์˜์ฒด์ œ(OS)์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ๋ฐฐ๊ฒฝ ์ง€์‹์ด ์—†๋‹ค๋ฉด ์œ„์˜ ์ •์˜๊ฐ€ ๋ฌด์Šจ ์†Œ๋ฆฌ์ธ์ง€ ์ดํ•ด๊ฐ€ ์ž˜ ๋˜์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜๋„ ์œ„์˜ ๋ฌธ์žฅ์—๋Š” ๋‚˜๋ฆ„ ์„ค๋ช…์ด ํ•จ์ถ•๋˜์–ด ์ž˜ ์ •๋ฆฌ ๋˜์–ด ์žˆ๋Š” ์…ˆ์ด๋‹ค. ์ผ๋‹จ ํ”„๋กœ์„ธ์Šค์˜ ์ž‘์—…์˜ ๋‹จ์œ„ ๋ผ๋Š” ๋‹จ์–ด..

category_image
์ธํŒŒ_
2023.04.03
30
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป ํ”„๋กœ์„ธ์Šค / ๋ฐ๋ชฌ / ์„œ๋น„์Šค ์ฐจ์ด ํ•œ๋ฐฉ ์ •๋ฆฌ

ํ”„๋กœ์„ธ์Šค (Process) ํ”„๋กœ์„ธ์Šค๋Š” ๋ฉ”๋ชจ๋ฆฌ์— ์ ์žฌ๋˜์–ด CPU์— ์˜ํ•ด ์‹คํ–‰๋˜๋Š” ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ์„ ์ง€์นญํ•œ๋‹ค. ๊ฐ ํ”„๋กœ์„ธ์Šค๋Š” ๊ณ ์œ ํ•œ ํ”„๋กœ์„ธ์Šค ID(PID)๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์šด์˜์ฒด์ œ๋Š” ํ”„๋กœ์„ธ์Šค ๊ฐ„์˜ ์ž์› ๊ณต์œ ๋ฅผ ๊ด€๋ฆฌํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์›น ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฒฝ์šฐ ๋ธŒ๋ผ์šฐ์ €๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์€ ํ•˜๋‚˜์˜ ํ”„๋กœ์„ธ์Šค๋กœ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ์„ธ์Šค๋Š” ๋ˆˆ์— ๋ณด์ด๋Š” ํ”„๋กœ์„ธ์Šค(foreground process) ์™€ ๋ˆˆ์— ๋ณด์ด์ง€ ์•Š์€ ํ”„๋กœ์„ธ์Šค(background process) ๋กœ ๊ตฌ๋ถ„๋œ๋‹ค. ํฌ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค ๋ฐฑ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ํ”„๋กœ์„ธ์Šค ํ”„๋กœ์„ธ์Šค๋Š” ์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜์ง€ ์•Š๊ณ  ์‹œ์Šคํ…œ์—์„œ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ์„ธ์Šค ์ตœ์†Œํ™”๋ฅผ ํ•˜๋”๋ผ๋„ ๋ˆˆ์— ๋ณด์ด๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ํฌ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค ๋ˆˆ์— ๋ณด์ด์ง€ ์•Š์ง€๋งŒ ๋’ค์—์„œ ์ผ์„ ํ•˜๊ณ  ์žˆ๋Š” ํ”„๋กœ์„ธ..

category_image
์ธํŒŒ_
2023.03.30
8
CS ์ง€์‹

๐Ÿ‘จโ€๐Ÿ’ป ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๋Š” Authentication vs Authorization ์ฐจ์ด

Authentication / Authorization ์ฐจ์ด์  ๋ณดํ†ต ์šฐ๋ฆฌ๊ฐ€ '๊ถŒํ•œ' ์ด๋ผ๊ณ  ๋ถˆ๋ฆฌ์šฐ๋Š” ๊ฒƒ์—” ์ธ์ฆ(Authentication)๊ณผ ์ธ๊ฐ€/์Šน์ธ(Authorization) ๋‘๊ฐ€์ง€ ๋‹จ์–ด๊ฐ€ ์กด์žฌํ•˜๋Š”๋ฐ, ์ธ์ฆ(Authentication) ๊ณผ ์ธ๊ฐ€/์Šน์ธ(Authorization)์€ ๋น„์Šทํ•ด ๋ณด์ด์ง€๋งŒ ์—„์—ฐํ•œ ์ฐจ์ด๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์ธ์ฆ(Authentication) : ๋ณธ์ธ์ด ๋ˆ„๊ตฌ์ธ์ง€ ํ™•์ธ (๋กœ๊ทธ์ธ) ์Šน์ธ(Authorization) : ํŠน์ • ๋ฆฌ์†Œ์Šค์— ๊ถŒํ•œ์ด ์žˆ๋Š”์ง€ ํ™•์ธ (๋“ฑ๊ธ‰ ๊ถŒํ•œ) ์ธ์ฆ (Authentication) ์ธ๊ฐ€ (Authorization) ๊ธฐ๋Šฅ ์ž๊ฒฉ ์ฆ๋ช… ํ™•์ธ ๊ถŒํ•œ ํ—ˆ๊ฐ€/๊ฑฐ๋ถ€ ์ง„ํ–‰ ๋ฐฉ์‹ ๋น„๋ฐ€๋ฒˆํ˜ธ, ์ƒ์ฒด์ธ์‹, ์ผํšŒ์šฉ ํ•€ ๋˜๋Š” ์•ฑ ๋ณด์•ˆ ํŒ€์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ์„ค์ • ์‚ฌ์šฉ ์‚ฌ์šฉ์ž๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ๋Š”๊ฐ€? ์˜ˆ ์•„๋‹ˆ์˜ค ์‚ฌ์šฉ์ž๊ฐ€..

category_image
์ธํŒŒ_
2022.12.30
1
CS ์ง€์‹

๐Ÿ‘จโ€๐Ÿ’ป ์ผ๊ธ‰ ๊ฐ์ฒด(first-class object) ๋ž€?

์ผ๊ธ‰ ๊ฐ์ฒด ๋ž€? ๋ณดํ†ต ์ž๋ฐ”์˜ ๋žŒ๋‹ค ํ‘œํ˜„์‹(Lambda Expression)์„ ๋ฐฐ์šฐ๋‹ค ๋ณด๋ฉด '์ผ๊ธ‰ ๊ฐ์ฒด' ๋ผ๋Š” ๋‹จ์–ด๋ฅผ ์ ‘ํ•˜๊ฒŒ ๋˜๋Š”๋ฐ, ๋œป์„ ์•„๋ฌด๋ฆฌ ๋ด๋„ ๋Œ€์ฒด ๋ฌด์–ผ ๋งํ•˜๋Š” ๊ฑด์ง€ ์™€๋‹ฟ์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. '์ผ๊ธ‰' ์ด๋ž€ ๋œป์€ ์ผ๊ธ‰ ์‹œ๋ฏผ ์ฒ˜๋Ÿผ ๋ฌด์Šจ ํ˜œํƒ์„ ๋ฐ›๋Š” ๋‹ค๋Š” ๋œป์ด ์•„๋‹ˆ๋ผ, ์‚ฌ์šฉํ•  ๋•Œ ๋‹ค๋ฅธ ์š”์†Œ๋“ค๊ณผ ์•„๋ฌด๋Ÿฐ ์ฐจ๋ณ„์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ๋œปํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ณดํ†ต ์ผ๊ธ‰ ๊ฐ์ฒด๋ฅผ ์•„๋ž˜ 3๊ฐ€์ง€ ์กฐ๊ฑด์„ ์ถฉ์กฑํ•œ ๊ฐ์ฒด๋ฅผ ์ผ์ปซ๋Š”๋‹ค. ๋ชจ๋“  ์ผ๊ธ‰ ๊ฐ์ฒด๋Š” ๋ณ€์ˆ˜๋‚˜ ๋ฐ์ดํ„ฐ์— ๋‹ด์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋ชจ๋“  ์ผ๊ธ‰ ๊ฐ์ฒด๋Š” ํ•จ์ˆ˜์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌ ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋ชจ๋“  ์ผ๊ธ‰ ๊ฐ์ฒด๋Š” ํ•จ์ˆ˜์˜ ๋ฆฌํ„ด๊ฐ’์œผ๋กœ ์‚ฌ์šฉ ํ• ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ผ๊ธ‰ ๊ฐ์ฒด๋Š” ์–ด๋– ํ•œ ํŠน์ • ์–ธ์–ด์— ๊ตญํ•œ๋˜๋Š” ๋ฌธ๋ฒ• ๋‹จ์–ด๊ฐ€ ์•„๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ก ์˜ ๊ฐœ๋…์œผ๋กœ์„œ, ์ž๋ฐ”๋‚˜ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์™ธ์— ๋‹ค์–‘ํ•œ ์–ธ์–ด๊ฐ€..

category_image
์ธํŒŒ_
2022.12.23
2
CS ์ง€์‹

๐Ÿ–ฅ๏ธ ์ปดํŒŒ์ผ / ํŠธ๋žœ์ŠคํŒŒ์ผ / ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋น„๊ต ์‰ฝ๊ฒŒ ์„ค๋ช…

์ปดํŒŒ์ผ (Compile) ํ•œ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ์–ธ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์ด ์ปดํŒŒ์ผ์ด๋‹ค. C์–ธ์–ด๋ฅผ ๊ธฐ๊ณ„์–ด๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ, Java๋ฅผ Bytecode๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ ๋ชจ๋‘ ์ด ์ •์˜์— ๋”ฐ๋ฅด๋ฉด Compile์— ํ•ด๋‹นํ•œ๋‹ค. ์‹ฌ์ง€์–ด TypeScript๋ฅผ JavaScript๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ ์—ญ์‹œ ์ด ๋ฒ”์ฃผ์•ˆ์— ์†ํ•œ ๋‹ค๊ณ  ํ• ์ˆ˜ ์žˆ๊ธฐ๋„ ํ•˜๋‹ค. (์—„๋ฐ€ํžˆ ๋งํ•˜๋ฉด ๋’ค์—์„œ ๋ฐฐ์šธ ํŠธ๋žœ์ŠคํŒŒ์ผ๋ง์ด๋‹ค) C โ†’ Assembly Java โ†’ bytecode ๊ผญ ๊ณ ์ˆ˜์ค€์˜ ์–ธ์–ด๋ฅผ ๋ฐ”์ดํŠธ ๋‹จ์œ„์˜ ๊ธฐ๊ณ„์–ด๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ์ปดํŒŒ์ผ์ด๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ์€ ํ•œ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ์–ธ์–ด๋กœ ์˜ฎ๊ธฐ๋Š” ์ผ ์ž์ฒด๋ฅผ ํ†ต์นญํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ํŠธ๋žœ์ŠคํŒŒ์ผ (Transpile) ํ•œ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋น„์Šทํ•œ ์ˆ˜์ค€์˜ ์ถ”์ƒํ™”๋ฅผ ๊ฐ€์ง„ ๋‹ค๋ฅธ ์–ธ์–ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ฒƒ์ด..

category_image
์ธํŒŒ_
2022.08.14
2
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป CI / CD / ํŒŒ์ดํ”„๋ผ์ธ ์ด๋ž€?

CI/CD CI (Continuous Integration) CI/CD์˜ "CI"๋Š” ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ์ž๋™ํ™” ํ”„๋กœ์„ธ์Šค์ธ ์ง€์†์ ์ธ ํ†ตํ•ฉ(Continuous Integration)์„ ์˜๋ฏธํ•œ๋‹ค. CI๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๊ตฌํ˜„ํ•  ๊ฒฝ์šฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ •๊ธฐ์ ์œผ๋กœ ๋นŒ๋“œ ๋ฐ ํ…Œ์ŠคํŠธ๋˜์–ด ๊ณต์œ  ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ํ†ตํ•ฉ๋˜๋ฏ€๋กœ, ์—ฌ๋Ÿฌ ๋ช…์˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋™์‹œ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ๊ณผ ๊ด€๋ จ๋œ ์ฝ”๋“œ ์ž‘์—…์„ ํ•  ๊ฒฝ์šฐ ์„œ๋กœ ์ถฉ๋Œํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. CD (Continuous Delivery / Deployment) CI/CD์˜ "CD"๋Š” ์ง€์†์ ์ธ ์„œ๋น„์Šค ์ œ๊ณต(Continuous Delivery) ๋ฐ/๋˜๋Š” ์ง€์†์ ์ธ ๋ฐฐํฌ(Continuous Deployment)๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ ์ด ๋‘ ์šฉ์–ด๋Š” ์ƒํ˜ธ ๊ตํ™˜์ ์œผ๋กœ ์‚ฌ์šฉ๋œ๋‹ค. ๋‘..

category_image
์ธํŒŒ_
2021.11.22
(0)
CS ์ง€์‹

๐Ÿ‘ฉโ€๐Ÿ’ป JDBC vs ODBC ์ฐจ์ด ์ •๋ฆฌ

JDBC (Java Database Connectivity) Java์—์„œ DB์— ์ ‘๊ทผํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์กฐํšŒ, ์‚ฝ์ž…, ์ˆ˜์ •, ์‚ญ์ œ๋ฅผ ๊ฐ€๋Šฅ์ผ€ํ•˜๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์‹œ๋งํ•ด Java๊ฐ€ Database๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ์‘์šฉํ”„๋กœ๊ทธ๋žจ ์ธํ„ฐํŽ˜์ด์Šค์ธ Java API ์ž…๋‹ˆ๋‹ค. โ€‹์ด ์‘์šฉํ”„๋กœ๊ทธ๋žจ ์ธํ„ฐํŽ˜์ด์Šค๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์— ๋„˜๊ฒจ์งˆ SQL ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘๊ทผ์š”๊ตฌ ๋ฌธ์žฅ์„, ๊ฐ ์‹œ์Šคํ…œ์— ๋งž๋„๋ก ๋ฐ”๊พธ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. API๋Š” ๋™์ ์œผ๋กœ ์˜ฌ๋ฐ”๋ฅธ Java ํŒจํ‚ค์ง€๋ฅผ ๋กœ๋“œํ•˜๊ณ , JDBC ๋“œ๋ผ์ด๋ฒ„ ๋งค๋‹ˆ์ €์— ๋“ฑ๋กํ•˜๊ธฐ ์œ„ํ•œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. โ€‹JDBC connection๋Š” ๋ช…๋ น๋ฌธ์„ ๋งŒ๋“ค๊ณ , ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. JDBC๋ž€ Java์—์„œ DataBase์™€ ์—ฐ๊ฒฐํ•˜์—ฌ ์ž‘์—…ํ•˜๊ธฐ ์œ„ํ•ด์„œ Java์™€ ์—ฐ๋™๋˜๋Š” DBMS(e..

category_image
์ธํŒŒ_
2021.10.06
(0)