๐ฅ๏ธSW Engineer

[ADV_db]Chap 1. ๋ฌผ๋ฆฌ์ ์ ์ฅ ์ฅ์น ์์คํ -2
# ํ๋์ ๋ฉ๋ชจ๋ฆฌ NOR Flash NAND Flash ์ฃผ๋ก ์ ์ฅ์ฅ์น๋ก ์ฌ์ฉ๋๋ค NOR Flash ๋ณด๋ค ์ธ๋ค Read ํ ๋ฒ ์คํ๋ ๊ฒฝ์ฐ Page(๋ณดํต 4kb)๋งํผ ์ฝ์ด์จ๋ค. ์ฐ๊ธฐ๋ณด๋ค ๋น ๋ฅด๋ค. ์์ฐจ์ ์ ๊ทผ๊ณผ ์์ ์ ๊ทผ์ ํฐ ์ฐจ์ด๊ฐ ์๋ค. ๋์คํฌ๋ณด๋ค ํจ์ฌ ๋น ๋ฅด๊ณ , Write๋ Erase๋ณด๋ค๋ ๋น ๋ฅด๋ค. Write ํ๋ฒ ์ฐ์ฌ์ง ๊ณณ์ ๋ฎ์ด์ฐ์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ Erase๊ฐ ์คํ๋ ํ ๋ค์ ์ธ ์ ์๋ค. Erase ์ฝ๊ณ ์ฐ๋ ๊ณผ์ ์ ๋ชจ๋ Page๋จ์๋ก ์ด๋ฃจ์ด ์ง์ง๋ง, ์ง์ฐ๋ ๊ณผ์ ์ 128-256๊ฐ ์ ๋์ Page๋ก ์ด๋ฃจ์ด์ง Block ๋จ์๋ก ์งํ๋๋ค. ์ง์ฐ๋ ํ์๋ ์ ํ๋์ด ์์ด ์ด๋ฅผ ๋์ผ๋ฉด ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์๋ค. ํน์ ๋ธ๋ก๋ง Erase๊ฐ ๋ง์ด ์ผ์ด๋์ง ์๋๋ก Wear-Leveling์ด๋ผ๋ ํ๋ฑํ ์์ ์ ํ๋ค. ์ฝ..

[ADV_db]Chap 1. ๋ฌผ๋ฆฌ์ ์ ์ฅ ์ฅ์น ์์คํ
# ์ ์ฅ ์ฅ์น ๊ฐ์ Volatile Primary storage ๋ฐ์ดํธ ๋จ์์ ๋๋ค ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค. ์บ์ ๋ฉ๋ชจ๋ฆฌ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ Non-Volatile ๋ธ๋ก ๋จ์์ ์ฐ์์ ์ธ ์ ๊ทผ๋ง ๊ฐ๋ฅํ๋ค. Secondary storage(on-line storage) ํ๋์ ๋ฉ๋ชจ๋ฆฌ Magnetic-disk Tertiary storage(off-line storage) Optical storage Tape storage ์ ์ฅ์ฅ์น๋ฅผ ๊ณ ๋ฅด๋ ์์ ์คํผ๋ ๊ฐ๊ฒฉ Reliability(์ ์ฅ ์ ๋ขฐ์ฑ) # ์ ์ฅ ์ธํฐํ์ด์ค ํ์ค ๋์คํฌ ์ธํฐํ์ด์ค SATA SAS NVme SAN NAS # ํ๋ ๋์คํฌ ๋งค์ปค๋์ฆ Platter๋ณ๋ก 50K-100K๊ฐ ์ ๋์ Track์ ๊ฐ์ง๊ณ ์๋ค. ๊ทธ๋ฆฌ๊ณ Track๋ณ๋ก ์ฝ๊ณ ์ธ ์ ์๋ ๊ฐ์ฅ ์์ ๋จ์์ธ ..
[๋ฐฑ์ค]7568-๋ฉ์น
https://www.acmicpc.net/problem/7568 7568๋ฒ: ๋ฉ์น ์ฐ๋ฆฌ๋ ์ฌ๋์ ๋ฉ์น๋ฅผ ํค์ ๋ชธ๋ฌด๊ฒ, ์ด ๋ ๊ฐ์ ๊ฐ์ผ๋ก ํํํ์ฌ ๊ทธ ๋ฑ์๋ฅผ ๋งค๊ฒจ๋ณด๋ ค๊ณ ํ๋ค. ์ด๋ค ์ฌ๋์ ๋ชธ๋ฌด๊ฒ๊ฐ x kg์ด๊ณ ํค๊ฐ y cm๋ผ๋ฉด ์ด ์ฌ๋์ ๋ฉ์น๋ (x, y)๋ก ํ์๋๋ค. ๋ ์ฌ๋ A ์ B์ ๋ฉ www.acmicpc.net num = int(input()) size = [] for _ in range(num): x,y = map(int,input().split()) size.append([x,y]) for i in range(num): count=0 for j in range(num): if((size[i][0] < size[j][0]) and (size[i][1] < size[j][1])): count..
[๋ฐฑ์ค]10866 - ๋ฑ
https://www.acmicpc.net/problem/10866 10866๋ฒ: ๋ฑ ์ฒซ์งธ ์ค์ ์ฃผ์ด์ง๋ ๋ช ๋ น์ ์ N (1 ≤ N ≤ 10,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ๋ช ๋ น์ด ํ๋์ฉ ์ฃผ์ด์ง๋ค. ์ฃผ์ด์ง๋ ์ ์๋ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 100,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ๋ฌธ์ ์ ๋์์์ง www.acmicpc.net from collections import deque import sys lines = int(input()) deque = deque() for _ in range(lines): inp = sys.stdin.readline().split() if(inp[0] == "push_front"): deque.appendleft(inp[1]) elif(inp[0] == "push_back..
[๋ฐฑ์ค]2775-๋ถ๋ ํ์ฅ์ด ๋ ํ ์ผ
https://www.acmicpc.net/problem/2775 times = int(input()) for _ in range(times): floor = int(input()) unit = int(input()) stats = [i+1 for i in range(unit)] for i in range(1,floor+1): for j in range(1,unit): stats[j] = stats[j-1]+stats[j] print(stats[-1])
[๋ฐฑ์ค]11866-์์ธํธ์ค ๋ฌธ์
https://www.acmicpc.net/problem/11866 11866๋ฒ: ์์ธํธ์ค ๋ฌธ์ 0 ์ฒซ์งธ ์ค์ N๊ณผ K๊ฐ ๋น ์นธ์ ์ฌ์ด์ ๋๊ณ ์์๋๋ก ์ฃผ์ด์ง๋ค. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net size,interval = map(int,input().split()) result = [] interval = interval -1 l = [i+1 for i in range(size)] cur = 0 while(len(l) != 0): ncur = cur + interval if(ncur = len(l)): while(ncur >= len(l)): n..