1장 컴퓨터 시스템의 개요 - 컴퓨터의 기본 시스템(프로세서)을 이해한다. - 명령어 실행 주기를 알아본다.

Slides:



Advertisements
Similar presentations
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
Advertisements

제 8 장 메모리 관리전략. 개요 2 기억장치 관리의 발전 개요 SSD(Solid State Drive) – 반도체 메모리 내장함, 처리속도 빠르고 소음이 없고 전력소모량이 적은 플래시 메모리 기반의 모델 주소 바인딩 (address binding) – 정의 논리적.
컴퓨터는 어떻게 동작?.
컴퓨터와 인터넷.
컴퓨터 프로그래밍 기초 [Final] 기말고사
제7강 학습 내용 주소지정 방식의 예 값 즉시 지정 방식과 실행 예 레지스터 직접지정 방식 메모리 직접지정 방식과 실행 예
Windows Server 장. 사고를 대비한 데이터 백업.
임베디드 시스템.
12장. 제어 장치 다루는 내용 CPU속의 제어장치 마이크로 연산 제어장치의 동작.
어셈블리 문법 보강 4월 10일.
컴퓨터시스템 구조 Computer System Architecture.
제 3장 컴퓨터 시스템의 구조.
시스템 보안 [Buffer Overflow] DEC, 15, 2013 By 박동혁.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
9장. 제어장치 Lecture #9.
07. 디바이스 드라이버의 초기화와 종료 김진홍
제10강 중앙처리장치 1.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Error Detection and Correction
DK-128 ADC 실습 아이티즌 기술연구소
DK-128 실습 EEPROM 제어 아이티즌 기술연구소
타이머카운터 사용법 휴먼네트웍스 기술연구소
PSW : PROGRAM STATUS WORD
10장. 예외처리.
2장 프로세스 과목: 운영체제 학번: 이름:오승현.
2주차 운영체제-프로세스 2-B 장정훈.
14 마이크로 연산과 제어장치 IT CookBook, 컴퓨터 구조와 원리 2.0.
Operating system #2 Process
Chap 6.Assembler 유건우.
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
멀티미디어시스템 제 6 장. 운영체제 IT응용시스템공학과 김 형 진 교수.
뇌를 자극하는 Windows Server 2012 R2
컴퓨터시스템 구조 Computer System Architecture.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
논리회로 설계 및 실험 5주차.
DK-128 실습 내부 EEPROM 제어 아이티즌 기술연구소 김태성 연구원
DK-128 실습 타이머카운터 사용법 아이티즌 기술연구소
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2. 컴퓨터 시스템의 동작 명령어 구성 연산 종류와 기능에 따라 오퍼랜드 부분을 다양하게 활용 가능.
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
제4강 처리장치 1.
ARM Development Suite v1.2
“사람과 컴퓨터” 이 점 숙 컴퓨터와 소프트웨어 “사람과 컴퓨터” 이 점 숙
1 컴퓨터 시스템 소개.
ATmega128의 특징 아이티즌 기술연구소
Canary value 스택 가드(Stack Guard).
( Windows Service Application Debugging )
Lecture #3 제2장 CPU의 구조와 기능(2).
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
DK-128 직렬통신 실습 아이티즌 기술연구소
AT MEGA 128 기초와 응용 I 기본적인 구조.
운영체제 레프토 (8장 가상 기억장치 구성) b반 박상수.
컴퓨터구조 연습문제 발표 Chapter 3 - 컴퓨터의 기능 및 상호연결의 최상위 관점
시리얼 UART 정리 정보통신•컴퓨터 공학부 송명규
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
TVM ver 최종보고서
발표자 : 이지연 Programming Systems Lab.
3.2 분기 명령어.
System Security Operating System.
제 4 장 Record.
06. 디바이스의 등록과 해제 김진홍
1. 지역변수와 전역변수 2. auto, register 3. static,extern 4. 도움말 사용법
CODE INJECTION 시스템B 김한슬.
버스와 메모리 전송 버스 시스템 레지스터와 레지스터들 사이의 정보 전송을 위한 경로
Assembly 05 방호남 07 반지훈 09 박상욱.
7 생성자 함수.
6 객체.
2. 프로세스 B 안우진 - 운영체제 -.
Presentation transcript:

1장 컴퓨터 시스템의 개요 - 컴퓨터의 기본 시스템(프로세서)을 이해한다. - 명령어 실행 주기를 알아본다.  - 컴퓨터의 기본 시스템(프로세서)을  이해한다.  - 명령어 실행 주기를 알아본다.  - 인터럽트 개념과 처리 과정을 이해한다.  - 메모리 역할과 계층 구조를 알아본다.

컴퓨터 동작 입력 장치를 통해 정보(프로그램과 데이터)를 받아 메모리로 전달하고 저장 2019-01-18 컴퓨터 동작 입력 장치를 통해 정보(프로그램과 데이터)를 받아 메모리로 전달하고 저장  메모리에 저장된 정보는 프로그램의 제어에 따라 인출 되어 산술 및 논리 기능 장치에서 처리  처리된 정보는 출력 장치를 통해 표시되거나 또는 디스크(보조기억장치)에 저장  컴퓨터 내부의 모든 동작들은 제어 장치에 의해 제어 P 01 Operating System

하드웨어 시스템 2019-01-18 프로세서 디스크 메모리 메모리 제어기 제어기 프린터 테이프 드라이브 테이프 드라이브 시스템 버스  [그림1-1] 하드웨어 시스템의 기본 구성 02 Operating System

하드웨어 시스템-계속 프로세서 - 컴퓨터의 각 부분의 동작을 제어하고 연산을 수행하는 핵심 부분 2019-01-18  [그림 1-2] 중앙처리장치(프로세서) 블록도 03 Operating System

2019-01-18 레지스터 메모리 주소 없이 제어장치에 의해 직접 다루어지는 빠른 메모리 - 모든 장치(회로)들을 연결하는 역할 - 목적을 갖는 하나의 값 저장 - 연산처리 중 중간 값 저장 AC : Accumulator Register DR : General-Purpose Register MQ : Multiplier-Quotient Register(곱셈) MM : Main Memory  [그림 1-3] 프로세서의 레지스터 구조 04 Operating System

레지스터-계속 사용자-가시(Visible) 레지스터 - 시스템(운영체제)과 사용자 프로그램에 의해 액세스 2019-01-18 레지스터-계속 사용자-가시(Visible) 레지스터 - 시스템(운영체제)과 사용자 프로그램에 의해 액세스 데이터 레지스터 - 함수 연산에 필요한 데이터 기억 주소 레지스터 - 주소, 유효 주소 계산에 필요한 주소 부분 기억  기준(Base) 주소 레지스터 페이지 레지스터와 세그먼트 레지스터 인덱스(Index) 레지스터 스택 포인터 조건 코드 레지스터 제로, 자리 넘침, 자리올림, 양수(positive) 비트 등 05 Operating System

레지스터-계속 사용자-불가시(Invisible) 레지스터 제어와 상태 관리 2019-01-18 레지스터-계속 사용자-불가시(Invisible) 레지스터 제어와 상태 관리 프로그램 카운터(PC; Program Counter) - 프로그램 수행 제어(명령어의 실행 순서 보관) 명령 레지스터(IR; Instruction  Register) - 현재 수행하고 있는 명령어 저장  프로그램 상태 레지스터 - 플래그를 포함한 상태 정보 기억 메모리 주소 레지스터(MAR; Memory Address Register) 메모리 액세스하려는 장소의 주소 저장 메모리 버퍼 레지스터(MBR; Memory Buffer Register) 메모리에서 정보를 읽을 때(기억시킬 때) 사용 06 Operating System

명령어 연산과 피연산자(operand), 처리되는 순서를 프로세서에게 지시하는 명령문(statement) 노이만 컴퓨터 2019-01-18 명령어 연산과 피연산자(operand), 처리되는 순서를 프로세서에게 지시하는 명령문(statement) 노이만 컴퓨터 성능향상 – 저장 위치, 명령어 구조 명령어 – 메모리에 보관 한 개씩 프로세서로 전송 해석되고 실행 [그림 1-4] 메모리에 저장된 명령어의 예 P 07 Operating System

명령어 구성 Y = x + b 명령어 – 2진 코드 구성 – 연산코드(실행한 연산), 연산대상(피연산자 저장된 메모리 번지) 2019-01-18 명령어 구성 명령어 – 2진 코드 구성 – 연산코드(실행한 연산), 연산대상(피연산자 저장된 메모리 번지) 연산대상 1 연산 코드 연산대상 2 [그림 1-5] 명령어 구성 Y = x + b 원시 피연산자 목적 피연산자 연산 종류 누산기(accumulator) 피연산자와 데이터 연산 [그림 1-6] 피연산자의 구분 P 08 Operating System

명령어 구성 –계속 연산코드 피연산자 연산 정의 - 가감승제, 쉬프트, 보수 등 2019-01-18 명령어 구성 –계속 연산코드 연산 정의 - 가감승제, 쉬프트, 보수 등 명령어의 구성, 연산 데이터의 종류, 명령어 비트 할당 상황 등 n비트 구성  최대 2n개의 연산 실행 가능 피연산자 처리될 데이터, 데이터가 기억되어 있는 메모리 위치 또는 저장된 레지스터 표시 연산결과 저장될 장소 나타냄 메모리 위치 : 번지에 의해서 지정 레지스터 : 2k개의 레지스터 중에 하나를 나타냄 k 비트의 2진 코드를 사용 지정 함 P 09 Operating System

명령어 구성 -계속 4096 워드를 가진 메모리에 대한 주소 할당을 위하여 최소 12비트(212 = 4096) 번지 필요 2019-01-18 명령어 구성 -계속 4비트 12비트 피연산자 4096 워드를 가진 메모리에 대한 주소 할당을 위하여 최소 12비트(212 = 4096) 번지 필요 [그림 1-7] 명령코드의 구성 P 10 Operating System

명령어 실행주기(machine cycle) 2019-01-18 명령어 실행주기(machine cycle) 명령어 실행 과정 1단계 : 메모리에서 명령레지스터에 이동 저장된 다음 명령어 인출 2단계: 인출한 명령어 해석, 다음 명령 지정하기 위하여 프로그램 카운터 변경 3단계: 명령이 메모리에 1개의 워드 사용  사용장소 결정    피연산자 인출, 필요하면 CPU 레지스터로 보냄 4단계: 명령 실행 5단계: 결과 저장 6단계: 다음 명령을 실행하기위해 1단계로 이동 P 11 Operating System

명령어 실행주기(machine cycle)-계속 2019-01-18 명령어 실행주기(machine cycle)-계속 명령어 실행 - 프로세서의 제어장치에 의해 수행 1. 명령 인출 4. 명령 실행 3. 데이터 획득 2. 명령 해석 [그림 1-8]  명령어 실행 과정 P 12 Operating System

명령어 실행주기(machine cycle) -계속 2019-01-18 명령어 실행주기(machine cycle) -계속 인출 – 해석 - 실행 사이클 (인출(fetch) - 실행(execution) 사이클) ⇒ 명령을 인출하여 연산이 완료되는 시기까지의 간격 [그림 1-8]  명령어 실행 주기 P 13 Operating System

인출 사이클 - 메인 메모리에서 명령을 읽어 명령 레지스터에 저장하기까지의 단계 2019-01-18  인출 사이클 - 메인 메모리에서 명령을 읽어 명령 레지스터에 저장하기까지의 단계 [그림1-9] 인출 사이클 과정 P 14 Operating System

간접 사이클 명령어에 포함되어 있는 주소 이용, 실제 명령어 실행에 필요한 데이터 인출하는 사이클 2019-01-18  간접 사이클 명령어에 포함되어 있는 주소 이용, 실제 명령어 실행에 필요한 데이터 인출하는 사이클 [그림1-10] 간접 사이클 과정 P 15 Operating System

인터럽트 사이클 - 프로세서의 정상적인 순차 제어에서 벗어나는 경우 [인터럽트 생성 과정] 2019-01-18 인터럽트 사이클 - 프로세서의 정상적인 순차 제어에서 벗어나는 경우 [인터럽트 생성 과정] 프로그램 : 명령실행의 결과로서 발생하는 조건에 의해 생성 [예] - 산술 오버플로우 - 제로에 의한 나누기 - 잘못된 범주의 명령어에 의한  실행시도 등 타이머(Timer) : 프로세서의 타이머에 의해 생성 - 운영체제가  어떤 함수(기능) 수행토록 함 입출력(I/O) : 입출력 제어에 의해 생성   - 1개 연산의 정상적인 종료신호 또는 다양한 오류조건의 신호 보냄 하드웨어 잘못 : 전기정전이나 메모리 패리티 오류로 인한 문제로 생성 P 16 Operating System

2019-01-18  인터럽트 사이클-계속 [그림 1-12] 인터럽트 사이클 과정 P 17 Operating System

인터럽트의 종류 인터럽트(Interrupt)란 컴퓨터 시스템에서 예측하지 못했던 사건이 발생하는 상황을 말한다. 2019-01-18 인터럽트(Interrupt)란 컴퓨터 시스템에서 예측하지 못했던 사건이 발생하는 상황을 말한다. 인터럽트의 종류 SVC(Supervisor Call) 인터럽트 : 기억장치 할당, 오퍼레이터와 대화 등 입출렵 인터럽트 : 입출력시 에러, 입출력 완료시 클럭(Clock) 인터럽트 : 프로세서 시간 할당량을 모두 사용할 시 콘솔(Console) 인터럽트 : 키보드에서 인터럽트 키를 누를 때 프로세스간 통신인터럽트 : 통신 메시지를 받을 때 발생 프로그램 검사인터럽트 : 정의 되지 않은 명령어 사용시 발생 하드웨어 검사인터럽트 : 하드웨어 자체 에러 시 발생 P 18 Operating System

2019-01-18 인터럽트 처리 과정 P 19 Operating System

인터럽트 - 하드웨어 신호 단일 프로세서 컴퓨터 인터럽트 사용 인터럽트 활용 - 시스템의 효율적인 처리 능력 향상 2019-01-18 인터럽트 - 하드웨어 신호 장치(입출력 장치나 컴퓨터 내의 프로그램) ⇒ 프로세서 컴퓨터 : 실행중인 일을 멈추고 다른 프로그램 실행 시작 단일 프로세서 컴퓨터 인터럽트 신호 - 다른 프로그램이나 명령문 수행 가능 인터럽트 사용 시스템이 예측하지 못한 사용자 입력의 발생 갑작스런 정전 컴퓨터 시스템으로부터의 긴급처리 요청 잘못된 명령 수행 입출력 작업의 완료 등 여러 종류의 긴급 상황에 대한 적절한 처리 인터럽트 활용 - 시스템의 효율적인 처리 능력 향상 P 20 Operating System

인터럽트 개요 인터럽트 실행중인 프로그램 수행을 연기하고 다른 프로그램의 수행을 요구하는 사건 2019-01-18 인터럽트 개요 인터럽트 실행중인 프로그램 수행을 연기하고 다른 프로그램의 수행을 요구하는 사건    프로그램 2 프로그램 1 인터럽트 서비스 루틴 인터럽트 발생지점 M 2 1 i+1 i [그림1-13] 인터럽트를 이용한 제어 이동 인터럽트 발생  명령어 i+1의 주소(프로그램 카운터의 내용)를 임시 기억 장소에 보관 복귀 주소 : 스택에 저장 P 21 Operating System

인터럽트 개요-계속 프로세서- 연결된 각 입출력 장치의 현재 상태 파악 사용자 프로그램 관점의 인터럽트 2019-01-18 인터럽트 개요-계속 사용자 프로그램 관점의 인터럽트 프로그램 실행을 일시 정지 , 다시 재개  연속적으로 실행 사용자 프로그램은 인터럽트를 위한 별도의 조치 필요 없음 처리 과정 : 프로세서와 운영체제의 책임 인터럽트 처리를 위한 처리 루틴 : 명령어 사이클에 추가    [예] 다중사용자 시스템 환경 - 각각의 키보드에서 입력되어지는 문자 구분 - 동시에 입력되는 같은 문자의 데이터 손실방지 프로세서- 연결된 각 입출력 장치의 현재 상태 파악 키보드로부터  문자를 입력받을 때(문자가 입력되었는지 파악) 출력할 때(프린터가 문자를 출력할 준비 확인) 상태 비트 필요 - 1 비트 이상의 정보로 표현된 준비 비트 P 22 Operating System

인터럽트 개요-계속 [예] ⇒ 프로세서 - 장치의 상태 비트 검사 과정 필요 데이터 전송 전 폴링(polling) 통해 2019-01-18 인터럽트 개요-계속 상태 비트(준비 비트)필요 : 입출력 장치 파악 [예] 입출력 장치가 새로운 입출력 연산 수행 할 수 있을 때(1로 설정) ⇒ 프로세서 -  장치의 상태 비트 검사 과정 필요 데이터 전송 전 폴링(polling) 통해 ⇒ 프로그램 - 장치 상태 점검 과정(wait loop) 필요 프로세서는 다른 연산을 수행할 수 없음 결과 : 수행시간의 낭비 해결 : 인터럽트 사용(프로세서가 다른 작업 수행할 수 있음)  인터럽트 사용 이점 키보드에서 입력이 발생하였을 때만 프로세서에 통보, 처리  프로세서가 이벤트 발생여부를 감시(조사) 불필요 프로세서가 직접 외부 장치의 상태 점검 불필요  다른 연산을 수행하여 프로세서의 효율 높일 수 있음 P 23 Operating System

인터럽트 처리 인터럽트 체제 : 인터럽트 요청과 인터럽트 서비스 루틴 인터럽트 : 서브루틴 호출과 유사 2019-01-18 인터럽트 처리 인터럽트 체제 : 인터럽트 요청과 인터럽트 서비스 루틴 인터럽트 처리 프로그램 : interrupt service routine 인터럽트 요청 신호에 의해 수행되는 루틴 인터럽트 발생원인에 따라 적절한 처리 루틴 수행   인터럽트 : 서브루틴 호출과 유사 인터럽트 요청 신호 발생  실행중인 프로그램 메모리에 저장 ⇒ 인터럽트 서비스 프로그램으로 분기 인터럽트 루틴 수행 완료  인터럽트를 발생한 프로그램으로 제어 되돌려 줌 P 24 Operating System

인터럽트 처리-계속 : 인터럽트 신호가 도달하기 전에 프로그램 A 실행 2019-01-18 인터럽트 처리-계속 [그림1-14] 인터럽트 프로시저 스택 영역 A B PC 레지스터 메모리 : 인터럽트 신호가 도달하기 전에 프로그램 A 실행 : 인터럽트 신호가 프로세서에 도달하면 현재 명령어는 종료 레지스터 내용 ⇒ 스택 영역 또는 PCB(Process Control Block)로 프로그램카운터 ← 프로그램 B(인터럽트 처리 프로그램)의 시작위치 적재 ⇒ 프로그램 B로 점프하고 실행 프로그램이 됨 (c) : 인터럽트 루틴 종료  레지스터 다시 저장   프로그램 카운터, 원래의 프로그램  중단되었던 지점에서 다시 시작 P 25 Operating System

인터럽트 처리-계속 ⇒ 원래의 프로그램은 인터럽트 영향 받지 않고 수행 재개 2019-01-18 인터럽트 처리-계속 서브루틴 - 자신을 호출한 프로그램이 요구한 기능 수행 인터럽트 서비스 루틴 인터럽트 발생 : 수행중인 프로그램과는 관련 없음 인터럽트 서비스 루틴 수행 시작 전 프로세서 - 프로그램의 복귀 후 수행에 영향을 미칠 수 있는 정보 저장 - 인터럽트 발생시의 상태 코드(상태 워드)를 저장 복귀 후 프로세서 임시 기억 장소에 저장했던 상태 워드를 재적재해야 함 ⇒ 원래의 프로그램은 인터럽트 영향 받지 않고 수행 재개 P 26 Operating System

메모리 역할과 계층 프로그램 수행 : 프로그램과 데이터는 메모리에 적재 2019-01-18 메모리 역할과 계층 프로그램 수행 : 프로그램과 데이터는 메모리에 적재 명령어의 수행 속도 : 메모리와의 데이터 전송 속도와 연관 있음 메모리 : 컴퓨터의 성능과 밀접 특성 각각 자신의 주소를 가지는 워드(바이트)로 구성된 배열 주소를 읽거나 기록함으로써 상호 작용이 이루어짐 명령어 수행 메모리에서 한 명령어를 가져온 다음 명령어 해독 메모리에서 피연산자를 가져와 피연산자에 대해 명령어를 수행 계산 결과를 메모리에 다시 저장하는 과정 반복 사용자(제조자) -크고 빠르고 비용이 저렴한 메모리 요구 프로세서 메모리 입출력  [그림1-15] 메모리 역할 P 27 Operating System

메모리 역할과 계층-계속 ● 메모리 계층 구조 - 여러 수준의 메모리 연결 : 비용, 속도, 용량, 액세스시간 등 상호 보완 2019-01-18 메모리 역할과 계층-계속 ● 메모리 계층 구조 - 여러 수준의 메모리 연결 : 비용, 속도, 용량, 액세스시간 등 상호 보완  [그림1-16] 메모리 계층 구조 P 28 Operating System

메모리 역할과 계층-계속 비용, 속도와 크기(용량)에 따라 컴퓨터의 메모리 활용성이 다름 2019-01-18 메모리 역할과 계층-계속 비용, 속도와 크기(용량)에 따라 컴퓨터의 메모리 활용성이 다름 효과적인 메모리 계층의 운영  시스템의 성능 향상 목적 캐시 디스크 메인 메모리 제어장치 레지스터 “CPU-DRAM 차이” 프로세서 “입출력 병목현상” 보조 기억장치 원격 메모리  [그림1-17] 메인메모리 역할 P 29 Operating System

메모리 참조 메모리 계층구조 이용 이유 메모리 참조 경향이 임의(random)가 아니라 지역성(국부성)을 가짐 2019-01-18 메모리 참조  메모리 계층구조 이용 이유 메모리 참조 경향이 임의(random)가 아니라 지역성(국부성)을 가짐 지역성 - 실행중인 프로세서에 의해 나타나는 특성(8장 참고)   메모리내의 정보를 균일하게 액세스 하지 않고 블록 중 일부 선호하여 지역적인 부분만 집중적으로 참조하는 현상 - 시간(temporal) 구역성 (같은 장소) :  먼저 참조된 어떤 기억장소의 부분이 이후에도 계속 참조될 가능성 이 높다. 예) 순환(looping), 부 프로그램, 스택, 계산에 사용되는 변수들. - 공간(spatial) 구역성 (다른 장소) : 어느 기억장소가 참조되면 그 부근의 장소가 이후에도 계속 참조될 가능성이 높다.       예) 배열, 순차적 실행, 관련 변수들의 근처 선언 P 30 Operating System

캐시 메모리 프로세서와 상대적으로 느린 속도로 처리되는 메인 메모리 사이에서 자료나 정보를 저장하는 고속 버퍼 2019-01-18 캐시 메모리 프로세서와 상대적으로 느린 속도로 처리되는 메인 메모리 사이에서 자료나 정보를 저장하는 고속 버퍼 High bandwidth 저속 ; 고속 ; low bandwidth words blocks 캐시 메모리 활용 이유 컴퓨터 프로그램의 수행시에 나타나는 참조 지역성 이용  [그림 1-18] 캐시 메모리 P 31 Operating System

캐시의 기본 동작 주소태그(tag)와 물리적 주소 비교 ⇒ 블록 찾음 캐시적중(cache hit) 2019-01-18 캐시의 기본 동작 주소태그(tag)와 물리적 주소 비교 ⇒ 블록 찾음 캐시적중(cache hit) 캐시가 자료를 보관하고 있으면 캐시는 요청된 데이터를 고속의 RAM에서 읽어 프로세서로 전송 캐시실패(cache miss) 주소의 블록이 캐시에 없다면 메인 메모리에서 그 주소를 포함 하는 블록을 읽어 캐시에 넣고 프로세서로 전송  [그림 1-19] 캐시의 기본동작 P 32 Operating System

가상 메모리 - 메인 메모리의 유효 크기를 증가시키기 위하여 사용되는 기법(8장 참고) 2019-01-18 가상 메모리  - 메인 메모리의 유효 크기를 증가시키기 위하여 사용되는 기법(8장 참고) 논리적 프로그램은 연속된 가상주소를 보여주고 있으며(왼쪽) 4 페이지(A,B,C,D)로 구성  [그림 1-20] 가상메모리를 물리적 메모리로 사상 P 33 Operating System

가상 메모리-계속 가상주소(논리적 주소, 프로그램 주소) - 현재 진행중인 프로세스가 참조하는 자신의 주소 2019-01-18 가상 메모리-계속 가상주소(논리적 주소, 프로그램 주소) -  현재 진행중인 프로세스가 참조하는 자신의 주소 사상(mapping) 또는 메모리 맵(memory map) - 가상주소를 실제의 물리적 주소로 변환하는 과정  [그림 1-21] 메모리 맵 [문제점] - 메모리와 디스크 공간사이의 이동량 증가에 따른 교체 공간 확보 - 시기에 따른 페이지 적재, 다시 복귀시킬 것인가에 대한 페이징 알고리즘 - 요구된 프로세스의 페이지가 없을 때 (페이지 폴트)에 대한  처리 방안 P 34 Operating System

가상 메모리-계속 2019-01-18 [그림 1-22] 가상 메모리 시스템 P 35 Operating System 주소 지정 주소 지정 표준주소 생성기법은 가상주소 번역 없이 사용 (인덱스 기준 레지스터 등) 가상 주소 메모리 사상 또는 번역 버퍼 물리적 주소 OP 명령어 물리적 메모리 논리 메모리 선택 워드 사상된 예외 (만약 주어지지 않으면)  [그림 1-22] 가상 메모리 시스템 P 35 Operating System