[운영체제] 5. ꡐ착 μƒνƒœ

[운영체제] 5. ꡐ착 μƒνƒœ

1. κ΅μ°©μƒνƒœμ˜ κ°œλ… λ‘κ°œ μ΄μƒμ˜ ν”„λ‘œμ„ΈμŠ€κ°€ μ„œλ‘œ μžμ› 할당을 μœ„ν•΄ λ‹€λ₯Έ ν”„λ‘œμ„ΈμŠ€μ˜ μž‘μ—…μ΄ λλ‚˜κΈ°λ§Œμ„ λ¬΄ν•œν•˜κ²Œ 기닀리고 μžˆλŠ” μƒνƒœλ₯Ό μ˜λ―Έν•œλ‹€. κΈ°μ•„μƒνƒœλŠ” ν”„λ‘œμ„ΈμŠ€μ˜ 일뢀가 μžμ› 할당을 μœ„ν•œ λŒ€κΈ°κ°€ μ§€μ†μ μœΌλ‘œ μΌμ–΄λ‚˜λŠ” 것을 μ˜λ―Έν•˜κ³ , κ΅μ°©μƒνƒœλŠ” λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ˜ 진행이 멈좘 μƒνƒœλ₯Ό μ˜λ―Έν•œλ‹€. 2. κ΅μ°©μƒνƒœμ˜ νŠΉμ„± κ΅μ°©μƒνƒœμ˜ ν•„μš”μ‘°κ±΄ μƒν˜Έλ°°μ œ 쑰건 배타적인 ν†΅μ œκΆŒμ„ μ˜λ―Έν•œλ‹€. 점유 λŒ€κΈ° 쑰건 ν•„μš”λ‘œ ν•˜λŠ” μžμ›μ„ λ‹€λ₯Έ ν”„λ‘œμ„ΈμŠ€κ°€ μ μœ μ€‘μ΄λΌλ©΄ λ°˜λ“œμ‹œ λŒ€κΈ°ν•΄μ•Ό 함 비선점 쑰건 λ‹€λ₯Έ ν”„λ‘œμ„ΈμŠ€κ°€ μ μœ μ€‘μΈ μžμ›μ„ 빼앗을 수 μ—†λ‹€. (자발적 λ°˜ν™˜λ§Œ ν—ˆμš©) ν™˜ν˜• λŒ€κΈ° 쑰건 μžμ›ν• λ‹Ή κ·Έλž˜ν”„ κ΅μ°©μƒνƒœλ₯Ό λͺ…ν™•ν•˜κ²Œ ν‘œν˜„ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•˜λŠ” κ·Έλž˜ν”„λ₯Ό μ˜λ―Έν•œλ‹€. 정점 P : ν”„λ‘œμ„ΈμŠ€λ₯Ό μ˜λ―Έν•˜λŠ” μ •μ μ˜ 집합 R : μžμ›μ„ μ˜λ―Έν•˜λŠ” μ •μ μ˜..

  • textsms
[운영체제] 3. μŠ€μΌ€μ€„λ§ μ•Œκ³ λ¦¬μ¦˜

[운영체제] 3. μŠ€μΌ€μ€„λ§ μ•Œκ³ λ¦¬μ¦˜

1. μŠ€μΌ€μ€„λ§ 평가 κΈ°μ€€ 일반적으둜 μŠ€μΌ€μ€„λ§ μ•Œκ³ λ¦¬μ¦˜μ˜ μ„±λŠ₯을 ν‰κ°€ν•˜λŠ” λ°μ—λŠ” 평균 λŒ€κΈ°μ‹œκ°„κ³Ό 평균 λ°˜ν™˜μ‹œκ°„μ΄ μ‚¬μš©λœλ‹€. 평균 λŒ€κΈ°μ‹œκ°„: ν”„λ‘œμ„ΈμŠ€μ˜ μˆ˜ν–‰μ΄ μ™„λ£Œλ  λ•Œ κΉŒμ§€ μ€€λΉ„ νμ—μ„œ κΈ°λ‹€λ¦¬λŠ” μ‹œκ°„μ˜ 평균 평균 λ°˜ν™˜μ‹œκ°„: ν”„λ‘œμ„ΈμŠ€κ°€ μƒμ„±λœ μ‹œμ λΆ€ν„° λ°˜ν™˜λ˜λŠ” μ‹œμ κΉŒμ§€ κ±Έλ¦° μ‹œκ°„μ˜ 평균 2. FCFS (First-Come First-Served) 비선점 μ•Œκ³ λ¦¬μ¦˜μ΄λ©°, λ¨Όμ € 온 ν”„λ‘œμ„ΈμŠ€κ°€ λ¨Όμ € μ‹€ν–‰λ˜λŠ” μ•Œκ³ λ¦¬μ¦˜μ΄λ‹€. 짧은 μž‘μ—…μ΄ κΈ΄ μž‘μ—…μ„ κΈ°λ‹€λ¦¬κ±°λ‚˜ μ€‘μš”ν•œ ν”„λ‘œμ„ΈμŠ€κ°€ λ‚˜μ€‘μ— 싀행될 μˆ˜λ„ μžˆλ‹€λŠ” μ μ—μ„œ λŒ€ν™”ν˜• μ‹œμŠ€ν…œμ—λŠ” μ ν•©ν•˜μ§€ μ•Šλ‹€. 3. SJF (Shortest Job First) 비선점 μ•Œκ³ λ¦¬μ¦˜μ΄λ©°, μ€€λΉ„ νμ—μ„œ κΈ°λ‹€λ¦¬λŠ” ν”„λ‘œμ„ΈμŠ€ 쀑 μ˜ˆμƒ μ‹€ν–‰μ‹œκ°„μ΄ κ°€μž₯ 짧은 것이 λ¨Όμ € μ‹€ν–‰λœλ‹€. μ˜ˆμƒ μ‹€ν–‰μ‹œκ°„μ„ μ˜ˆμΈ‘ν•˜λŠ”..

  • textsms
[운영체제] 4. 병행 ν”„λ‘œμ„ΈμŠ€

[운영체제] 4. 병행 ν”„λ‘œμ„ΈμŠ€

1. 병행 ν”„λ‘œμ„ΈμŠ€μ˜ κ°œλ… 병행성 μ—¬λŸ¬κ°œμ˜ ν”„λ‘œμ„ΈμŠ€ ν˜Ήμ€ μ“°λ ˆλ“œκ°€ λ™μ‹œμ— μ‹€ν–‰λ˜λŠ” μ‹œμŠ€ν…œμ  νŠΉμ„±μ„ μ˜λ―Έν•œλ‹€. CPU(μ½”μ–΄)κ°€ ν•œκ°œλΌλ©΄ 짧은 μ‹œκ°„λ™μ•ˆ λ²ˆκ°ˆμ•„κ°€λ©° μ‹€ν–‰ν•˜λ©° μ•„λ‹ˆλ©΄ μ—¬λŸ¬κ°œμ˜ CPUλ₯Ό 각각의 ν”„λ‘œμ„ΈμŠ€ ν˜Ήμ€ μ“°λ ˆλ“œκ°€ μ‚¬μš©ν•œλ‹€. λ©”λͺ¨λ¦¬ ꡬ쑰에 따라 κ°•κ²°ν•© λ©€ν‹°ν”„λ‘œμ„Έμ„œ ν˜Ήμ€ μ•½κ²°ν•© λ©€ν‹°ν”„λ‘œμ„Έμ„œλ‘œ λ‚˜λ‰œλ‹€. κ°•κ²°ν•©: μ—¬λŸ¬ CPUκ°€ ν•˜λ‚˜μ˜ λ©”λͺ¨λ¦¬λ₯Ό 곡유 (ν•˜λ‚˜μ˜ 운영체제) μ•½κ²°ν•©: 각 μ‹œμŠ€ν…œμ΄ λ…λ¦½λœ μš΄μ˜μ²΄μ œμ™€ λ©”λͺ¨λ¦¬λ₯Ό 가지고 μ„œλ‘œ 톡신링크λ₯Ό 가짐 단일 ν”„λ‘œμ„ΈμŠ€ λ‚΄μ˜ 병행성 단일 ν”„λ‘œμ„ΈμŠ€ λ‚΄μ—μ„œ 병행성은 μš°μ„ μˆœμœ„ κ·Έλž˜ν”„, Fork/Join ꡬ쑰, 병행문 등을 톡해 μ„€λͺ…ν•œλ‹€. ν”„λ‘œμ„ΈμŠ€ κ°„μ˜ 병행성 ν”„λ‘œμ„ΈμŠ€ κ°„μ˜ λ³‘ν–‰μ„±μ—μ„œ μƒν˜Έ ν˜‘λ ₯ν•˜λŠ” 경우λ₯Ό 비동기적이라고 ν•œλ‹€. 비동기 병행 ν”„λ‘œμ„ΈμŠ€λŠ” μ„œλ‘œ μžμ›μ„ κ³΅μœ ν•˜λ©°..

  • textsms
[운영체제] 2. ν”„λ‘œμ„ΈμŠ€ κ°œμš”

[운영체제] 2. ν”„λ‘œμ„ΈμŠ€ κ°œμš”

1. ν”„λ‘œμ„ΈμŠ€ ν”„λ‘œμ„ΈμŠ€λž€ μ‹€ν–‰ 쀑인 ν”„λ‘œκ·Έλž¨μ„ μ˜λ―Έν•œλ‹€. λ³Έλ”” ν”„λ‘œκ·Έλž¨μ΄λž€ λ””μŠ€ν¬ λ‚΄ 파일둜써 μ‘΄μž¬ν•˜λ©° 정적이고 μˆ˜λ™μ μΈ κ°œμ±„μ΄λ‹€. ν•˜μ§€λ§Œ 운영체제둜 ν•„μš”ν•œ μžμ›μ„ ν• λ‹Ήλ°›μ•„ λ™μž‘μ„ μ‹€ν–‰ν•˜λ©΄ λŠ₯동적이고 동적인 ν”„λ‘œμ„ΈμŠ€κ°€ λœλ‹€. ν”„λ‘œμ„ΈμŠ€μ˜ μƒνƒœ λ³€ν™” ν”„λ‘œμ„ΈμŠ€λŠ” 일단 μƒμ„±λœ ν›„μ—λŠ” μžμ›μ„ ν• λ‹Ήλ°›κ³  μ’…λ£Œλ˜κΈ° μ „κΉŒμ§€ λ‹€μ„― λ‹¨κ³„μ˜ μƒνƒœλ₯Ό μ˜€κ°„λ‹€. 생성 → μ€€λΉ„ μŠ€μΌ€μ€„λŸ¬μ— μ˜ν•΄ ν˜ΈμΆœλ˜λŠ”λ°, 이 λ•Œ λ©”λͺ¨λ¦¬ 이용 κ°€λŠ₯μ„±κ³Ό μ–΄λ–€ μž₯μΉ˜κ°€ μš”κ΅¬λ˜λŠ”μ§€ κ²€μ‚¬ν•œλ‹€. μ€€λΉ„ → μ‹€ν–‰ 사전에 μ •μ˜λœ μŠ€μΌ€μ€„λ§ μ•Œκ³ λ¦¬μ¦˜μ— 따라 ν”„λ‘œμ„ΈμŠ€κ°€ μ‹€ν–‰λœλ‹€. (λ””μŠ€νŒ¨μΉ˜λΌκ³  ν•œλ‹€.) μ‹€ν–‰ → μ€€λΉ„ ν• λ‹Ή μ‹œκ°„μ΄λ‚˜ μš°μ„ μˆœμœ„ μ•Œκ³ λ¦¬μ¦˜μ˜ 선점방식에 μ˜ν•΄ μ€€λΉ„μƒνƒœλ‘œ λ˜λŒμ•„κ°€λŠ” κ²½μš°λ„ μžˆλ‹€. μ‹€ν–‰ → λŒ€κΈ° μž…μΆœλ ₯ ν˜Ήμ€ νŽ˜μ΄μ§€ κ΅ν™˜λ“±μ˜ μž‘μ—…μ€ μ‹œκ°„μ΄ 였래 걸리기 ..

  • textsms
[운영체제] 1. 운영체제 κ°œμš”

[운영체제] 1. 운영체제 κ°œμš”

1. 운영체제의 μ—­ν•  μ—­ν•  μš΄μ˜μ²΄μ œλŠ” ν•˜λ“œμ›¨μ–΄ μžμ›μ„ κ΄€λ¦¬ν•˜κ³  μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ μ›ν• ν•˜κ²Œ μ‹€ν–‰λ˜λ„λ‘ κ΄€λ¦¬ν•˜λŠ” 역할을 μˆ˜ν–‰ν•œλ‹€. 기쑴에 μš΄μ˜μ²΄μ œκ°€ μ—†λ˜ ν™˜κ²½μ—μ„œμ˜ 문제점 λ‹€μ–‘ν•œ ν™˜κ²½μ—μ„œ μžμ›μ„ ν• λ‹Ήλ°›λŠ” 것에 어렀움이 μžˆμ—ˆλ‹€. λ™μ‹œμ— μ—¬λŸ¬ ν”„λ‘œκ·Έλž¨μ„ μ‹€ν–‰ν•  μ‹œ μ‘μš©ν”„λ‘œκ·Έλž¨ 끼리의 μžμ› 할당에 어렀움이 μžˆμ—ˆλ‹€. μš΄μ˜μ²΄μ œκ°€ λ„μž…λœ ν›„ μžμ›μ˜ ν• λ‹Ήμ΄λ‚˜ 뢄배에 μš΄μ˜μ²΄μ œκ°€ κ°œμž…ν•˜κ²Œ 됨으둜써 ν”„λ‘œκ·Έλž¨μ˜ 개발 및 μ‹€ν–‰μ˜ νš¨μœ¨μ„±μ΄ μ¦κ°€λ˜μ—ˆλ‹€. 컀널 μ‘μš© ν”„λ‘œκ·Έλž¨κ³Ό ν•˜λ“œμ›¨μ–΄ μˆ˜μ€€μ˜ 처리의 가ꡐ 역할을 ν•˜λŠ” 운영체제의 핡심 μš”μ†Œλ₯Ό 컀널이라 ν•œλ‹€. μ»€λ„μ—λŠ” μΌμ²΄ν˜• 컀널과 마이크둜 컀널이 μžˆλ‹€. μΌμ²΄ν˜• 컀널 (UNIX 계열 μš΄μ˜μ²΄μ œκ°€ 여기에 ν¬ν•¨λœλ‹€.) μž₯점 : μ„œλΉ„μŠ€ κ°„ μƒν˜Έμž‘μš©μ΄ 쉽닀. 단점 : 일뢀 μš”μ†Œμ—μ„œ μ—λŸ¬ λ°œμƒ μ‹œ μ‹œ..

  • textsms