μ 체 κΈ (135) μΈλ€μΌν 리μ€νΈν C++ μ μΆλ ₯, cpp PS κΈ°λ³Έ ν νλ¦Ώ #include using namespace std; int main(void) { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int a; cin >> a; cout a; std::cout no cppλ§μ λ μμ μΈ λ²νΌλ₯Ό κ°μ§κ² λ€! cppμ΄ cμΈμ΄μ λ²νΌλ₯Ό λΉλ¦¬λλ° λ§μ μκ°μ΄ 걸리λλ° μ΄ μκ°μ μ€μ¬μ£Όκ³ μ μ΄λ€. λμ , cμΈμ΄μ cppμ μ μΆλ ₯μ νΌμ©νλ©΄ μ€λ₯κ° λ°μνλ€. νμ λ μ€ νλμ μ μΆλ ₯λ§ μ¬μ©ν΄μΌ νλ€. std::cin.tie(NULL), std::cout.tie(NULL) cinκ³Ό coutμ΄ λ¬Άμ¬μλ κ±Έμ νμ΄μ€λ€. cinμΌλ‘ μ΄λ€ λ³μλ₯Ό μ½κ³ μΆμ λ νμ μΆλ ₯ λ²νΌλ₯Ό λΉμ΄λ€. coutμ μΆλ ₯νκ³ μΆμ κ²μ λ£μ΄λμλλ° μ΄.. 2021λ μ¬λ¦λ°©νμ κΈ°λ‘ μ΄λ² λ°©νμ μ λ² νκΈ°μ μ΄μ΄μ μΌμ μ°μ₯μ ! 06.21 μ§κΈμ κ±°μ μΆ©μ λμμ§λ§ κ·Έλ μ§λ§,,, κ°λ¦¬κ³ μΆμ§ μμ λΆμΊ ? λ¬΄μ¨ νλ‘κ·Έλ¨? μΈν΄? μ§μ μ ν΄ μ§μ μ ν΄ μ§μ μ ν΄ κ°λΉμ λͺ»ν μ λλ‘ λ²λ € λμ μΌμ λͺΈμ λ¬Άμ΄λκ³ μΆμ§ μλ€κ΅¬ ! κ΅μ₯ν νλ²ν λ°©νμ λ³΄λΌ μμ μ΄λΌλ κ². μ§κΈμΌλ‘μ¬ μΌλ¨ κ·Έλ λ€λ κ² ! μΌλ¨ μ¬λ¦ κ³νμ μ΄λ βΏ νλ‘μ νΈ 1 κ°λ° λμ리μμ 7μλμ μ§ννλ νλ‘μ νΈ κΈ°νμ κ±°μ ν΄λμμΌλ―λ‘ κ°λ°λ§ νλ©΄ λλλ° κ±±μ μ΄ μμ νμ° νλ‘μ νΈ 2 μμμ λμ리μμ§λ§ νΌμ κ°λ°νκΈ° λλ¬Έμ λ΄ ν¬ν΄μ©μΌλ‘ λ νμ₯μμΌλ³΄κ³ μΆμ΄μ νλ μμ¨(?) pj μΆκ°λ‘ ꡬνν κΈ°λ₯λ€μ 리μ€νΈμ ν΄λμκ³ κ·Έκ°μ μμΈ μ§μλ€λ‘ μ’ λ§μ΄ λ―μ΄κ³ μΉ μμ μ λ§μ λ§ λ°°ν¬κΉμ§ μλ²½νκ² ν΄μ ν¬ν΄μ©μΌλ‘ .. 10μ₯ ν볡과 λ³ν μ μ΄ 1 νΈλμμ 1-1. νΈλμμ μ΄λ? νλμ μμ μ μννλλ° νμν λ°μ΄ν°λ² μ΄μ€ μ°μ°μ λͺ¨μ μμ μνμ νμν sqlλ¬Έλ€μ λͺ¨μ EX) νΉν, λ°μ΄ν°λ² μ΄μ€λ₯Ό λ³κ²½νλ INSERT, DELETE, UPDATEλ¬Έμ μ€νμ κ΄λ¦¬ λ Όλ¦¬μ μΈ μμ μ λ¨μ μ₯μ λ°μμ 볡ꡬ μμ μ΄λ λ³νμ μ΄ μμ μ μν μ€μν λ¨μλ‘ μ¬μ©λ¨ λ°μ΄ν°λ² μ΄μ€μ 무결μ±κ³Ό μΌκ΄μ±μ 보μ₯νκΈ° μν΄ μμ κ³μ’μ΄μ²΄ νΈλμμ μ κ²½μ° λμ΄ μΈμΆλλ UPDATE λ¬Έκ³Ό λμ΄ μ κ·Όλλ UPDATE λ¬Έμ΄ μ²λ¦¬ μμλ μ€μνμ§ μμ§λ§ λͺ¨λ μ μμ μΌλ‘ μ€νλμ΄μΌ νλ€. 1-2 νΉμ± (ACID) μμμ±, μΌκ΄μ±, 격리μ±, μ§μμ± μμμ±(atomicity) νΈλμμ μ μ°μ°λ€μ΄ λͺ¨λ μ μμ μΌλ‘ μ€νλκ±°λ νλλ μ€νλμ§ μμμΌνλ all-or-nothingλ°©μμ .. 9μ₯ μ κ·ν 1 μ΄μ νμ μ΄μ(anomaly) νμμ΄λ? λΆνμν λ°μ΄ν° μ€λ³΅μΌλ‘ μΈν΄ 릴λ μ΄μ μ λν λ°μ΄ν° μ½μ ·μμ ·μμ μ°μ°μ μνν λ λ°μν μ μλ λΆμμ© μ΄μ νμμ μ’ λ₯ μ½μ μ΄μ(insertion anomaly) 릴λ μ΄μ μ μ λ°μ΄ν°λ₯Ό μ½μ νλ €λ©΄ λΆνμν λ°μ΄ν°λ ν¨κ» μ½μ ν΄μΌ νλ λ¬Έμ κ°±μ μ΄μ(update anomaly) 릴λ μ΄μ μ μ€λ³΅λ ν¬νλ€ μ€ μΌλΆλ§ μμ νμ¬ λ°μ΄ν°κ° λΆμΌμΉνκ² λλ λͺ¨μμ΄ λ°μνλ λ¬Έμ μμ μ΄μ(deletion anomaly) 릴λ μ΄μ μμ ν¬νμ μμ νλ©΄ κΌ νμν λ°μ΄ν°κΉμ§ μμ€λλ μ°μ μμ νμμ΄ λ°μνλ λ¬Έμ μμ 릴λ μ΄μ : μ½μ μ΄μ μμ§ μ΄λ²€νΈμ μ°Έμ¬νμ§ μμ μμ΄λκ° “melon”, μ΄λ¦μ΄ “μ±μμ©”, λ±κΈμ΄ “gold”μΈ μ κ· κ³ κ°μ λ°μ΄ν°λ μ΄λ²€νΈμ°Έ.. IE νκΈ°λ² μ¬μ©νλ κΈ°νΈμ μλ―Έ μμ 1 - λΆμμ μ§μ E-R λ€μ΄μ΄κ·Έλ¨ E-R λ€μ΄μ΄κ·Έλ¨μ ν΅ν΄ κ΄κ³λ₯Ό μ΄ν΄λ³΄λ©΄, λΆμκ³Ό μ§μμ 맀ν μΉ΄λλ리ν°λ 1 : N μ΄κ³ , μμμ΄λ κ΄κ³μμ λΆμκ° ν¬ν¨νκ³ μ§μμ μμλλ κ΄κ³λ‘ λΆμκ° μ£ΌμΈλ¨(λΆμλ μ§μμ ν¬ν¨ν μλ μκ³ μν μλ μμ)μ μ μ μλ€. λ°λΌμ λΆμλ μ ν μ°Έμ¬μ΄μ§λ§ μ§μμ νμ μ°Έμ¬μ΄λ€. μ§μμ λΆμμ ν¬ν¨λμ§ μμλ λ 립μ μΌλ‘ μ‘΄μ¬ν μ μμΌλ―λ‘ μ§μμ΄λ μ‘΄μ¬λ μ½ν κ°μ²΄ μ¦ μ’ μμ μΈ κ°μ²΄κ° μλλ€. λ°λΌμ μ΄μ€ λ§λ¦λͺ¨κ° μλ λ¨μΌ λ§λ¦λͺ¨λ‘ νννμλ€. IE νκΈ°λ² μμμ ν΄μν κ²°κ³Όλλ‘ IE νκΈ°λ²μΌλ‘ λ°κΎΈλ©΄ μμ κ°λ€. 맀ν μΉ΄λλ리ν°μ μν΄ μΌκ°λ°μ΄ κ·Έλ €μ§κ³ μ’ μμ μΈ κ΄κ³κ° μλλ―λ‘ μ§μ μ΄ μλ μ μ μΌλ‘ νκΈ°νμμΌλ©° μ§μμ νμμ°Έμ¬, λΆμ.. 8μ₯ λ°μ΄ν°λ² μ΄μ€ μ€κ³ 01. λ°μ΄ν°λ² μ΄μ€ μ€κ³ λ¨κ³ 02. μꡬ μ¬ν λΆμ κ²°κ³Όλ¬Ό: μꡬ μ¬ν λͺ μΈμ μ£Όμ μμ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ€μ λ‘ μ¬μ©ν μ£Όμ μ¬μ©μμ λ²μλ₯Ό κ²°μ μ¬μ©μκ° μ‘°μ§μμ μννλ μ 무λ₯Ό λΆμ λ©΄λ΄, μ€λ¬Έ μ‘°μ¬, μ 무 κ΄λ ¨ λ¬Έμ λΆμ λ±μ λ°©λ²μ μ΄μ©ν΄ μꡬ μ¬ν μμ§ μμ§λ μꡬ μ¬νμ λν λΆμ κ²°κ³Όλ₯Ό μꡬ μ¬ν λͺ μΈμλ‘ μμ± μμ: μΈν°λ·μΌλ‘ νμλ€μκ² μνμ ν맀νλ νλΉ λ§νΈμ λ°μ΄ν°λ² μ΄μ€ κ°λ° 03. κ°λ μ μ€κ³ λͺ©μ DBMSμ λ 립μ μΈ κ°λ μ μ€ν€λ§ μ€κ³ μꡬ μ¬ν λΆμ κ²°κ³Όλ¬Όμ κ°λ μ λ°μ΄ν° λͺ¨λΈμ μ΄μ©ν΄ κ°λ μ κ΅¬μ‘°λ‘ νν κ°λ μ λͺ¨λΈλ§ – μΌλ°μ μΌλ‘ E-R λͺ¨λΈμ λ§μ΄ μ΄μ© κ²°κ³Όλ¬Ό κ°λ μ μ€ν€λ§ : E-R λ€μ΄μ΄κ·Έλ¨ λλ IE νκΈ°λ² μ£Όμ μμ μꡬ μ¬ν λΆμ κ²°κ³Όλ₯Ό κΈ°λ°μΌλ‘ μ€μν κ°μ²΄λ₯Ό μΆ.. 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% μ΄μμ΄λ€. κ·Έλμ νμν λλ§ νμ΄μ§λ₯Ό λ©λͺ¨λ¦¬μ μ¬λ¦¬λ κ²μ ν¨μ¨μ μ΄λ€. νμ λ λ©λͺ¨λ¦¬μμ λͺ¨λ νμ΄μ§λ₯Ό μ¬λ¦¬λ κ²λ³΄λ€ νμν λλ§ μ¬λ¦¬λ κ²μ΄ .. μ΄μ 1 2 3 4 5 Β·Β·Β· 14 λ€μ