Download presentation
Presentation is loading. Please wait.
1
Chapter 02 시스템 구조(System Structure)
Operating Systems Chapter 02 시스템 구조(System Structure)
2
1. 컴퓨터 기본 구성 운영체제는 컴퓨터의 자원을 효율적으로 관리하는 소프트웨어이다.
컴퓨터 자원(Resource) 이란 컴퓨터를 구성하는 하드웨어와 이를 작동하기 위한 소프트웨어를 모두 포함한다. 소프트웨어 응용 소프트웨어 시스템 소프트웨어 운영체제 하드웨어 자원 정보들의 전송 통로 제공 및 처리를 해 주는 물리적인 장비 중앙 처리 장치, 기억 장치, 입출력 장치, 주변 장치 Practical Operating Systems
3
1. 컴퓨터 기본 구성 1.1 Von Neumann Architecture(폰 노이먼 구조)
폰 노이먼 구조 : 모든 프로그램은 메모리로 올라와야지만 실행이 가능하다는 것이다. Practical Operating Systems
4
1. 컴퓨터 기본 구성 1.1 Von Neumann Architecture(폰 노이먼 구조)
Practical Operating Systems
5
1. 컴퓨터 기본 구성 1.2 컴퓨터 하드웨어 용량의 단위 속도의 단위 Bit Byte
Clock : 디지털 시스템의 Clock 발생기에서 발생하는 동기신호 Cycle : CPU가 수행하는 일련의 작업 단위 Hz의 의미 : 1초에 발생하는 주파수(진동) Practical Operating Systems
6
1. 컴퓨터 기본 구성 1.3 Central Processing Unit(중앙처리장치) CPU 또는 Processor
프로그램의 실행과 데이터 처리라는 중추적인 기능의 수행을 담당 레지스터, 산술 논리 연산 장치, 제어 장치 등으로 구성 마이크로프로세서 컴퓨터의 중앙 처리 장치를 단일의 IC칩에 집적한 반도체 소자 레지스터를 포함하여, 산술 논리 장치, 제어 장치를 칩 하나로 구성하여 집적 회로(IC)화 한 것 마이크로 콘트롤러 마이크로프로세서 중에 1개의 칩 내에 CPU 기능 및 일정한 용량의 메모리(ROM, RAM 등)와 입출력 제어 인터페이스 회로까지를 내장한 것 그래픽 카드의 GPU, 사운드 카드의 DSP Practical Operating Systems
7
1. 컴퓨터 기본 구성 버스(bus) 프로세서와 메모리 및 여러 입출력 장치 간 또는 주변 장치들을 서로 연결하여 정보(데이터, 주소, 제어)를 주고받을 수 있게 해 주는 통로 Data bus : 데이터 이동 경로로 양방향이다. Address bus : 주소(데이터 위치) 정보를 전송하는 경로 Control bus : 제어 신호를 전송하는 경로 단방향 (예, read/write 신호) 시스템 버스(system bus) CPU와 시스템 내의 다른 요소들 사이에 정보를 교환하는 통로 기능에 따라 주소 버스(address bus), 데이터 버스(data bus), 제어 버스(control bus)로 구분 FSB(Front-side Bus) : 데이터 전송속도 Cf. BSB(Back-side Bus) Practical Operating Systems
8
1. 컴퓨터 기본 구성 Register(레지스터)
IR(Instruction Register) : 수행 중인 명령어를 저장 하는 register PC(Program Counter) : 다음에 수행할 명령어의 주소를 저장하는 register MBR(Memory Buffer Register) : 메모리에서 읽거나 쓸 data를 저장하는 register MAR(Memory Address Register) : 메모리에 접근할 주소를 저장하는 register AC(Accumulator) : 연산처리용 register (processor register) Practical Operating Systems
9
1. 컴퓨터 기본 구성 Memory 액세스 방법에 따른 기억 장치의 분류 순차적 액세스 직접 액세스 임의 액세스 연관 액세스
저장된 정보를 처음부터 순서대로 액세스하는 방식 직접 액세스 액세스할 위치 근처로 직접 이동한 다음에, 순차적 검색을 통하여 최종 위치에 도달하는 방식 임의 액세스 주소에 의해 직접 기억 장소를 찾아 액세스하며, 어떤 기억 장소든 액세스하는 시간이 동일 연관 액세스 저장된 내용의 특정 비트들을 비교하여 일치하는 내용을 액세스하는 방식 Practical Operating Systems
10
1. 컴퓨터 기본 구성 기억 장치(memory) 제조 기술에 따른 기억 장치의 종류 DRAM(Dynamic RAM)
캐패시터(capacitor)에 전하(charge)를 충전하는 방식 시간이 지나면 방전하므로 데이터의 저장 상태를 유지하기 위하여 주기적인 재충전(refresh)이 필요 SRAM과 비교해 밀도가 더 높고, 가격이 더 저렴 용량이 큰 주기억 장치로 사용 현재는 SDRAM : 전원이 연결된 동안에는 데이터를 보관, 현재 PC용 주기억장치 소자로 많이 사용. 대역폭을 넓어 입출력 속도를 빠르게 한 DDR(Double Data Rate) 표2.1 사양 참조 SRAM(Static RAM) 기억 소자로서 플립플롭(flip-flop)을 이용 전원이 공급되는 동안에는 재충전 없이도 데이터를 계속 유지 가능 DRAM보다 빠름 높은 속도가 필요한 cache로 사용 Practical Operating Systems
11
1. 컴퓨터 기본 구성 레지스터 캐시메모리 주기억장치 보조기억장치 기억 장치(memory)
계층적 기억 장치 시스템(hierarchical memory system) 기억 장치 설계에 있어서 가장 중요한 요소는 용량, 속도, 가격 액세스 속도가 높아질수록, 비트당 가격은 높아진다 용량이 커질수록, 비트당 가격은 낮아진다 용량이 커질수록, 액세스 시간은 길어진다 속도가 빠르나 가격은 높은 기억 장치를 구성하여 사용하거나, 속도는 느리지만 가격은 낮은 기억 장치를 구성하여 사용 레지스터 캐시메모리 주기억장치 보조기억장치 속도 용량 Practical Operating Systems
12
2. System Issue 버퍼(Buffer) Cache(캐시)
CPU 내부에 있으며 BSB의 속도로 동작하는 고속 메모리,버퍼의 예 주기억장치의 데이터 일부를 저장해 놓고 처리 속도를 향상 즉, CPU 와 주 기억장치 사이의 속도 차이를 보완 적중률 : Cache hit, cache miss (ratio) 교체정책 (Prefetch) : LRU(Least Recently Used) 쓰기정책 : write through, write back Practical Operating Systems
13
2. System Issue Interrupt(인터럽트)
컴퓨터 동작 중 예기치 않은 상황이 발생 했을 때 긴급 서비스를 요청하는 신호. 외부 인터럽트 : 정전, 입출력 요청, 타이밍 장치에 의한 인터럽트 내부 인터럽트 : 잘못된 명령 혹은 데이터 사용 시(트랩), 오버플로, 0 나눗셈, 메모리 보호 오류 등 입출력 방식 CPU에 의한 입출력 Programmed I/O (polling) Interrupt I/O DMA 의한 입출력 I/O processor에 의한 입출력 Practical Operating Systems
14
2. System Issue Direct Memory Access(DMA) Memory Protection(메모리 보호)
입출력 관리자가 CPU 허락 없이 메모리를 직접 접근할 수 있는 권한. Memory mapped I/O : 메모리의 일정 공간을 입출력 작업 영역으로 할당해 주는 방식 Cycle steal : CPU와 DMA가 동시에 메모리를 접근했을 때 DMA에게 우선권을 부여함으로써 CPU의 cycle이 빼앗긴다는 의미 Memory Protection(메모리 보호) 메모리는 크게 운영체제 영역과 사용자 영역으로 나누며, 사용자가 영역도 여러 개의 작업이 동시에 실행되기 때문에 고유의 작업 영역을 가진다. 이런 상황에서 메모리 보호는 매우 중요하다. 어떤 작업의 메모리 공간의 시작 주소를 bound register(경계 레지스터)에 저장하고 그 작업의 크기를 limit register(한계 레지스터)에 저장하여 메모리 접근 시 해당 작업의 영역인지를 검사한다. Practical Operating Systems
15
2. System Issue Booting(부팅) Parallel Processing(병렬처리)
사용자가 컴퓨터 전원을 켜면 메인보드의 ROM BIOS가 컴퓨터 자원이 올바르게 작동하는지를 검사하고 운영체제를 메모리에 올린다. Bootstrap(부트스트랩) : 운영체제를 메모리로 가져와 실행시키는 역할을 담당하는 작은 프로그램 Parallel Processing(병렬처리) 명령어 처리를 병렬로 처리하여 throughput를 향상시키는 기법 Pipeline 기법 : 명령어 실행 과정의 각 단계를 중첩시키는 방식 Superscalar 기법 : ALU를 2 개 이상 두어 pipeline 기법으로 처리하는 방식 Superpipeline 기법 : pipelin기법을 더 세분화하여 한 클럭 내에 여러 명령어를 처리하는 방식 Superpipelined superscalar 기법 : superpipeline + superscalar 기법 Practical Operating Systems
Similar presentations