프로세서 (Processor)
CPU
그래픽카드 (GPU)
응용 전용 처리장치 등
메모리 (Memory)
주기억장치
보조기억장치 등
주변장치
키보드/마우스
모니터/프린터
네트워크 모뎀 등
컴퓨터 두뇌 (중앙처리장치)
연산 수행
컴퓨터의 모든 장치의 동작 제어
CPU 내부 -> 레지스터, 연산장치, 제어장치
레지스터 (Register)
프로세서 내부 메모리
프로세서가 사용할 데이터를 저장
컴퓨터에서 가장 빠른 메모리
레지스터 종류
용도에 따른 분류
전용 레지스터, 범용 레지스터
사용자가 정보 변경 가능 여부에 따른 분류
사용자 가시 레지스터, 사용자 불가시 레지스터
저장하는 정보의 종류에 따른 분류
데이터 레지스터, 주소 레지스터, 상태 레지스터
사용자 가시 레지스터
사용자 불가시 레지스터
프로세서의 동작
운영체제와 프로세서
프로세서에게 처리할 작업 할당 및 관리
프로세스(Process) 생성 및 관리
프로그램의 프로세서 사용 제어
프로그램의 프로세서 사용 시간 관리
복수 프로그램간 사용 시간 조율 등
데이터를 저장하는 장치 (기억장치)
프로그램(OS, 사용자 SW 등), 사용자 데이터 등
메모리 종류
주기억 장치 (Main Memory)
프로세서가 수행할 프로그램과 데이터 저장
DRAM을 주로 사용(용량 크고, 가격 저렴)
디스크 입출력 병목현상 해소
캐시 (Cache)
프로세서 내부에 있는 메모리 (L1, L2 캐시 등)
속도가 빠르고, 가격이 비쌈
메인 메모리의 입출력 병목현상 해소
캐시 동작
일반적으로 HW적으로 관리 됨
캐시 히트 (Cache hit)
필요한 데이터 블록이 캐시 존재
캐시 미스 (Cache miss)
필요한 데이터 블록이 없는 경우
지역성 (Locality)
공간적 지역성 (Spatial locality)
참조한 주소와 인접한 주소를 참조하는 특성
예) 순차적 프로그램 수행
시간적 지역성 (Temporal locality)
한번 참조한 주소를 곧 다시 참조하는 특성
예) For문 등의 순환 문
지역성은 캐시 적중률(cache hit ratio)과 밀접
알고리즘 성능 향상을 위한 중요한 요소 중 하나
보조기억 장치 (Auxiliary Memory/Secondary Memory/storage)
프로그램과 데이터를 저장
프로세서가 직접 접근할 수 없음(주변장치)
주기억장치를 거쳐서 접근함
용량 크고, 가격 저렴
메모리와 운영체제
메모리 할당 및 관리
프로그램의 요청에 따른 메모리 할당 및 회수
할당된 메모리 관리
가상 메모리 관리
가상메모리 생성 및 관리
논리주소->물리주소 변환
하드웨어들이 데이터 및 신호를 주고 받는 물리적인 통로
프로세서와 메모리를 제외한 하드웨어들
- 입력장치: 키보드, 마우스, 스캐너, 판독기 등
- 출력장치: 모니터, 프린터, 플로터 등
- 저장장치: 자기 디스크, 자기 테이프, CD-ROM, 하드디스크 등
주변장치와 운영체제
장치드라이버 관리
- 주변장치 사용을 위한 인터페이스 제공
인터럽트(Interrupt) 처리
- 주변장치의 요청 처리
파일 및 디스크 관리
- 파일 생성 및 삭제
- 디스크 공간 관리 등
[출처] https://drive.google.com/file/d/1Wsip7Dc54Cdn_nKlYBy_WUnuqvVJvOUK/view