Virtual Machines
: 소프트웨어적으로 만들어낸 가상 컴퓨터
--> host 컴퓨터가 guest 운영체제를 따라할 수 있도록 한다.
- Resource sharing: virtualized HW resource를 guest OS와 host OS가 공유한다.
Virtual Machine Monitor (VMM)
: VMM handles real I/O devices.
- Emulates generic virtual I/O devices for guest.
- Guest 코드는 native machine에서 user mode로 동작한다.

Example: Timer Virtualization
- Native machine: timer interrupt --> OS suspends current process, handles interrupt, select and resumes next process.
- Virtual Machine Monitor: VMM suspends current VM, handles interrupt, selects and resumes next VM.
--> VMM이 virtual timer 역할을 하고, interrupt handler 역할을 한다.
Instruction Set Support
▶ User mode
▶ System mode (= Kernel mode)
- Privileged instructions only available in system mode.
- All physical resources only accessible using privileged instructions.
Cache Control

Interface Signals

Finite State Machines (FSM)

Cache Controller FSM

Cache Coherence Problem
: 두 개의 CPU가 physical address space를 공유한다고 생각해보자.
- Write-through caches: 캐시, 메모리에 둘 다 쓴다.

Cache Coherence Protocols
- Cache coherence: 가장 최근에 wirte한 값을 read한다.
▶ Cache coherence를 유지하기 위한 프로토콜:

Invalidating Snooping Protocols

Memory Consistency

Multi-level Caches

2-Level, 3-Level TLB Organization
- TLB: 프로세스별 page table을 위한 캐시
--> Virtual memory에 접근하여, Physical memory 주소를 찾기 위한 page table을 보기 위해 메모리에 접근해야 하는 delay를 막아준다.


Concluding Remarks
- Fast memories are small, large memories are slow. --> Caching
- Principle of locality: Programs use a small part of their memory space frequently.
- Memory hierarchy: L1 cache - L2 cache - L3 cache ------ DRAM memory ------ Disk
- Memory system design is critical for multiprocessors.
출처: 이화여자대학교 이형준교수님 컴퓨터구조
'Computer Architecture > 컴퓨터구조[01]' 카테고리의 다른 글
| [혼자 공부하는 컴퓨터구조] 08-1. 장치 컨트롤러와 장치 드라이버 (1) | 2023.12.04 |
|---|---|
| [컴퓨터구조] 1129 (2) (0) | 2023.11.29 |
| [혼자 공부하는 운영체제] 09-2. 운영체제의 큰 그림 (0) | 2023.11.29 |
| [컴퓨터구조] 1127 (1) | 2023.11.28 |
| [혼자 공부하는 운영체제] 14-3. 페이지 교체와 프레임 할당 (1) | 2023.11.28 |